diff --git a/.gitattributes b/.gitattributes index a6344aac8c09253b3b630fb776ae94478aa0275b..d0f505a61f41e741902b539b0cb5441e6943ca57 100644 --- a/.gitattributes +++ b/.gitattributes @@ -33,3 +33,29 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text *.zip filter=lfs diff=lfs merge=lfs -text *.zst filter=lfs diff=lfs merge=lfs -text *tfevents* filter=lfs diff=lfs merge=lfs -text +datasets-cli.exe filter=lfs diff=lfs merge=lfs -text +f2py.exe filter=lfs diff=lfs merge=lfs -text +huggingface-cli.exe filter=lfs diff=lfs merge=lfs -text +import_pb_to_tensorboard.exe filter=lfs diff=lfs merge=lfs -text +isympy.exe filter=lfs diff=lfs merge=lfs -text +markdown_py.exe filter=lfs diff=lfs merge=lfs -text +markdown-it.exe filter=lfs diff=lfs merge=lfs -text +normalizer.exe filter=lfs diff=lfs merge=lfs -text +numpy-config.exe filter=lfs diff=lfs merge=lfs -text +pip.exe filter=lfs diff=lfs merge=lfs -text +pip3.12.exe filter=lfs diff=lfs merge=lfs -text +pip3.exe filter=lfs diff=lfs merge=lfs -text +pygmentize.exe filter=lfs diff=lfs merge=lfs -text +python.exe filter=lfs diff=lfs merge=lfs -text +pythonw.exe filter=lfs diff=lfs merge=lfs -text +saved_model_cli.exe filter=lfs diff=lfs merge=lfs -text +tensorboard.exe filter=lfs diff=lfs merge=lfs -text +tf_upgrade_v2.exe filter=lfs diff=lfs merge=lfs -text +tflite_convert.exe filter=lfs diff=lfs merge=lfs -text +toco_from_protos.exe filter=lfs diff=lfs merge=lfs -text +toco.exe filter=lfs diff=lfs merge=lfs -text +torchfrtrace.exe filter=lfs diff=lfs merge=lfs -text +torchrun.exe filter=lfs diff=lfs merge=lfs -text +tqdm.exe filter=lfs diff=lfs merge=lfs -text +transformers-cli.exe filter=lfs diff=lfs merge=lfs -text +wheel.exe filter=lfs diff=lfs merge=lfs -text diff --git a/Activate.ps1 b/Activate.ps1 new file mode 100644 index 0000000000000000000000000000000000000000..733a858ceb84a8cd82fef5ef1f96a018ab1e2fe4 --- /dev/null +++ b/Activate.ps1 @@ -0,0 +1,502 @@ +<# +.Synopsis +Activate a Python virtual environment for the current PowerShell session. + +.Description +Pushes the python executable for a virtual environment to the front of the +$Env:PATH environment variable and sets the prompt to signify that you are +in a Python virtual environment. Makes use of the command line switches as +well as the `pyvenv.cfg` file values present in the virtual environment. + +.Parameter VenvDir +Path to the directory that contains the virtual environment to activate. The +default value for this is the parent of the directory that the Activate.ps1 +script is located within. + +.Parameter Prompt +The prompt prefix to display when this virtual environment is activated. By +default, this prompt is the name of the virtual environment folder (VenvDir) +surrounded by parentheses and followed by a single space (ie. '(.venv) '). + +.Example +Activate.ps1 +Activates the Python virtual environment that contains the Activate.ps1 script. + +.Example +Activate.ps1 -Verbose +Activates the Python virtual environment that contains the Activate.ps1 script, +and shows extra information about the activation as it executes. + +.Example +Activate.ps1 -VenvDir C:\Users\MyUser\Common\.venv +Activates the Python virtual environment located in the specified location. + +.Example +Activate.ps1 -Prompt "MyPython" +Activates the Python virtual environment that contains the Activate.ps1 script, +and prefixes the current prompt with the specified string (surrounded in +parentheses) while the virtual environment is active. + +.Notes +On Windows, it may be required to enable this Activate.ps1 script by setting the +execution policy for the user. You can do this by issuing the following PowerShell +command: + +PS C:\> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser + +For more information on Execution Policies: +https://go.microsoft.com/fwlink/?LinkID=135170 + +#> +Param( + [Parameter(Mandatory = $false)] + [String] + $VenvDir, + [Parameter(Mandatory = $false)] + [String] + $Prompt +) + +<# Function declarations --------------------------------------------------- #> + +<# +.Synopsis +Remove all shell session elements added by the Activate script, including the +addition of the virtual environment's Python executable from the beginning of +the PATH variable. + +.Parameter NonDestructive +If present, do not remove this function from the global namespace for the +session. + +#> +function global:deactivate ([switch]$NonDestructive) { + # Revert to original values + + # The prior prompt: + if (Test-Path -Path Function:_OLD_VIRTUAL_PROMPT) { + Copy-Item -Path Function:_OLD_VIRTUAL_PROMPT -Destination Function:prompt + Remove-Item -Path Function:_OLD_VIRTUAL_PROMPT + } + + # The prior PYTHONHOME: + if (Test-Path -Path Env:_OLD_VIRTUAL_PYTHONHOME) { + Copy-Item -Path Env:_OLD_VIRTUAL_PYTHONHOME -Destination Env:PYTHONHOME + Remove-Item -Path Env:_OLD_VIRTUAL_PYTHONHOME + } + + # The prior PATH: + if (Test-Path -Path Env:_OLD_VIRTUAL_PATH) { + Copy-Item -Path Env:_OLD_VIRTUAL_PATH -Destination Env:PATH + Remove-Item -Path Env:_OLD_VIRTUAL_PATH + } + + # Just remove the VIRTUAL_ENV altogether: + if (Test-Path -Path Env:VIRTUAL_ENV) { + Remove-Item -Path env:VIRTUAL_ENV + } + + # Just remove VIRTUAL_ENV_PROMPT altogether. + if (Test-Path -Path Env:VIRTUAL_ENV_PROMPT) { + Remove-Item -Path env:VIRTUAL_ENV_PROMPT + } + + # Just remove the _PYTHON_VENV_PROMPT_PREFIX altogether: + if (Get-Variable -Name "_PYTHON_VENV_PROMPT_PREFIX" -ErrorAction SilentlyContinue) { + Remove-Variable -Name _PYTHON_VENV_PROMPT_PREFIX -Scope Global -Force + } + + # Leave deactivate function in the global namespace if requested: + if (-not $NonDestructive) { + Remove-Item -Path function:deactivate + } +} + +<# +.Description +Get-PyVenvConfig parses the values from the pyvenv.cfg file located in the +given folder, and returns them in a map. + +For each line in the pyvenv.cfg file, if that line can be parsed into exactly +two strings separated by `=` (with any amount of whitespace surrounding the =) +then it is considered a `key = value` line. The left hand string is the key, +the right hand is the value. + +If the value starts with a `'` or a `"` then the first and last character is +stripped from the value before being captured. + +.Parameter ConfigDir +Path to the directory that contains the `pyvenv.cfg` file. +#> +function Get-PyVenvConfig( + [String] + $ConfigDir +) { + Write-Verbose "Given ConfigDir=$ConfigDir, obtain values in pyvenv.cfg" + + # Ensure the file exists, and issue a warning if it doesn't (but still allow the function to continue). + $pyvenvConfigPath = Join-Path -Resolve -Path $ConfigDir -ChildPath 'pyvenv.cfg' -ErrorAction Continue + + # An empty map will be returned if no config file is found. + $pyvenvConfig = @{ } + + if ($pyvenvConfigPath) { + + Write-Verbose "File exists, parse `key = value` lines" + $pyvenvConfigContent = Get-Content -Path $pyvenvConfigPath + + $pyvenvConfigContent | ForEach-Object { + $keyval = $PSItem -split "\s*=\s*", 2 + if ($keyval[0] -and $keyval[1]) { + $val = $keyval[1] + + # Remove extraneous quotations around a string value. + if ("'""".Contains($val.Substring(0, 1))) { + $val = $val.Substring(1, $val.Length - 2) + } + + $pyvenvConfig[$keyval[0]] = $val + Write-Verbose "Adding Key: '$($keyval[0])'='$val'" + } + } + } + return $pyvenvConfig +} + + +<# Begin Activate script --------------------------------------------------- #> + +# Determine the containing directory of this script +$VenvExecPath = Split-Path -Parent $MyInvocation.MyCommand.Definition +$VenvExecDir = Get-Item -Path $VenvExecPath + +Write-Verbose "Activation script is located in path: '$VenvExecPath'" +Write-Verbose "VenvExecDir Fullname: '$($VenvExecDir.FullName)" +Write-Verbose "VenvExecDir Name: '$($VenvExecDir.Name)" + +# Set values required in priority: CmdLine, ConfigFile, Default +# First, get the location of the virtual environment, it might not be +# VenvExecDir if specified on the command line. +if ($VenvDir) { + Write-Verbose "VenvDir given as parameter, using '$VenvDir' to determine values" +} +else { + Write-Verbose "VenvDir not given as a parameter, using parent directory name as VenvDir." + $VenvDir = $VenvExecDir.Parent.FullName.TrimEnd("\\/") + Write-Verbose "VenvDir=$VenvDir" +} + +# Next, read the `pyvenv.cfg` file to determine any required value such +# as `prompt`. +$pyvenvCfg = Get-PyVenvConfig -ConfigDir $VenvDir + +# Next, set the prompt from the command line, or the config file, or +# just use the name of the virtual environment folder. +if ($Prompt) { + Write-Verbose "Prompt specified as argument, using '$Prompt'" +} +else { + Write-Verbose "Prompt not specified as argument to script, checking pyvenv.cfg value" + if ($pyvenvCfg -and $pyvenvCfg['prompt']) { + Write-Verbose " Setting based on value in pyvenv.cfg='$($pyvenvCfg['prompt'])'" + $Prompt = $pyvenvCfg['prompt']; + } + else { + Write-Verbose " Setting prompt based on parent's directory's name. (Is the directory name passed to venv module when creating the virtual environment)" + Write-Verbose " Got leaf-name of $VenvDir='$(Split-Path -Path $venvDir -Leaf)'" + $Prompt = Split-Path -Path $venvDir -Leaf + } +} + +Write-Verbose "Prompt = '$Prompt'" +Write-Verbose "VenvDir='$VenvDir'" + +# Deactivate any currently active virtual environment, but leave the +# deactivate function in place. +deactivate -nondestructive + +# Now set the environment variable VIRTUAL_ENV, used by many tools to determine +# that there is an activated venv. +$env:VIRTUAL_ENV = $VenvDir + +if (-not $Env:VIRTUAL_ENV_DISABLE_PROMPT) { + + Write-Verbose "Setting prompt to '$Prompt'" + + # Set the prompt to include the env name + # Make sure _OLD_VIRTUAL_PROMPT is global + function global:_OLD_VIRTUAL_PROMPT { "" } + Copy-Item -Path function:prompt -Destination function:_OLD_VIRTUAL_PROMPT + New-Variable -Name _PYTHON_VENV_PROMPT_PREFIX -Description "Python virtual environment prompt prefix" -Scope Global -Option ReadOnly -Visibility Public -Value $Prompt + + function global:prompt { + Write-Host -NoNewline -ForegroundColor Green "($_PYTHON_VENV_PROMPT_PREFIX) " + _OLD_VIRTUAL_PROMPT + } + $env:VIRTUAL_ENV_PROMPT = $Prompt +} + +# Clear PYTHONHOME +if (Test-Path -Path Env:PYTHONHOME) { + Copy-Item -Path Env:PYTHONHOME -Destination Env:_OLD_VIRTUAL_PYTHONHOME + Remove-Item -Path Env:PYTHONHOME +} + +# Add the venv to the PATH +Copy-Item -Path Env:PATH -Destination Env:_OLD_VIRTUAL_PATH +$Env:PATH = "$VenvExecDir$([System.IO.Path]::PathSeparator)$Env:PATH" + +# SIG # Begin signature block +# MIIvIwYJKoZIhvcNAQcCoIIvFDCCLxACAQExDzANBglghkgBZQMEAgEFADB5Bgor +# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG +# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCBnL745ElCYk8vk +# dBtMuQhLeWJ3ZGfzKW4DHCYzAn+QB6CCE8MwggWQMIIDeKADAgECAhAFmxtXno4h +# MuI5B72nd3VcMA0GCSqGSIb3DQEBDAUAMGIxCzAJBgNVBAYTAlVTMRUwEwYDVQQK +# EwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xITAfBgNV +# BAMTGERpZ2lDZXJ0IFRydXN0ZWQgUm9vdCBHNDAeFw0xMzA4MDExMjAwMDBaFw0z +# ODAxMTUxMjAwMDBaMGIxCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJ +# bmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xITAfBgNVBAMTGERpZ2lDZXJ0 +# IFRydXN0ZWQgUm9vdCBHNDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB +# AL/mkHNo3rvkXUo8MCIwaTPswqclLskhPfKK2FnC4SmnPVirdprNrnsbhA3EMB/z +# G6Q4FutWxpdtHauyefLKEdLkX9YFPFIPUh/GnhWlfr6fqVcWWVVyr2iTcMKyunWZ +# anMylNEQRBAu34LzB4TmdDttceItDBvuINXJIB1jKS3O7F5OyJP4IWGbNOsFxl7s +# Wxq868nPzaw0QF+xembud8hIqGZXV59UWI4MK7dPpzDZVu7Ke13jrclPXuU15zHL +# 2pNe3I6PgNq2kZhAkHnDeMe2scS1ahg4AxCN2NQ3pC4FfYj1gj4QkXCrVYJBMtfb +# BHMqbpEBfCFM1LyuGwN1XXhm2ToxRJozQL8I11pJpMLmqaBn3aQnvKFPObURWBf3 +# JFxGj2T3wWmIdph2PVldQnaHiZdpekjw4KISG2aadMreSx7nDmOu5tTvkpI6nj3c +# AORFJYm2mkQZK37AlLTSYW3rM9nF30sEAMx9HJXDj/chsrIRt7t/8tWMcCxBYKqx +# YxhElRp2Yn72gLD76GSmM9GJB+G9t+ZDpBi4pncB4Q+UDCEdslQpJYls5Q5SUUd0 +# viastkF13nqsX40/ybzTQRESW+UQUOsxxcpyFiIJ33xMdT9j7CFfxCBRa2+xq4aL +# T8LWRV+dIPyhHsXAj6KxfgommfXkaS+YHS312amyHeUbAgMBAAGjQjBAMA8GA1Ud +# EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBTs1+OC0nFdZEzf +# Lmc/57qYrhwPTzANBgkqhkiG9w0BAQwFAAOCAgEAu2HZfalsvhfEkRvDoaIAjeNk +# aA9Wz3eucPn9mkqZucl4XAwMX+TmFClWCzZJXURj4K2clhhmGyMNPXnpbWvWVPjS +# PMFDQK4dUPVS/JA7u5iZaWvHwaeoaKQn3J35J64whbn2Z006Po9ZOSJTROvIXQPK +# 7VB6fWIhCoDIc2bRoAVgX+iltKevqPdtNZx8WorWojiZ83iL9E3SIAveBO6Mm0eB +# cg3AFDLvMFkuruBx8lbkapdvklBtlo1oepqyNhR6BvIkuQkRUNcIsbiJeoQjYUIp +# 5aPNoiBB19GcZNnqJqGLFNdMGbJQQXE9P01wI4YMStyB0swylIQNCAmXHE/A7msg +# dDDS4Dk0EIUhFQEI6FUy3nFJ2SgXUE3mvk3RdazQyvtBuEOlqtPDBURPLDab4vri +# RbgjU2wGb2dVf0a1TD9uKFp5JtKkqGKX0h7i7UqLvBv9R0oN32dmfrJbQdA75PQ7 +# 9ARj6e/CVABRoIoqyc54zNXqhwQYs86vSYiv85KZtrPmYQ/ShQDnUBrkG5WdGaG5 +# nLGbsQAe79APT0JsyQq87kP6OnGlyE0mpTX9iV28hWIdMtKgK1TtmlfB2/oQzxm3 +# i0objwG2J5VT6LaJbVu8aNQj6ItRolb58KaAoNYes7wPD1N1KarqE3fk3oyBIa0H +# EEcRrYc9B9F1vM/zZn4wggawMIIEmKADAgECAhAIrUCyYNKcTJ9ezam9k67ZMA0G +# CSqGSIb3DQEBDAUAMGIxCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJ +# bmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xITAfBgNVBAMTGERpZ2lDZXJ0 +# IFRydXN0ZWQgUm9vdCBHNDAeFw0yMTA0MjkwMDAwMDBaFw0zNjA0MjgyMzU5NTla +# MGkxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdpQ2VydCwgSW5jLjFBMD8GA1UE +# AxM4RGlnaUNlcnQgVHJ1c3RlZCBHNCBDb2RlIFNpZ25pbmcgUlNBNDA5NiBTSEEz +# ODQgMjAyMSBDQTEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDVtC9C +# 0CiteLdd1TlZG7GIQvUzjOs9gZdwxbvEhSYwn6SOaNhc9es0JAfhS0/TeEP0F9ce +# 2vnS1WcaUk8OoVf8iJnBkcyBAz5NcCRks43iCH00fUyAVxJrQ5qZ8sU7H/Lvy0da +# E6ZMswEgJfMQ04uy+wjwiuCdCcBlp/qYgEk1hz1RGeiQIXhFLqGfLOEYwhrMxe6T +# SXBCMo/7xuoc82VokaJNTIIRSFJo3hC9FFdd6BgTZcV/sk+FLEikVoQ11vkunKoA +# FdE3/hoGlMJ8yOobMubKwvSnowMOdKWvObarYBLj6Na59zHh3K3kGKDYwSNHR7Oh +# D26jq22YBoMbt2pnLdK9RBqSEIGPsDsJ18ebMlrC/2pgVItJwZPt4bRc4G/rJvmM +# 1bL5OBDm6s6R9b7T+2+TYTRcvJNFKIM2KmYoX7BzzosmJQayg9Rc9hUZTO1i4F4z +# 8ujo7AqnsAMrkbI2eb73rQgedaZlzLvjSFDzd5Ea/ttQokbIYViY9XwCFjyDKK05 +# huzUtw1T0PhH5nUwjewwk3YUpltLXXRhTT8SkXbev1jLchApQfDVxW0mdmgRQRNY +# mtwmKwH0iU1Z23jPgUo+QEdfyYFQc4UQIyFZYIpkVMHMIRroOBl8ZhzNeDhFMJlP +# /2NPTLuqDQhTQXxYPUez+rbsjDIJAsxsPAxWEQIDAQABo4IBWTCCAVUwEgYDVR0T +# AQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUaDfg67Y7+F8Rhvv+YXsIiGX0TkIwHwYD +# VR0jBBgwFoAU7NfjgtJxXWRM3y5nP+e6mK4cD08wDgYDVR0PAQH/BAQDAgGGMBMG +# A1UdJQQMMAoGCCsGAQUFBwMDMHcGCCsGAQUFBwEBBGswaTAkBggrBgEFBQcwAYYY +# aHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEEGCCsGAQUFBzAChjVodHRwOi8vY2Fj +# ZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRUcnVzdGVkUm9vdEc0LmNydDBDBgNV +# HR8EPDA6MDigNqA0hjJodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vRGlnaUNlcnRU +# cnVzdGVkUm9vdEc0LmNybDAcBgNVHSAEFTATMAcGBWeBDAEDMAgGBmeBDAEEATAN +# BgkqhkiG9w0BAQwFAAOCAgEAOiNEPY0Idu6PvDqZ01bgAhql+Eg08yy25nRm95Ry +# sQDKr2wwJxMSnpBEn0v9nqN8JtU3vDpdSG2V1T9J9Ce7FoFFUP2cvbaF4HZ+N3HL +# IvdaqpDP9ZNq4+sg0dVQeYiaiorBtr2hSBh+3NiAGhEZGM1hmYFW9snjdufE5Btf +# Q/g+lP92OT2e1JnPSt0o618moZVYSNUa/tcnP/2Q0XaG3RywYFzzDaju4ImhvTnh +# OE7abrs2nfvlIVNaw8rpavGiPttDuDPITzgUkpn13c5UbdldAhQfQDN8A+KVssIh +# dXNSy0bYxDQcoqVLjc1vdjcshT8azibpGL6QB7BDf5WIIIJw8MzK7/0pNVwfiThV +# 9zeKiwmhywvpMRr/LhlcOXHhvpynCgbWJme3kuZOX956rEnPLqR0kq3bPKSchh/j +# wVYbKyP/j7XqiHtwa+aguv06P0WmxOgWkVKLQcBIhEuWTatEQOON8BUozu3xGFYH +# Ki8QxAwIZDwzj64ojDzLj4gLDb879M4ee47vtevLt/B3E+bnKD+sEq6lLyJsQfmC +# XBVmzGwOysWGw/YmMwwHS6DTBwJqakAwSEs0qFEgu60bhQjiWQ1tygVQK+pKHJ6l +# /aCnHwZ05/LWUpD9r4VIIflXO7ScA+2GRfS0YW6/aOImYIbqyK+p/pQd52MbOoZW +# eE4wggd3MIIFX6ADAgECAhAHHxQbizANJfMU6yMM0NHdMA0GCSqGSIb3DQEBCwUA +# MGkxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdpQ2VydCwgSW5jLjFBMD8GA1UE +# AxM4RGlnaUNlcnQgVHJ1c3RlZCBHNCBDb2RlIFNpZ25pbmcgUlNBNDA5NiBTSEEz +# ODQgMjAyMSBDQTEwHhcNMjIwMTE3MDAwMDAwWhcNMjUwMTE1MjM1OTU5WjB8MQsw +# CQYDVQQGEwJVUzEPMA0GA1UECBMGT3JlZ29uMRIwEAYDVQQHEwlCZWF2ZXJ0b24x +# IzAhBgNVBAoTGlB5dGhvbiBTb2Z0d2FyZSBGb3VuZGF0aW9uMSMwIQYDVQQDExpQ +# eXRob24gU29mdHdhcmUgRm91bmRhdGlvbjCCAiIwDQYJKoZIhvcNAQEBBQADggIP +# ADCCAgoCggIBAKgc0BTT+iKbtK6f2mr9pNMUTcAJxKdsuOiSYgDFfwhjQy89koM7 +# uP+QV/gwx8MzEt3c9tLJvDccVWQ8H7mVsk/K+X+IufBLCgUi0GGAZUegEAeRlSXx +# xhYScr818ma8EvGIZdiSOhqjYc4KnfgfIS4RLtZSrDFG2tN16yS8skFa3IHyvWdb +# D9PvZ4iYNAS4pjYDRjT/9uzPZ4Pan+53xZIcDgjiTwOh8VGuppxcia6a7xCyKoOA +# GjvCyQsj5223v1/Ig7Dp9mGI+nh1E3IwmyTIIuVHyK6Lqu352diDY+iCMpk9Zanm +# SjmB+GMVs+H/gOiofjjtf6oz0ki3rb7sQ8fTnonIL9dyGTJ0ZFYKeb6BLA66d2GA +# LwxZhLe5WH4Np9HcyXHACkppsE6ynYjTOd7+jN1PRJahN1oERzTzEiV6nCO1M3U1 +# HbPTGyq52IMFSBM2/07WTJSbOeXjvYR7aUxK9/ZkJiacl2iZI7IWe7JKhHohqKuc +# eQNyOzxTakLcRkzynvIrk33R9YVqtB4L6wtFxhUjvDnQg16xot2KVPdfyPAWd81w +# tZADmrUtsZ9qG79x1hBdyOl4vUtVPECuyhCxaw+faVjumapPUnwo8ygflJJ74J+B +# Yxf6UuD7m8yzsfXWkdv52DjL74TxzuFTLHPyARWCSCAbzn3ZIly+qIqDAgMBAAGj +# ggIGMIICAjAfBgNVHSMEGDAWgBRoN+Drtjv4XxGG+/5hewiIZfROQjAdBgNVHQ4E +# FgQUt/1Teh2XDuUj2WW3siYWJgkZHA8wDgYDVR0PAQH/BAQDAgeAMBMGA1UdJQQM +# MAoGCCsGAQUFBwMDMIG1BgNVHR8Ega0wgaowU6BRoE+GTWh0dHA6Ly9jcmwzLmRp +# Z2ljZXJ0LmNvbS9EaWdpQ2VydFRydXN0ZWRHNENvZGVTaWduaW5nUlNBNDA5NlNI +# QTM4NDIwMjFDQTEuY3JsMFOgUaBPhk1odHRwOi8vY3JsNC5kaWdpY2VydC5jb20v +# RGlnaUNlcnRUcnVzdGVkRzRDb2RlU2lnbmluZ1JTQTQwOTZTSEEzODQyMDIxQ0Ex +# LmNybDA+BgNVHSAENzA1MDMGBmeBDAEEATApMCcGCCsGAQUFBwIBFhtodHRwOi8v +# d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwgZQGCCsGAQUFBwEBBIGHMIGEMCQGCCsGAQUF +# BzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wXAYIKwYBBQUHMAKGUGh0dHA6 +# Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydFRydXN0ZWRHNENvZGVTaWdu +# aW5nUlNBNDA5NlNIQTM4NDIwMjFDQTEuY3J0MAwGA1UdEwEB/wQCMAAwDQYJKoZI +# hvcNAQELBQADggIBABxv4AeV/5ltkELHSC63fXAFYS5tadcWTiNc2rskrNLrfH1N +# s0vgSZFoQxYBFKI159E8oQQ1SKbTEubZ/B9kmHPhprHya08+VVzxC88pOEvz68nA +# 82oEM09584aILqYmj8Pj7h/kmZNzuEL7WiwFa/U1hX+XiWfLIJQsAHBla0i7QRF2 +# de8/VSF0XXFa2kBQ6aiTsiLyKPNbaNtbcucaUdn6vVUS5izWOXM95BSkFSKdE45O +# q3FForNJXjBvSCpwcP36WklaHL+aHu1upIhCTUkzTHMh8b86WmjRUqbrnvdyR2yd +# I5l1OqcMBjkpPpIV6wcc+KY/RH2xvVuuoHjlUjwq2bHiNoX+W1scCpnA8YTs2d50 +# jDHUgwUo+ciwpffH0Riq132NFmrH3r67VaN3TuBxjI8SIZM58WEDkbeoriDk3hxU +# 8ZWV7b8AW6oyVBGfM06UgkfMb58h+tJPrFx8VI/WLq1dTqMfZOm5cuclMnUHs2uq +# rRNtnV8UfidPBL4ZHkTcClQbCoz0UbLhkiDvIS00Dn+BBcxw/TKqVL4Oaz3bkMSs +# M46LciTeucHY9ExRVt3zy7i149sd+F4QozPqn7FrSVHXmem3r7bjyHTxOgqxRCVa +# 18Vtx7P/8bYSBeS+WHCKcliFCecspusCDSlnRUjZwyPdP0VHxaZg2unjHY3rMYIa +# tjCCGrICAQEwfTBpMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIElu +# Yy4xQTA/BgNVBAMTOERpZ2lDZXJ0IFRydXN0ZWQgRzQgQ29kZSBTaWduaW5nIFJT +# QTQwOTYgU0hBMzg0IDIwMjEgQ0ExAhAHHxQbizANJfMU6yMM0NHdMA0GCWCGSAFl +# AwQCAQUAoIHIMBkGCSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMBwGCisGAQQBgjcC +# AQsxDjAMBgorBgEEAYI3AgEVMC8GCSqGSIb3DQEJBDEiBCBnAZ6P7YvTwq0fbF62 +# o7E75R0LxsW5OtyYiFESQckLhjBcBgorBgEEAYI3AgEMMU4wTKBGgEQAQgB1AGkA +# bAB0ADoAIABSAGUAbABlAGEAcwBlAF8AdgAzAC4AMQAyAC4ANgBfADIAMAAyADQA +# MAA5ADAANgAuADAAMqECgAAwDQYJKoZIhvcNAQEBBQAEggIAhen5GN03SF9I96DT +# rrWEsN7FAyx8BHoRf9WFBqoBXpFkBwlE6OWj/rxohuwB/b+3vcBGWaP497ACku4l +# lgrWCrmYOVMKTjeHtDDkvgmygvGAtWB5drf56553na9RYjTxRqxto5LBMsHtPZy6 +# 1D+touyLSHx+QXzqXO4ssUq7oHtsmjDCKMLdcTuoqNGtpxaIwwlOAK+0DaLLUpkX +# VRUUzMWBb+2FlmJ2wWtXXs6OtlACm4By2hHmKhd6OYwnHPe6fDVdrhGa0BcDAIIO +# +elm895ddmfX2KqHWrKpgZ/0DM46pbEiYX4GVwY+kmrK9p8XF7c50c331vPPuImL +# URRShtCM9F/5e522nQm0NxQ0Pz+thMD+qGBA8WuSoD+RRG+JKOXgM8sMX46goR8P +# 1IJLeUnEKSOgMNcP0EUeWthrqXRjVgNcazIDgPFpPGMyo4Pp0D8SPvp/RzP3CPVo +# uVj6r0OnhyoDuDEX4KCyo/+TCSm+2T+hv+cPWQaukovXF1TmahWb/8j1+K1RkCVd +# UQ5v07AHYoHmJ2gxEgtM9qaVDx4woVVCpUrOhiAP/K1WSRw710oTqECG+4y+g67D +# P2UuOxxaxhPk0pITFj9pZQcVsrCk5QbW3Yj/I3fISZgjVfYK1IDKzaWQQuBhOuim +# j2/Tfcg+cLDbY4XEs5vpbKSYsCWhghc/MIIXOwYKKwYBBAGCNwMDATGCFyswghcn +# BgkqhkiG9w0BBwKgghcYMIIXFAIBAzEPMA0GCWCGSAFlAwQCAQUAMHcGCyqGSIb3 +# DQEJEAEEoGgEZjBkAgEBBglghkgBhv1sBwEwMTANBglghkgBZQMEAgEFAAQgS2eq +# 9RcYET/J2twNl3zStqvYDUBOrSdHvMcFbSu+C2sCEGHEWhqgAhMA1D+QZOB9TC4Y +# DzIwMjQwOTA2MjAyNzExWqCCEwkwggbCMIIEqqADAgECAhAFRK/zlJ0IOaa/2z9f +# 5WEWMA0GCSqGSIb3DQEBCwUAMGMxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdp +# Q2VydCwgSW5jLjE7MDkGA1UEAxMyRGlnaUNlcnQgVHJ1c3RlZCBHNCBSU0E0MDk2 +# IFNIQTI1NiBUaW1lU3RhbXBpbmcgQ0EwHhcNMjMwNzE0MDAwMDAwWhcNMzQxMDEz +# MjM1OTU5WjBIMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4x +# IDAeBgNVBAMTF0RpZ2lDZXJ0IFRpbWVzdGFtcCAyMDIzMIICIjANBgkqhkiG9w0B +# AQEFAAOCAg8AMIICCgKCAgEAo1NFhx2DjlusPlSzI+DPn9fl0uddoQ4J3C9Io5d6 +# OyqcZ9xiFVjBqZMRp82qsmrdECmKHmJjadNYnDVxvzqX65RQjxwg6seaOy+WZuNp +# 52n+W8PWKyAcwZeUtKVQgfLPywemMGjKg0La/H8JJJSkghraarrYO8pd3hkYhftF +# 6g1hbJ3+cV7EBpo88MUueQ8bZlLjyNY+X9pD04T10Mf2SC1eRXWWdf7dEKEbg8G4 +# 5lKVtUfXeCk5a+B4WZfjRCtK1ZXO7wgX6oJkTf8j48qG7rSkIWRw69XloNpjsy7p +# Be6q9iT1HbybHLK3X9/w7nZ9MZllR1WdSiQvrCuXvp/k/XtzPjLuUjT71Lvr1KAs +# NJvj3m5kGQc3AZEPHLVRzapMZoOIaGK7vEEbeBlt5NkP4FhB+9ixLOFRr7StFQYU +# 6mIIE9NpHnxkTZ0P387RXoyqq1AVybPKvNfEO2hEo6U7Qv1zfe7dCv95NBB+plwK +# WEwAPoVpdceDZNZ1zY8SdlalJPrXxGshuugfNJgvOuprAbD3+yqG7HtSOKmYCaFx +# smxxrz64b5bV4RAT/mFHCoz+8LbH1cfebCTwv0KCyqBxPZySkwS0aXAnDU+3tTbR +# yV8IpHCj7ArxES5k4MsiK8rxKBMhSVF+BmbTO77665E42FEHypS34lCh8zrTioPL +# QHsCAwEAAaOCAYswggGHMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMBYG +# A1UdJQEB/wQMMAoGCCsGAQUFBwMIMCAGA1UdIAQZMBcwCAYGZ4EMAQQCMAsGCWCG +# SAGG/WwHATAfBgNVHSMEGDAWgBS6FtltTYUvcyl2mi91jGogj57IbzAdBgNVHQ4E +# FgQUpbbvE+fvzdBkodVWqWUxo97V40kwWgYDVR0fBFMwUTBPoE2gS4ZJaHR0cDov +# L2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0VHJ1c3RlZEc0UlNBNDA5NlNIQTI1 +# NlRpbWVTdGFtcGluZ0NBLmNybDCBkAYIKwYBBQUHAQEEgYMwgYAwJAYIKwYBBQUH +# MAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBYBggrBgEFBQcwAoZMaHR0cDov +# L2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0VHJ1c3RlZEc0UlNBNDA5NlNI +# QTI1NlRpbWVTdGFtcGluZ0NBLmNydDANBgkqhkiG9w0BAQsFAAOCAgEAgRrW3qCp +# tZgXvHCNT4o8aJzYJf/LLOTN6l0ikuyMIgKpuM+AqNnn48XtJoKKcS8Y3U623mzX +# 4WCcK+3tPUiOuGu6fF29wmE3aEl3o+uQqhLXJ4Xzjh6S2sJAOJ9dyKAuJXglnSoF +# eoQpmLZXeY/bJlYrsPOnvTcM2Jh2T1a5UsK2nTipgedtQVyMadG5K8TGe8+c+nji +# kxp2oml101DkRBK+IA2eqUTQ+OVJdwhaIcW0z5iVGlS6ubzBaRm6zxbygzc0brBB +# Jt3eWpdPM43UjXd9dUWhpVgmagNF3tlQtVCMr1a9TMXhRsUo063nQwBw3syYnhmJ +# A+rUkTfvTVLzyWAhxFZH7doRS4wyw4jmWOK22z75X7BC1o/jF5HRqsBV44a/rCcs +# QdCaM0qoNtS5cpZ+l3k4SF/Kwtw9Mt911jZnWon49qfH5U81PAC9vpwqbHkB3NpE +# 5jreODsHXjlY9HxzMVWggBHLFAx+rrz+pOt5Zapo1iLKO+uagjVXKBbLafIymrLS +# 2Dq4sUaGa7oX/cR3bBVsrquvczroSUa31X/MtjjA2Owc9bahuEMs305MfR5ocMB3 +# CtQC4Fxguyj/OOVSWtasFyIjTvTs0xf7UGv/B3cfcZdEQcm4RtNsMnxYL2dHZeUb +# c7aZ+WssBkbvQR7w8F/g29mtkIBEr4AQQYowggauMIIElqADAgECAhAHNje3JFR8 +# 2Ees/ShmKl5bMA0GCSqGSIb3DQEBCwUAMGIxCzAJBgNVBAYTAlVTMRUwEwYDVQQK +# EwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xITAfBgNV +# BAMTGERpZ2lDZXJ0IFRydXN0ZWQgUm9vdCBHNDAeFw0yMjAzMjMwMDAwMDBaFw0z +# NzAzMjIyMzU5NTlaMGMxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdpQ2VydCwg +# SW5jLjE7MDkGA1UEAxMyRGlnaUNlcnQgVHJ1c3RlZCBHNCBSU0E0MDk2IFNIQTI1 +# NiBUaW1lU3RhbXBpbmcgQ0EwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC +# AQDGhjUGSbPBPXJJUVXHJQPE8pE3qZdRodbSg9GeTKJtoLDMg/la9hGhRBVCX6SI +# 82j6ffOciQt/nR+eDzMfUBMLJnOWbfhXqAJ9/UO0hNoR8XOxs+4rgISKIhjf69o9 +# xBd/qxkrPkLcZ47qUT3w1lbU5ygt69OxtXXnHwZljZQp09nsad/ZkIdGAHvbREGJ +# 3HxqV3rwN3mfXazL6IRktFLydkf3YYMZ3V+0VAshaG43IbtArF+y3kp9zvU5Emfv +# DqVjbOSmxR3NNg1c1eYbqMFkdECnwHLFuk4fsbVYTXn+149zk6wsOeKlSNbwsDET +# qVcplicu9Yemj052FVUmcJgmf6AaRyBD40NjgHt1biclkJg6OBGz9vae5jtb7IHe +# IhTZgirHkr+g3uM+onP65x9abJTyUpURK1h0QCirc0PO30qhHGs4xSnzyqqWc0Jo +# n7ZGs506o9UD4L/wojzKQtwYSH8UNM/STKvvmz3+DrhkKvp1KCRB7UK/BZxmSVJQ +# 9FHzNklNiyDSLFc1eSuo80VgvCONWPfcYd6T/jnA+bIwpUzX6ZhKWD7TA4j+s4/T +# Xkt2ElGTyYwMO1uKIqjBJgj5FBASA31fI7tk42PgpuE+9sJ0sj8eCXbsq11GdeJg +# o1gJASgADoRU7s7pXcheMBK9Rp6103a50g5rmQzSM7TNsQIDAQABo4IBXTCCAVkw +# EgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUuhbZbU2FL3MpdpovdYxqII+e +# yG8wHwYDVR0jBBgwFoAU7NfjgtJxXWRM3y5nP+e6mK4cD08wDgYDVR0PAQH/BAQD +# AgGGMBMGA1UdJQQMMAoGCCsGAQUFBwMIMHcGCCsGAQUFBwEBBGswaTAkBggrBgEF +# BQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEEGCCsGAQUFBzAChjVodHRw +# Oi8vY2FjZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRUcnVzdGVkUm9vdEc0LmNy +# dDBDBgNVHR8EPDA6MDigNqA0hjJodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vRGln +# aUNlcnRUcnVzdGVkUm9vdEc0LmNybDAgBgNVHSAEGTAXMAgGBmeBDAEEAjALBglg +# hkgBhv1sBwEwDQYJKoZIhvcNAQELBQADggIBAH1ZjsCTtm+YqUQiAX5m1tghQuGw +# GC4QTRPPMFPOvxj7x1Bd4ksp+3CKDaopafxpwc8dB+k+YMjYC+VcW9dth/qEICU0 +# MWfNthKWb8RQTGIdDAiCqBa9qVbPFXONASIlzpVpP0d3+3J0FNf/q0+KLHqrhc1D +# X+1gtqpPkWaeLJ7giqzl/Yy8ZCaHbJK9nXzQcAp876i8dU+6WvepELJd6f8oVInw +# 1YpxdmXazPByoyP6wCeCRK6ZJxurJB4mwbfeKuv2nrF5mYGjVoarCkXJ38SNoOeY +# +/umnXKvxMfBwWpx2cYTgAnEtp/Nh4cku0+jSbl3ZpHxcpzpSwJSpzd+k1OsOx0I +# SQ+UzTl63f8lY5knLD0/a6fxZsNBzU+2QJshIUDQtxMkzdwdeDrknq3lNHGS1yZr +# 5Dhzq6YBT70/O3itTK37xJV77QpfMzmHQXh6OOmc4d0j/R0o08f56PGYX/sr2H7y +# Rp11LB4nLCbbbxV7HhmLNriT1ObyF5lZynDwN7+YAN8gFk8n+2BnFqFmut1VwDop +# hrCYoCvtlUG3OtUVmDG0YgkPCr2B2RP+v6TR81fZvAT6gt4y3wSJ8ADNXcL50CN/ +# AAvkdgIm2fBldkKmKYcJRyvmfxqkhQ/8mJb2VVQrH4D6wPIOK+XW+6kvRBVK5xMO +# Hds3OBqhK/bt1nz8MIIFjTCCBHWgAwIBAgIQDpsYjvnQLefv21DiCEAYWjANBgkq +# hkiG9w0BAQwFADBlMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5j +# MRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBB +# c3N1cmVkIElEIFJvb3QgQ0EwHhcNMjIwODAxMDAwMDAwWhcNMzExMTA5MjM1OTU5 +# WjBiMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQL +# ExB3d3cuZGlnaWNlcnQuY29tMSEwHwYDVQQDExhEaWdpQ2VydCBUcnVzdGVkIFJv +# b3QgRzQwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC/5pBzaN675F1K +# PDAiMGkz7MKnJS7JIT3yithZwuEppz1Yq3aaza57G4QNxDAf8xukOBbrVsaXbR2r +# snnyyhHS5F/WBTxSD1Ifxp4VpX6+n6lXFllVcq9ok3DCsrp1mWpzMpTREEQQLt+C +# 8weE5nQ7bXHiLQwb7iDVySAdYyktzuxeTsiT+CFhmzTrBcZe7FsavOvJz82sNEBf +# sXpm7nfISKhmV1efVFiODCu3T6cw2Vbuyntd463JT17lNecxy9qTXtyOj4DatpGY +# QJB5w3jHtrHEtWoYOAMQjdjUN6QuBX2I9YI+EJFwq1WCQTLX2wRzKm6RAXwhTNS8 +# rhsDdV14Ztk6MUSaM0C/CNdaSaTC5qmgZ92kJ7yhTzm1EVgX9yRcRo9k98FpiHaY +# dj1ZXUJ2h4mXaXpI8OCiEhtmmnTK3kse5w5jrubU75KSOp493ADkRSWJtppEGSt+ +# wJS00mFt6zPZxd9LBADMfRyVw4/3IbKyEbe7f/LVjHAsQWCqsWMYRJUadmJ+9oCw +# ++hkpjPRiQfhvbfmQ6QYuKZ3AeEPlAwhHbJUKSWJbOUOUlFHdL4mrLZBdd56rF+N +# P8m800ERElvlEFDrMcXKchYiCd98THU/Y+whX8QgUWtvsauGi0/C1kVfnSD8oR7F +# wI+isX4KJpn15GkvmB0t9dmpsh3lGwIDAQABo4IBOjCCATYwDwYDVR0TAQH/BAUw +# AwEB/zAdBgNVHQ4EFgQU7NfjgtJxXWRM3y5nP+e6mK4cD08wHwYDVR0jBBgwFoAU +# Reuir/SSy4IxLVGLp6chnfNtyA8wDgYDVR0PAQH/BAQDAgGGMHkGCCsGAQUFBwEB +# BG0wazAkBggrBgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEMGCCsG +# AQUFBzAChjdodHRwOi8vY2FjZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRBc3N1 +# cmVkSURSb290Q0EuY3J0MEUGA1UdHwQ+MDwwOqA4oDaGNGh0dHA6Ly9jcmwzLmRp +# Z2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmwwEQYDVR0gBAow +# CDAGBgRVHSAAMA0GCSqGSIb3DQEBDAUAA4IBAQBwoL9DXFXnOF+go3QbPbYW1/e/ +# Vwe9mqyhhyzshV6pGrsi+IcaaVQi7aSId229GhT0E0p6Ly23OO/0/4C5+KH38nLe +# JLxSA8hO0Cre+i1Wz/n096wwepqLsl7Uz9FDRJtDIeuWcqFItJnLnU+nBgMTdydE +# 1Od/6Fmo8L8vC6bp8jQ87PcDx4eo0kxAGTVGamlUsLihVo7spNU96LHc/RzY9Hda +# XFSMb++hUD38dglohJ9vytsgjTVgHAIDyyCwrFigDkBjxZgiwbJZ9VVrzyerbHbO +# byMt9H5xaiNrIv8SuFQtJ37YOtnwtoeW/VvRXKwYw02fc7cBqZ9Xql4o4rmUMYID +# djCCA3ICAQEwdzBjMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIElu +# Yy4xOzA5BgNVBAMTMkRpZ2lDZXJ0IFRydXN0ZWQgRzQgUlNBNDA5NiBTSEEyNTYg +# VGltZVN0YW1waW5nIENBAhAFRK/zlJ0IOaa/2z9f5WEWMA0GCWCGSAFlAwQCAQUA +# oIHRMBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcN +# MjQwOTA2MjAyNzExWjArBgsqhkiG9w0BCRACDDEcMBowGDAWBBRm8CsywsLJD4Jd +# zqqKycZPGZzPQDAvBgkqhkiG9w0BCQQxIgQgXSdFKsIxhS4gvdZFC5i8csELx4EN +# gje4K7DDRX8dz3AwNwYLKoZIhvcNAQkQAi8xKDAmMCQwIgQg0vbkbe10IszR1EBX +# aEE2b4KK2lWarjMWr00amtQMeCgwDQYJKoZIhvcNAQEBBQAEggIAYX9aC647tWiS +# rGwjsC+5s2CosHEwRzUG9YNI58OJgUfCwsfgMkgKWkSi/K7mumf5RHkU+P+HCwoy +# kvIOZ7viK9fcAkK9zS3eKPUA6mGQS11yEnEhRUZbrrsG1uHQO+gSO2SgyLs8+3vX +# /8+YEl1IkGbw4/oeLavq79jULQqZ6/00n0E0nFDmbprjFK4wUX4CoIqt8AAWCt4F +# Az8XwvYxa63A2JQmeDzDAWR4lfNbREQaC3MdnqbnvQIBQUspJsn3t7zxU+ubzCez +# kCkk+7Tt5FFCP9OJvc/BEv3HcXrTAoZ4VFfAwL9K1DQ4A3hbsvKlwV0OxZlhouMd +# fGq+R8IGMsy7mGxeHx67nzKIr6Rjd426YsGskp5D3gE9shvH8i3GOTBi2Y9JUnaU +# /KX+IMzKbvR0Y9echgTb17v3D/+fYzDD/kSGJcuQEIbJEyYsCDBF53xoKd6K0Pgz +# 2drucT9otwOLUgGfR1N6lRwDtkMHYB25OMIKLYtcfHjQZn+Howq/TVUbp9ohhW1N +# jim3nJfNvmRe2zN5476SOn86GzzrqxfAMCTtbZeim2ltOHxlnPUE8EJLdRFesKMK +# 6izgaxptlT+MO0R8jx1VoOn+qbQPbNn2GCOUvh/yFkjwDLtFb/rNdoWMNrSMZDhV +# mRCM17SwjW6qRmsrC7VSaSAgPsokYM0= +# SIG # End signature block diff --git a/INSTALLER b/INSTALLER new file mode 100644 index 0000000000000000000000000000000000000000..a1b589e38a32041e49332e5e81c2d363dc418d68 --- /dev/null +++ b/INSTALLER @@ -0,0 +1 @@ +pip diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000000000000000000000000000000000000..c97230d98962be97c3059a0c51c20ebeb5983da0 --- /dev/null +++ b/LICENSE @@ -0,0 +1,8795 @@ +From PyTorch: + +Copyright (c) 2016- Facebook, Inc (Adam Paszke) +Copyright (c) 2014- Facebook, Inc (Soumith Chintala) +Copyright (c) 2011-2014 Idiap Research Institute (Ronan Collobert) +Copyright (c) 2012-2014 Deepmind Technologies (Koray Kavukcuoglu) +Copyright (c) 2011-2012 NEC Laboratories America (Koray Kavukcuoglu) +Copyright (c) 2011-2013 NYU (Clement Farabet) +Copyright (c) 2006-2010 NEC Laboratories America (Ronan Collobert, Leon Bottou, Iain Melvin, Jason Weston) +Copyright (c) 2006 Idiap Research Institute (Samy Bengio) +Copyright (c) 2001-2004 Idiap Research Institute (Ronan Collobert, Samy Bengio, Johnny Mariethoz) + +From Caffe2: + +Copyright (c) 2016-present, Facebook Inc. All rights reserved. + +All contributions by Facebook: +Copyright (c) 2016 Facebook Inc. + +All contributions by Google: +Copyright (c) 2015 Google Inc. +All rights reserved. + +All contributions by Yangqing Jia: +Copyright (c) 2015 Yangqing Jia +All rights reserved. + +All contributions by Kakao Brain: +Copyright 2019-2020 Kakao Brain + +All contributions by Cruise LLC: +Copyright (c) 2022 Cruise LLC. +All rights reserved. + +All contributions by Arm: +Copyright (c) 2021, 2023-2024 Arm Limited and/or its affiliates + +All contributions from Caffe: +Copyright(c) 2013, 2014, 2015, the respective contributors +All rights reserved. + +All other contributions: +Copyright(c) 2015, 2016 the respective contributors +All rights reserved. + +Caffe2 uses a copyright model similar to Caffe: each contributor holds +copyright over their contributions to Caffe2. The project versioning records +all such contribution and copyright details. If a contributor wants to further +mark their specific copyright on a particular contribution, they should +indicate their copyright solely in the commit message of the change when it is +committed. + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +3. Neither the names of Facebook, Deepmind Technologies, NYU, NEC Laboratories America + and IDIAP Research Institute nor the names of its contributors may be + used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + + +The PyTorch repository and source distributions bundle several libraries that are +compatibly licensed. We list these here. + +Name: third_party\FP16 +License: MIT +Files: third_party\FP16 + For details, see the files concatenated below: third_party\FP16\LICENSE + +Name: third_party\FXdiv +License: MIT +Files: third_party\FXdiv + For details, see the files concatenated below: third_party\FXdiv\LICENSE + +Name: third_party\NNPACK +License: BSD-2-Clause +Files: third_party\NNPACK + For details, see the files concatenated below: third_party\NNPACK\LICENSE + +Name: third_party\NVTX +License: Apache-2.0 with exception +Files: third_party\NVTX + For details, see the files concatenated below: third_party\NVTX\LICENSE.txt + +Name: third_party\NVTX\python +License: Apache-2.0 with exception +Files: third_party\NVTX\python + For details, see the files concatenated below: third_party\NVTX\python\LICENSE.txt + +Name: third_party\VulkanMemoryAllocator +License: MIT +Files: third_party\VulkanMemoryAllocator + For details, see the files concatenated below: third_party\VulkanMemoryAllocator\LICENSE.txt + +Name: third_party\XNNPACK +License: BSD-3-Clause +Files: third_party\XNNPACK + For details, see the files concatenated below: third_party\XNNPACK\LICENSE + +Name: third_party\benchmark +License: Apache-2.0 +Files: third_party\benchmark + For details, see the files concatenated below: third_party\benchmark\LICENSE + +Name: third_party\composable_kernel +License: MIT +Files: third_party\composable_kernel + For details, see the files concatenated below: third_party\composable_kernel\LICENSE + +Name: third_party\cpp-httplib +License: MIT +Files: third_party\cpp-httplib + For details, see the files concatenated below: third_party\cpp-httplib\LICENSE + +Name: third_party\cpuinfo +License: BSD-2-Clause +Files: third_party\cpuinfo + For details, see the files concatenated below: third_party\cpuinfo\LICENSE + +Name: third_party\cpuinfo\deps\clog +License: BSD-2-Clause +Files: third_party\cpuinfo\deps\clog + For details, see the files concatenated below: third_party\cpuinfo\deps\clog\LICENSE + +Name: third_party\cudnn_frontend +License: MIT +Files: third_party\cudnn_frontend + For details, see the files concatenated below: third_party\cudnn_frontend\LICENSE.txt + +Name: third_party\cutlass +License: BSD-3-Clause +Files: third_party\cutlass + For details, see the files concatenated below: third_party\cutlass\LICENSE.txt + +Name: third_party\cutlass\python +License: BSD-3-Clause +Files: third_party\cutlass\python + For details, see the files concatenated below: third_party\cutlass\python\LICENSE.txt + +Name: third_party\eigen +License: BSD-3-Clause +Files: third_party\eigen + For details, see the files concatenated below: third_party\eigen\COPYING.BSD + +Name: third_party\fbgemm +License: BSD-3-Clause +Files: third_party\fbgemm + For details, see the files concatenated below: third_party\fbgemm\LICENSE + +Name: third_party\fbgemm\third_party\cpuinfo +License: BSD-2-Clause +Files: third_party\fbgemm\third_party\cpuinfo + For details, see the files concatenated below: third_party\fbgemm\third_party\cpuinfo\LICENSE + +Name: third_party\fbgemm\third_party\cpuinfo\deps\clog +License: BSD-2-Clause +Files: third_party\fbgemm\third_party\cpuinfo\deps\clog + For details, see the files concatenated below: third_party\fbgemm\third_party\cpuinfo\deps\clog\LICENSE + +Name: third_party\fbgemm\third_party\cutlass +License: BSD-3-Clause +Files: third_party\fbgemm\third_party\cutlass + For details, see the files concatenated below: third_party\fbgemm\third_party\cutlass\LICENSE.txt + +Name: third_party\fbgemm\third_party\googletest +License: BSD-3-Clause +Files: third_party\fbgemm\third_party\googletest + For details, see the files concatenated below: third_party\fbgemm\third_party\googletest\LICENSE + +Name: third_party\fbgemm\third_party\googletest\googlemock +License: BSD-3-Clause +Files: third_party\fbgemm\third_party\googletest\googlemock + For details, see the files concatenated below: third_party\fbgemm\third_party\googletest\googlemock\LICENSE + +Name: third_party\fbgemm\third_party\googletest\googlemock\scripts\generator +License: Apache-2.0 +Files: third_party\fbgemm\third_party\googletest\googlemock\scripts\generator + For details, see the files concatenated below: third_party\fbgemm\third_party\googletest\googlemock\scripts\generator\LICENSE + +Name: third_party\fbgemm\third_party\googletest\googletest +License: BSD-3-Clause +Files: third_party\fbgemm\third_party\googletest\googletest + For details, see the files concatenated below: third_party\fbgemm\third_party\googletest\googletest\LICENSE + +Name: third_party\fbgemm\third_party\hipify_torch +License: MIT +Files: third_party\fbgemm\third_party\hipify_torch + For details, see the files concatenated below: third_party\fbgemm\third_party\hipify_torch\LICENSE.txt + +Name: third_party\flatbuffers +License: Apache-2.0 +Files: third_party\flatbuffers + For details, see the files concatenated below: third_party\flatbuffers\LICENSE + +Name: third_party\flatbuffers\dart +License: Apache-2.0 +Files: third_party\flatbuffers\dart + For details, see the files concatenated below: third_party\flatbuffers\dart\LICENSE + +Name: third_party\flatbuffers\swift +License: Apache-2.0 +Files: third_party\flatbuffers\swift + For details, see the files concatenated below: third_party\flatbuffers\swift\LICENSE + +Name: third_party\fmt +License: MIT with exception +Files: third_party\fmt + For details, see the files concatenated below: third_party\fmt\LICENSE + +Name: third_party\gemmlowp\gemmlowp +License: Apache-2.0 +Files: third_party\gemmlowp\gemmlowp + For details, see the files concatenated below: third_party\gemmlowp\gemmlowp\LICENSE + +Name: third_party\gloo +License: BSD-3-Clause +Files: third_party\gloo + For details, see the files concatenated below: third_party\gloo\LICENSE + +Name: third_party\googletest +License: BSD-3-Clause +Files: third_party\googletest + For details, see the files concatenated below: third_party\googletest\LICENSE + +Name: third_party\ideep +License: MIT +Files: third_party\ideep + For details, see the files concatenated below: third_party\ideep\LICENSE + +Name: third_party\ideep\mkl-dnn +License: Apache-2.0 +Files: third_party\ideep\mkl-dnn + For details, see the files concatenated below: third_party\ideep\mkl-dnn\LICENSE + +Name: third_party\ideep\mkl-dnn\tests\gtests\gtest +License: BSD-3-Clause +Files: third_party\ideep\mkl-dnn\tests\gtests\gtest + For details, see the files concatenated below: third_party\ideep\mkl-dnn\tests\gtests\gtest\LICENSE + +Name: third_party\kineto +License: BSD-3-Clause +Files: third_party\kineto + For details, see the files concatenated below: third_party\kineto\LICENSE + +Name: third_party\kineto\libkineto\third_party\dynolog +License: MIT +Files: third_party\kineto\libkineto\third_party\dynolog + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\dynolog\LICENSE + +Name: third_party\kineto\libkineto\third_party\dynolog\third_party\DCGM +License: Apache-2.0 +Files: third_party\kineto\libkineto\third_party\dynolog\third_party\DCGM + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\dynolog\third_party\DCGM\LICENSE + +Name: third_party\kineto\libkineto\third_party\dynolog\third_party\DCGM\testing\python3\libs_3rdparty\colorama +License: BSD-3-Clause +Files: third_party\kineto\libkineto\third_party\dynolog\third_party\DCGM\testing\python3\libs_3rdparty\colorama + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\dynolog\third_party\DCGM\testing\python3\libs_3rdparty\colorama\LICENSE.txt + +Name: third_party\kineto\libkineto\third_party\dynolog\third_party\cpr +License: MIT +Files: third_party\kineto\libkineto\third_party\dynolog\third_party\cpr + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\dynolog\third_party\cpr\LICENSE + +Name: third_party\kineto\libkineto\third_party\dynolog\third_party\cpr\test +License: MIT with exception +Files: third_party\kineto\libkineto\third_party\dynolog\third_party\cpr\test + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\dynolog\third_party\cpr\test\LICENSE + +Name: third_party\kineto\libkineto\third_party\dynolog\third_party\fmt +License: MIT with exception +Files: third_party\kineto\libkineto\third_party\dynolog\third_party\fmt + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\dynolog\third_party\fmt\LICENSE.rst + +Name: third_party\kineto\libkineto\third_party\dynolog\third_party\googletest +License: BSD-3-Clause +Files: third_party\kineto\libkineto\third_party\dynolog\third_party\googletest + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\dynolog\third_party\googletest\LICENSE + +Name: third_party\kineto\libkineto\third_party\dynolog\third_party\json\test\thirdparty\doctest +License: MIT +Files: third_party\kineto\libkineto\third_party\dynolog\third_party\json\test\thirdparty\doctest + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\dynolog\third_party\json\test\thirdparty\doctest\LICENSE.txt + +Name: third_party\kineto\libkineto\third_party\dynolog\third_party\json\third_party\cpplint +License: BSD-3-Clause +Files: third_party\kineto\libkineto\third_party\dynolog\third_party\json\third_party\cpplint + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\dynolog\third_party\json\third_party\cpplint\LICENSE + +Name: third_party\kineto\libkineto\third_party\dynolog\third_party\pfs +License: Apache-2.0 +Files: third_party\kineto\libkineto\third_party\dynolog\third_party\pfs + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\dynolog\third_party\pfs\LICENSE + +Name: third_party\kineto\libkineto\third_party\fmt +License: MIT with exception +Files: third_party\kineto\libkineto\third_party\fmt + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\fmt\LICENSE + +Name: third_party\kineto\libkineto\third_party\googletest +License: BSD-3-Clause +Files: third_party\kineto\libkineto\third_party\googletest + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\googletest\LICENSE + +Name: third_party\kineto\libkineto\third_party\googletest\googlemock +License: BSD-3-Clause +Files: third_party\kineto\libkineto\third_party\googletest\googlemock + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\googletest\googlemock\LICENSE + +Name: third_party\kineto\libkineto\third_party\googletest\googlemock\scripts\generator +License: Apache-2.0 +Files: third_party\kineto\libkineto\third_party\googletest\googlemock\scripts\generator + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\googletest\googlemock\scripts\generator\LICENSE + +Name: third_party\kineto\libkineto\third_party\googletest\googletest +License: BSD-3-Clause +Files: third_party\kineto\libkineto\third_party\googletest\googletest + For details, see the files concatenated below: third_party\kineto\libkineto\third_party\googletest\googletest\LICENSE + +Name: third_party\kineto\tb_plugin +License: BSD-3-Clause +Files: third_party\kineto\tb_plugin + For details, see the files concatenated below: third_party\kineto\tb_plugin\LICENSE + +Name: third_party\mimalloc +License: MIT +Files: third_party\mimalloc + For details, see the files concatenated below: third_party\mimalloc\LICENSE + +Name: third_party\miniz-3.0.2 +License: MIT +Files: third_party\miniz-3.0.2 + For details, see the files concatenated below: third_party\miniz-3.0.2\LICENSE + +Name: third_party\nccl\nccl +License: BSD-3-Clause +Files: third_party\nccl\nccl + For details, see the files concatenated below: third_party\nccl\nccl\LICENSE.txt + +Name: third_party\nlohmann\tests\thirdparty\doctest +License: MIT +Files: third_party\nlohmann\tests\thirdparty\doctest + For details, see the files concatenated below: third_party\nlohmann\tests\thirdparty\doctest\LICENSE.txt + +Name: third_party\nlohmann\tools\cpplint +License: BSD-3-Clause +Files: third_party\nlohmann\tools\cpplint + For details, see the files concatenated below: third_party\nlohmann\tools\cpplint\LICENSE + +Name: third_party\onnx +License: Apache-2.0 +Files: third_party\onnx + For details, see the files concatenated below: third_party\onnx\LICENSE + +Name: third_party\onnx\third_party\pybind11 +License: BSD-3-Clause +Files: third_party\onnx\third_party\pybind11 + For details, see the files concatenated below: third_party\onnx\third_party\pybind11\LICENSE + +Name: third_party\opentelemetry-cpp +License: Apache-2.0 +Files: third_party\opentelemetry-cpp + For details, see the files concatenated below: third_party\opentelemetry-cpp\LICENSE + +Name: third_party\opentelemetry-cpp\exporters\etw\include\opentelemetry\exporters\etw +License: MIT +Files: third_party\opentelemetry-cpp\exporters\etw\include\opentelemetry\exporters\etw + For details, see the files concatenated below: third_party\opentelemetry-cpp\exporters\etw\include\opentelemetry\exporters\etw\LICENSE + +Name: third_party\opentelemetry-cpp\third_party\benchmark +License: Apache-2.0 +Files: third_party\opentelemetry-cpp\third_party\benchmark + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\benchmark\LICENSE + +Name: third_party\opentelemetry-cpp\third_party\googletest +License: BSD-3-Clause +Files: third_party\opentelemetry-cpp\third_party\googletest + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\googletest\LICENSE + +Name: third_party\opentelemetry-cpp\third_party\ms-gsl +License: MIT +Files: third_party\opentelemetry-cpp\third_party\ms-gsl + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\ms-gsl\LICENSE + +Name: third_party\opentelemetry-cpp\third_party\opentelemetry-proto +License: Apache-2.0 +Files: third_party\opentelemetry-cpp\third_party\opentelemetry-proto + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\opentelemetry-proto\LICENSE + +Name: third_party\opentelemetry-cpp\third_party\opentracing-cpp +License: Apache-2.0 +Files: third_party\opentelemetry-cpp\third_party\opentracing-cpp + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\opentracing-cpp\LICENSE + +Name: third_party\opentelemetry-cpp\third_party\opentracing-cpp\3rd_party\include\opentracing\catch2 +License: BSL-1.0 +Files: third_party\opentelemetry-cpp\third_party\opentracing-cpp\3rd_party\include\opentracing\catch2 + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\opentracing-cpp\3rd_party\include\opentracing\catch2\LICENSE.txt + +Name: third_party\opentelemetry-cpp\third_party\opentracing-cpp\3rd_party\include\opentracing\expected +License: MIT +Files: third_party\opentelemetry-cpp\third_party\opentracing-cpp\3rd_party\include\opentracing\expected + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\opentracing-cpp\3rd_party\include\opentracing\expected\LICENSE + +Name: third_party\opentelemetry-cpp\third_party\opentracing-cpp\3rd_party\include\opentracing\variant +License: BSD-3-Clause +Files: third_party\opentelemetry-cpp\third_party\opentracing-cpp\3rd_party\include\opentracing\variant + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\opentracing-cpp\3rd_party\include\opentracing\variant\LICENSE + +Name: third_party\opentelemetry-cpp\third_party\prometheus-cpp +License: MIT +Files: third_party\opentelemetry-cpp\third_party\prometheus-cpp + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\prometheus-cpp\LICENSE + +Name: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\civetweb\examples\rest\cJSON +License: MIT +Files: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\civetweb\examples\rest\cJSON + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\civetweb\examples\rest\cJSON\LICENSE + +Name: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\civetweb\src\third_party\duktape-1.5.2 +License: MIT +Files: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\civetweb\src\third_party\duktape-1.5.2 + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\civetweb\src\third_party\duktape-1.5.2\LICENSE.txt + +Name: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\civetweb\src\third_party\duktape-1.8.0 +License: MIT +Files: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\civetweb\src\third_party\duktape-1.8.0 + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\civetweb\src\third_party\duktape-1.8.0\LICENSE.txt + +Name: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\googletest +License: BSD-3-Clause +Files: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\googletest + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\googletest\LICENSE + +Name: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\googletest\googlemock\scripts\generator +License: Apache-2.0 +Files: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\googletest\googlemock\scripts\generator + For details, see the files concatenated below: third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\googletest\googlemock\scripts\generator\LICENSE + +Name: third_party\opentelemetry-cpp\tools\vcpkg +License: MIT +Files: third_party\opentelemetry-cpp\tools\vcpkg + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\LICENSE.txt + +Name: third_party\opentelemetry-cpp\tools\vcpkg\ports\boost-vcpkg-helpers +License: MIT +Files: third_party\opentelemetry-cpp\tools\vcpkg\ports\boost-vcpkg-helpers + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\ports\boost-vcpkg-helpers\LICENSE.txt + +Name: third_party\opentelemetry-cpp\tools\vcpkg\ports\ffnvcodec +License: MIT with exception +Files: third_party\opentelemetry-cpp\tools\vcpkg\ports\ffnvcodec + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\ports\ffnvcodec\LICENSE.txt + +Name: third_party\opentelemetry-cpp\tools\vcpkg\ports\gettimeofday +License: Apache-2.0 +Files: third_party\opentelemetry-cpp\tools\vcpkg\ports\gettimeofday + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\ports\gettimeofday\LICENSE + +Name: third_party\opentelemetry-cpp\tools\vcpkg\ports\hungarian +License: Permissive (free to use) +Files: third_party\opentelemetry-cpp\tools\vcpkg\ports\hungarian + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\ports\hungarian\LICENSE.txt + +Name: third_party\opentelemetry-cpp\tools\vcpkg\ports\irrlicht +License: MIT +Files: third_party\opentelemetry-cpp\tools\vcpkg\ports\irrlicht + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\ports\irrlicht\LICENSE.txt + +Name: third_party\opentelemetry-cpp\tools\vcpkg\ports\libstemmer +License: BSD-3-Clause +Files: third_party\opentelemetry-cpp\tools\vcpkg\ports\libstemmer + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\ports\libstemmer\LICENSE + +Name: third_party\opentelemetry-cpp\tools\vcpkg\ports\pdcurses +License: Public Domain for core +Files: third_party\opentelemetry-cpp\tools\vcpkg\ports\pdcurses + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\ports\pdcurses\LICENSE + +Name: third_party\opentelemetry-cpp\tools\vcpkg\ports\physac +License: MIT +Files: third_party\opentelemetry-cpp\tools\vcpkg\ports\physac + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\ports\physac\LICENSE + +Name: third_party\opentelemetry-cpp\tools\vcpkg\ports\pqp +License: Apache-2.0 +Files: third_party\opentelemetry-cpp\tools\vcpkg\ports\pqp + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\ports\pqp\LICENSE + +Name: third_party\opentelemetry-cpp\tools\vcpkg\ports\sigslot +License: Public Domain +Files: third_party\opentelemetry-cpp\tools\vcpkg\ports\sigslot + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\ports\sigslot\LICENSE + +Name: third_party\opentelemetry-cpp\tools\vcpkg\ports\tensorflow-common +License: MIT +Files: third_party\opentelemetry-cpp\tools\vcpkg\ports\tensorflow-common + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\ports\tensorflow-common\LICENSE.txt + +Name: third_party\opentelemetry-cpp\tools\vcpkg\ports\vulkan +License: Apache-2.0 with exception +Files: third_party\opentelemetry-cpp\tools\vcpkg\ports\vulkan + For details, see the files concatenated below: third_party\opentelemetry-cpp\tools\vcpkg\ports\vulkan\LICENSE.txt + +Name: third_party\protobuf +License: BSD-3-Clause +Files: third_party\protobuf + For details, see the files concatenated below: third_party\protobuf\LICENSE + +Name: third_party\protobuf\third_party\benchmark +License: Apache-2.0 +Files: third_party\protobuf\third_party\benchmark + For details, see the files concatenated below: third_party\protobuf\third_party\benchmark\LICENSE + +Name: third_party\protobuf\third_party\googletest +License: BSD-3-Clause +Files: third_party\protobuf\third_party\googletest + For details, see the files concatenated below: third_party\protobuf\third_party\googletest\LICENSE + +Name: third_party\protobuf\third_party\googletest\googlemock +License: BSD-3-Clause +Files: third_party\protobuf\third_party\googletest\googlemock + For details, see the files concatenated below: third_party\protobuf\third_party\googletest\googlemock\LICENSE + +Name: third_party\protobuf\third_party\googletest\googlemock\scripts\generator +License: Apache-2.0 +Files: third_party\protobuf\third_party\googletest\googlemock\scripts\generator + For details, see the files concatenated below: third_party\protobuf\third_party\googletest\googlemock\scripts\generator\LICENSE + +Name: third_party\protobuf\third_party\googletest\googletest +License: BSD-3-Clause +Files: third_party\protobuf\third_party\googletest\googletest + For details, see the files concatenated below: third_party\protobuf\third_party\googletest\googletest\LICENSE + +Name: third_party\psimd +License: MIT +Files: third_party\psimd + For details, see the files concatenated below: third_party\psimd\LICENSE + +Name: third_party\pthreadpool +License: BSD-2-Clause +Files: third_party\pthreadpool + For details, see the files concatenated below: third_party\pthreadpool\LICENSE + +Name: third_party\pybind11 +License: BSD-3-Clause +Files: third_party\pybind11 + For details, see the files concatenated below: third_party\pybind11\LICENSE + +Name: third_party\python-peachpy +License: BSD-2-Clause +Files: third_party\python-peachpy + For details, see the files concatenated below: third_party\python-peachpy\LICENSE.rst + +Name: third_party\sleef +License: BSL-1.0 +Files: third_party\sleef + For details, see the files concatenated below: third_party\sleef\LICENSE.txt + +Name: third_party\tensorpipe +License: BSD-3-Clause +Files: third_party\tensorpipe + For details, see the files concatenated below: third_party\tensorpipe\LICENSE.txt + +Name: third_party\tensorpipe\third_party\googletest +License: BSD-3-Clause +Files: third_party\tensorpipe\third_party\googletest + For details, see the files concatenated below: third_party\tensorpipe\third_party\googletest\LICENSE + +Name: third_party\tensorpipe\third_party\googletest\googlemock +License: BSD-3-Clause +Files: third_party\tensorpipe\third_party\googletest\googlemock + For details, see the files concatenated below: third_party\tensorpipe\third_party\googletest\googlemock\LICENSE + +Name: third_party\tensorpipe\third_party\googletest\googlemock\scripts\generator +License: Apache-2.0 +Files: third_party\tensorpipe\third_party\googletest\googlemock\scripts\generator + For details, see the files concatenated below: third_party\tensorpipe\third_party\googletest\googlemock\scripts\generator\LICENSE + +Name: third_party\tensorpipe\third_party\googletest\googletest +License: BSD-3-Clause +Files: third_party\tensorpipe\third_party\googletest\googletest + For details, see the files concatenated below: third_party\tensorpipe\third_party\googletest\googletest\LICENSE + +Name: third_party\tensorpipe\third_party\libnop +License: Apache-2.0 +Files: third_party\tensorpipe\third_party\libnop + For details, see the files concatenated below: third_party\tensorpipe\third_party\libnop\LICENSE + +Name: third_party\tensorpipe\third_party\libuv +License: MIT +Files: third_party\tensorpipe\third_party\libuv + For details, see the files concatenated below: third_party\tensorpipe\third_party\libuv\LICENSE + +Name: third_party\tensorpipe\third_party\pybind11 +License: BSD-3-Clause +Files: third_party\tensorpipe\third_party\pybind11 + For details, see the files concatenated below: third_party\tensorpipe\third_party\pybind11\LICENSE + +third_party\FP16\LICENSE +------------------------ +The MIT License (MIT) + +Copyright (c) 2017 Facebook Inc. +Copyright (c) 2017 Georgia Institute of Technology +Copyright 2019 Google LLC + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +third_party\FXdiv\LICENSE +------------------------- +The MIT License (MIT) + +Copyright (c) 2017 Facebook Inc. +Copyright (c) 2016-2017 Marat Dukhan + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +third_party\NNPACK\LICENSE +-------------------------- +Copyright (c) 2017 Facebook Inc. +Copyright (c) 2015-2017, Georgia Institute of Technology +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\NVTX\LICENSE.txt +---------------------------- + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +--- LLVM Exceptions to the Apache 2.0 License ---- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into an Object form of such source code, you +may redistribute such embedded portions in such Object form without complying +with the conditions of Sections 4(a), 4(b) and 4(d) of the License. + +In addition, if you combine or link compiled forms of this Software with +software that is licensed under the GPLv2 ("Combined Software") and if a +court of competent jurisdiction determines that the patent provision (Section +3), the indemnity provision (Section 9) or other Section of the License +conflicts with the conditions of the GPLv2, you may retroactively and +prospectively choose to deem waived or otherwise exclude such Section(s) of +the License, but only in their entirety and only with respect to the Combined +Software. + + + +third_party\NVTX\python\LICENSE.txt +----------------------------------- + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +--- LLVM Exceptions to the Apache 2.0 License ---- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into an Object form of such source code, you +may redistribute such embedded portions in such Object form without complying +with the conditions of Sections 4(a), 4(b) and 4(d) of the License. + +In addition, if you combine or link compiled forms of this Software with +software that is licensed under the GPLv2 ("Combined Software") and if a +court of competent jurisdiction determines that the patent provision (Section +3), the indemnity provision (Section 9) or other Section of the License +conflicts with the conditions of the GPLv2, you may retroactively and +prospectively choose to deem waived or otherwise exclude such Section(s) of +the License, but only in their entirety and only with respect to the Combined +Software. + + + +third_party\VulkanMemoryAllocator\LICENSE.txt +--------------------------------------------- +Copyright (c) 2017-2022 Advanced Micro Devices, Inc. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +third_party\XNNPACK\LICENSE +--------------------------- +BSD License + +For XNNPACK software + +Copyright (c) Facebook, Inc. and its affiliates. All rights reserved. +Copyright 2019 Google LLC + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name Facebook nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\benchmark\LICENSE +----------------------------- + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\composable_kernel\LICENSE +------------------------------------- +Copyright (c) 2018- , Advanced Micro Devices, Inc. (Chao Liu, Jing Zhang) +Copyright (c) 2019- , Advanced Micro Devices, Inc. (Letao Qin, Qianfeng Zhang, Liang Huang, Shaojie Wang) +Copyright (c) 2022- , Advanced Micro Devices, Inc. (Anthony Chang, Chunyu Lai, Illia Silin, Adam Osewski, Poyen Chen, Jehandad Khan) +Copyright (c) 2019-2021, Advanced Micro Devices, Inc. (Hanwen Chang) +Copyright (c) 2019-2020, Advanced Micro Devices, Inc. (Tejash Shah) +Copyright (c) 2020 , Advanced Micro Devices, Inc. (Xiaoyan Zhou) +Copyright (c) 2021-2022, Advanced Micro Devices, Inc. (Jianfeng Yan) + +SPDX-License-Identifier: MIT +Copyright (c) 2018-2024, Advanced Micro Devices, Inc. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +third_party\cpp-httplib\LICENSE +------------------------------- +The MIT License (MIT) + +Copyright (c) 2017 yhirose + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + +third_party\cpuinfo\LICENSE +--------------------------- +Copyright (c) 2019 Google LLC +Copyright (c) 2017-2018 Facebook Inc. +Copyright (C) 2012-2017 Georgia Institute of Technology +Copyright (C) 2010-2012 Marat Dukhan + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\cpuinfo\deps\clog\LICENSE +------------------------------------- +Copyright (C) 2018 Marat Dukhan +Copyright (c) 2017-2018 Facebook Inc. +Copyright (c) 2017 Georgia Institute of Technology + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\cudnn_frontend\LICENSE.txt +-------------------------------------- +/* + * Copyright (c) 2020, NVIDIA CORPORATION. All rights reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ + + +third_party\cutlass\LICENSE.txt +------------------------------- +Copyright (c) 2017 - 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. +SPDX-License-Identifier: BSD-3-Clause + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\cutlass\python\LICENSE.txt +-------------------------------------- +Copyright (c) 2017 - 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. +SPDX-License-Identifier: BSD-3-Clause + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\eigen\COPYING.BSD +----------------------------- +/* + Copyright (c) 2011, Intel Corporation. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of Intel Corporation nor the names of its contributors may + be used to endorse or promote products derived from this software without + specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + + +third_party\fbgemm\LICENSE +-------------------------- +BSD License + +For FBGEMM software + +Copyright (c) Meta Platforms, Inc. and affiliates. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name Facebook nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\fbgemm\third_party\cpuinfo\LICENSE +---------------------------------------------- +Copyright (c) 2019 Google LLC +Copyright (c) 2017-2018 Facebook Inc. +Copyright (C) 2012-2017 Georgia Institute of Technology +Copyright (C) 2010-2012 Marat Dukhan + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\fbgemm\third_party\cpuinfo\deps\clog\LICENSE +-------------------------------------------------------- +Copyright (C) 2018 Marat Dukhan +Copyright (c) 2017-2018 Facebook Inc. +Copyright (c) 2017 Georgia Institute of Technology + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\fbgemm\third_party\cutlass\LICENSE.txt +-------------------------------------------------- +Copyright (c) 2017 - 2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved. +SPDX-License-Identifier: BSD-3-Clause + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\fbgemm\third_party\googletest\LICENSE +------------------------------------------------- +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\fbgemm\third_party\googletest\googlemock\LICENSE +------------------------------------------------------------ +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\fbgemm\third_party\googletest\googlemock\scripts\generator\LICENSE +------------------------------------------------------------------------------ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [2007] Neal Norwitz + Portions Copyright [2007] Google Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\fbgemm\third_party\googletest\googletest\LICENSE +------------------------------------------------------------ +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\fbgemm\third_party\hipify_torch\LICENSE.txt +------------------------------------------------------- +MIT License + +Copyright (c) 2017 AMD Compute Libraries + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +third_party\flatbuffers\LICENSE +------------------------------- + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\flatbuffers\dart\LICENSE +------------------------------------ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2014 Google Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\flatbuffers\swift\LICENSE +------------------------------------- + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\fmt\LICENSE +----------------------- +Copyright (c) 2012 - present, Victor Zverovich and {fmt} contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--- Optional exception to the license --- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into a machine-executable object form of such +source code, you may redistribute such embedded portions in such object form +without including the above copyright and permission notices. + + +third_party\gemmlowp\gemmlowp\LICENSE +------------------------------------- + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\gloo\LICENSE +------------------------ +BSD License + +For Gloo software + +Copyright (c) 2017-present, Facebook, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name Facebook nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\googletest\LICENSE +------------------------------ +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\ideep\LICENSE +------------------------- +Copyright (c) 2018 Intel Corporation. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +third_party\ideep\mkl-dnn\LICENSE +--------------------------------- + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + ============================================================================ + + Copyright 2016-2023 Intel Corporation + Copyright 2018 YANDEX LLC + Copyright 2019-2023 FUJITSU LIMITED + Copyright 2020-2023 Arm Ltd. and affiliates + Copyright 2020-2022 Codeplay Software Limited + Copyright 2021 Alanna Tempest + Copyright 2022-2023 IBM Corporation + Copyright 2023 KNS Group LLC (YADRO) + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + This distribution includes third party software ("third party programs"). + This third party software, even if included with the distribution of + the Intel software, may be governed by separate license terms, including + without limitation, third party license terms, other Intel software license + terms, and open source software license terms. These separate license terms + govern your use of the third party programs as set forth in the + "THIRD-PARTY-PROGRAMS" file. + + +third_party\ideep\mkl-dnn\tests\gtests\gtest\LICENSE +---------------------------------------------------- +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\kineto\LICENSE +-------------------------- +BSD License + +For Kineto software + +Copyright (c) Meta Platforms, Inc. and affiliates. + +All contributions by Microsoft: +Copyright (c) Microsoft Corporation. (The Azure AI Platform team) + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name Meta nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\kineto\libkineto\third_party\dynolog\LICENSE +-------------------------------------------------------- +MIT License + +Copyright (c) Facebook, Inc. and its affiliates. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +third_party\kineto\libkineto\third_party\dynolog\third_party\DCGM\LICENSE +------------------------------------------------------------------------- +Copyright (c) 2022, NVIDIA CORPORATION. All rights reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + + +third_party\kineto\libkineto\third_party\dynolog\third_party\DCGM\testing\python3\libs_3rdparty\colorama\LICENSE.txt +-------------------------------------------------------------------------------------------------------------------- +Copyright (c) 2010 Jonathan Hartley + +Released under the New BSD license (reproduced below), or alternatively you may +use this software under any OSI approved open source license such as those at +http://opensource.org/licenses/alphabetical + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name(s) of the copyright holders, nor those of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + +third_party\kineto\libkineto\third_party\dynolog\third_party\cpr\LICENSE +------------------------------------------------------------------------ +This license applies to everything except the contents of the "test" +directory and its subdirectories. + +MIT License + +Copyright (c) 2017-2021 Huu Nguyen +Copyright (c) 2022 libcpr and many other contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +third_party\kineto\libkineto\third_party\dynolog\third_party\cpr\test\LICENSE +----------------------------------------------------------------------------- +This license applies to everything inside this directory and all +subdirectories. + + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. + +third_party\kineto\libkineto\third_party\dynolog\third_party\fmt\LICENSE.rst +---------------------------------------------------------------------------- +Copyright (c) 2012 - present, Victor Zverovich + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--- Optional exception to the license --- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into a machine-executable object form of such +source code, you may redistribute such embedded portions in such object form +without including the above copyright and permission notices. + + +third_party\kineto\libkineto\third_party\dynolog\third_party\googletest\LICENSE +------------------------------------------------------------------------------- +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\kineto\libkineto\third_party\dynolog\third_party\json\test\thirdparty\doctest\LICENSE.txt +----------------------------------------------------------------------------------------------------- +The MIT License (MIT) + +Copyright (c) 2016-2021 Viktor Kirilov + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +third_party\kineto\libkineto\third_party\dynolog\third_party\json\third_party\cpplint\LICENSE +--------------------------------------------------------------------------------------------- +cpplint.py and its corresponding unit tests are Copyright (C) 2009 Google Inc. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\kineto\libkineto\third_party\dynolog\third_party\pfs\LICENSE +------------------------------------------------------------------------ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + Copyright 2020-present Daniel Trugman + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\kineto\libkineto\third_party\fmt\LICENSE +---------------------------------------------------- +Copyright (c) 2012 - present, Victor Zverovich and {fmt} contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +--- Optional exception to the license --- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into a machine-executable object form of such +source code, you may redistribute such embedded portions in such object form +without including the above copyright and permission notices. + + +third_party\kineto\libkineto\third_party\googletest\LICENSE +----------------------------------------------------------- +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\kineto\libkineto\third_party\googletest\googlemock\LICENSE +---------------------------------------------------------------------- +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\kineto\libkineto\third_party\googletest\googlemock\scripts\generator\LICENSE +---------------------------------------------------------------------------------------- + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [2007] Neal Norwitz + Portions Copyright [2007] Google Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\kineto\libkineto\third_party\googletest\googletest\LICENSE +---------------------------------------------------------------------- +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\kineto\tb_plugin\LICENSE +------------------------------------ +BSD License + +For Kineto software + +Copyright (c) Facebook, Inc. and its affiliates. All rights reserved. + +All contributions by Microsoft: +Copyright (c) Microsoft Corporation. (The Azure AI Platform team) + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name Facebook nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\mimalloc\LICENSE +---------------------------- +MIT License + +Copyright (c) 2018-2021 Microsoft Corporation, Daan Leijen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +third_party\miniz-3.0.2\LICENSE +------------------------------- +Copyright 2013-2014 RAD Game Tools and Valve Software +Copyright 2010-2014 Rich Geldreich and Tenacious Software LLC + +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +third_party\nccl\nccl\LICENSE.txt +--------------------------------- + + Copyright (c) 2015-2020, NVIDIA CORPORATION. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of NVIDIA CORPORATION, Lawrence Berkeley National + Laboratory, the U.S. Department of Energy, nor the names of their + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY + EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY + OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + The U.S. Department of Energy funded the development of this software + under subcontract 7078610 with Lawrence Berkeley National Laboratory. + + +This code also includes files from the NVIDIA Tools Extension SDK project. + +See: + + https://github.com/NVIDIA/NVTX + +for more information and license details. + + +third_party\nlohmann\tests\thirdparty\doctest\LICENSE.txt +--------------------------------------------------------- +The MIT License (MIT) + +Copyright (c) 2016-2021 Viktor Kirilov + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +third_party\nlohmann\tools\cpplint\LICENSE +------------------------------------------ +cpplint.py and its corresponding unit tests are Copyright (C) 2009 Google Inc. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\onnx\LICENSE +------------------------ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\onnx\third_party\pybind11\LICENSE +--------------------------------------------- +Copyright (c) 2016 Wenzel Jakob , All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Please also refer to the file .github/CONTRIBUTING.md, which clarifies licensing of +external contributions to this project including patches, pull requests, etc. + + +third_party\opentelemetry-cpp\LICENSE +------------------------------------- + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\opentelemetry-cpp\exporters\etw\include\opentelemetry\exporters\etw\LICENSE +--------------------------------------------------------------------------------------- +TraceLogging Dynamic for Windows + +Copyright (c) Microsoft Corporation. All rights reserved. + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED *AS IS*, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +third_party\opentelemetry-cpp\third_party\benchmark\LICENSE +----------------------------------------------------------- + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\opentelemetry-cpp\third_party\googletest\LICENSE +------------------------------------------------------------ +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\opentelemetry-cpp\third_party\ms-gsl\LICENSE +-------------------------------------------------------- +Copyright (c) 2015 Microsoft Corporation. All rights reserved. + +This code is licensed under the MIT License (MIT). + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +third_party\opentelemetry-cpp\third_party\opentelemetry-proto\LICENSE +--------------------------------------------------------------------- + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\opentelemetry-cpp\third_party\opentracing-cpp\LICENSE +----------------------------------------------------------------- + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright The OpenTracing Authors + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +third_party\opentelemetry-cpp\third_party\opentracing-cpp\3rd_party\include\opentracing\catch2\LICENSE.txt +---------------------------------------------------------------------------------------------------------- +Boost Software License - Version 1.0 - August 17th, 2003 + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + + +third_party\opentelemetry-cpp\third_party\opentracing-cpp\3rd_party\include\opentracing\expected\LICENSE +-------------------------------------------------------------------------------------------------------- +The MIT License (MIT) + +Copyright (c) 2015 Martin Moene +Copyright (c) 2015 Microsoft Corporation. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + + +third_party\opentelemetry-cpp\third_party\opentracing-cpp\3rd_party\include\opentracing\variant\LICENSE +------------------------------------------------------------------------------------------------------- +Copyright (c) MapBox +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +- Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +- Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. +- Neither the name "MapBox" nor the names of its contributors may be + used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +third_party\opentelemetry-cpp\third_party\prometheus-cpp\LICENSE +---------------------------------------------------------------- +MIT License + +Copyright (c) 2016-2021 Jupp Mueller +Copyright (c) 2017-2022 Gregor Jasny + +And many contributors, see +https://github.com/jupp0r/prometheus-cpp/graphs/contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\civetweb\examples\rest\cJSON\LICENSE +------------------------------------------------------------------------------------------------------ +Copyright (c) 2009-2017 Dave Gamble and cJSON contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + + +third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\civetweb\src\third_party\duktape-1.5.2\LICENSE.txt +-------------------------------------------------------------------------------------------------------------------- +=============== +Duktape license +=============== + +(http://opensource.org/licenses/MIT) + +Copyright (c) 2013-2016 by Duktape authors (see AUTHORS.rst) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\civetweb\src\third_party\duktape-1.8.0\LICENSE.txt +-------------------------------------------------------------------------------------------------------------------- +=============== +Duktape license +=============== + +(http://opensource.org/licenses/MIT) + +Copyright (c) 2013-2017 by Duktape authors (see AUTHORS.rst) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\googletest\LICENSE +------------------------------------------------------------------------------------ +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\opentelemetry-cpp\third_party\prometheus-cpp\3rdparty\googletest\googlemock\scripts\generator\LICENSE +----------------------------------------------------------------------------------------------------------------- + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [2007] Neal Norwitz + Portions Copyright [2007] Google Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\opentelemetry-cpp\tools\vcpkg\LICENSE.txt +----------------------------------------------------- +MIT License + +Copyright (c) Microsoft Corporation + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be included in all copies +or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF +CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE +OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +third_party\opentelemetry-cpp\tools\vcpkg\ports\boost-vcpkg-helpers\LICENSE.txt +------------------------------------------------------------------------------- +Copyright (c) Microsoft Corporation + +All rights reserved. + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED *AS IS*, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +third_party\opentelemetry-cpp\tools\vcpkg\ports\ffnvcodec\LICENSE.txt +--------------------------------------------------------------------- +GNU LESSER GENERAL PUBLIC LICENSE +Version 2.1, February 1999 + +Copyright (C) 1991, 1999 Free Software Foundation, Inc. +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] +Preamble +The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. + +This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. + +When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. + +To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. + +For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. + +We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. + +To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. + +Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. + +Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. + +When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. + +We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. + +For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. + +In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. + +Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. + +The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION +0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". + +A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. + +The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) + +"Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. + +Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. + +1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. + +You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: + +a) The modified work must itself be a software library. +b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. +c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. +d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. +(For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. + +3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. + +Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. + +This option is useful when you wish to copy part of the code of the Library into a program that is not a library. + +4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. + +If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. + +5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. + +However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. + +When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. + +If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) + +Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. + +6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. + +You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: + +a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) +b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. +c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. +d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. +e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. +For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. + +It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. + +7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: + +a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. +b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. +8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. + +9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. + +10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. + +11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. + +This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. + +12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. + +13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. + +14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. + +NO WARRANTY + +15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +END OF TERMS AND CONDITIONS +How to Apply These Terms to Your New Libraries +If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). + +To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. + +one line to give the library's name and an idea of what it does. +Copyright (C) year name of author + +This library is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public +License as published by the Free Software Foundation; either +version 2.1 of the License, or (at your option) any later version. + +This library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: + +Yoyodyne, Inc., hereby disclaims all copyright interest in +the library `Frob' (a library for tweaking knobs) written +by James Random Hacker. + +signature of Ty Coon, 1 April 1990 +Ty Coon, President of Vice +That's all there is to it! + +third_party\opentelemetry-cpp\tools\vcpkg\ports\gettimeofday\LICENSE +-------------------------------------------------------------------- +/* + * Copied from PostgreSQL source: + * http://doxygen.postgresql.org/gettimeofday_8c_source.html + * + */ + +/* + * gettimeofday.c + * Win32 gettimeofday() replacement + * + * src/port/gettimeofday.c + * + * Copyright (c) 2003 SRA, Inc. + * Copyright (c) 2003 SKC, Inc. + * + * Permission to use, copy, modify, and distribute this software and + * its documentation for any purpose, without fee, and without a + * written agreement is hereby granted, provided that the above + * copyright notice and this paragraph and the following two + * paragraphs appear in all copies. + * + * IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, + * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING + * LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS + * DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * + * THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS + * IS" BASIS, AND THE AUTHOR HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, + * SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + */ + + +third_party\opentelemetry-cpp\tools\vcpkg\ports\hungarian\LICENSE.txt +--------------------------------------------------------------------- +/******************************************************************** + ******************************************************************** + ** + ** libhungarian by Cyrill Stachniss, 2004 + ** + ** + ** Solving the Minimum Assignment Problem using the + ** Hungarian Method. + ** + ** ** This file may be freely copied and distributed! ** + ** + ** Parts of the used code was originally provided by the + ** "Stanford GraphGase", but I made changes to this code. + ** As asked by the copyright node of the "Stanford GraphGase", + ** I hereby proclaim that this file are *NOT* part of the + ** "Stanford GraphGase" distrubition! + ** + ** This file is distributed in the hope that it will be useful, + ** but WITHOUT ANY WARRANTY; without even the implied + ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + ** PURPOSE. + ** + ******************************************************************** + ********************************************************************/ + + +third_party\opentelemetry-cpp\tools\vcpkg\ports\irrlicht\LICENSE.txt +-------------------------------------------------------------------- +The Irrlicht Engine License +=========================== + +Copyright (C) 2002-2015 Nikolaus Gebhardt + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgement in the product documentation would be + appreciated but is not required. +2. Altered source versions must be clearly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. + +third_party\opentelemetry-cpp\tools\vcpkg\ports\libstemmer\LICENSE +------------------------------------------------------------------ +Snowball - License +Except where explicitly noted, all the software given out on this Snowball site is covered by the 3-clause BSD License: + +Copyright (c) 2001, Dr Martin Porter, +Copyright (c) 2002, Richard Boulton. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Essentially, all this means is that you can do what you like with the code, except claim another Copyright for it, or claim that it is issued under a different license. The software is also issued without warranties, which means that if anyone suffers through its use, they cannot come back and sue you. You also have to alert anyone to whom you give the Snowball software to the fact that it is covered by the BSD license. + +We have not bothered to insert the licensing arrangement into the text of the Snowball software. + + +third_party\opentelemetry-cpp\tools\vcpkg\ports\pdcurses\LICENSE +---------------------------------------------------------------- +The core package is in the public domain, but small portions of PDCurses are subject to copyright under various licenses. + +The win32 files are released to the public domain. + +If you use PDCurses in an application, an acknowledgement would be appreciated, but is not mandatory. If you make corrections or enhancements to PDCurses, please forward them to the current maintainer for the benefit of other users. + +This software is provided AS IS with NO WARRANTY whatsoever. + +third_party\opentelemetry-cpp\tools\vcpkg\ports\physac\LICENSE +-------------------------------------------------------------- +MIT License + +Copyright (c) 2022 Víctor Fisac + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +third_party\opentelemetry-cpp\tools\vcpkg\ports\pqp\LICENSE +----------------------------------------------------------- +Copyright 1999 University of North Carolina at Chapel Hill. +All rights reserved. + +Permission to use, copy, modify, and distribute this software and its +documentation for educational, research, and non-profit purposes, without fee, +and without a written agreement is hereby granted, provided that the above +copyright notice and the following three paragraphs appear in all copies. + +IN NO EVENT SHALL THE UNIVERSITY OF NORTH CAROLINA AT CHAPEL HILL BE LIABLE TO +ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, +INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS +DOCUMENTATION, EVEN IF THE UNIVERSITY OF NORTH CAROLINA AT CHAPEL HILL HAS +BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +THE UNIVERSITY OF NORTH CAROLINA AT CHAPEL HILL SPECIFICALLY DISCLAIMS ANY +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED +HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF NORTH CAROLINA AT +CHAPEL HILL HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, +ENHANCEMENTS, OR MODIFICATIONS. + +The authors may be contacted via: + +US Mail: Eric Larsen, Stefan Gottschalk + Department of Computer Science + Sitterson Hall, CB #3175 + University of North Carolina + Chapel Hill, NC 27599-3175 + +Phone: (919) 962-1749 + +Email: geom@cs.unc.edu + +third_party\opentelemetry-cpp\tools\vcpkg\ports\sigslot\LICENSE +--------------------------------------------------------------- +License +The sigslot library has been placed in the public domain. This means that you are free to use it however you like. + +The author takes no responsibility or liability of any kind for any use that you may make of this library. + +If you screw up, it's your fault. + +If the library screws up, you got it for free, so you should have tested it better - it's still your responsibility. + +third_party\opentelemetry-cpp\tools\vcpkg\ports\tensorflow-common\LICENSE.txt +----------------------------------------------------------------------------- +Copyright (c) Microsoft Corporation + +All rights reserved. + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED *AS IS*, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +third_party\opentelemetry-cpp\tools\vcpkg\ports\vulkan\LICENSE.txt +------------------------------------------------------------------ +/* +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + + +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + +"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + +"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + +"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + +"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + +"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + +"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + +"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + +"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + +"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + +2. Grant of Copyright License. + +Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. + +Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + +4. Redistribution. + +You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + +You must give any other recipients of the Work or Derivative Works a copy of this License; and +You must cause any modified files to carry prominent notices stating that You changed the files; and +You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and +If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. +You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + +5. Submission of Contributions. + +Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + +6. Trademarks. + +This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. + +Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. + +In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. + +While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +=============================================================================================================================================== + +/Copyright (C) 2012 LunarG, Inc. +//All rights reserved. +// +//Redistribution and use in source and binary forms, with or without +//modification, are permitted provided that the following conditions +//are met: +// +// Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// +// Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following +// disclaimer in the documentation and/or other materials provided +// with the distribution. +// +// Neither the name of LunarG Inc. nor the names of its +// contributors may be used to endorse or promote products derived +// from this software without specific prior written permission. +// +//THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +//"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +//LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +//FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +//COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +//INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +//BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +//LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +//CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +//LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +//ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +//POSSIBILITY OF SUCH DAMAGE. + +=============================================================================================================================================== + +#============================================================================= +# Copyright 2007-2009 Kitware, Inc. +# Copyright 2007-2008 Miguel A. Figueroa-Villanueva +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright_cmake.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= +# (To distributed this file outside of CMake, substitute the full +# License text for the above reference.) + + +============================================================================================================================================== + +// +// Copyright (C) 2015-2018 Google, Inc. +// Copyright (C) +// +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions +// are met: +// +// Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// +// Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following +// disclaimer in the documentation and/or other materials provided +// with the distribution. +// +// Neither the name of 3Dlabs Inc. Ltd. nor the names of its +// contributors may be used to endorse or promote products derived +// from this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +// COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +// ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +// POSSIBILITY OF SUCH DAMAGE. +// + +========================================================================================================================================== + +Note: This license has also been called the "New BSD License" or "Modified BSD License". See also the 2-clause BSD License. +Copyright +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. +3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +========================================================================================================================================== + +/* +* xxHash - Fast Hash algorithm +* Copyright (C) 2012-2016, Yann Collet +* +* BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions are +* met: +* +* * Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* * Redistributions in binary form must reproduce the above +* copyright notice, this list of conditions and the following disclaimer +* in the documentation and/or other materials provided with the +* distribution. +* +* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +* +* You can contact the author at : +* - xxHash homepage: http://www.xxhash.com +* - xxHash source repository : https://github.com/Cyan4973/xxHash +*/ + + +=========================================================================================================================================== + +# Copyright (C) 2018 Google, Inc. +# +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# +# Neither the name of Google Inc. nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. + +========================================================================================================================================== + +/* A Bison parser, made by GNU Bison 3.0.4. */ + +/* Bison implementation for Yacc-like parsers in C +Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc. +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. +You should have received a copy of the GNU General Public License +along with this program. If not, see . */ + +/* As a special exception, you may create a larger work that contains +part or all of the Bison parser skeleton and distribute that work +under terms of your choice, so long as that work isn't itself a +parser generator using the skeleton or a modified version thereof +as a parser skeleton. Alternatively, if you modify or redistribute +the parser skeleton itself, you may (at your option) remove this +special exception, which will cause the skeleton and the resulting +Bison output files to be licensed under the GNU General Public +License without this special exception. +This special exception was added by the Free Software Foundation in +version 2.2 of Bison. */ + +/* C LALR(1) parser skeleton written by Richard Stallman, by +simplifying the original so-called "semantic" parser. */ + +/* All symbols defined below should begin with yy or YY, to avoid +infringing on user name space. This should be done even for local +variables, as they might otherwise be expanded by user macros. +There are some unavoidable exceptions within include files to +define necessary library symbols; they are noted "INFRINGES ON +USER NAME SPACE" below. */ + +============================================================================================================================================== + +copyright : [ +Copyright (c) 2017 The Khronos Group Inc., +, +Permission is hereby granted, free of charge, to any person obtaining a copy, +of this software and/or associated documentation files (the \Materials\"),", +to deal in the Materials without restriction, including without limitation, +the rights to use, copy, modify, merge, publish, distribute, sublicense,, +and/or sell copies of the Materials, and to permit persons to whom the, +Materials are furnished to do so, subject to the following conditions:, +, +The above copyright notice and this permission notice shall be included in, +all copies or substantial portions of the Materials., +, +MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS, +STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND, +HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ , +, +THE MATERIALS ARE PROVIDED \AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS", +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL, +THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER, +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING, +FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS, +IN THE MATERIALS. + +============================================================================================================================================= + +CMake - Cross Platform Makefile Generator +Copyright 2000-2009 Kitware, Inc., Insight Software Consortium +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +* Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +* Neither the names of Kitware, Inc., the Insight Software Consortium, +nor the names of their contributors may be used to endorse or promote +products derived from this software without specific prior written +permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +AS IS AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +------------------------------------------------------------------------------ + +The above copyright and license notice applies to distributions of +CMake in source and binary form. Some source files contain additional +notices of original copyright by their contributors; see each source +for details. Third-party software packages supplied with CMake under +compatible licenses provide their own copyright notices documented in +corresponding subdirectories. + +------------------------------------------------------------------------------ + +CMake was initially developed by Kitware with the following sponsorship: + +* National Library of Medicine at the National Institutes of Health +as part of the Insight Segmentation and Registration Toolkit (ITK). + +* US National Labs (Los Alamos, Livermore, Sandia) ASC Parallel +Visualization Initiative. + +* National Alliance for Medical Image Computing (NAMIC) is funded by the +National Institutes of Health through the NIH Roadmap for Medical Research, +Grant U54 EB005149. + +* Kitware, Inc. + +======================================================================================================================================== + +The authors of this software are Rob Pike and Ken Thompson. +* Copyright (c) 2002 by Lucent Technologies. +* Permission to use, copy, modify, and distribute this software for any +* purpose without fee is hereby granted, provided that this entire notice +* is included in all copies of any software which is or includes a copy +* or modification of this software and in all copies of the supporting +* documentation for such software. +* THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED +* WARRANTY. IN PARTICULAR, NEITHER THE AUTHORS NOR LUCENT TECHNOLOGIES MAKE ANY +* REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY +* OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. + + +======================================================================================================================================== + +Copyright (c) 2015-2018 Baldur Karlsson + +Copyright (c) 2014 Crytek + +Copyright (c) 1998-2018 Third party code and tools + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +========================================================================================================================================= + +/* +Copyright (c) 2009 Dave Gamble +Copyright (c) 2015-2016 The Khronos Group Inc. +Copyright (c) 2015-2016 Valve Corporation +Copyright (c) 2015-2016 LunarG, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +*/ + +=========================================================================================================================================== + +Copyright (c) 2005 - 2017 G-Truc Creation + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + + +========================================================================================================================================== + +/* +The JsonCpp library's source code, including accompanying documentation, +tests and demonstration applications, are licensed under the following +conditions... +The author (Baptiste Lepilleur) explicitly disclaims copyright in all +jurisdictions which recognize such a disclaimer. In such jurisdictions, +this software is released into the Public Domain. +In jurisdictions which do not recognize Public Domain property (e.g. Germany as of +2010), this software is Copyright (c) 2007-2010 by Baptiste Lepilleur, and is +released under the terms of the MIT License (see below). +In jurisdictions which recognize Public Domain property, the user of this +software may choose to accept it either as 1) Public Domain, 2) under the +conditions of the MIT License (see below), or 3) under the terms of dual +Public Domain/MIT License conditions described here, as they choose. +The MIT License is about as close to Public Domain as a license can get, and is +described in clear, concise terms at: +http://en.wikipedia.org/wiki/MIT_License + +The full text of the MIT License follows: + +Copyright (c) 2007-2010 Baptiste Lepilleur +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, copy, +modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS +BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +========================================================================================================================================== + +/** +* `murmurhash.h' - murmurhash +* +* copyright (c) 2014 joseph werle +* Copyright (c) 2015-2016 The Khronos Group Inc. +* Copyright (c) 2015-2016 Valve Corporation +* Copyright (c) 2015-2016 LunarG, Inc. +* +* Permission is hereby granted, free of charge, to any person obtaining a copy +* of this software and/or associated documentation files (the "Materials"), to +* deal in the Materials without restriction, including without limitation the +* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +* sell copies of the Materials, and to permit persons to whom the Materials are +* furnished to do so, subject to the following conditions: +* +* The above copyright notice(s) and this permission notice shall be included in +* all copies or substantial portions of the Materials. +* +* THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +* +* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE +* USE OR OTHER DEALINGS IN THE MATERIALS. +*/ + +========================================================================================================================================= + +Licenced as X11: http://www.kryogenix.org/code/browser/licence.html +This basically means: do what you want with it. + +========================================================================================================================================= + +/////////////////////////////////////////////////////////////////////////////////// +/// OpenGL Mathematics (glm.g-truc.net) +/// +/// Copyright (c) 2005 - 2014 G-Truc Creation (www.g-truc.net) +/// Permission is hereby granted, free of charge, to any person obtaining a copy +/// of this software and associated documentation files (the "Software"), to deal +/// in the Software without restriction, including without limitation the rights +/// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +/// copies of the Software, and to permit persons to whom the Software is +/// furnished to do so, subject to the following conditions: +/// +/// The above copyright notice and this permission notice shall be included in +/// all copies or substantial portions of the Software. +/// +/// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +/// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +/// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +/// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +/// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +/// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +/// THE SOFTWARE. +/// +/// @ref core +/// @file glm/common.hpp +/// @date 2013-12-24 / 2013-12-24 +/// @author Christophe Riccio +/////////////////////////////////////////////////////////////////////////////////// + + +========================================================================================================================================== + +// LICENSE +// +// This software is in the public domain. Where that dedication is not +// recognized, you are granted a perpetual, irrevocable license to copy, +// distribute, and modify this file as you see fit. +// + +========================================================================================================================================== + +Simple DirectMedia Layer +Copyright (C) 1997-2018 Sam Lantinga + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not +claim that you wrote the original software. If you use this software +in a product, an acknowledgment in the product documentation would be +appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be +misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. + +========================================================================================================================================= + +/****************************************************************************\ +Copyright (c) 2002, NVIDIA Corporation. + +NVIDIA Corporation("NVIDIA") supplies this software to you in +consideration of your agreement to the following terms, and your use, +installation, modification or redistribution of this NVIDIA software +constitutes acceptance of these terms. If you do not agree with these +terms, please do not use, install, modify or redistribute this NVIDIA +software. + +In consideration of your agreement to abide by the following terms, and +subject to these terms, NVIDIA grants you a personal, non-exclusive +license, under NVIDIA's copyrights in this original NVIDIA software (the +NVIDIA Software), to use, reproduce, modify and redistribute the +NVIDIA Software, with or without modifications, in source and/or binary +forms; provided that if you redistribute the NVIDIA Software, you must +retain the copyright notice of NVIDIA, this notice and the following +text and disclaimers in all such redistributions of the NVIDIA Software. +Neither the name, trademarks, service marks nor logos of NVIDIA +Corporation may be used to endorse or promote products derived from the +NVIDIA Software without specific prior written permission from NVIDIA. +Except as expressly stated in this notice, no other rights or licenses +express or implied, are granted by NVIDIA herein, including but not +limited to any patent rights that may be infringed by your derivative +works or by other works in which the NVIDIA Software may be +incorporated. No hardware is licensed hereunder. + +THE NVIDIA SOFTWARE IS BEING PROVIDED ON AN "AS IS" BASIS, WITHOUT +WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, +INCLUDING WITHOUT LIMITATION, WARRANTIES OR CONDITIONS OF TITLE, +NON-INFRINGEMENT, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR +ITS USE AND OPERATION EITHER ALONE OR IN COMBINATION WITH OTHER +PRODUCTS. + +IN NO EVENT SHALL NVIDIA BE LIABLE FOR ANY SPECIAL, INDIRECT, +INCIDENTAL, EXEMPLARY, CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, LOST PROFITS; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF +USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) OR ARISING IN ANY WAY +OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE +NVIDIA SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, +TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF +NVIDIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +\****************************************************************************/ + +================================================================================================================================================== + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. + + +================================================================================================================================================== + +GNU LESSER GENERAL PUBLIC LICENSE +Version 3, 29 June 2007 + +Copyright (C) 2007 Free Software Foundation, Inc. + +Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. + +This version of the GNU Lesser General Public License incorporates the terms and conditions of version 3 of the GNU General Public License, supplemented by the additional permissions listed below. + +0. Additional Definitions. + +As used herein, "this License" refers to version 3 of the GNU Lesser General Public License, and the "GNU GPL" refers to version 3 of the GNU General Public License. + +"The Library" refers to a covered work governed by this License, other than an Application or a Combined Work as defined below. + +An "Application" is any work that makes use of an interface provided by the Library, but which is not otherwise based on the Library. Defining a subclass of a class defined by the Library is deemed a mode of using an interface provided by the Library. + +A "Combined Work" is a work produced by combining or linking an Application with the Library. The particular version of the Library with which the Combined Work was made is also called the "Linked Version". + +The "Minimal Corresponding Source" for a Combined Work means the Corresponding Source for the Combined Work, excluding any source code for portions of the Combined Work that, considered in isolation, are based on the Application, and not on the Linked Version. + +The "Corresponding Application Code" for a Combined Work means the object code and/or source code for the Application, including any data and utility programs needed for reproducing the Combined Work from the Application, but excluding the System Libraries of the Combined Work. + +1. Exception to Section 3 of the GNU GPL. + +You may convey a covered work under sections 3 and 4 of this License without being bound by section 3 of the GNU GPL. + +2. Conveying Modified Versions. + +If you modify a copy of the Library, and, in your modifications, a facility refers to a function or data to be supplied by an Application that uses the facility (other than as an argument passed when the facility is invoked), then you may convey a copy of the modified version: + +a) under this License, provided that you make a good faith effort to ensure that, in the event an Application does not supply the function or data, the facility still operates, and performs whatever part of its purpose remains meaningful, or +b) under the GNU GPL, with none of the additional permissions of this License applicable to that copy. +3. Object Code Incorporating Material from Library Header Files. + +The object code form of an Application may incorporate material from a header file that is part of the Library. You may convey such object code under terms of your choice, provided that, if the incorporated material is not limited to numerical parameters, data structure layouts and accessors, or small macros, inline functions and templates (ten or fewer lines in length), you do both of the following: + +a) Give prominent notice with each copy of the object code that the Library is used in it and that the Library and its use are covered by this License. +b) Accompany the object code with a copy of the GNU GPL and this license document. +4. Combined Works. + +You may convey a Combined Work under terms of your choice that, taken together, effectively do not restrict modification of the portions of the Library contained in the Combined Work and reverse engineering for debugging such modifications, if you also do each of the following: + +a) Give prominent notice with each copy of the Combined Work that the Library is used in it and that the Library and its use are covered by this License. +b) Accompany the Combined Work with a copy of the GNU GPL and this license document. +c) For a Combined Work that displays copyright notices during execution, include the copyright notice for the Library among these notices, as well as a reference directing the user to the copies of the GNU GPL and this license document. +d) Do one of the following: +0) Convey the Minimal Corresponding Source under the terms of this License, and the Corresponding Application Code in a form suitable for, and under terms that permit, the user to recombine or relink the Application with a modified version of the Linked Version to produce a modified Combined Work, in the manner specified by section 6 of the GNU GPL for conveying Corresponding Source. +1) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (a) uses at run time a copy of the Library already present on the user's computer system, and (b) will operate properly with a modified version of the Library that is interface-compatible with the Linked Version. +e) Provide Installation Information, but only if you would otherwise be required to provide such information under section 6 of the GNU GPL, and only to the extent that such information is necessary to install and execute a modified version of the Combined Work produced by recombining or relinking the Application with a modified version of the Linked Version. (If you use option 4d0, the Installation Information must accompany the Minimal Corresponding Source and Corresponding Application Code. If you use option 4d1, you must provide the Installation Information in the manner specified by section 6 of the GNU GPL for conveying Corresponding Source.) +5. Combined Libraries. + +You may place library facilities that are a work based on the Library side by side in a single library together with other library facilities that are not Applications and are not covered by this License, and convey such a combined library under terms of your choice, if you do both of the following: + +a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities, conveyed under the terms of this License. +b) Give prominent notice with the combined library that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. +6. Revised Versions of the GNU Lesser General Public License. + +The Free Software Foundation may publish revised and/or new versions of the GNU Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library as you received it specifies that a certain numbered version of the GNU Lesser General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that published version or of any later version published by the Free Software Foundation. If the Library as you received it does not specify a version number of the GNU Lesser General Public License, you may choose any version of the GNU Lesser General Public License ever published by the Free Software Foundation. + +If the Library as you received it specifies that a proxy can decide whether future versions of the GNU Lesser General Public License shall apply, that proxy's public statement of acceptance of any version is permanent authorization for you to choose that version for the Library. + + +third_party\protobuf\LICENSE +---------------------------- +Copyright 2008 Google Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + + +third_party\protobuf\third_party\benchmark\LICENSE +-------------------------------------------------- + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\protobuf\third_party\googletest\LICENSE +--------------------------------------------------- +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\protobuf\third_party\googletest\googlemock\LICENSE +-------------------------------------------------------------- +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\protobuf\third_party\googletest\googlemock\scripts\generator\LICENSE +-------------------------------------------------------------------------------- + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [2007] Neal Norwitz + Portions Copyright [2007] Google Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\protobuf\third_party\googletest\googletest\LICENSE +-------------------------------------------------------------- +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\psimd\LICENSE +------------------------- +The MIT License (MIT) + +Copyright (c) 2017 Facebook Inc. +Copyright (c) 2014-2017 Georgia Institute of Technology +Copyright 2019 Google LLC + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +third_party\pthreadpool\LICENSE +------------------------------- +Copyright 2019 Google LLC +Copyright (c) 2017 Facebook Inc. +Copyright (c) 2015-2017 Georgia Institute of Technology +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + +third_party\pybind11\LICENSE +---------------------------- +Copyright (c) 2016 Wenzel Jakob , All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Please also refer to the file .github/CONTRIBUTING.md, which clarifies licensing of +external contributions to this project including patches, pull requests, etc. + + +third_party\python-peachpy\LICENSE.rst +-------------------------------------- +============================== +PeachPy license (2-clause BSD) +============================== + +Copyright (c) 2017, Facebook Inc. +Copyright (c) 2013-2017, Georgia Institute of Technology +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\sleef\LICENSE.txt +----------------------------- +Boost Software License - Version 1.0 - August 17th, 2003 + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + + +third_party\tensorpipe\LICENSE.txt +---------------------------------- +BSD License + +For TensorPipe software + +Copyright (c) Meta Platforms, Inc. and affiliates. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name Meta nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\tensorpipe\third_party\googletest\LICENSE +----------------------------------------------------- +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\tensorpipe\third_party\googletest\googlemock\LICENSE +---------------------------------------------------------------- +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\tensorpipe\third_party\googletest\googlemock\scripts\generator\LICENSE +---------------------------------------------------------------------------------- + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [2007] Neal Norwitz + Portions Copyright [2007] Google Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +third_party\tensorpipe\third_party\googletest\googletest\LICENSE +---------------------------------------------------------------- +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +third_party\tensorpipe\third_party\libnop\LICENSE +------------------------------------------------- +Copyright 2017 The Native Object Protocols Authors + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + https://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + + +third_party\tensorpipe\third_party\libuv\LICENSE +------------------------------------------------ +libuv is licensed for use as follows: + +==== +Copyright (c) 2015-present libuv project contributors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. +==== + +This license applies to parts of libuv originating from the +https://github.com/joyent/libuv repository: + +==== + +Copyright Joyent, Inc. and other Node contributors. All rights reserved. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. + +==== + +This license applies to all parts of libuv that are not externally +maintained libraries. + +The externally maintained libraries used by libuv are: + + - tree.h (from FreeBSD), copyright Niels Provos. Two clause BSD license. + + - inet_pton and inet_ntop implementations, contained in src/inet.c, are + copyright the Internet Systems Consortium, Inc., and licensed under the ISC + license. + + - stdint-msvc2008.h (from msinttypes), copyright Alexander Chemeris. Three + clause BSD license. + + - pthread-fixes.c, copyright Google Inc. and Sony Mobile Communications AB. + Three clause BSD license. + + - android-ifaddrs.h, android-ifaddrs.c, copyright Berkeley Software Design + Inc, Kenneth MacKay and Emergya (Cloud4all, FP7/2007-2013, grant agreement + n° 289016). Three clause BSD license. + + +third_party\tensorpipe\third_party\pybind11\LICENSE +--------------------------------------------------- +Copyright (c) 2016 Wenzel Jakob , All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Please also refer to the file CONTRIBUTING.md, which clarifies licensing of +external contributions to this project including patches, pull requests, etc. diff --git a/METADATA b/METADATA new file mode 100644 index 0000000000000000000000000000000000000000..1cc7c4b9a09d15b171de5f730f87e6f0a55619c9 --- /dev/null +++ b/METADATA @@ -0,0 +1,549 @@ +Metadata-Version: 2.1 +Name: torch +Version: 2.6.0 +Summary: Tensors and Dynamic neural networks in Python with strong GPU acceleration +Home-page: https://pytorch.org/ +Download-URL: https://github.com/pytorch/pytorch/tags +Author: PyTorch Team +Author-email: packages@pytorch.org +License: BSD-3-Clause +Keywords: pytorch,machine learning +Classifier: Development Status :: 5 - Production/Stable +Classifier: Intended Audience :: Developers +Classifier: Intended Audience :: Education +Classifier: Intended Audience :: Science/Research +Classifier: License :: OSI Approved :: BSD License +Classifier: Topic :: Scientific/Engineering +Classifier: Topic :: Scientific/Engineering :: Mathematics +Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence +Classifier: Topic :: Software Development +Classifier: Topic :: Software Development :: Libraries +Classifier: Topic :: Software Development :: Libraries :: Python Modules +Classifier: Programming Language :: C++ +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3.9 +Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Classifier: Programming Language :: Python :: 3.13 +Requires-Python: >=3.9.0 +Description-Content-Type: text/markdown +License-File: LICENSE +License-File: NOTICE +Requires-Dist: filelock +Requires-Dist: typing-extensions>=4.10.0 +Requires-Dist: networkx +Requires-Dist: jinja2 +Requires-Dist: fsspec +Requires-Dist: nvidia-cuda-nvrtc-cu12==12.4.127; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: nvidia-cuda-runtime-cu12==12.4.127; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: nvidia-cuda-cupti-cu12==12.4.127; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: nvidia-cudnn-cu12==9.1.0.70; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: nvidia-cublas-cu12==12.4.5.8; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: nvidia-cufft-cu12==11.2.1.3; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: nvidia-curand-cu12==10.3.5.147; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: nvidia-cusolver-cu12==11.6.1.9; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: nvidia-cusparse-cu12==12.3.1.170; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: nvidia-cusparselt-cu12==0.6.2; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: nvidia-nccl-cu12==2.21.5; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: nvidia-nvtx-cu12==12.4.127; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: nvidia-nvjitlink-cu12==12.4.127; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: triton==3.2.0; platform_system == "Linux" and platform_machine == "x86_64" +Requires-Dist: setuptools; python_version >= "3.12" +Requires-Dist: sympy==1.13.1; python_version >= "3.9" +Provides-Extra: opt-einsum +Requires-Dist: opt-einsum>=3.3; extra == "opt-einsum" +Provides-Extra: optree +Requires-Dist: optree>=0.13.0; extra == "optree" + +![PyTorch Logo](https://github.com/pytorch/pytorch/raw/main/docs/source/_static/img/pytorch-logo-dark.png) + +-------------------------------------------------------------------------------- + +PyTorch is a Python package that provides two high-level features: +- Tensor computation (like NumPy) with strong GPU acceleration +- Deep neural networks built on a tape-based autograd system + +You can reuse your favorite Python packages such as NumPy, SciPy, and Cython to extend PyTorch when needed. + +Our trunk health (Continuous Integration signals) can be found at [hud.pytorch.org](https://hud.pytorch.org/ci/pytorch/pytorch/main). + + + +- [More About PyTorch](#more-about-pytorch) + - [A GPU-Ready Tensor Library](#a-gpu-ready-tensor-library) + - [Dynamic Neural Networks: Tape-Based Autograd](#dynamic-neural-networks-tape-based-autograd) + - [Python First](#python-first) + - [Imperative Experiences](#imperative-experiences) + - [Fast and Lean](#fast-and-lean) + - [Extensions Without Pain](#extensions-without-pain) +- [Installation](#installation) + - [Binaries](#binaries) + - [NVIDIA Jetson Platforms](#nvidia-jetson-platforms) + - [From Source](#from-source) + - [Prerequisites](#prerequisites) + - [NVIDIA CUDA Support](#nvidia-cuda-support) + - [AMD ROCm Support](#amd-rocm-support) + - [Intel GPU Support](#intel-gpu-support) + - [Get the PyTorch Source](#get-the-pytorch-source) + - [Install Dependencies](#install-dependencies) + - [Install PyTorch](#install-pytorch) + - [Adjust Build Options (Optional)](#adjust-build-options-optional) + - [Docker Image](#docker-image) + - [Using pre-built images](#using-pre-built-images) + - [Building the image yourself](#building-the-image-yourself) + - [Building the Documentation](#building-the-documentation) + - [Previous Versions](#previous-versions) +- [Getting Started](#getting-started) +- [Resources](#resources) +- [Communication](#communication) +- [Releases and Contributing](#releases-and-contributing) +- [The Team](#the-team) +- [License](#license) + + + +## More About PyTorch + +[Learn the basics of PyTorch](https://pytorch.org/tutorials/beginner/basics/intro.html) + +At a granular level, PyTorch is a library that consists of the following components: + +| Component | Description | +| ---- | --- | +| [**torch**](https://pytorch.org/docs/stable/torch.html) | A Tensor library like NumPy, with strong GPU support | +| [**torch.autograd**](https://pytorch.org/docs/stable/autograd.html) | A tape-based automatic differentiation library that supports all differentiable Tensor operations in torch | +| [**torch.jit**](https://pytorch.org/docs/stable/jit.html) | A compilation stack (TorchScript) to create serializable and optimizable models from PyTorch code | +| [**torch.nn**](https://pytorch.org/docs/stable/nn.html) | A neural networks library deeply integrated with autograd designed for maximum flexibility | +| [**torch.multiprocessing**](https://pytorch.org/docs/stable/multiprocessing.html) | Python multiprocessing, but with magical memory sharing of torch Tensors across processes. Useful for data loading and Hogwild training | +| [**torch.utils**](https://pytorch.org/docs/stable/data.html) | DataLoader and other utility functions for convenience | + +Usually, PyTorch is used either as: + +- A replacement for NumPy to use the power of GPUs. +- A deep learning research platform that provides maximum flexibility and speed. + +Elaborating Further: + +### A GPU-Ready Tensor Library + +If you use NumPy, then you have used Tensors (a.k.a. ndarray). + +![Tensor illustration](./docs/source/_static/img/tensor_illustration.png) + +PyTorch provides Tensors that can live either on the CPU or the GPU and accelerates the +computation by a huge amount. + +We provide a wide variety of tensor routines to accelerate and fit your scientific computation needs +such as slicing, indexing, mathematical operations, linear algebra, reductions. +And they are fast! + +### Dynamic Neural Networks: Tape-Based Autograd + +PyTorch has a unique way of building neural networks: using and replaying a tape recorder. + +Most frameworks such as TensorFlow, Theano, Caffe, and CNTK have a static view of the world. +One has to build a neural network and reuse the same structure again and again. +Changing the way the network behaves means that one has to start from scratch. + +With PyTorch, we use a technique called reverse-mode auto-differentiation, which allows you to +change the way your network behaves arbitrarily with zero lag or overhead. Our inspiration comes +from several research papers on this topic, as well as current and past work such as +[torch-autograd](https://github.com/twitter/torch-autograd), +[autograd](https://github.com/HIPS/autograd), +[Chainer](https://chainer.org), etc. + +While this technique is not unique to PyTorch, it's one of the fastest implementations of it to date. +You get the best of speed and flexibility for your crazy research. + +![Dynamic graph](https://github.com/pytorch/pytorch/raw/main/docs/source/_static/img/dynamic_graph.gif) + +### Python First + +PyTorch is not a Python binding into a monolithic C++ framework. +It is built to be deeply integrated into Python. +You can use it naturally like you would use [NumPy](https://www.numpy.org/) / [SciPy](https://www.scipy.org/) / [scikit-learn](https://scikit-learn.org) etc. +You can write your new neural network layers in Python itself, using your favorite libraries +and use packages such as [Cython](https://cython.org/) and [Numba](http://numba.pydata.org/). +Our goal is to not reinvent the wheel where appropriate. + +### Imperative Experiences + +PyTorch is designed to be intuitive, linear in thought, and easy to use. +When you execute a line of code, it gets executed. There isn't an asynchronous view of the world. +When you drop into a debugger or receive error messages and stack traces, understanding them is straightforward. +The stack trace points to exactly where your code was defined. +We hope you never spend hours debugging your code because of bad stack traces or asynchronous and opaque execution engines. + +### Fast and Lean + +PyTorch has minimal framework overhead. We integrate acceleration libraries +such as [Intel MKL](https://software.intel.com/mkl) and NVIDIA ([cuDNN](https://developer.nvidia.com/cudnn), [NCCL](https://developer.nvidia.com/nccl)) to maximize speed. +At the core, its CPU and GPU Tensor and neural network backends +are mature and have been tested for years. + +Hence, PyTorch is quite fast — whether you run small or large neural networks. + +The memory usage in PyTorch is extremely efficient compared to Torch or some of the alternatives. +We've written custom memory allocators for the GPU to make sure that +your deep learning models are maximally memory efficient. +This enables you to train bigger deep learning models than before. + +### Extensions Without Pain + +Writing new neural network modules, or interfacing with PyTorch's Tensor API was designed to be straightforward +and with minimal abstractions. + +You can write new neural network layers in Python using the torch API +[or your favorite NumPy-based libraries such as SciPy](https://pytorch.org/tutorials/advanced/numpy_extensions_tutorial.html). + +If you want to write your layers in C/C++, we provide a convenient extension API that is efficient and with minimal boilerplate. +No wrapper code needs to be written. You can see [a tutorial here](https://pytorch.org/tutorials/advanced/cpp_extension.html) and [an example here](https://github.com/pytorch/extension-cpp). + + +## Installation + +### Binaries +Commands to install binaries via Conda or pip wheels are on our website: [https://pytorch.org/get-started/locally/](https://pytorch.org/get-started/locally/) + + +#### NVIDIA Jetson Platforms + +Python wheels for NVIDIA's Jetson Nano, Jetson TX1/TX2, Jetson Xavier NX/AGX, and Jetson AGX Orin are provided [here](https://forums.developer.nvidia.com/t/pytorch-for-jetson-version-1-10-now-available/72048) and the L4T container is published [here](https://catalog.ngc.nvidia.com/orgs/nvidia/containers/l4t-pytorch) + +They require JetPack 4.2 and above, and [@dusty-nv](https://github.com/dusty-nv) and [@ptrblck](https://github.com/ptrblck) are maintaining them. + + +### From Source + +#### Prerequisites +If you are installing from source, you will need: +- Python 3.9 or later +- A compiler that fully supports C++17, such as clang or gcc (gcc 9.4.0 or newer is required, on Linux) +- Visual Studio or Visual Studio Build Tool (Windows only) + +\* PyTorch CI uses Visual C++ BuildTools, which come with Visual Studio Enterprise, +Professional, or Community Editions. You can also install the build tools from +https://visualstudio.microsoft.com/visual-cpp-build-tools/. The build tools *do not* +come with Visual Studio Code by default. + +\* We highly recommend installing an [Anaconda](https://www.anaconda.com/download) environment. You will get a high-quality BLAS library (MKL) and you get controlled dependency versions regardless of your Linux distro. + +An example of environment setup is shown below: + +* Linux: + +```bash +$ source /bin/activate +$ conda create -y -n +$ conda activate +``` + +* Windows: + +```bash +$ source \Scripts\activate.bat +$ conda create -y -n +$ conda activate +$ call "C:\Program Files\Microsoft Visual Studio\\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 +``` + +##### NVIDIA CUDA Support +If you want to compile with CUDA support, [select a supported version of CUDA from our support matrix](https://pytorch.org/get-started/locally/), then install the following: +- [NVIDIA CUDA](https://developer.nvidia.com/cuda-downloads) +- [NVIDIA cuDNN](https://developer.nvidia.com/cudnn) v8.5 or above +- [Compiler](https://gist.github.com/ax3l/9489132) compatible with CUDA + +Note: You could refer to the [cuDNN Support Matrix](https://docs.nvidia.com/deeplearning/cudnn/reference/support-matrix.html) for cuDNN versions with the various supported CUDA, CUDA driver and NVIDIA hardware + +If you want to disable CUDA support, export the environment variable `USE_CUDA=0`. +Other potentially useful environment variables may be found in `setup.py`. + +If you are building for NVIDIA's Jetson platforms (Jetson Nano, TX1, TX2, AGX Xavier), Instructions to install PyTorch for Jetson Nano are [available here](https://devtalk.nvidia.com/default/topic/1049071/jetson-nano/pytorch-for-jetson-nano/) + +##### AMD ROCm Support +If you want to compile with ROCm support, install +- [AMD ROCm](https://rocm.docs.amd.com/en/latest/deploy/linux/quick_start.html) 4.0 and above installation +- ROCm is currently supported only for Linux systems. + +By default the build system expects ROCm to be installed in `/opt/rocm`. If ROCm is installed in a different directory, the `ROCM_PATH` environment variable must be set to the ROCm installation directory. The build system automatically detects the AMD GPU architecture. Optionally, the AMD GPU architecture can be explicitly set with the `PYTORCH_ROCM_ARCH` environment variable [AMD GPU architecture](https://rocm.docs.amd.com/projects/install-on-linux/en/latest/reference/system-requirements.html#supported-gpus) + +If you want to disable ROCm support, export the environment variable `USE_ROCM=0`. +Other potentially useful environment variables may be found in `setup.py`. + +##### Intel GPU Support +If you want to compile with Intel GPU support, follow these +- [PyTorch Prerequisites for Intel GPUs](https://www.intel.com/content/www/us/en/developer/articles/tool/pytorch-prerequisites-for-intel-gpus.html) instructions. +- Intel GPU is supported for Linux and Windows. + +If you want to disable Intel GPU support, export the environment variable `USE_XPU=0`. +Other potentially useful environment variables may be found in `setup.py`. + +#### Get the PyTorch Source +```bash +git clone --recursive https://github.com/pytorch/pytorch +cd pytorch +# if you are updating an existing checkout +git submodule sync +git submodule update --init --recursive +``` + +#### Install Dependencies + +**Common** + +```bash +conda install cmake ninja +# Run this command from the PyTorch directory after cloning the source code using the “Get the PyTorch Source“ section below +pip install -r requirements.txt +``` + +**On Linux** + +```bash +pip install mkl-static mkl-include +# CUDA only: Add LAPACK support for the GPU if needed +conda install -c pytorch magma-cuda121 # or the magma-cuda* that matches your CUDA version from https://anaconda.org/pytorch/repo + +# (optional) If using torch.compile with inductor/triton, install the matching version of triton +# Run from the pytorch directory after cloning +# For Intel GPU support, please explicitly `export USE_XPU=1` before running command. +make triton +``` + +**On MacOS** + +```bash +# Add this package on intel x86 processor machines only +pip install mkl-static mkl-include +# Add these packages if torch.distributed is needed +conda install pkg-config libuv +``` + +**On Windows** + +```bash +pip install mkl-static mkl-include +# Add these packages if torch.distributed is needed. +# Distributed package support on Windows is a prototype feature and is subject to changes. +conda install -c conda-forge libuv=1.39 +``` + +#### Install PyTorch +**On Linux** + +If you would like to compile PyTorch with [new C++ ABI](https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html) enabled, then first run this command: +```bash +export _GLIBCXX_USE_CXX11_ABI=1 +``` + +Please **note** that starting from PyTorch 2.5, the PyTorch build with XPU supports both new and old C++ ABIs. Previously, XPU only supported the new C++ ABI. If you want to compile with Intel GPU support, please follow [Intel GPU Support](#intel-gpu-support). + +If you're compiling for AMD ROCm then first run this command: +```bash +# Only run this if you're compiling for ROCm +python tools/amd_build/build_amd.py +``` + +Install PyTorch +```bash +export CMAKE_PREFIX_PATH="${CONDA_PREFIX:-'$(dirname $(which conda))/../'}:${CMAKE_PREFIX_PATH}" +python setup.py develop +``` + +**On macOS** + +```bash +python3 setup.py develop +``` + +**On Windows** + +If you want to build legacy python code, please refer to [Building on legacy code and CUDA](https://github.com/pytorch/pytorch/blob/main/CONTRIBUTING.md#building-on-legacy-code-and-cuda) + +**CPU-only builds** + +In this mode PyTorch computations will run on your CPU, not your GPU + +```cmd +python setup.py develop +``` + +Note on OpenMP: The desired OpenMP implementation is Intel OpenMP (iomp). In order to link against iomp, you'll need to manually download the library and set up the building environment by tweaking `CMAKE_INCLUDE_PATH` and `LIB`. The instruction [here](https://github.com/pytorch/pytorch/blob/main/docs/source/notes/windows.rst#building-from-source) is an example for setting up both MKL and Intel OpenMP. Without these configurations for CMake, Microsoft Visual C OpenMP runtime (vcomp) will be used. + +**CUDA based build** + +In this mode PyTorch computations will leverage your GPU via CUDA for faster number crunching + +[NVTX](https://docs.nvidia.com/gameworks/content/gameworkslibrary/nvtx/nvidia_tools_extension_library_nvtx.htm) is needed to build Pytorch with CUDA. +NVTX is a part of CUDA distributive, where it is called "Nsight Compute". To install it onto an already installed CUDA run CUDA installation once again and check the corresponding checkbox. +Make sure that CUDA with Nsight Compute is installed after Visual Studio. + +Currently, VS 2017 / 2019, and Ninja are supported as the generator of CMake. If `ninja.exe` is detected in `PATH`, then Ninja will be used as the default generator, otherwise, it will use VS 2017 / 2019. +
If Ninja is selected as the generator, the latest MSVC will get selected as the underlying toolchain. + +Additional libraries such as +[Magma](https://developer.nvidia.com/magma), [oneDNN, a.k.a. MKLDNN or DNNL](https://github.com/oneapi-src/oneDNN), and [Sccache](https://github.com/mozilla/sccache) are often needed. Please refer to the [installation-helper](https://github.com/pytorch/pytorch/tree/main/.ci/pytorch/win-test-helpers/installation-helpers) to install them. + +You can refer to the [build_pytorch.bat](https://github.com/pytorch/pytorch/blob/main/.ci/pytorch/win-test-helpers/build_pytorch.bat) script for some other environment variables configurations + + +```cmd +cmd + +:: Set the environment variables after you have downloaded and unzipped the mkl package, +:: else CMake would throw an error as `Could NOT find OpenMP`. +set CMAKE_INCLUDE_PATH={Your directory}\mkl\include +set LIB={Your directory}\mkl\lib;%LIB% + +:: Read the content in the previous section carefully before you proceed. +:: [Optional] If you want to override the underlying toolset used by Ninja and Visual Studio with CUDA, please run the following script block. +:: "Visual Studio 2019 Developer Command Prompt" will be run automatically. +:: Make sure you have CMake >= 3.12 before you do this when you use the Visual Studio generator. +set CMAKE_GENERATOR_TOOLSET_VERSION=14.27 +set DISTUTILS_USE_SDK=1 +for /f "usebackq tokens=*" %i in (`"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -version [15^,17^) -products * -latest -property installationPath`) do call "%i\VC\Auxiliary\Build\vcvarsall.bat" x64 -vcvars_ver=%CMAKE_GENERATOR_TOOLSET_VERSION% + +:: [Optional] If you want to override the CUDA host compiler +set CUDAHOSTCXX=C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.27.29110\bin\HostX64\x64\cl.exe + +python setup.py develop + +``` + +##### Adjust Build Options (Optional) + +You can adjust the configuration of cmake variables optionally (without building first), by doing +the following. For example, adjusting the pre-detected directories for CuDNN or BLAS can be done +with such a step. + +On Linux +```bash +export CMAKE_PREFIX_PATH="${CONDA_PREFIX:-'$(dirname $(which conda))/../'}:${CMAKE_PREFIX_PATH}" +python setup.py build --cmake-only +ccmake build # or cmake-gui build +``` + +On macOS +```bash +export CMAKE_PREFIX_PATH="${CONDA_PREFIX:-'$(dirname $(which conda))/../'}:${CMAKE_PREFIX_PATH}" +MACOSX_DEPLOYMENT_TARGET=10.9 CC=clang CXX=clang++ python setup.py build --cmake-only +ccmake build # or cmake-gui build +``` + +### Docker Image + +#### Using pre-built images + +You can also pull a pre-built docker image from Docker Hub and run with docker v19.03+ + +```bash +docker run --gpus all --rm -ti --ipc=host pytorch/pytorch:latest +``` + +Please note that PyTorch uses shared memory to share data between processes, so if torch multiprocessing is used (e.g. +for multithreaded data loaders) the default shared memory segment size that container runs with is not enough, and you +should increase shared memory size either with `--ipc=host` or `--shm-size` command line options to `nvidia-docker run`. + +#### Building the image yourself + +**NOTE:** Must be built with a docker version > 18.06 + +The `Dockerfile` is supplied to build images with CUDA 11.1 support and cuDNN v8. +You can pass `PYTHON_VERSION=x.y` make variable to specify which Python version is to be used by Miniconda, or leave it +unset to use the default. + +```bash +make -f docker.Makefile +# images are tagged as docker.io/${your_docker_username}/pytorch +``` + +You can also pass the `CMAKE_VARS="..."` environment variable to specify additional CMake variables to be passed to CMake during the build. +See [setup.py](./setup.py) for the list of available variables. + +```bash +make -f docker.Makefile +``` + +### Building the Documentation + +To build documentation in various formats, you will need [Sphinx](http://www.sphinx-doc.org) and the +readthedocs theme. + +```bash +cd docs/ +pip install -r requirements.txt +make html +make serve +``` + +Run `make` to get a list of all available output formats. + +If you get a katex error run `npm install katex`. If it persists, try +`npm install -g katex` + +> Note: if you installed `nodejs` with a different package manager (e.g., +`conda`) then `npm` will probably install a version of `katex` that is not +compatible with your version of `nodejs` and doc builds will fail. +A combination of versions that is known to work is `node@6.13.1` and +`katex@0.13.18`. To install the latter with `npm` you can run +```npm install -g katex@0.13.18``` + +### Previous Versions + +Installation instructions and binaries for previous PyTorch versions may be found +on [our website](https://pytorch.org/previous-versions). + + +## Getting Started + +Three-pointers to get you started: +- [Tutorials: get you started with understanding and using PyTorch](https://pytorch.org/tutorials/) +- [Examples: easy to understand PyTorch code across all domains](https://github.com/pytorch/examples) +- [The API Reference](https://pytorch.org/docs/) +- [Glossary](https://github.com/pytorch/pytorch/blob/main/GLOSSARY.md) + +## Resources + +* [PyTorch.org](https://pytorch.org/) +* [PyTorch Tutorials](https://pytorch.org/tutorials/) +* [PyTorch Examples](https://github.com/pytorch/examples) +* [PyTorch Models](https://pytorch.org/hub/) +* [Intro to Deep Learning with PyTorch from Udacity](https://www.udacity.com/course/deep-learning-pytorch--ud188) +* [Intro to Machine Learning with PyTorch from Udacity](https://www.udacity.com/course/intro-to-machine-learning-nanodegree--nd229) +* [Deep Neural Networks with PyTorch from Coursera](https://www.coursera.org/learn/deep-neural-networks-with-pytorch) +* [PyTorch Twitter](https://twitter.com/PyTorch) +* [PyTorch Blog](https://pytorch.org/blog/) +* [PyTorch YouTube](https://www.youtube.com/channel/UCWXI5YeOsh03QvJ59PMaXFw) + +## Communication +* Forums: Discuss implementations, research, etc. https://discuss.pytorch.org +* GitHub Issues: Bug reports, feature requests, install issues, RFCs, thoughts, etc. +* Slack: The [PyTorch Slack](https://pytorch.slack.com/) hosts a primary audience of moderate to experienced PyTorch users and developers for general chat, online discussions, collaboration, etc. If you are a beginner looking for help, the primary medium is [PyTorch Forums](https://discuss.pytorch.org). If you need a slack invite, please fill this form: https://goo.gl/forms/PP1AGvNHpSaJP8to1 +* Newsletter: No-noise, a one-way email newsletter with important announcements about PyTorch. You can sign-up here: https://eepurl.com/cbG0rv +* Facebook Page: Important announcements about PyTorch. https://www.facebook.com/pytorch +* For brand guidelines, please visit our website at [pytorch.org](https://pytorch.org/) + +## Releases and Contributing + +Typically, PyTorch has three minor releases a year. Please let us know if you encounter a bug by [filing an issue](https://github.com/pytorch/pytorch/issues). + +We appreciate all contributions. If you are planning to contribute back bug-fixes, please do so without any further discussion. + +If you plan to contribute new features, utility functions, or extensions to the core, please first open an issue and discuss the feature with us. +Sending a PR without discussion might end up resulting in a rejected PR because we might be taking the core in a different direction than you might be aware of. + +To learn more about making a contribution to Pytorch, please see our [Contribution page](CONTRIBUTING.md). For more information about PyTorch releases, see [Release page](RELEASE.md). + +## The Team + +PyTorch is a community-driven project with several skillful engineers and researchers contributing to it. + +PyTorch is currently maintained by [Soumith Chintala](http://soumith.ch), [Gregory Chanan](https://github.com/gchanan), [Dmytro Dzhulgakov](https://github.com/dzhulgakov), [Edward Yang](https://github.com/ezyang), and [Nikita Shulga](https://github.com/malfet) with major contributions coming from hundreds of talented individuals in various forms and means. +A non-exhaustive but growing list needs to mention: [Trevor Killeen](https://github.com/killeent), [Sasank Chilamkurthy](https://github.com/chsasank), [Sergey Zagoruyko](https://github.com/szagoruyko), [Adam Lerer](https://github.com/adamlerer), [Francisco Massa](https://github.com/fmassa), [Alykhan Tejani](https://github.com/alykhantejani), [Luca Antiga](https://github.com/lantiga), [Alban Desmaison](https://github.com/albanD), [Andreas Koepf](https://github.com/andreaskoepf), [James Bradbury](https://github.com/jamesb93), [Zeming Lin](https://github.com/ebetica), [Yuandong Tian](https://github.com/yuandong-tian), [Guillaume Lample](https://github.com/glample), [Marat Dukhan](https://github.com/Maratyszcza), [Natalia Gimelshein](https://github.com/ngimel), [Christian Sarofeen](https://github.com/csarofeen), [Martin Raison](https://github.com/martinraison), [Edward Yang](https://github.com/ezyang), [Zachary Devito](https://github.com/zdevito). + +Note: This project is unrelated to [hughperkins/pytorch](https://github.com/hughperkins/pytorch) with the same name. Hugh is a valuable contributor to the Torch community and has helped with many things Torch and PyTorch. + +## License + +PyTorch has a BSD-style license, as found in the [LICENSE](LICENSE) file. diff --git a/NOTICE b/NOTICE new file mode 100644 index 0000000000000000000000000000000000000000..c08c04389d281a4bf5ef77fc5426ffac8232dc3a --- /dev/null +++ b/NOTICE @@ -0,0 +1,456 @@ +======================================================================= +Software under third_party +======================================================================= +Software libraries under third_party are provided as github submodule +links, and their content is not part of the Caffe2 codebase. Their +licences can be found under the respective software repositories. + +======================================================================= +Earlier BSD License +======================================================================= +Early development of Caffe2 in 2015 and early 2016 is licensed under the +BSD license. The license is attached below: + +All contributions by Facebook: +Copyright (c) 2016 Facebook Inc. + +All contributions by Google: +Copyright (c) 2015 Google Inc. +All rights reserved. + +All contributions by Yangqing Jia: +Copyright (c) 2015 Yangqing Jia +All rights reserved. + +All contributions by Kakao Brain: +Copyright 2019-2020 Kakao Brain + +All other contributions: +Copyright(c) 2015, 2016 the respective contributors +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +======================================================================= +Caffe's BSD License +======================================================================= +Some parts of the caffe2 code is derived from the original Caffe code, which is +created by Yangqing Jia and is now a BSD-licensed open-source project. The Caffe +license is as follows: + +COPYRIGHT + +All contributions by the University of California: +Copyright (c) 2014, The Regents of the University of California (Regents) +All rights reserved. + +All other contributions: +Copyright (c) 2014, the respective contributors +All rights reserved. + +Caffe uses a shared copyright model: each contributor holds copyright over +their contributions to Caffe. The project versioning records all such +contribution and copyright details. If a contributor wants to further mark +their specific copyright on a particular contribution, they should indicate +their copyright solely in the commit message of the change when it is +committed. + +LICENSE + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +CONTRIBUTION AGREEMENT + +By contributing to the BVLC/caffe repository through pull-request, comment, +or otherwise, the contributor releases their content to the +license and copyright terms herein. + +======================================================================= +Caffe2's Apache License +======================================================================= + +This repo contains Caffe2 code, which was previously licensed under +Apache License Version 2.0: + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +======================================================================= +Cephes's 3-Clause BSD License +======================================================================= + +Code derived from implementations in the Cephes Math Library should mention +its derivation and reference the following license: + + 3-Clause BSD License for the Cephes Math Library + Copyright (c) 2018, Steven Moshier + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL Steven Moshier BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +======================================================================= +SciPy's 3-Clause BSD License +======================================================================= + +Code derived from implementations in SciPy should mention its derivation +and reference the following license: + + Copyright (c) 2001-2002 Enthought, Inc. 2003-2019, SciPy Developers. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + 3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +======================================================================= +Boost's 1.0 Software License +======================================================================= + +Code derived from implementations in Boost 1.0 should mention its +derivation and reference the following license: + + Boost Software License - Version 1.0 - August 17th, 2003 + + Permission is hereby granted, free of charge, to any person or organization + obtaining a copy of the software and accompanying documentation covered by + this license (the "Software") to use, reproduce, display, distribute, + execute, and transmit the Software, and to prepare derivative works of the + Software, and to permit third-parties to whom the Software is furnished to + do so, all subject to the following: + + The copyright notices in the Software and this entire statement, including + the above license grant, this restriction and the following disclaimer, + must be included in all copies of the Software, in whole or in part, and + all derivative works of the Software, unless such copies or derivative + works are solely in the form of machine-executable object code generated by + a source language processor. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT + SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE + FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, + ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +======================================================================= +PILLOW-SIMD Software License +======================================================================= + +Code derived from implementations in PILLOW-SIMD should mention its derivation +and reference the following license: + + The Python Imaging Library (PIL) is + + Copyright © 1997-2011 by Secret Labs AB + Copyright © 1995-2011 by Fredrik Lundh + + Pillow is the friendly PIL fork. It is + + Copyright © 2010-2022 by Alex Clark and contributors + + Like PIL, Pillow is licensed under the open source HPND License: + + By obtaining, using, and/or copying this software and/or its associated + documentation, you agree that you have read, understood, and will comply + with the following terms and conditions: + + Permission to use, copy, modify, and distribute this software and its + associated documentation for any purpose and without fee is hereby granted, + provided that the above copyright notice appears in all copies, and that + both that copyright notice and this permission notice appear in supporting + documentation, and that the name of Secret Labs AB or the author not be + used in advertising or publicity pertaining to distribution of the software + without specific, written prior permission. + + SECRET LABS AB AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS + SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. + IN NO EVENT SHALL SECRET LABS AB OR THE AUTHOR BE LIABLE FOR ANY SPECIAL, + INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE + OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. diff --git a/RECORD b/RECORD new file mode 100644 index 0000000000000000000000000000000000000000..177b780f98e82758bd85981767f5056f0a701d37 --- /dev/null +++ b/RECORD @@ -0,0 +1,12932 @@ +../../Scripts/torchfrtrace.exe,sha256=IBF9X6-GnqcY1z3HXNOC0KZxq9M6QtcLPibg3rjXDx0,108451 +../../Scripts/torchrun.exe,sha256=4Toc8lLRqzNx9PnYv9-HjhfdfonrEPJeYYFg2lVTJeU,108442 +functorch/_C.cp312-win_amd64.pyd,sha256=N7JgkE2DQ7TWbODE74nm2-f9WjXuzbDRnyMB-2rTBf0,184320 +functorch/__init__.py,sha256=lkoKmqHGN8LKYTeSPXXXh28z4ehGyK9gTBtzohyNuu0,1076 +functorch/__pycache__/__init__.cpython-312.pyc,, +functorch/_src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +functorch/_src/__pycache__/__init__.cpython-312.pyc,, +functorch/_src/aot_autograd/__init__.py,sha256=9blGZUidbjhxkEKHLqpZTmhU_o6twasOgrZ0li9RcLk,299 +functorch/_src/aot_autograd/__pycache__/__init__.cpython-312.pyc,, +functorch/_src/eager_transforms/__init__.py,sha256=CrfEZefUvrS8WmAmxFskj-Lbkvee502sdf1RpIaLl7U,298 +functorch/_src/eager_transforms/__pycache__/__init__.cpython-312.pyc,, +functorch/_src/make_functional/__init__.py,sha256=vo-yXbmEA9uzHQayl8mhCGArugyZe2vwHaj2fiklD3w,239 +functorch/_src/make_functional/__pycache__/__init__.cpython-312.pyc,, +functorch/_src/vmap/__init__.py,sha256=FrCE1RM1QK04BgLYVsXpZbetiVjtTri_1h7FGhjB2Mw,483 +functorch/_src/vmap/__pycache__/__init__.cpython-312.pyc,, +functorch/compile/__init__.py,sha256=SY48gIkfVpniQqcBqFZjEEAh2ID7e8HfUSzrv_rO9PA,786 +functorch/compile/__pycache__/__init__.cpython-312.pyc,, +functorch/dim/__init__.py,sha256=e1pzpRmVzfNa4gwL-Mnh1OcyFjB0l6_PYUW8vid5m2k,4904 +functorch/dim/__pycache__/__init__.cpython-312.pyc,, +functorch/dim/__pycache__/batch_tensor.cpython-312.pyc,, +functorch/dim/__pycache__/delayed_mul_tensor.cpython-312.pyc,, +functorch/dim/__pycache__/dim.cpython-312.pyc,, +functorch/dim/__pycache__/magic_trace.cpython-312.pyc,, +functorch/dim/__pycache__/op_properties.cpython-312.pyc,, +functorch/dim/__pycache__/reference.cpython-312.pyc,, +functorch/dim/__pycache__/tree_map.cpython-312.pyc,, +functorch/dim/__pycache__/wrap_type.cpython-312.pyc,, +functorch/dim/batch_tensor.py,sha256=n0TQMZkB81-2SvXSG9_pNVKjgY01-cWNgXCG6Gqfu4c,694 +functorch/dim/delayed_mul_tensor.py,sha256=KzetKaQs651FxwPJ_i7nf4GgPaq1OtLTLld8fuO-XB8,2453 +functorch/dim/dim.py,sha256=QK3zUOTCUk8z7OwdqPfyx73ssCIK6QHs9Rb1pjxyybE,3502 +functorch/dim/magic_trace.py,sha256=fjSSleCOyqpnihB2NukPIMcNJgQ0fNcKDbOVpahwing,1371 +functorch/dim/op_properties.py,sha256=GzHOa2ulADUvBOatQIxHbhLeUXKrclZxHRq4XPcUgms,6999 +functorch/dim/reference.py,sha256=5F7ba2zla9wSnlolZxDNeSh8k883OKkSLs1zdzQZcUw,20935 +functorch/dim/tree_map.py,sha256=fl97CMvOv37UFqi3hgjZl3B1cfRW-3kzURx72ZMinWY,390 +functorch/dim/wrap_type.py,sha256=6qad-plrk0y-G0_czsWXUZAibCmbLdr1FD1j6FvrQJI,1943 +functorch/einops/__init__.py,sha256=ho1steDFM9r0hgvRWZWx9k6SkNzOMfH89Q35J79fW9c,63 +functorch/einops/__pycache__/__init__.cpython-312.pyc,, +functorch/einops/__pycache__/_parsing.cpython-312.pyc,, +functorch/einops/__pycache__/rearrange.cpython-312.pyc,, +functorch/einops/_parsing.py,sha256=0zg2FFk4g2XH5zjsDZNgjkwVIK73OXMvxKPQh38YMQM,12565 +functorch/einops/rearrange.py,sha256=AfhWkNwFaDwnhKE9eVUsYa1zba8wYOZHWnWgy0UH36M,8250 +functorch/experimental/__init__.py,sha256=3ZNvV4NJakDHna7F96XCmv_KdQNUyUiDcFRe8xQWHlg,278 +functorch/experimental/__pycache__/__init__.cpython-312.pyc,, +functorch/experimental/__pycache__/control_flow.cpython-312.pyc,, +functorch/experimental/__pycache__/ops.cpython-312.pyc,, +functorch/experimental/control_flow.py,sha256=LDUKp_vyqhd3k5oLjBSgpX_NikuOppgcAmq_qgSzGvA,240 +functorch/experimental/ops.py,sha256=g_LXSb0WzSHiOLW4OLkIiuhiHvHPHNtGpBN30Wss6Go,58 +torch-2.6.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 +torch-2.6.0.dist-info/LICENSE,sha256=QTkV5WmA4vChr8psIimCrIcb-pAXjk6rQSwvZVxSNyg,501642 +torch-2.6.0.dist-info/METADATA,sha256=k9whA3Rm_576L3lZUlNCxSTmLVP0-f6QiunjiFV-r3w,28695 +torch-2.6.0.dist-info/NOTICE,sha256=HD3sbANCx-2eEq9ZspbHux05SvXPiB23QZHMgpnvzlw,24088 +torch-2.6.0.dist-info/RECORD,, +torch-2.6.0.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch-2.6.0.dist-info/WHEEL,sha256=KNRoynpGu-d6mheJI-zfvcGl1iN-y8BewbiCDXsF3cY,101 +torch-2.6.0.dist-info/entry_points.txt,sha256=b8t38q301MKrL4Cxfn-q_mop6bMzdkZsKmm2HsnNsmQ,199 +torch-2.6.0.dist-info/top_level.txt,sha256=MsBcfJyMU15lW1efu5w7Tzd4MenrYHiuaixbHMfAoco,25 +torch/_C.cp312-win_amd64.pyd,sha256=xS2jEhnd4TGoWpys-cODjmVSriwMBOn62y5f55WgD4E,10240 +torch/_C/_VariableFunctions.pyi,sha256=a-rb9W4NzLTx1tgFw7JIhG3C5N_h5rUkMEigp8r3avU,1179307 +torch/_C/__init__.pyi,sha256=fFVZ0c28sezBt8iQ10pVcB70XHjslgHXD8WI9kMilgE,421635 +torch/_C/_aoti.pyi,sha256=JP5S-kjpitdasG1qVh7MoUrKgQaWPSNEsUSHtGrEqyY,744 +torch/_C/_autograd.pyi,sha256=L1D-rU2PwiFqSPITUK4myIFfG_28EqetgOLJa4FNAuo,4692 +torch/_C/_cpu.pyi,sha256=BWHnMMo1t489pSEB2Hc0M94QL3E6aKkuhuQrN94OgqY,490 +torch/_C/_cudnn.pyi,sha256=zmiiwhojBzlcTJP7PiembLmbjJahrCtUt6GeVnzBMqE,387 +torch/_C/_cusparselt.pyi,sha256=STZASq5R_xHmWNc23FYTi9xOuN6vX-YagUHiTPASNwY,33 +torch/_C/_distributed_autograd.pyi,sha256=Iu2cM3W5fdcwTjyQ3M6cnkggwQbgwjRxQKx4Yd02Ncc,945 +torch/_C/_distributed_c10d.pyi,sha256=vgwdRWnsFN-RzLS-ltJs4kP5gthUn6ImSzbobLu43QY,20610 +torch/_C/_distributed_rpc.pyi,sha256=26VDsJyb4ooKY5tjFJdAxsEblhTyz2p2OivFNHW4Cso,6268 +torch/_C/_distributed_rpc_testing.pyi,sha256=ORYYhzRBVptDNYXzqKk-VWDm4MEauaxB0gBlEmrzebU,1049 +torch/_C/_export.pyi,sha256=iHOp8YSiMmC0EpA9l6_bXRZNDN7cGbb0Yk92JhevdAs,268 +torch/_C/_functions.pyi,sha256=9WqjUlU4BJrntvA-G15aS8B7O_N_hSGVDWWYDF8B6Tk,634 +torch/_C/_functorch.pyi,sha256=R74rPZ4zuyyKmN_ac3frC7gwdQFGsxrwYEQyo-RH174,3339 +torch/_C/_instruction_counter.pyi,sha256=euVpDw5-_od7VDlZXexNsfpkv0C4cxFKgLK6SIdS7Bk,113 +torch/_C/_itt.pyi,sha256=nrLlzZvGArWL5299sUDM050Or-Id-JWc-qkmFGISri4,174 +torch/_C/_lazy.pyi,sha256=oQfyqgA-jDEd753F_z3D5_UE4yhONgMcaoQhGrrdroI,998 +torch/_C/_lazy_ts_backend.pyi,sha256=7te5WIANu3IYJl9hggNBpUX0g1RFrljAXHoXXWNTD0I,338 +torch/_C/_monitor.pyi,sha256=IPzaVb8nS7Bz5F5jCPDMQocWqNYxDbeeT7YkkksPG0A,1070 +torch/_C/_nn.pyi,sha256=LDAG3OMFa6_Kf5NDglP5joYWyoFgJufIAGKK2jT-UD0,4413 +torch/_C/_nvtx.pyi,sha256=u34pMm7E1ue-HvrnPXrh7ADvFTiriXQJUgkCaDGtFaw,389 +torch/_C/_onnx.pyi,sha256=pKWakDSrFUkLPqHSECJhNZ6cHb0qfdKz6kD_mi05q8U,749 +torch/_C/_profiler.pyi,sha256=MQXeXBJ7dRwyIxUwMiWCt8CXeP0bdShyL8ohXyl9cAE,6486 +torch/_C/_verbose.pyi,sha256=7KJppleT0c1wLkIser5ezi9K4I-f6ecUMvB9a7LmYyA,137 +torch/_VF.py,sha256=hJLG33MTfEPRgdChJxIUR82WMiiqNCfTW5DINBJBnho,695 +torch/_VF.pyi,sha256=a-rb9W4NzLTx1tgFw7JIhG3C5N_h5rUkMEigp8r3avU,1179307 +torch/__config__.py,sha256=FGBoa7EwUI-214eMUlh_4fxh5YhR67-LKhpB4rhvNvY,603 +torch/__future__.py,sha256=wcFs07Ls3wHda59z5xJrMU7_Cw7s5PabTdCVFwY7K50,3260 +torch/__init__.py,sha256=CQGorZKzD5R0BeKPyY3SHFeM--h5awFz3pMfQgebH4k,103037 +torch/__pycache__/_VF.cpython-312.pyc,, +torch/__pycache__/__config__.cpython-312.pyc,, +torch/__pycache__/__future__.cpython-312.pyc,, +torch/__pycache__/__init__.cpython-312.pyc,, +torch/__pycache__/_appdirs.cpython-312.pyc,, +torch/__pycache__/_classes.cpython-312.pyc,, +torch/__pycache__/_compile.cpython-312.pyc,, +torch/__pycache__/_custom_ops.cpython-312.pyc,, +torch/__pycache__/_deploy.cpython-312.pyc,, +torch/__pycache__/_environment.cpython-312.pyc,, +torch/__pycache__/_guards.cpython-312.pyc,, +torch/__pycache__/_jit_internal.cpython-312.pyc,, +torch/__pycache__/_linalg_utils.cpython-312.pyc,, +torch/__pycache__/_lobpcg.cpython-312.pyc,, +torch/__pycache__/_lowrank.cpython-312.pyc,, +torch/__pycache__/_meta_registrations.cpython-312.pyc,, +torch/__pycache__/_namedtensor_internals.cpython-312.pyc,, +torch/__pycache__/_ops.cpython-312.pyc,, +torch/__pycache__/_python_dispatcher.cpython-312.pyc,, +torch/__pycache__/_size_docs.cpython-312.pyc,, +torch/__pycache__/_sources.cpython-312.pyc,, +torch/__pycache__/_storage_docs.cpython-312.pyc,, +torch/__pycache__/_streambase.cpython-312.pyc,, +torch/__pycache__/_tensor.cpython-312.pyc,, +torch/__pycache__/_tensor_docs.cpython-312.pyc,, +torch/__pycache__/_tensor_str.cpython-312.pyc,, +torch/__pycache__/_thread_safe_fork.cpython-312.pyc,, +torch/__pycache__/_torch_docs.cpython-312.pyc,, +torch/__pycache__/_utils.cpython-312.pyc,, +torch/__pycache__/_utils_internal.cpython-312.pyc,, +torch/__pycache__/_vmap_internals.cpython-312.pyc,, +torch/__pycache__/_weights_only_unpickler.cpython-312.pyc,, +torch/__pycache__/functional.cpython-312.pyc,, +torch/__pycache__/hub.cpython-312.pyc,, +torch/__pycache__/library.cpython-312.pyc,, +torch/__pycache__/overrides.cpython-312.pyc,, +torch/__pycache__/quasirandom.cpython-312.pyc,, +torch/__pycache__/random.cpython-312.pyc,, +torch/__pycache__/return_types.cpython-312.pyc,, +torch/__pycache__/serialization.cpython-312.pyc,, +torch/__pycache__/storage.cpython-312.pyc,, +torch/__pycache__/torch_version.cpython-312.pyc,, +torch/__pycache__/types.cpython-312.pyc,, +torch/__pycache__/version.cpython-312.pyc,, +torch/_appdirs.py,sha256=6VmTQuHqcGxEClHaYU5flkIp9ZBWTkOvo7gf1pPOeCM,26835 +torch/_awaits/__init__.py,sha256=zi2RTUcKVCkwUpLXF2KHUVMhiHeRNn-BjOo8fLm8Ay0,1705 +torch/_awaits/__pycache__/__init__.cpython-312.pyc,, +torch/_classes.py,sha256=R5gj60vFsHqrOUeukvK6WECIGmqfpLlJk-RRbminpSs,1777 +torch/_compile.py,sha256=dTWfwc4HNAOC1nOMiyytqAq_3isRt1qtUeIxFhvm_jQ,1343 +torch/_custom_op/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_custom_op/__pycache__/__init__.cpython-312.pyc,, +torch/_custom_op/__pycache__/autograd.cpython-312.pyc,, +torch/_custom_op/__pycache__/functional.cpython-312.pyc,, +torch/_custom_op/__pycache__/impl.cpython-312.pyc,, +torch/_custom_op/autograd.py,sha256=EUxQWj5gKrNJ-hcZHbpT1qhgJn6elLfjP7ASpR4uEfw,12093 +torch/_custom_op/functional.py,sha256=yLPdG3IyjFjOQQApjg97yDvYzCBq7sDHoQL0vHqZ8UQ,8140 +torch/_custom_op/impl.py,sha256=tTB-llywQNtuBi-vEYTBCW8gu5VCLtWbGx92lNG_HEE,27366 +torch/_custom_ops.py,sha256=9cGoJ12ZTk0aLf4RIn6oLLN3M5amop6qFVlfqNmZWVw,13146 +torch/_decomp/__init__.py,sha256=7vfq8EMmabX7A5JDBTdgR5o-AmKBNwdpQg9TAhaDl_c,19739 +torch/_decomp/__pycache__/__init__.cpython-312.pyc,, +torch/_decomp/__pycache__/decompositions.cpython-312.pyc,, +torch/_decomp/__pycache__/decompositions_for_jvp.cpython-312.pyc,, +torch/_decomp/__pycache__/decompositions_for_rng.cpython-312.pyc,, +torch/_decomp/decompositions.py,sha256=GCUzsDLIAkQp4RCXEe5k0v6_cA77xRsXlaGmZsaI8Fw,181419 +torch/_decomp/decompositions_for_jvp.py,sha256=WsjoKZOoLm9yM-LCD03TbZcCo3x3uFFobclDAqcMQUg,12053 +torch/_decomp/decompositions_for_rng.py,sha256=1tr-6B6Pa7-mhFvZdae86WhJ-cSsoIUW-KxzvBbBWiI,9450 +torch/_deploy.py,sha256=TwPikibwIuBarPXASg1iQrAOR9c3t1dtpuoERzyz0V8,3561 +torch/_dispatch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_dispatch/__pycache__/__init__.cpython-312.pyc,, +torch/_dispatch/__pycache__/python.cpython-312.pyc,, +torch/_dispatch/python.py,sha256=VPWXL572TAsvTxKi2BozaxyqUxswtXpSw51TbxOHu3A,6553 +torch/_dynamo/__init__.py,sha256=kmWySSOmwT-TJ0ZRkRX_Nm9V_e6EAxt0RzSM0qVZOg8,4505 +torch/_dynamo/__pycache__/__init__.cpython-312.pyc,, +torch/_dynamo/__pycache__/_trace_wrapped_higher_order_op.cpython-312.pyc,, +torch/_dynamo/__pycache__/bytecode_analysis.cpython-312.pyc,, +torch/_dynamo/__pycache__/bytecode_transformation.cpython-312.pyc,, +torch/_dynamo/__pycache__/cache_size.cpython-312.pyc,, +torch/_dynamo/__pycache__/callback.cpython-312.pyc,, +torch/_dynamo/__pycache__/code_context.cpython-312.pyc,, +torch/_dynamo/__pycache__/codegen.cpython-312.pyc,, +torch/_dynamo/__pycache__/compiled_autograd.cpython-312.pyc,, +torch/_dynamo/__pycache__/comptime.cpython-312.pyc,, +torch/_dynamo/__pycache__/config.cpython-312.pyc,, +torch/_dynamo/__pycache__/convert_frame.cpython-312.pyc,, +torch/_dynamo/__pycache__/create_parameter_op.cpython-312.pyc,, +torch/_dynamo/__pycache__/current_scope_id.cpython-312.pyc,, +torch/_dynamo/__pycache__/debug_utils.cpython-312.pyc,, +torch/_dynamo/__pycache__/decorators.cpython-312.pyc,, +torch/_dynamo/__pycache__/device_interface.cpython-312.pyc,, +torch/_dynamo/__pycache__/distributed.cpython-312.pyc,, +torch/_dynamo/__pycache__/eval_frame.cpython-312.pyc,, +torch/_dynamo/__pycache__/exc.cpython-312.pyc,, +torch/_dynamo/__pycache__/external_utils.cpython-312.pyc,, +torch/_dynamo/__pycache__/funcname_cache.cpython-312.pyc,, +torch/_dynamo/__pycache__/graph_deduplication.cpython-312.pyc,, +torch/_dynamo/__pycache__/graph_region_tracker.cpython-312.pyc,, +torch/_dynamo/__pycache__/guards.cpython-312.pyc,, +torch/_dynamo/__pycache__/hooks.cpython-312.pyc,, +torch/_dynamo/__pycache__/logging.cpython-312.pyc,, +torch/_dynamo/__pycache__/metrics_context.cpython-312.pyc,, +torch/_dynamo/__pycache__/mutation_guard.cpython-312.pyc,, +torch/_dynamo/__pycache__/output_graph.cpython-312.pyc,, +torch/_dynamo/__pycache__/pgo.cpython-312.pyc,, +torch/_dynamo/__pycache__/profiler.cpython-312.pyc,, +torch/_dynamo/__pycache__/replay_record.cpython-312.pyc,, +torch/_dynamo/__pycache__/resume_execution.cpython-312.pyc,, +torch/_dynamo/__pycache__/side_effects.cpython-312.pyc,, +torch/_dynamo/__pycache__/source.cpython-312.pyc,, +torch/_dynamo/__pycache__/symbolic_convert.cpython-312.pyc,, +torch/_dynamo/__pycache__/tensor_version_op.cpython-312.pyc,, +torch/_dynamo/__pycache__/test_case.cpython-312.pyc,, +torch/_dynamo/__pycache__/test_minifier_common.cpython-312.pyc,, +torch/_dynamo/__pycache__/testing.cpython-312.pyc,, +torch/_dynamo/__pycache__/trace_rules.cpython-312.pyc,, +torch/_dynamo/__pycache__/types.cpython-312.pyc,, +torch/_dynamo/__pycache__/utils.cpython-312.pyc,, +torch/_dynamo/_trace_wrapped_higher_order_op.py,sha256=upLyg3KNlKj5aqhdPAbyYMvZB_gzLPjpMQ9Y70DUctI,9266 +torch/_dynamo/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_dynamo/backends/__pycache__/__init__.cpython-312.pyc,, +torch/_dynamo/backends/__pycache__/common.cpython-312.pyc,, +torch/_dynamo/backends/__pycache__/cudagraphs.cpython-312.pyc,, +torch/_dynamo/backends/__pycache__/debugging.cpython-312.pyc,, +torch/_dynamo/backends/__pycache__/distributed.cpython-312.pyc,, +torch/_dynamo/backends/__pycache__/inductor.cpython-312.pyc,, +torch/_dynamo/backends/__pycache__/onnxrt.cpython-312.pyc,, +torch/_dynamo/backends/__pycache__/registry.cpython-312.pyc,, +torch/_dynamo/backends/__pycache__/tensorrt.cpython-312.pyc,, +torch/_dynamo/backends/__pycache__/torchxla.cpython-312.pyc,, +torch/_dynamo/backends/__pycache__/tvm.cpython-312.pyc,, +torch/_dynamo/backends/common.py,sha256=lvsA4KM3v8yugeFfTc9AfNJDtMwMnhb_1pG2H8fVXWI,4561 +torch/_dynamo/backends/cudagraphs.py,sha256=bdvcRVvY4mV1trvWQTuFCulpcEQJNdCCRbPGZ7DR2-8,8625 +torch/_dynamo/backends/debugging.py,sha256=kFUwQIrH3umCmQ3aN6nMZ5jaZK-DrKbMFbotHYxaZ1Y,13859 +torch/_dynamo/backends/distributed.py,sha256=-BqfckB-V-H1PgB8op-l6d3kinP7B5OCnL6mPyqYRIM,25150 +torch/_dynamo/backends/inductor.py,sha256=y_1tjFG3g8Arum9nNm9Jl4r1uJhwCY5Gh9f4u5YgMhw,303 +torch/_dynamo/backends/onnxrt.py,sha256=saxu4kT7VTt8I4SeUcHonvhRZizcu9D0EduhRnvjCMs,1579 +torch/_dynamo/backends/registry.py,sha256=cibvVGQQm1JCGVgDCSKxhjygkz6Y4E6EGCQrq3XjVS0,3809 +torch/_dynamo/backends/tensorrt.py,sha256=0UBGGjwh5yOcMG4w_uFqPBlrgCzNn9hsF5_6G8ndeiw,420 +torch/_dynamo/backends/torchxla.py,sha256=4s-drykMtZ5MLvES23JKBT5cMUpmUl1nucDx_yKq2ec,1302 +torch/_dynamo/backends/tvm.py,sha256=10ItFuSk2AhQ_ZGDw3wRio_IajULGWV-23uDqhMgZGk,7016 +torch/_dynamo/bytecode_analysis.py,sha256=9CWv6djpwZLq7hhdo6CBBru7rUIgy6qTItQEkc_gW2k,9103 +torch/_dynamo/bytecode_transformation.py,sha256=893KyjaOM2gkSPaGobPQquFPTK259i3lYZNTxd6yzHo,58148 +torch/_dynamo/cache_size.py,sha256=KupexxgbSMEkwZHOWDTNcSa6xSEE7uPKzbgi1ZLmeaM,8080 +torch/_dynamo/callback.py,sha256=OJBss_J9V1ycUJfSy4Ym9Vfz5M58Azl_nrBim85yXSg,3079 +torch/_dynamo/code_context.py,sha256=-IxxoqwYRwN8_jEw8LZNA1MWxySZY3H62idYCiJcYOk,851 +torch/_dynamo/codegen.py,sha256=3pvFuFcNIvDbKtlGWPWthpP9NVJ6l4eJk-aZalQTw90,22006 +torch/_dynamo/compiled_autograd.py,sha256=KmC8Gl9DR7SYw-zyZaGErHz6CUgnkxrG9efAWNBzqpI,34467 +torch/_dynamo/comptime.py,sha256=8IoR2-VsW-km1I3bxTlES9ktXxGJFcUAW9uBb1K3O38,13573 +torch/_dynamo/config.py,sha256=DjDyaPrL218fbe4VEpzIas5Ky3KG4-jcUwxDQhjh6qk,24519 +torch/_dynamo/convert_frame.py,sha256=QSRGueSiXvx6fTl-TvBzzYNAAWtgGveo1UNzPrifDpU,53200 +torch/_dynamo/create_parameter_op.py,sha256=AA8KIqeZygR9JIx_4ta1J2UFzz9KIAd8cmdCux3uquM,2571 +torch/_dynamo/current_scope_id.py,sha256=M5M0ZekwUsXVG-XMzAplkfCaeZUsI-GFadRKvY4sEvE,703 +torch/_dynamo/debug_utils.py,sha256=pMGBiEoBkyui9jXoZ3jCBMV_THAPAzGGj8vOhDnAYh8,29596 +torch/_dynamo/decorators.py,sha256=NNB8zVQlpDoevgau5PS7Y5dbIcCttMvLj7nYVA5sllE,23775 +torch/_dynamo/device_interface.py,sha256=na-Hi0ZGGYLgOscSm2UFGnuht-oMzxdTY5LVONPf_WA,13171 +torch/_dynamo/distributed.py,sha256=5A_nbSShuW4EWj6RBp1-bFBiY2UusF5IT4c7HVJYYxA,619 +torch/_dynamo/eval_frame.py,sha256=GOH8RNkhsFXwXtub2rVX4DDF8P5NuRaDaP-V_6EXgdQ,70738 +torch/_dynamo/exc.py,sha256=SFqiUdSvNb3w5oitQ4pi715moyk7zpQLDnWEQdHwbUw,15537 +torch/_dynamo/external_utils.py,sha256=vZ_ymcdLe0ViYEB--SxK9M0cfYZSdFcWP2L9xCnwBho,4705 +torch/_dynamo/funcname_cache.py,sha256=GE2cPLIyVHltVM3KEkK6bUofGPrgDgBBJuYDXjVApxg,1816 +torch/_dynamo/graph_deduplication.py,sha256=ViDWWCwRCgAfNlJziy22AtIIH8XiVGkQhql9Sa0SipY,8356 +torch/_dynamo/graph_region_tracker.py,sha256=lyu6hrsN52AZdvKXOGWbVa3ESGpTyDMq0geA9kWJYuM,13064 +torch/_dynamo/guards.py,sha256=Pablk5OWW-0q9XJyVynKdL3iKH1II1Vq-ea1lJd2-EA,118782 +torch/_dynamo/hooks.py,sha256=FMkBSBRfs3SM0VReZbjUUzOhrHTO6tH1mu7ulgp8PtI,304 +torch/_dynamo/logging.py,sha256=gTowrMho5ag3ucRn3pEvVzzBb_xPpQbfXX-Sop02GfY,1831 +torch/_dynamo/metrics_context.py,sha256=TASBwSBdmZ_GgCenKt95zD8z3_x9s6HGVcTa0CYFbK0,4679 +torch/_dynamo/mutation_guard.py,sha256=7xCrcAPIh0jPWhbDiI3W_z58-8GyVH9eZ92DeeP7ZOw,4686 +torch/_dynamo/output_graph.py,sha256=s22PQNtPT-PvaMXLiXXKxgO_8E6wlfRwNUOjUcYrN1g,111170 +torch/_dynamo/pgo.py,sha256=SWYPmDaQoKXo-yRkEcIrNKuMPIAAbw83V1LFRqfxI04,26688 +torch/_dynamo/polyfills/__init__.py,sha256=ZRZYwHTYx7YZTZCS-XMVR3mzWS_z3loEwUH5madrG4c,6360 +torch/_dynamo/polyfills/__pycache__/__init__.cpython-312.pyc,, +torch/_dynamo/polyfills/__pycache__/builtins.cpython-312.pyc,, +torch/_dynamo/polyfills/__pycache__/functools.cpython-312.pyc,, +torch/_dynamo/polyfills/__pycache__/itertools.cpython-312.pyc,, +torch/_dynamo/polyfills/__pycache__/loader.cpython-312.pyc,, +torch/_dynamo/polyfills/__pycache__/operator.cpython-312.pyc,, +torch/_dynamo/polyfills/__pycache__/os.cpython-312.pyc,, +torch/_dynamo/polyfills/__pycache__/pytree.cpython-312.pyc,, +torch/_dynamo/polyfills/__pycache__/sys.cpython-312.pyc,, +torch/_dynamo/polyfills/builtins.py,sha256=LLL1raDW6gwy34ztC17p2qXhIkharuQs-JFeakHTv4s,1389 +torch/_dynamo/polyfills/functools.py,sha256=7uUM4TURINFLNEfJGta7HhDbfU_zndrYvbauNmVW7OU,985 +torch/_dynamo/polyfills/itertools.py,sha256=6o9Y6JfZul7ixX0sI4cc2qH7euDHD0LZ59BlFGlbLkw,3614 +torch/_dynamo/polyfills/loader.py,sha256=xTcPruxROjZmhwd3H7vubgAurxafgfrNbAJ5KYXI3Yc,1247 +torch/_dynamo/polyfills/operator.py,sha256=fT3O1kOGdOQzqfS9OpOBipX9UaP_HP5N9WnRmyGOIMA,3049 +torch/_dynamo/polyfills/os.py,sha256=HLqUpw4bXrz0bRpkP67tDjbNKXRtMWPKcB6dR3LNesE,1014 +torch/_dynamo/polyfills/pytree.py,sha256=nDeEo3q3oK-e_tILZ29YUozEdyaerxn-w4ohxo7BJIE,2887 +torch/_dynamo/polyfills/sys.py,sha256=iWMkkHK_ccdpwM0bzPBd6SMmSVqpsEYavgnx8r2Ts5o,296 +torch/_dynamo/profiler.py,sha256=0PwK5aBDC1h_oV2FiYjJLGJ6Hys6RI-wjp3U2xRd87M,5277 +torch/_dynamo/replay_record.py,sha256=qcemPaZA_XxtZiR1APO3LGj2ScJQnwLb1pyOwJ9wWCg,3759 +torch/_dynamo/repro/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_dynamo/repro/__pycache__/__init__.cpython-312.pyc,, +torch/_dynamo/repro/__pycache__/after_aot.cpython-312.pyc,, +torch/_dynamo/repro/__pycache__/after_dynamo.cpython-312.pyc,, +torch/_dynamo/repro/__pycache__/aoti.cpython-312.pyc,, +torch/_dynamo/repro/after_aot.py,sha256=eSIG7mrzXaoLks_6C2hIJiMUZBylvB48pNd7G8KS_24,36202 +torch/_dynamo/repro/after_dynamo.py,sha256=p1GwKDz5IQ7Ziwi_Tj7w1deEKEWwL1g-dPHD5DrFWJs,20320 +torch/_dynamo/repro/aoti.py,sha256=lmUiqZreonpkb2fYjylvwStcxgm9p1E32D9PwmI39sU,17549 +torch/_dynamo/resume_execution.py,sha256=siJA6CSVYvL1FzXzoKEe0GvjObX_NyheAewPQ68Bv3k,24356 +torch/_dynamo/side_effects.py,sha256=0R5xEmq-L2wApwiGPX8RNzxyB7IUFYnV1W7GbxHH7BM,34787 +torch/_dynamo/source.py,sha256=RAsbdw8Kj3kEbmpLXXTkTSBK5FUPuL6vDiAtzxQSGtE,27252 +torch/_dynamo/symbolic_convert.py,sha256=5nBpYGhS6g0xTGeKe1WzMQAKFP5wY6AySZkBdG_Tars,136009 +torch/_dynamo/tensor_version_op.py,sha256=jJL__Jn1pAljJx4ND79czsDs62ZkLyl4MSVsGNpBf4s,2187 +torch/_dynamo/test_case.py,sha256=9f9sFpzD27_A0rHxbLsNgTvNOMruBJjj2MbN1MI3JyM,2329 +torch/_dynamo/test_minifier_common.py,sha256=nWXt8ZGy8KDet5o-Cg7yYu8BdmeJr6xz8OYtlN1sJLs,10940 +torch/_dynamo/testing.py,sha256=mae1vuqpLE66aesLHZnEHqSQaQj_1MQmCpElv8slY04,15586 +torch/_dynamo/trace_rules.py,sha256=8YQJVVUKm5NgqSmldp2NSwTvjnCiYwI38ttUFO85HCM,146803 +torch/_dynamo/types.py,sha256=PEyQqWI92fYLqpFKPjF5bvwAzrNtQjAHg3fj9VmvolU,2281 +torch/_dynamo/utils.py,sha256=Et_eSPQ0SwU2QfzlOuc2jOFS1vX7SuOoBoqNUwcIpPk,128597 +torch/_dynamo/variables/__init__.py,sha256=lvbyYAxtrR83yIR05Daxnd1jdz842gngr1Yq9wJXTNI,5055 +torch/_dynamo/variables/__pycache__/__init__.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/base.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/builder.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/builtin.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/constant.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/ctx_manager.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/dicts.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/distributed.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/functions.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/higher_order_ops.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/iter.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/lazy.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/lists.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/misc.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/nn_module.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/optimizer.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/script_object.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/sdpa.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/tensor.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/torch.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/torch_function.cpython-312.pyc,, +torch/_dynamo/variables/__pycache__/user_defined.cpython-312.pyc,, +torch/_dynamo/variables/base.py,sha256=wcyXwrhqCCQale7NixfcHGLItP1biVEny9lF5ybUlv8,17444 +torch/_dynamo/variables/builder.py,sha256=ZY7hDeA_ItV864vHkYHnVQzb0cym22JR7OdZpJYH3mw,131247 +torch/_dynamo/variables/builtin.py,sha256=F0hKZ3niHj88a1WDfIjk5dr2ExPH8ChFwLGXMcmUmuA,82655 +torch/_dynamo/variables/constant.py,sha256=QWskwi1dUxekVNQKI_hRL4yJ9h0-gyAMK6CniukmCHo,8812 +torch/_dynamo/variables/ctx_manager.py,sha256=tCMTj4xJcgkli3LC7wKnBRECIJGdLIrsry_EXEnbCvQ,43961 +torch/_dynamo/variables/dicts.py,sha256=j-6p21Dn2BanzUP-pqgqkzWSh4VwI0eCasoaSKJnuGs,39581 +torch/_dynamo/variables/distributed.py,sha256=8YPpBASTfkXFXtyeK6Wc58MlcePKFaP91df8y7l1_98,14720 +torch/_dynamo/variables/functions.py,sha256=EiiMHIDf4RKlxpjT2K68oVT3jUH0c30YwBbwDUJOOps,46301 +torch/_dynamo/variables/higher_order_ops.py,sha256=qQFpw1g3gnSh5ccr7pyHlm86R3vNh8gLjixpX_27ihg,110724 +torch/_dynamo/variables/iter.py,sha256=an8WMRCNcB59gP99cpiVBuFPElXxhuH6gYRnSR5KsU8,19834 +torch/_dynamo/variables/lazy.py,sha256=hF5eZe8zk-CtEEK2erQxmg7hO26U6AVeihNw7ObBZDc,6134 +torch/_dynamo/variables/lists.py,sha256=VJ-UOS-Zxg26cikHlvyHW3UDzgs8jT9pS80R5Jo_k0M,39682 +torch/_dynamo/variables/misc.py,sha256=E6PxpEEA3tZEfhDGhHIpLI7jij-uY6Mw2MIZReS4nE4,64893 +torch/_dynamo/variables/nn_module.py,sha256=CEbxairjsunx7wMxzd2FO_Ntygr07S6mF4zGDtwC6fQ,48215 +torch/_dynamo/variables/optimizer.py,sha256=Sa-Vcr7EeB7NmF9Mw75GrSHOLRePaiDVC0d4nrUh-4o,16002 +torch/_dynamo/variables/script_object.py,sha256=5wt4kol90Rn9c91UYMTDeUOM8f9qGc42VYdwjiLywco,2899 +torch/_dynamo/variables/sdpa.py,sha256=oFPqeiRAfJkn_Y7sPTxUQxzALNuliUA78jif34FhDhI,2538 +torch/_dynamo/variables/tensor.py,sha256=RjSl3p1LOrHdmAVdKz_-vqBkpDaGLSiaL2OqsTU2lYY,56291 +torch/_dynamo/variables/torch.py,sha256=6gqc1fndt8Iyt1KUVh0UHpRoxB4ijii19-B7bfw8XTo,51188 +torch/_dynamo/variables/torch_function.py,sha256=PG7vCMOnrE9ide2HBPovoCt7-D4qtMKjUH6sbVQd66U,24852 +torch/_dynamo/variables/user_defined.py,sha256=Ndi1GMrmiAIFmmOS50TmipFwSG0pSsjx7e0cE_XXdxQ,58754 +torch/_environment.py,sha256=oY4eUdyvzp214s4IxxLW5tcr0N7KkAVyR0qrjXKPqmg,44 +torch/_export/__init__.py,sha256=-qSEsdYfWPIcZ7UbCqgEi7WjS06uLtEhevTnX3D3rNM,15675 +torch/_export/__pycache__/__init__.cpython-312.pyc,, +torch/_export/__pycache__/converter.cpython-312.pyc,, +torch/_export/__pycache__/error.cpython-312.pyc,, +torch/_export/__pycache__/non_strict_utils.cpython-312.pyc,, +torch/_export/__pycache__/pass_base.cpython-312.pyc,, +torch/_export/__pycache__/tools.cpython-312.pyc,, +torch/_export/__pycache__/utils.cpython-312.pyc,, +torch/_export/__pycache__/verifier.cpython-312.pyc,, +torch/_export/__pycache__/wrappers.cpython-312.pyc,, +torch/_export/converter.py,sha256=F4Sb81RxwiCUvfRGDv3Pvku-pgPxxbvcyac38F66FKI,65777 +torch/_export/db/__init__.py,sha256=JQMVLRoFCKo629KQ_1vu4i10Rmkww8EWMyZnDLEGXag,211 +torch/_export/db/__pycache__/__init__.cpython-312.pyc,, +torch/_export/db/__pycache__/case.cpython-312.pyc,, +torch/_export/db/__pycache__/gen_example.cpython-312.pyc,, +torch/_export/db/__pycache__/logging.cpython-312.pyc,, +torch/_export/db/case.py,sha256=Vbb_7v10xKpij_p86PlRsIM8RMRjHBYBqYfKE5cEuAU,5196 +torch/_export/db/examples/__init__.py,sha256=NpYiPkSVS3WILe8olwFApfL91puPyaicw9oNcGnZq68,1709 +torch/_export/db/examples/__pycache__/__init__.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/assume_constant_result.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/autograd_function.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/class_method.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/cond_branch_class_method.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/cond_branch_nested_function.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/cond_branch_nonlocal_variables.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/cond_closed_over_variable.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/cond_operands.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/cond_predicate.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/constrain_as_size_example.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/constrain_as_value_example.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/decorator.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/dictionary.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/dynamic_shape_assert.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/dynamic_shape_constructor.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/dynamic_shape_if_guard.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/dynamic_shape_map.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/dynamic_shape_round.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/dynamic_shape_slicing.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/dynamic_shape_view.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/fn_with_kwargs.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/list_contains.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/list_unpack.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/model_attr_mutation.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/nested_function.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/null_context_manager.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/optional_input.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/pytree_flatten.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/scalar_output.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/specialized_attribute.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/static_for_loop.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/static_if.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/tensor_setattr.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/type_reflection_method.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/unsupported_operator.cpython-312.pyc,, +torch/_export/db/examples/__pycache__/user_input_mutation.cpython-312.pyc,, +torch/_export/db/examples/assume_constant_result.py,sha256=KpwYNJ7FSfogkz2pR_bdCrpEGaEKoUYcOYZ41tMT52o,530 +torch/_export/db/examples/autograd_function.py,sha256=DGWCDLKevtQadFsNH02UM5XzrvmlSsQaWxFbTemZqYc,601 +torch/_export/db/examples/class_method.py,sha256=7RhhdSXeU2bWbLCk1Ftdmot1r2rdzS2YC3LWC5L-naE,521 +torch/_export/db/examples/cond_branch_class_method.py,sha256=n7r_4c1IomIpdPhhsE63NSdm2JNItSuBh3_83wIh8wo,1371 +torch/_export/db/examples/cond_branch_nested_function.py,sha256=r0A2249Ipudz5ONHPCkiUZ5nA1PQrNPTroVcluJ5a2A,1343 +torch/_export/db/examples/cond_branch_nonlocal_variables.py,sha256=sUe5h7AMWE958RPYXBWHKBRD_AIY8dqhKkrmjyPPJWw,1900 +torch/_export/db/examples/cond_closed_over_variable.py,sha256=9Mn39Q8WcZ9HUu26wq06BDhyNCE2OSw-AeNj7tuZh9U,569 +torch/_export/db/examples/cond_operands.py,sha256=v6_cPg7hOJYVa0pkAHEdUva7au-1N3yaikM7M_KX4jA,882 +torch/_export/db/examples/cond_predicate.py,sha256=pj3w9TsgmM_UffQTngHb_Yd-lBw9CbBrQdEmrh7ou38,688 +torch/_export/db/examples/constrain_as_size_example.py,sha256=7O7V9AGhrS9LqgsQ-YsQu2vDACFmgDKSK7euEr9NIMU,662 +torch/_export/db/examples/constrain_as_value_example.py,sha256=tm-3fG-Nu6mUDM8ZHKhYQvrgItaIUh0qrsTo9iu-HTc,717 +torch/_export/db/examples/decorator.py,sha256=oHQ39bHuPeK3EeOV3HsyRs7MY5KxXO1eOR1CNPiZQ_U,503 +torch/_export/db/examples/dictionary.py,sha256=NJ-Klzxl-mE0IhFJGNkW8HN0FAg9HcAU5yccntZvedc,421 +torch/_export/db/examples/dynamic_shape_assert.py,sha256=0rRtnAHLYSYPxtONdmJz_MyCeJdGpCaM-sbLspi10Oo,468 +torch/_export/db/examples/dynamic_shape_constructor.py,sha256=lOjFINCStd4zmu2Vr9zi_rwYaL5A0sobDoVX3qhT6HM,411 +torch/_export/db/examples/dynamic_shape_if_guard.py,sha256=qggdXy2eBJk0kKaHnRPoM5v_ORu7kw4AgLkbd1jW0XA,579 +torch/_export/db/examples/dynamic_shape_map.py,sha256=ROqfFs6mIxZGNf4m_j39kimJ6ZiegndVByWRmGqAp8k,473 +torch/_export/db/examples/dynamic_shape_round.py,sha256=AfXnT8_oeDAcDnpFscD3qGhUuFA3PiyJMdLig-9D1_8,546 +torch/_export/db/examples/dynamic_shape_slicing.py,sha256=jv84W8ewyLl6W7qRP9jj1FEJzTUsKv4rcnT3dU4bPOM,403 +torch/_export/db/examples/dynamic_shape_view.py,sha256=mWYcUNa-btUzG5aF994K0wOOqG5V1y6gxRE2h7Gb-Hk,461 +torch/_export/db/examples/fn_with_kwargs.py,sha256=qUPoxV4BUCkLfEznW5PjHLYg-ggap5QI-IFtzM4FqyE,761 +torch/_export/db/examples/list_contains.py,sha256=EG9tgRlSkbZnz9hmLV5OEHVGonugVkwFPZgVmx-dTgU,494 +torch/_export/db/examples/list_unpack.py,sha256=Gx9O343KLDNjGkqM5GWbVuNhlHqQ5BELWLUVs7ehlbs,614 +torch/_export/db/examples/model_attr_mutation.py,sha256=h1dvo1psNLOVIQYISCZcdQaZI9KwVCgxUqDv0Jg6kSU,688 +torch/_export/db/examples/nested_function.py,sha256=6M1YbZo8AXA7pIEwDjNjloeguUPkv2tTC22RgBYSMiU,514 +torch/_export/db/examples/null_context_manager.py,sha256=1fBDJxbRhIAW9td0fsifR8QoBpdGAlXwq4GxMiYNYg4,499 +torch/_export/db/examples/optional_input.py,sha256=3kSSo2Nr9muJ4GiRPE8xewuMLuW7GFLi0SbMJKvjfMk,475 +torch/_export/db/examples/pytree_flatten.py,sha256=OldYcyDaEdP3NG88T5nBrMM3lAvAc2sfVjZHRIFOBns,391 +torch/_export/db/examples/scalar_output.py,sha256=fpbxy1MySLUTAz57P39pLBPVEfSdIAC0d9JDAa7lB9g,566 +torch/_export/db/examples/specialized_attribute.py,sha256=prbTioycap7pvNkI_3SA688cfTJHvtFYNw42tPns40M,546 +torch/_export/db/examples/static_for_loop.py,sha256=f4dXMQw28-cspeGBVhZ31y_IEXhZ3YUFzoRrPP_Qh7g,401 +torch/_export/db/examples/static_if.py,sha256=CQPwPy1r7gcN7cR2cdziwTnj9aakvW53-ojoc-snBcw,415 +torch/_export/db/examples/tensor_setattr.py,sha256=PCCle6Wexu0ZBwxOSFr35UZwIjlBAe9o1LuLKQIJFwY,352 +torch/_export/db/examples/type_reflection_method.py,sha256=3Z-5GHb5eWKuuLK0-6B_tG_nZNeizr4Y7AuLDZRQ7ig,483 +torch/_export/db/examples/unsupported_operator.py,sha256=jiHwslxhsRjC1Uld3EVVMCme6RG0e1rf0JdUvs7bfc4,429 +torch/_export/db/examples/user_input_mutation.py,sha256=fe-oUXenBLZprn69qn4J6s804qrnJBMcXb0gQZJhVaE,319 +torch/_export/db/gen_example.py,sha256=43Jhg_l7Ke17ml79_eU8T_qT5NmyhjiEisZVK-YjRus,483 +torch/_export/db/logging.py,sha256=knkYA-r3y7XP8IlL3vQOL-8UWRGVp1uipFBccDp-XtE,1663 +torch/_export/error.py,sha256=QXyVuJjbdbTcTodQ9tth-jUUpBeg4T8Ar3WLh1wHLXM,1826 +torch/_export/non_strict_utils.py,sha256=ddgdCnMtJmWHwQCXVPwzKs-aUDg6Lt1KoTIJbyHYOJI,22518 +torch/_export/pass_base.py,sha256=FWKWZmvu26nf-ogPjNwsDWquEuNMky86CwbU8iUKrsc,18107 +torch/_export/pass_infra/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_export/pass_infra/__pycache__/__init__.cpython-312.pyc,, +torch/_export/pass_infra/__pycache__/node_metadata.cpython-312.pyc,, +torch/_export/pass_infra/__pycache__/proxy_value.cpython-312.pyc,, +torch/_export/pass_infra/node_metadata.py,sha256=V2qqMY7uFy_xjVmekQa_rqnGFJco9MdvJsureZwxgJk,814 +torch/_export/pass_infra/proxy_value.py,sha256=cw37Rj9O1oHLPYHDL-MFPj_y-vFafUKxgh1fGjXtTKE,1209 +torch/_export/passes/__init__.py,sha256=mUQ0mkji9c_GH4vU9VaS1CXALHLwW0mic3OhC2gXM3M,89 +torch/_export/passes/__pycache__/__init__.cpython-312.pyc,, +torch/_export/passes/__pycache__/_node_metadata_hook.cpython-312.pyc,, +torch/_export/passes/__pycache__/add_runtime_assertions_for_constraints_pass.cpython-312.pyc,, +torch/_export/passes/__pycache__/collect_tracepoints_pass.cpython-312.pyc,, +torch/_export/passes/__pycache__/constant_folding.cpython-312.pyc,, +torch/_export/passes/__pycache__/functionalize_side_effectful_ops_pass.cpython-312.pyc,, +torch/_export/passes/__pycache__/insert_custom_op_guards.cpython-312.pyc,, +torch/_export/passes/__pycache__/lift_constants_pass.cpython-312.pyc,, +torch/_export/passes/__pycache__/remove_runtime_assertions.cpython-312.pyc,, +torch/_export/passes/__pycache__/replace_autocast_with_hop_pass.cpython-312.pyc,, +torch/_export/passes/__pycache__/replace_quantized_ops_with_standard_ops_pass.cpython-312.pyc,, +torch/_export/passes/__pycache__/replace_set_grad_with_hop_pass.cpython-312.pyc,, +torch/_export/passes/__pycache__/replace_view_ops_with_view_copy_ops_pass.cpython-312.pyc,, +torch/_export/passes/__pycache__/replace_with_hop_pass_util.cpython-312.pyc,, +torch/_export/passes/_node_metadata_hook.py,sha256=S554Ha7V4fcyv6QjfVPURUSLAwO08NSfDVhuD6obztY,2513 +torch/_export/passes/add_runtime_assertions_for_constraints_pass.py,sha256=QFzTOubB3LHVM9eHNNdQh24r05mY2W-Sw3h64Qs7Mfk,9977 +torch/_export/passes/collect_tracepoints_pass.py,sha256=ux8OdXM5A5v9G4VU58L2NL64Zd36pXfmmTsuTKtArOg,6700 +torch/_export/passes/constant_folding.py,sha256=UqyzQ22HAcIW2n8hEr5KNhYxPTK36hBX7TOfVnhhKwM,11532 +torch/_export/passes/functionalize_side_effectful_ops_pass.py,sha256=FyFGulpp5qgCugywYKJkGHDRZHzVLhZhLlU-YmpsXfY,3366 +torch/_export/passes/insert_custom_op_guards.py,sha256=zJWuyhU5bCefQ4mF2aW4xZxY0KpcLgJ4Pkdi-grhg6U,1489 +torch/_export/passes/lift_constants_pass.py,sha256=nFmmVIrU7CPPYfJDJP8mg-GA_IMPCR52c0KhjW50nl0,14771 +torch/_export/passes/remove_runtime_assertions.py,sha256=pf6JgJlKTI26Z2g1og1T4-He30TDkjCkYiFS-IboZCs,1094 +torch/_export/passes/replace_autocast_with_hop_pass.py,sha256=3UFcvCmv-WX6J_ul8xmjVV1zS0sGph0Ipr9f43eyHeY,7418 +torch/_export/passes/replace_quantized_ops_with_standard_ops_pass.py,sha256=muDKw1V7I1tHJvc1oV_cK3IU0KFH2WDZs_bXPMa9jrw,26351 +torch/_export/passes/replace_set_grad_with_hop_pass.py,sha256=ARe5Buw1ukW9jSKRXeqrzYx1jWGnbr98v0eUT4hXZno,4453 +torch/_export/passes/replace_view_ops_with_view_copy_ops_pass.py,sha256=6i8lTPQObKB0DElhtG7nNxSoZnjNMn5F9Tu_U-NrB9Y,2504 +torch/_export/passes/replace_with_hop_pass_util.py,sha256=JONok842DLfLljjUTcolCI6zi3DprMEt8N1DEmwPrZo,7746 +torch/_export/serde/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_export/serde/__pycache__/__init__.cpython-312.pyc,, +torch/_export/serde/__pycache__/aoti_schema.cpython-312.pyc,, +torch/_export/serde/__pycache__/dynamic_shapes.cpython-312.pyc,, +torch/_export/serde/__pycache__/schema.cpython-312.pyc,, +torch/_export/serde/__pycache__/schema_check.cpython-312.pyc,, +torch/_export/serde/__pycache__/serialize.cpython-312.pyc,, +torch/_export/serde/__pycache__/union.cpython-312.pyc,, +torch/_export/serde/aoti_schema.py,sha256=_wYddYcInNlivn0zttZc583P1gAY7wMCKaGtjdcd-RU,256 +torch/_export/serde/dynamic_shapes.py,sha256=AAnwUd1ZqJCyyceyj9BRYHnMLSMKfRRtSKQHDOUPT4I,11742 +torch/_export/serde/schema.py,sha256=Ka5fbEhyy-mowSiY1RaYnsxEBSEVJuKXgPH3IfArqTU,11853 +torch/_export/serde/schema.thrift,sha256=lsIBB5d0u4-b5v4BzaDFJFbqAMpxWMDJwnzJ-ifjLIA,6271 +torch/_export/serde/schema.yaml,sha256=MRkzaRlzNRiANeTc7HHPxyU6SvFye--sklpHvaDXTwY,8506 +torch/_export/serde/schema_check.py,sha256=SmNqQXZ-hnLz6WvIPgOFA5l8-sYA073pkrMxUilKJWQ,23021 +torch/_export/serde/serialize.py,sha256=_rvr2nE2Iyx3UJfiGnEmeC4OMupUqrkDDcvMzkeWiwo,129694 +torch/_export/serde/union.py,sha256=ZDqYwqmQRPoeB2jqEcKC77thlY7oE5A_P-Ngsv79f5U,2084 +torch/_export/tools.py,sha256=Iz2JfrtXIdWMkqPU9qfGhrTdsTBwuxqfjJk9RhpV9bo,4704 +torch/_export/utils.py,sha256=PaNGdgDTKDLJ_vzyTGqH3PwQZNAybr-dxcEnw73GP7w,45202 +torch/_export/verifier.py,sha256=wHuyuRuOydvTowQUdCFCdgukV84TEIc_oR3N96V2xs8,19100 +torch/_export/wrappers.py,sha256=brGuhfKeC0xGhvgZqVy2HfACYxFvIKI5s7__n77aM_c,4290 +torch/_functorch/__init__.py,sha256=JQMVLRoFCKo629KQ_1vu4i10Rmkww8EWMyZnDLEGXag,211 +torch/_functorch/__pycache__/__init__.cpython-312.pyc,, +torch/_functorch/__pycache__/aot_autograd.cpython-312.pyc,, +torch/_functorch/__pycache__/apis.cpython-312.pyc,, +torch/_functorch/__pycache__/autograd_function.cpython-312.pyc,, +torch/_functorch/__pycache__/batch_norm_replacement.cpython-312.pyc,, +torch/_functorch/__pycache__/benchmark_utils.cpython-312.pyc,, +torch/_functorch/__pycache__/compile_utils.cpython-312.pyc,, +torch/_functorch/__pycache__/compilers.cpython-312.pyc,, +torch/_functorch/__pycache__/config.cpython-312.pyc,, +torch/_functorch/__pycache__/deprecated.cpython-312.pyc,, +torch/_functorch/__pycache__/eager_transforms.cpython-312.pyc,, +torch/_functorch/__pycache__/functional_call.cpython-312.pyc,, +torch/_functorch/__pycache__/fx_minifier.cpython-312.pyc,, +torch/_functorch/__pycache__/make_functional.cpython-312.pyc,, +torch/_functorch/__pycache__/partitioners.cpython-312.pyc,, +torch/_functorch/__pycache__/pyfunctorch.cpython-312.pyc,, +torch/_functorch/__pycache__/python_key.cpython-312.pyc,, +torch/_functorch/__pycache__/pytree_hacks.cpython-312.pyc,, +torch/_functorch/__pycache__/top_operators_github_usage.cpython-312.pyc,, +torch/_functorch/__pycache__/utils.cpython-312.pyc,, +torch/_functorch/__pycache__/vmap.cpython-312.pyc,, +torch/_functorch/_activation_checkpointing/__init__.py,sha256=JQMVLRoFCKo629KQ_1vu4i10Rmkww8EWMyZnDLEGXag,211 +torch/_functorch/_activation_checkpointing/__pycache__/__init__.cpython-312.pyc,, +torch/_functorch/_activation_checkpointing/__pycache__/knapsack.cpython-312.pyc,, +torch/_functorch/_activation_checkpointing/knapsack.py,sha256=oMAROWvTzje1MmbeuFb6u_yiNoLvujZW0sn2bwrzEis,4110 +torch/_functorch/_aot_autograd/__init__.py,sha256=JQMVLRoFCKo629KQ_1vu4i10Rmkww8EWMyZnDLEGXag,211 +torch/_functorch/_aot_autograd/__pycache__/__init__.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/autograd_cache.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/collect_metadata_analysis.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/dispatch_and_compile_graph.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/functional_utils.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/input_output_analysis.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/jit_compile_runtime_wrappers.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/logging_utils.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/runtime_wrappers.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/schemas.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/subclass_parametrization.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/subclass_utils.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/traced_function_transforms.cpython-312.pyc,, +torch/_functorch/_aot_autograd/__pycache__/utils.cpython-312.pyc,, +torch/_functorch/_aot_autograd/autograd_cache.py,sha256=WJucOOq1wazuMicHnN7_gTmTG4RkN_sGzf1v_KcQTys,37293 +torch/_functorch/_aot_autograd/collect_metadata_analysis.py,sha256=W5VBDCoethwjxBZg0jdLWUmugd1bYnWCR1VMuXQNso0,43550 +torch/_functorch/_aot_autograd/dispatch_and_compile_graph.py,sha256=CYZ-USGBS2R5UfBRPqDhcEqJwHbp9oWuTg4EvZEppSk,13000 +torch/_functorch/_aot_autograd/functional_utils.py,sha256=RyWFi9ssnGnXBepTY29SkxDzQ5JzTpB7OCtkYrJOG_Y,23276 +torch/_functorch/_aot_autograd/input_output_analysis.py,sha256=PDB4aUZE02u5jBaSAPTG35F-a5gTc1_HQB5L2VR4DPw,17505 +torch/_functorch/_aot_autograd/jit_compile_runtime_wrappers.py,sha256=kEZ7F078Ae6rW4XANTpdWXx2RWgiUbMtR94q4CS2vJQ,37986 +torch/_functorch/_aot_autograd/logging_utils.py,sha256=w1L1mu6Ru-S-VlHM4WUyeygIh3Klevb_ReZ6mJ3Z2Qo,4801 +torch/_functorch/_aot_autograd/runtime_wrappers.py,sha256=SWFMMsB1DopSyA5wMI0wQO_EgX9Kvvvp_JBRie6P54k,98410 +torch/_functorch/_aot_autograd/schemas.py,sha256=tugNxqx4bkMl7yf-HB5GCQ4kBBwI3G-7uuUDdkyOCEQ,40266 +torch/_functorch/_aot_autograd/subclass_parametrization.py,sha256=EVnk1HpIDXamI6zWMbhmCjX_uODwM3rb0yWO889EN5w,3120 +torch/_functorch/_aot_autograd/subclass_utils.py,sha256=NUJ_kWM2jZ9xXc_nHVaZoW1hv3EFFA4ZiynDzlO60Ic,18074 +torch/_functorch/_aot_autograd/traced_function_transforms.py,sha256=fHLzBU0AYc01YZXar6Esip62PX8UUC6YuAdO8SZ6_7I,44616 +torch/_functorch/_aot_autograd/utils.py,sha256=kEX3skdJoMcisVnI_0vxsPvP6vztV3L_iW6Y-w0Pfco,19079 +torch/_functorch/aot_autograd.py,sha256=LdmQC48hdJ71QbR1B4n7cJDVubRxbdvEODxU1WsKDE8,70792 +torch/_functorch/apis.py,sha256=9IWJRnyDpR82o9jsYRI1s6SXq918bU-XFMZCdh_jSOc,19568 +torch/_functorch/autograd_function.py,sha256=YaGqhNAkhnmhSU1j4F6N0KyHrX3QR21UYa76FhZAAQ8,29183 +torch/_functorch/batch_norm_replacement.py,sha256=ol1iuj3kwsnUi4Bzn1hA6rd10eYIskW149OL3xBb4nY,938 +torch/_functorch/benchmark_utils.py,sha256=Ly1poMsLx76dp9O3rW3ILFdQ2-TIOADjKKhZnKL1hqc,6511 +torch/_functorch/compile_utils.py,sha256=uPZLqJtFJ7Ja4N2EjbHB1IZ32wheCcOljJqdeeJPBpw,6263 +torch/_functorch/compilers.py,sha256=9Vf7OqNFcWP2RtWGhxHmp08iAuwAxPjDc-ry4FUd0s4,14491 +torch/_functorch/config.py,sha256=prZCg2YKKdsm6BGPsV-_Mzw_eNkpPTz2LhiXr09wOZI,9660 +torch/_functorch/deprecated.py,sha256=HJi0yd2YIOcA6_vHb9Zy-K7T5mU1kskNc2axToFLvlo,5382 +torch/_functorch/eager_transforms.py,sha256=YhsQEtuY2jqFa3TAgiiXpsz7EG7IFk038ptDt5VNilc,72203 +torch/_functorch/functional_call.py,sha256=uiSeH16ZZ8CtlJkEfWuJmnK5d8hdJ6DYRq7U8PXn0z0,10856 +torch/_functorch/fx_minifier.py,sha256=CbFVvSAQDLCQ0z7mSyXIq_sAIpFpMAhm5TnuCuXSdNo,17870 +torch/_functorch/make_functional.py,sha256=YKVI_jhF777T0GdDaLp84KCI_ChXZ_2UQZnir9HFrjc,23404 +torch/_functorch/partitioners.py,sha256=g_XgH1U2En5O-8gJvqzGu-7J36ivxuDu4oPW9E43b4Y,72940 +torch/_functorch/pyfunctorch.py,sha256=54bg5nVJrpp1Ujuhv0jp7ht4Q3Ax7GC5vFeqzWokpOQ,10653 +torch/_functorch/python_key.py,sha256=J5m4n931Z1hmTQmIjQWju_OHePMWJGTn58QYvcTvF-c,457 +torch/_functorch/pytree_hacks.py,sha256=usKxP7Ui-WS-Xa3UQnrNP96SH35GM3avonfhZV7c0gU,721 +torch/_functorch/top_operators_github_usage.py,sha256=AmlHL0ak3aVmg5w5J5Ez-fyhT48aZAKuBhwjKSpduqM,22073 +torch/_functorch/utils.py,sha256=4FZQE06-gA1ktfd5N0XVkyhnmOsl6YlFe_3fyPQb8uc,1016 +torch/_functorch/vmap.py,sha256=RZV4S4F5iAbujgRfxv7ybA27FfU7eNvmqZlRAwHqUxY,19365 +torch/_guards.py,sha256=6XJHfBtlbj_BSoUoW_Z2-pbYVUn99SMpdt3en8Q5p8M,35052 +torch/_higher_order_ops/__init__.py,sha256=ALUqGQ2Q7jHHIuGhN1_79mBX9Yhvuq1jBsP71353yKs,641 +torch/_higher_order_ops/__pycache__/__init__.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/associative_scan.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/auto_functionalize.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/cond.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/effects.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/executorch_call_delegate.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/flex_attention.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/hints_wrap.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/invoke_subgraph.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/map.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/out_dtype.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/prim_hop_base.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/run_const_graph.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/scan.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/strict_mode.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/torchbind.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/triton_kernel_wrap.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/utils.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/while_loop.cpython-312.pyc,, +torch/_higher_order_ops/__pycache__/wrap.cpython-312.pyc,, +torch/_higher_order_ops/associative_scan.py,sha256=8eGLdmAIDU0DTZemxU26094ddFD9Z7RWKHUVrkGHZ9s,17029 +torch/_higher_order_ops/auto_functionalize.py,sha256=xueD9qH2BGpUaB3hztyJLC5-QBj1ynN7G8f9hlzplMM,29900 +torch/_higher_order_ops/cond.py,sha256=5VRKtMuS-FedkFHf2ZaeFQFDaUvD0v6u_6tzb0iRZBE,22978 +torch/_higher_order_ops/effects.py,sha256=tR8OPwh2ia0ebI5CcT1XBePa7etcyAmsf0J6vRX0oGU,9701 +torch/_higher_order_ops/executorch_call_delegate.py,sha256=USqE3IJW6V0J3QfHcd9Er_7utMEYVVU2s5RoHyeChe8,6138 +torch/_higher_order_ops/flex_attention.py,sha256=JjR2s6gPuaFLPuuPaPcUU_8wuPjL3WJT9oBEro-iMAg,40531 +torch/_higher_order_ops/hints_wrap.py,sha256=5l6mGin6IdhrQi1iO0LSOfp9p2XJCZ74_VMyFl20ubQ,5479 +torch/_higher_order_ops/invoke_subgraph.py,sha256=VbBZLSSXZIwK4HBk85kvh_yNzvzaeDBClhGZ5G8h5H4,11375 +torch/_higher_order_ops/map.py,sha256=EAPsitgoSd50n9-j2PpfC0mxEOBZDq5W5226L52AIM4,9192 +torch/_higher_order_ops/out_dtype.py,sha256=ICv99kUckulC9Np6zB0CvSL7-THCoJ5wxrmtU-yklbQ,5744 +torch/_higher_order_ops/prim_hop_base.py,sha256=1YQtgIwrVfFVUja2YICwCRdA8a2QykvNIvAXKsl0XFc,7521 +torch/_higher_order_ops/run_const_graph.py,sha256=WqfG0SE9XEEox4POneTKwlcvLMqvK0BCVbwwRmUuQMw,1923 +torch/_higher_order_ops/scan.py,sha256=rBM-yDoBURd9xIYd4C2Oy7xb0Go7py8FXygX0e3rXC8,19225 +torch/_higher_order_ops/strict_mode.py,sha256=7t3H7Cy4sD_-4o7C_c1G03xe7NH_KmCjUaPYkrtE7yU,3765 +torch/_higher_order_ops/torchbind.py,sha256=WmVZdzZLbf6sicg91rzBObZpFgpPGo5GrUw-8uZcdjY,5554 +torch/_higher_order_ops/triton_kernel_wrap.py,sha256=MAhPq4rf9OlD2eXOVhIqisiGIrl9Zgfi6xg0jdiBTAk,56600 +torch/_higher_order_ops/utils.py,sha256=p5PiaGGLbt8-5PJbwiWP3ZBrn7GsU8ZV_0x3sw_6e8U,19803 +torch/_higher_order_ops/while_loop.py,sha256=fWv1JsPogs7OlPfS0UaA76pEDmrLYxgNZ8cPQrohIcs,14040 +torch/_higher_order_ops/wrap.py,sha256=q7UpiSGh9WY6mwcFlayaC5Y-2mfepDUW_oVPJ6ao4Zc,10039 +torch/_inductor/__init__.py,sha256=ZUA3E2uwkKTAZnVHLknTSOpsAP1qmX9gdOD5Km88yaM,9206 +torch/_inductor/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/__pycache__/aoti_eager.cpython-312.pyc,, +torch/_inductor/__pycache__/async_compile.cpython-312.pyc,, +torch/_inductor/__pycache__/autotune_process.cpython-312.pyc,, +torch/_inductor/__pycache__/bounds.cpython-312.pyc,, +torch/_inductor/__pycache__/choices.cpython-312.pyc,, +torch/_inductor/__pycache__/codecache.cpython-312.pyc,, +torch/_inductor/__pycache__/comm_analysis.cpython-312.pyc,, +torch/_inductor/__pycache__/comm_lowering.cpython-312.pyc,, +torch/_inductor/__pycache__/comms.cpython-312.pyc,, +torch/_inductor/__pycache__/compile_fx.cpython-312.pyc,, +torch/_inductor/__pycache__/compiler_bisector.cpython-312.pyc,, +torch/_inductor/__pycache__/config.cpython-312.pyc,, +torch/_inductor/__pycache__/constant_folding.cpython-312.pyc,, +torch/_inductor/__pycache__/cpp_builder.cpython-312.pyc,, +torch/_inductor/__pycache__/cpu_vec_isa.cpython-312.pyc,, +torch/_inductor/__pycache__/cudagraph_trees.cpython-312.pyc,, +torch/_inductor/__pycache__/cudagraph_utils.cpython-312.pyc,, +torch/_inductor/__pycache__/custom_graph_pass.cpython-312.pyc,, +torch/_inductor/__pycache__/debug.cpython-312.pyc,, +torch/_inductor/__pycache__/decomposition.cpython-312.pyc,, +torch/_inductor/__pycache__/dependencies.cpython-312.pyc,, +torch/_inductor/__pycache__/dtype_propagation.cpython-312.pyc,, +torch/_inductor/__pycache__/exc.cpython-312.pyc,, +torch/_inductor/__pycache__/extern_node_serializer.cpython-312.pyc,, +torch/_inductor/__pycache__/freezing.cpython-312.pyc,, +torch/_inductor/__pycache__/fx_utils.cpython-312.pyc,, +torch/_inductor/__pycache__/graph.cpython-312.pyc,, +torch/_inductor/__pycache__/hooks.cpython-312.pyc,, +torch/_inductor/__pycache__/index_propagation.cpython-312.pyc,, +torch/_inductor/__pycache__/inductor_prims.cpython-312.pyc,, +torch/_inductor/__pycache__/ir.cpython-312.pyc,, +torch/_inductor/__pycache__/jagged_lowerings.cpython-312.pyc,, +torch/_inductor/__pycache__/loop_body.cpython-312.pyc,, +torch/_inductor/__pycache__/lowering.cpython-312.pyc,, +torch/_inductor/__pycache__/memory.cpython-312.pyc,, +torch/_inductor/__pycache__/metrics.cpython-312.pyc,, +torch/_inductor/__pycache__/mkldnn_ir.cpython-312.pyc,, +torch/_inductor/__pycache__/mkldnn_lowerings.cpython-312.pyc,, +torch/_inductor/__pycache__/mock_cache.cpython-312.pyc,, +torch/_inductor/__pycache__/ops_handler.cpython-312.pyc,, +torch/_inductor/__pycache__/optimize_indexing.cpython-312.pyc,, +torch/_inductor/__pycache__/output_code.cpython-312.pyc,, +torch/_inductor/__pycache__/pattern_matcher.cpython-312.pyc,, +torch/_inductor/__pycache__/quantized_lowerings.cpython-312.pyc,, +torch/_inductor/__pycache__/remote_cache.cpython-312.pyc,, +torch/_inductor/__pycache__/scheduler.cpython-312.pyc,, +torch/_inductor/__pycache__/select_algorithm.cpython-312.pyc,, +torch/_inductor/__pycache__/sizevars.cpython-312.pyc,, +torch/_inductor/__pycache__/subgraph_lowering.cpython-312.pyc,, +torch/_inductor/__pycache__/test_case.cpython-312.pyc,, +torch/_inductor/__pycache__/test_operators.cpython-312.pyc,, +torch/_inductor/__pycache__/triton_bundler.cpython-312.pyc,, +torch/_inductor/__pycache__/utils.cpython-312.pyc,, +torch/_inductor/__pycache__/virtualized.cpython-312.pyc,, +torch/_inductor/__pycache__/wrapper_benchmark.cpython-312.pyc,, +torch/_inductor/aoti_eager.py,sha256=oZEGJVjZQ1zH1R4-FMsLPWDtUHu26AYLYHgo7xUPV7k,11449 +torch/_inductor/async_compile.py,sha256=C-SoR41X-CC6mfvp_dB_Q4EyQ1_960MyI7Q3FfoiwMs,11374 +torch/_inductor/autoheuristic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_inductor/autoheuristic/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/autoheuristic/__pycache__/autoheuristic.cpython-312.pyc,, +torch/_inductor/autoheuristic/__pycache__/autoheuristic_utils.cpython-312.pyc,, +torch/_inductor/autoheuristic/__pycache__/learned_heuristic_controller.cpython-312.pyc,, +torch/_inductor/autoheuristic/__pycache__/learnedheuristic_interface.cpython-312.pyc,, +torch/_inductor/autoheuristic/artifacts/_MMRankingA100.py,sha256=KEteIT78LX5-jnQLvyfbA973OVFbcY-_TEy3BCbhLSg,28340 +torch/_inductor/autoheuristic/artifacts/_MMRankingH100.py,sha256=2OklNPDalF3wqOzfH1CIax9vgqta5DIifCoPJeqHemI,30989 +torch/_inductor/autoheuristic/artifacts/_MixedMMA100.py,sha256=ubgL-CeSoRppbRYbuEt0986EE5B-fV_Ys85r_RyfBfU,8070 +torch/_inductor/autoheuristic/artifacts/_MixedMMH100.py,sha256=m7oT_0QnZOxYtRa1ASlA4W1QpPiAuJz1HQJBpPICiGo,8031 +torch/_inductor/autoheuristic/artifacts/_PadMMA100.py,sha256=koaNU2XdPdYUbLBN-kqy0kJswOhmfbD3a33GDhwAKaY,5040 +torch/_inductor/autoheuristic/artifacts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_inductor/autoheuristic/artifacts/__pycache__/_MMRankingA100.cpython-312.pyc,, +torch/_inductor/autoheuristic/artifacts/__pycache__/_MMRankingH100.cpython-312.pyc,, +torch/_inductor/autoheuristic/artifacts/__pycache__/_MixedMMA100.cpython-312.pyc,, +torch/_inductor/autoheuristic/artifacts/__pycache__/_MixedMMH100.cpython-312.pyc,, +torch/_inductor/autoheuristic/artifacts/__pycache__/_PadMMA100.cpython-312.pyc,, +torch/_inductor/autoheuristic/artifacts/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/autoheuristic/autoheuristic.py,sha256=8BdfMFjEqOS9gwH9v2Zjr3AYVx5eAwX-Pzixo13rHRM,12261 +torch/_inductor/autoheuristic/autoheuristic_utils.py,sha256=tELUo1lZScyCwAYDuwujSFNwZDXamT3Nf0_cYt5EBlg,11639 +torch/_inductor/autoheuristic/learned_heuristic_controller.py,sha256=nQcDs3SsgMefAU0zC-_lCaVOqN6qZmuT-agQIT5nnX0,4447 +torch/_inductor/autoheuristic/learnedheuristic_interface.py,sha256=ABUCjsR4OWkEoJHWrWyFiwso5P22sgG51-72HqyQA0Y,2911 +torch/_inductor/autotune_process.py,sha256=_sdlgVz9Wyv7qrMkCYTr4oUHVak2v8Byzm4g6xx29PU,32336 +torch/_inductor/bounds.py,sha256=e-5SClh0Y69XV_tq1Iqz2MnboMDSow1gsuGVateAAG4,6036 +torch/_inductor/choices.py,sha256=Wjv6FRosVh_ZyPRP7p-HmAEtmhL6182AwG0aXLjf_54,13519 +torch/_inductor/codecache.py,sha256=1pMGuynPo2SSi4OnqQhCh54Soitiwg4Cic-ZXUnzD2w,125975 +torch/_inductor/codegen/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_inductor/codegen/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/aoti_hipify_utils.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/block_analysis.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/common.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cpp.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cpp_bmm_template.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cpp_flex_attention_template.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cpp_gemm_template.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cpp_micro_gemm.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cpp_template.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cpp_template_kernel.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cpp_utils.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cpp_wrapper_cpu.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cpp_wrapper_cpu_array_ref.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cpp_wrapper_gpu.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cpu_device_op_overrides.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/cuda_combined_scheduling.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/debug_utils.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/halide.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/memory_planning.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/multi_kernel.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/simd.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/simd_kernel_features.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/triton.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/triton_combo_kernel.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/triton_split_scan.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/triton_utils.cpython-312.pyc,, +torch/_inductor/codegen/__pycache__/wrapper.cpython-312.pyc,, +torch/_inductor/codegen/aoti_hipify_utils.py,sha256=0XqCpy0NHXKaEF2VgdomgUaGQ7yqDVjS5gpm7lQ2CwU,1328 +torch/_inductor/codegen/aoti_runtime/implementation.cpp,sha256=cfTRwSFte1HBRGpT6BnE4Q7BfCziEB9ffgNkfAA5w3I,3299 +torch/_inductor/codegen/aoti_runtime/interface.cpp,sha256=YQNpJbn7UNbzUPqaiOwsdIp24u5bMCKTBLhj7_rs3aU,13472 +torch/_inductor/codegen/block_analysis.py,sha256=A8wtS-wrcJMRDm3GdhBPDmG0gANXhN58R0gXKBDvY40,4284 +torch/_inductor/codegen/common.py,sha256=dg8XzgUu1IA2OQ_YFvGN-aOveyZXYypGgJLvNbqJjkE,84750 +torch/_inductor/codegen/cpp.py,sha256=trwK3RtI3uCKXkhuR6bAaCKn_3j-7kr_SYzAAib1sN4,210741 +torch/_inductor/codegen/cpp_bmm_template.py,sha256=-pZKRA-4fUTHJj8yHmHP-SmMtYZGu9QCUYtRNQPLjA0,9353 +torch/_inductor/codegen/cpp_flex_attention_template.py,sha256=EsAf7E0FsI32qaE4DOKbQnNofTgmAlhmdK5-80UTDi4,42487 +torch/_inductor/codegen/cpp_gemm_template.py,sha256=-Z54yhibNbx8aKPkNrvUwGoz4cebj8_GfNW1D-ClTL4,62863 +torch/_inductor/codegen/cpp_micro_gemm.py,sha256=B6huy1cBxuJv3F1EA9fnVSMFOmSHjbnLQaAnSPabB8Y,32386 +torch/_inductor/codegen/cpp_prefix.h,sha256=QW2WNgKQ5WxtUSDAflFj2a1JeCoBrIrGWdyqUzebAQs,32232 +torch/_inductor/codegen/cpp_template.py,sha256=55Zf5KBYzxZHiN1Y6fTNqVtJLDNls8mqfQMKGO527Oo,4545 +torch/_inductor/codegen/cpp_template_kernel.py,sha256=LocRDXle06TNoFfYVfEfA40oNG6Sfe0cLtGFq795exw,16727 +torch/_inductor/codegen/cpp_utils.py,sha256=ckeVKF-hOlDzwp3Mf-36BZ3ApOU3YD3IytknEx-R_PY,28889 +torch/_inductor/codegen/cpp_wrapper_cpu.py,sha256=eMMDJhHBeBqswpaevVbEkCUhlRles9OerQkkrsdMBQ4,101730 +torch/_inductor/codegen/cpp_wrapper_cpu_array_ref.py,sha256=zIeqBn-M2Nj7F-soImon8sO_d0GNPkmk8GdAIFxG8fk,48061 +torch/_inductor/codegen/cpp_wrapper_gpu.py,sha256=0rS7tyUmTBKWOdTSboYgSsxvJkspZNANirwmzhgnnR8,23640 +torch/_inductor/codegen/cpu_device_op_overrides.py,sha256=o5lH58USUdvChIpgIQ6mKMTdmw0IbFKSUVFvyHlZFic,606 +torch/_inductor/codegen/cuda/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_inductor/codegen/cuda/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/codegen/cuda/__pycache__/cuda_cpp_scheduling.cpython-312.pyc,, +torch/_inductor/codegen/cuda/__pycache__/cuda_env.cpython-312.pyc,, +torch/_inductor/codegen/cuda/__pycache__/cuda_kernel.cpython-312.pyc,, +torch/_inductor/codegen/cuda/__pycache__/cuda_template.cpython-312.pyc,, +torch/_inductor/codegen/cuda/__pycache__/cutlass_epilogue_gen.cpython-312.pyc,, +torch/_inductor/codegen/cuda/__pycache__/cutlass_utils.cpython-312.pyc,, +torch/_inductor/codegen/cuda/__pycache__/device_op_overrides.cpython-312.pyc,, +torch/_inductor/codegen/cuda/__pycache__/gemm_template.cpython-312.pyc,, +torch/_inductor/codegen/cuda/cuda_cpp_scheduling.py,sha256=0b0-DpMn4suhIiNKchxqGX8uyVZgg8cAJTkCUyuYBeo,4496 +torch/_inductor/codegen/cuda/cuda_env.py,sha256=g4HRakFPOVUQ_oQsNk77s2NK4q1pI5P-ALPpdNLeauo,1184 +torch/_inductor/codegen/cuda/cuda_kernel.py,sha256=uzf7pOZstbxMZV51QmFjRMDSGq7Oc-efGq-xDuSxIzI,19602 +torch/_inductor/codegen/cuda/cuda_template.py,sha256=-3DO2SYMz45ZNEYr4ym0ICt75NL_6r_jlgzbCkoBuHE,9312 +torch/_inductor/codegen/cuda/cutlass_epilogue_gen.py,sha256=Vwar6gTQya13NSWVA2MNiZguleplrEOrTY-gjIzKG6k,14859 +torch/_inductor/codegen/cuda/cutlass_lib_extensions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_inductor/codegen/cuda/cutlass_lib_extensions/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/codegen/cuda/cutlass_lib_extensions/__pycache__/gemm_operation_extensions.cpython-312.pyc,, +torch/_inductor/codegen/cuda/cutlass_lib_extensions/gemm_operation_extensions.py,sha256=bqSenpnxMLWuNWRxn_9PJymsXXTwi9-3HnuNY-2zvGY,9998 +torch/_inductor/codegen/cuda/cutlass_utils.py,sha256=8BkrQJavkMn8VxibW7aHtYJ7r-6wJLfadlXRjhnacDY,12479 +torch/_inductor/codegen/cuda/device_op_overrides.py,sha256=RI6AUEHT7Pea1_Qa96owecmabbiJpTOHnXQSHBydB-Q,9661 +torch/_inductor/codegen/cuda/gemm_template.py,sha256=vRYsDVymNzR3QZQTLNiojss7vadVvRHaaiGpETEoTPg,64407 +torch/_inductor/codegen/cuda_combined_scheduling.py,sha256=lAUXKFXjAom7od0NPEC6HqBo2FCTbRswsusQZjt4kX4,4036 +torch/_inductor/codegen/debug_utils.py,sha256=pvQJA0Yo3PW_UD67P6qKqZ7Wfcr7MFBCsJzpIMzuhik,11324 +torch/_inductor/codegen/halide.py,sha256=J-zpcL2q9Lpu_rg2g_RpSOrWBsvcx32_nuf8fZfMocA,63470 +torch/_inductor/codegen/memory_planning.py,sha256=a48Yw5kAVnv0AKTkrpRJTqkLLv84w2X3tTGmgBA6Dms,25705 +torch/_inductor/codegen/multi_kernel.py,sha256=07z2Xwdq_ZIbTaGnAYk0kwKyaYz3N9vnqOoLdY7RXw4,16647 +torch/_inductor/codegen/rocm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_inductor/codegen/rocm/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/codegen/rocm/__pycache__/ck_conv_template.cpython-312.pyc,, +torch/_inductor/codegen/rocm/__pycache__/ck_template.cpython-312.pyc,, +torch/_inductor/codegen/rocm/__pycache__/ck_universal_gemm_template.cpython-312.pyc,, +torch/_inductor/codegen/rocm/__pycache__/compile_command.cpython-312.pyc,, +torch/_inductor/codegen/rocm/__pycache__/rocm_benchmark_request.cpython-312.pyc,, +torch/_inductor/codegen/rocm/__pycache__/rocm_cpp_scheduling.cpython-312.pyc,, +torch/_inductor/codegen/rocm/__pycache__/rocm_kernel.cpython-312.pyc,, +torch/_inductor/codegen/rocm/__pycache__/rocm_template.cpython-312.pyc,, +torch/_inductor/codegen/rocm/__pycache__/rocm_template_buffer.cpython-312.pyc,, +torch/_inductor/codegen/rocm/ck_conv_template.py,sha256=B01jxpRnt80D71ft8Bsvmu2r1VurHcwe828u2c4wBc4,24110 +torch/_inductor/codegen/rocm/ck_template.py,sha256=wHEwGiX-EILwrrIj5D3D_1V1VB8tCdG4owQi1yQeuM0,3223 +torch/_inductor/codegen/rocm/ck_universal_gemm_template.py,sha256=1JyTLqNakjJ3kj9LoOLanJUXqbWacVQzAO9_ekA0rfA,34051 +torch/_inductor/codegen/rocm/compile_command.py,sha256=A1s3Qu-EK22tPaC6DiwM0_2PqogE_ITf240qPGfFAZI,4594 +torch/_inductor/codegen/rocm/rocm_benchmark_request.py,sha256=4I5_vY7SBz9wcINY61V25hQCVJ4K_SamaHBWv3aIYD8,5173 +torch/_inductor/codegen/rocm/rocm_cpp_scheduling.py,sha256=SMXmnBfX8UfvaN_lvLPiGt5IfUjqA1h6Z0ILyeD2Bag,3942 +torch/_inductor/codegen/rocm/rocm_kernel.py,sha256=daOTVV_Fi2lXrW0zT_hcxOr3BJA_KgWWAj6nBGEGqkk,10034 +torch/_inductor/codegen/rocm/rocm_template.py,sha256=q8IuTPnaycbs30N0MmcxNw55VnMC9WA3jyguxQMU3HA,6138 +torch/_inductor/codegen/rocm/rocm_template_buffer.py,sha256=4sxs25OwOLorO4mQzHn-d0uDx32uY0PcRjy5c-dnwpw,650 +torch/_inductor/codegen/simd.py,sha256=qWpgISkp_qKG7SrxfyHRnoEECWoSy2iWJVOwdWHkpM0,68374 +torch/_inductor/codegen/simd_kernel_features.py,sha256=xDaz6yci88JBQ0FBofdmJ9C1lE0IOoCaOSVqB37lHsk,6542 +torch/_inductor/codegen/triton.py,sha256=ckpZOGeL_vqEBv6s_Ky9U3IvXeQJfSfsFAnsWRtShIA,152995 +torch/_inductor/codegen/triton_combo_kernel.py,sha256=YmQH3ig89rSGWZtxQFM0yiGjzah8UqkfRL1hrFbmGvo,48109 +torch/_inductor/codegen/triton_split_scan.py,sha256=H_5hll_zsugn-YWYBfpgcqM_wQVR5iHsO-Gsqxnq2gw,7324 +torch/_inductor/codegen/triton_utils.py,sha256=vvUIxmVWMslV1NYm_fKtRVXE0GyIwjd4quz8LnUx3io,6263 +torch/_inductor/codegen/wrapper.py,sha256=ObO34v15AvzT2yU2Wq_7DbLi5E7uwWD_dn-xkiy63pw,101437 +torch/_inductor/codegen/xpu/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_inductor/codegen/xpu/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/codegen/xpu/__pycache__/device_op_overrides.cpython-312.pyc,, +torch/_inductor/codegen/xpu/device_op_overrides.py,sha256=mrcG8rIogL3UlfjxzUalFMBG4Ov4OEjM2CIKKGJvNqE,2233 +torch/_inductor/comm_analysis.py,sha256=LHjV8WCTXS8T42JoJIXASTrTRGK0YcK5o4ZoYAFET_A,8550 +torch/_inductor/comm_lowering.py,sha256=BxtwG-ARkth0RrmEAsYXheZnSunafDAE0I1yM7I_A5M,12733 +torch/_inductor/comms.py,sha256=X-yWhpFYPS-NjIURIGFiLZdwX1M1IhKJt2PRe6tXveA,33429 +torch/_inductor/compile_fx.py,sha256=4vlDtkd_8asS8aqKzI3v4zNi-JJlQSoFu7iJNtTfESI,81811 +torch/_inductor/compile_worker/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_inductor/compile_worker/__main__.py,sha256=dqQ6JFeomo8LS3LYr9Z5svRjhJ5oKaI48Q8D-Yf8QoY,1308 +torch/_inductor/compile_worker/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/compile_worker/__pycache__/__main__.cpython-312.pyc,, +torch/_inductor/compile_worker/__pycache__/subproc_pool.cpython-312.pyc,, +torch/_inductor/compile_worker/__pycache__/watchdog.cpython-312.pyc,, +torch/_inductor/compile_worker/subproc_pool.py,sha256=CjWci2lSQ-lDSf1edN-YvPt6i6cmPHowWWrZxOEacLo,11662 +torch/_inductor/compile_worker/watchdog.py,sha256=vigB_C9rklM3VPupJ3TaXDjp_qNa3dAwuhv6tF_h6Ro,1284 +torch/_inductor/compiler_bisector.py,sha256=x7L9ddsYlN5otiIf4QTr7k8v2xgSSwg1JM6BdKJE96I,22410 +torch/_inductor/config.py,sha256=Q3TGCtZOJG6Gqr1cHCSH5VUBG22UZODA5HQb2lv8xx0,55565 +torch/_inductor/constant_folding.py,sha256=qylCeIAgXp9gIBrJw-ELEYuLsys0OmaRArYrMapIuUU,14527 +torch/_inductor/cpp_builder.py,sha256=X8Ws608-suVkA--YiHydwQ1RuwGnlVUSfpaNvSo6e84,56001 +torch/_inductor/cpu_vec_isa.py,sha256=sG_RMi2XFSAuhzge-9TbwhbU2oVjzGT12l3fdaJwqe4,13948 +torch/_inductor/cudagraph_trees.py,sha256=CUcgtgNkbdt2rYjsB0sxzPIDkZ84ryes6VrdjgRqfNU,103013 +torch/_inductor/cudagraph_utils.py,sha256=xGa8LQNtNyIgFhZ1MtIpm86iAdP06ojByGsA57zvsoM,11207 +torch/_inductor/custom_graph_pass.py,sha256=DlJ__UtQaPbgecaT4z0yibPJMsRDBcdMHmnoT_z6_ms,2603 +torch/_inductor/debug.py,sha256=kUb_LQG6jPJzOVzchBHeLJZa03If0cT-KfWynKKKfew,25039 +torch/_inductor/decomposition.py,sha256=iNQqffNPUyQ5ZFnq7O-6MqRjgg3oyAPhV6tBlY4QhL4,35212 +torch/_inductor/dependencies.py,sha256=wp5Uk6FEjBTf5kxp-MWQHyxSxBbdO8j7LuebCpu0eRw,29190 +torch/_inductor/dtype_propagation.py,sha256=Iknzu0I9uvG-8TYfIMy-gHFm1O7q7vZJ7jX8aNom0iE,12219 +torch/_inductor/exc.py,sha256=4m0lO_LJV8QmvBhAAKcqxxiiCcZiXPK5BRh8Mr1hR7Y,3119 +torch/_inductor/extern_node_serializer.py,sha256=ud4p1FiG0YE3PyiqqIuZxt--Ktllz7nxUqtgrbTf03o,884 +torch/_inductor/freezing.py,sha256=uPRQC1c2CSmKluhINXl-7x5Oa68A2jmo4nrxMu1Co-U,10386 +torch/_inductor/fx_passes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_inductor/fx_passes/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/b2b_gemm.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/binary_folding.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/ddp_fusion.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/decompose_mem_bound_mm.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/dedupe_symint_uses.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/efficient_conv_bn_eval.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/freezing_patterns.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/fuse_attention.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/group_batch_fusion.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/joint_graph.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/micro_pipeline_tp.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/misc_patterns.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/mkldnn_fusion.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/numeric_utils.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/pad_mm.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/post_grad.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/pre_grad.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/quantization.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/reinplace.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/replace_random.cpython-312.pyc,, +torch/_inductor/fx_passes/__pycache__/split_cat.cpython-312.pyc,, +torch/_inductor/fx_passes/b2b_gemm.py,sha256=Oc4LVY9cBykIzW9HYyS-mC4mE35gCBIp3OSj6ZasuDk,25635 +torch/_inductor/fx_passes/binary_folding.py,sha256=fOYZunnxyT4aSGoKe65KVLAU-wHLR09PV8uBj9lbce4,20293 +torch/_inductor/fx_passes/ddp_fusion.py,sha256=vD-A2U9HN7auGYxy4GWIC6rqbIYgqjS6X3kYUwLlB_o,21708 +torch/_inductor/fx_passes/decompose_mem_bound_mm.py,sha256=rsRxnHOomXz1xzb8IyODCqOLynweIemH_aS61C4vPuo,5354 +torch/_inductor/fx_passes/dedupe_symint_uses.py,sha256=kcM1fEeSvBtFiOpd-6WBGZh0LZgG5KGakJnkKzzGfOM,2532 +torch/_inductor/fx_passes/efficient_conv_bn_eval.py,sha256=nGt3qx7Hb4St8_xynY6fNGPJWNSbkcLqt_zNRQM-WtM,14460 +torch/_inductor/fx_passes/freezing_patterns.py,sha256=nLnFOFkwqNBz0CTFxYf3ayM89cRO7z1ZgQANAmexLXM,7022 +torch/_inductor/fx_passes/fuse_attention.py,sha256=YQ22o01KETWWEqX-m6j_l0d5l5FnIxvdOrm39O7QDAM,30493 +torch/_inductor/fx_passes/group_batch_fusion.py,sha256=_DuADDpElEMbB_3j-Ks0lxcNDMDZSwU2IHuS8-Hk6Lg,59257 +torch/_inductor/fx_passes/joint_graph.py,sha256=tYI_PdjjOy4Y8buf2nLm-nvXRcwUduyC_UFdrcPJE-Q,27458 +torch/_inductor/fx_passes/micro_pipeline_tp.py,sha256=0euN0i3GqsPSHMACtP1WA1cSSTUCRccK1sG4qMBJGQ0,29672 +torch/_inductor/fx_passes/misc_patterns.py,sha256=A4vuKzs5gxXWpi6YJHVHcBAC1RjywX1e3ffFXeVVP88,4902 +torch/_inductor/fx_passes/mkldnn_fusion.py,sha256=EycG14JMnFqg7b4k7A7fO2AxzdPmkpXDmRTfOpzRrZY,54768 +torch/_inductor/fx_passes/numeric_utils.py,sha256=sWU_M4ZMZ3Xhr_FczEv29wZ05kxyflqkk2v-57b0pJg,7433 +torch/_inductor/fx_passes/pad_mm.py,sha256=9SI25hHInZx1wzCODY4KPLL3klZIl69v8BX12Rju-c0,29125 +torch/_inductor/fx_passes/post_grad.py,sha256=C8BlTMJc6EuuRvK8xj3TX1k8_QC7pmw5vHFrzcIOw-w,43459 +torch/_inductor/fx_passes/pre_grad.py,sha256=eh9QyWTKGFC0kIYgTlA6a-XymxMmk6_xP2wV_nlx-WA,30906 +torch/_inductor/fx_passes/quantization.py,sha256=EP3JRH74MVuYYEBs9iYadwmviCtr_uV-TELuTr6x-1c,109482 +torch/_inductor/fx_passes/reinplace.py,sha256=SQ0lwhGqqTOpZmSVbe7TjE3X6OE92NjpEgMJmUPAGRM,28742 +torch/_inductor/fx_passes/replace_random.py,sha256=2lf2xXqo0vGMvCQcrz-WxBx5CnlQCPV5Z_c7aJd6cf8,4195 +torch/_inductor/fx_passes/serialized_patterns/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_inductor/fx_passes/serialized_patterns/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_1.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_10.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_11.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_12.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_13.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_14.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_15.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_16.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_17.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_18.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_19.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_2.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_3.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_4.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_5.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_6.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_7.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_8.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/_sfdp_pattern_9.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/addmm_pattern.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/bmm_pattern.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/__pycache__/mm_pattern.cpython-312.pyc,, +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_1.py,sha256=lR1jgYVP3qwwvY-nTTz6nqwyd0Zn86gELdy6HzUzets,11334 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_10.py,sha256=wB4snwUJt2YnL6fsf1Jd78-wx4PdaAsx10D7bKSoOss,14404 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_11.py,sha256=Ai9lyXMfd_o5PMcJFryWW0Pq3UK43WmVbp21jTU_Xmk,14174 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_12.py,sha256=F8H0txLL-tr_8UIquVuZELZDK3_6oU3tJn7gNlW0c8g,15460 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_13.py,sha256=6WNrmcLi1HO6aATMy0YGHfwfSTN8SaZR2a4yTnAwdEo,7975 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_14.py,sha256=5563Bxw4rGDdz6ZThtn5YbdKBG9tWOIRuaWn5QPuJlE,14516 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_15.py,sha256=rSONmBfDUwO_6FkPZ_DK1ie32T4sX4ykkZnR9a8imIk,16264 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_16.py,sha256=460FwnxSGKJsWL6MwMzrQBluvMikyp_rhd0ygXqQ6nw,44178 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_17.py,sha256=mjaVB1fA6vQXxHtcbEwFxeIibj__Ot-r9kReq6T8Pb0,17508 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_18.py,sha256=QAWR-kQgqU0Gy97yUjGlQWj5TN2LE3ugvabdjz9rWO4,33172 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_19.py,sha256=mNlUOBw1dsANrh0lmPA_q7KoFl_gFJgDj1_fd6FowjI,14238 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_2.py,sha256=ZPmgRHJJNT0DuL-ijrs17hsvMFwg8iQzRKQiqI1X4s4,11344 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_3.py,sha256=QhYfppuUWUCufhqwLZlirVzitHkhPikm8aQCGer09cs,12620 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_4.py,sha256=h6v7q7KX3kZptXPYRlIY-8z91_mO5s2q7cetmErgfXE,12584 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_5.py,sha256=BlHBf_NVui3Z3is8KWvffylZyxFNmTSjXQ5tGjSkA1k,11574 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_6.py,sha256=iKVwTjUEsZ0Vp_7pgkqIfrfRUMjYq09JvLN2WMALwT0,12818 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_7.py,sha256=J0TloMgoT2wcCXH4CAK_OObfHYHNz_1X63bYRcak18U,15640 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_8.py,sha256=E5k_grPY6kVrXBpLV0zeYt7bjE18rG99UoVPhNzP0Qc,14392 +torch/_inductor/fx_passes/serialized_patterns/_sfdp_pattern_9.py,sha256=3WTNij3no0lTxsVvLlo-QBgTg3ZwFAv0ItzOQ5sTOag,15648 +torch/_inductor/fx_passes/serialized_patterns/addmm_pattern.py,sha256=yHGMQYL8Ev-KmPfGEU9C9waTJuWTvGLLeIX3GcQM2GQ,1894 +torch/_inductor/fx_passes/serialized_patterns/bmm_pattern.py,sha256=kgN6QDtCWfAasgQtYqo9vj5X1l-J-g3ILXFFe4MaSUM,1300 +torch/_inductor/fx_passes/serialized_patterns/mm_pattern.py,sha256=cUXwTmFAGS9QAGI-gJgSjEAvVLjKqJLc2JQKSmtms6g,1288 +torch/_inductor/fx_passes/split_cat.py,sha256=DGW32ODWIdJacFWser_EJsiE9U4pd58pILE-sKJiIAE,106317 +torch/_inductor/fx_utils.py,sha256=sl8nKPyCZmUcWRIaLbmnnyzjUoYmUE-dGetzRIx5cTE,9256 +torch/_inductor/graph.py,sha256=aBPXkPAK77rM1TehgfMdJnoY7VKl8nxBxaeuOhwoIzI,92210 +torch/_inductor/hooks.py,sha256=80DiucCdfyy853LSiroWMql9rkJPH6QrG4jfhUc3vaI,675 +torch/_inductor/index_propagation.py,sha256=ZMLUpjbUIIx8gdml3EcMIgFUpsGWigh4pL2CJD6LN4M,13291 +torch/_inductor/inductor_prims.py,sha256=bQE4_o2LFb_UDyiS-BZkcq6-tqhAZ41hKzk2mKrqBns,6217 +torch/_inductor/ir.py,sha256=mGifkkCbXGKRuwQO0vbywcgAby6U9peILdZyVE_-m3E,280487 +torch/_inductor/jagged_lowerings.py,sha256=0eJQpJVWAhfUoEqlAb6yxqvVrFsST8u4cyvM1SKE-qw,9281 +torch/_inductor/kernel/__init__.py,sha256=sLh0vyeO9wG3dVeX06jrta-SPpdroRgmzktHPkLFFVw,58 +torch/_inductor/kernel/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/kernel/__pycache__/bmm.cpython-312.pyc,, +torch/_inductor/kernel/__pycache__/conv.cpython-312.pyc,, +torch/_inductor/kernel/__pycache__/flex_attention.cpython-312.pyc,, +torch/_inductor/kernel/__pycache__/flex_decoding.cpython-312.pyc,, +torch/_inductor/kernel/__pycache__/mm.cpython-312.pyc,, +torch/_inductor/kernel/__pycache__/mm_common.cpython-312.pyc,, +torch/_inductor/kernel/__pycache__/mm_plus_mm.cpython-312.pyc,, +torch/_inductor/kernel/__pycache__/mm_scaled.cpython-312.pyc,, +torch/_inductor/kernel/__pycache__/unpack_mixed_mm.cpython-312.pyc,, +torch/_inductor/kernel/bmm.py,sha256=dnextYjiWqZdr1c89fR-wibvqqaxblGxPOlOpGLmIh4,7932 +torch/_inductor/kernel/conv.py,sha256=oryWRxOBQqJLRTX3kcazpXn8U4mwHhZdwKmSeiXf7Q4,22431 +torch/_inductor/kernel/flex_attention.py,sha256=tQo9OF2BmDPZ6QXnvZ9qD-3qWuRqtMqDH_kFLCtSBjo,87622 +torch/_inductor/kernel/flex_decoding.py,sha256=HMG9FAHXz0aGxuSgxY6H0txjiMT9kY4Cylc435Pi8bs,22053 +torch/_inductor/kernel/mm.py,sha256=C0RKAptj7j18Yn3Y9RfFmtHWBlr4qo9qHC3jl6OGT4M,26997 +torch/_inductor/kernel/mm_common.py,sha256=NKhAuWZ9va9SxgpBeshAEj0IOZMgIAhOgjxJwp45TZw,19982 +torch/_inductor/kernel/mm_plus_mm.py,sha256=XeakWTJKbUNgMGccn9qDeQkelVo0P4AKlirHCB6VQ2I,8048 +torch/_inductor/kernel/mm_scaled.py,sha256=CLZRsE1iZ6VIMbwBBaRh8t6tCc8AHaVwo5jiB7p3ado,20791 +torch/_inductor/kernel/unpack_mixed_mm.py,sha256=FtAoHKZHzj9idU3T7EQS1-tdJX3bB9n__4_6S3wQyQY,3049 +torch/_inductor/loop_body.py,sha256=PHIMYjYkYRv4FGqY4evbU5czxXz9mAn_4jlxKisUO4Q,24637 +torch/_inductor/lowering.py,sha256=4-Uk5MJbcEEqlYjhp6-DyFOO4QBXxQ3eEYY9JwRk9Mo,218482 +torch/_inductor/memory.py,sha256=A85V2EV6oOJXOnnenx4vUetDyrkizGarZuNurLba0F4,25485 +torch/_inductor/metrics.py,sha256=gFwvTwWdz0gCw1IFg-PBoJTqaE3djVXEb-i7baFNzTE,13578 +torch/_inductor/mkldnn_ir.py,sha256=NHA0nF9VOqo68rX1by2LalRgFCQZV745WQv-A3BWD4w,39975 +torch/_inductor/mkldnn_lowerings.py,sha256=_cN0kZc9481lh3C0RgnaFfoVCgrtjSN4AngSPLW0WoU,45984 +torch/_inductor/mock_cache.py,sha256=dz3lAY5D0VVPgpJ2BzcVn5wPdCadYFRHwwlWed0GBg4,8841 +torch/_inductor/ops_handler.py,sha256=ry7ZHzKIeb5z-AUlv_HGjgbAKuq66xpSuWTCWp1F41Y,32654 +torch/_inductor/optimize_indexing.py,sha256=0BQqms2p8D3RCEM4Zm1-ahageKxaT3N5pAGVweRA93w,4273 +torch/_inductor/output_code.py,sha256=KkdU6FvOGFtKlO5oSFEAQTJeziZrWPq9hwY3SOz6jek,23831 +torch/_inductor/package/__init__.py,sha256=sQTRXIg6O5rZQYURRT-cJ2r30R2AjcIO2ofzbbbfvzc,68 +torch/_inductor/package/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/package/__pycache__/build_package.cpython-312.pyc,, +torch/_inductor/package/__pycache__/package.cpython-312.pyc,, +torch/_inductor/package/__pycache__/pt2_archive_constants.cpython-312.pyc,, +torch/_inductor/package/build_package.py,sha256=eInHlzpquSyi0W0tjhjUu_bhfEjXTIoGLRpHxJZfI-w,344 +torch/_inductor/package/package.py,sha256=uN9xUWwDKv1_RUo13ARe1npC_TvmNnJlJLPmcubSWzo,11045 +torch/_inductor/package/pt2_archive_constants.py,sha256=xjCEByPa5-tnlgBcSZEuhiyg08Xa_Cgg9uZbQrCysCo,561 +torch/_inductor/pattern_matcher.py,sha256=7OrL7akvn9LramjrOpihzwwkAbLUKkeoft4rmLsLkyw,74231 +torch/_inductor/quantized_lowerings.py,sha256=XwsMM5D_G7iNqk6wnsfVd670QBSebjBS11kkZs1unvU,3241 +torch/_inductor/remote_cache.py,sha256=UzqjyYZjrTGnk0WqLx3-Psnai6yyuWDQjtY3OjTnuh0,13057 +torch/_inductor/runtime/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_inductor/runtime/__pycache__/__init__.cpython-312.pyc,, +torch/_inductor/runtime/__pycache__/autotune_cache.cpython-312.pyc,, +torch/_inductor/runtime/__pycache__/benchmarking.cpython-312.pyc,, +torch/_inductor/runtime/__pycache__/cache_dir_utils.cpython-312.pyc,, +torch/_inductor/runtime/__pycache__/compile_tasks.cpython-312.pyc,, +torch/_inductor/runtime/__pycache__/coordinate_descent_tuner.cpython-312.pyc,, +torch/_inductor/runtime/__pycache__/halide_helpers.cpython-312.pyc,, +torch/_inductor/runtime/__pycache__/hints.cpython-312.pyc,, +torch/_inductor/runtime/__pycache__/runtime_utils.cpython-312.pyc,, +torch/_inductor/runtime/__pycache__/triton_helpers.cpython-312.pyc,, +torch/_inductor/runtime/__pycache__/triton_heuristics.cpython-312.pyc,, +torch/_inductor/runtime/autotune_cache.py,sha256=Nal38Zyohig7ArqSsF59ci_QMTO3Nu4Gd2Q_9f7N014,17364 +torch/_inductor/runtime/benchmarking.py,sha256=m6rgSo7wDuFFtpIOnz9O_VlmuNLUhYlAM9R3ukoLfV4,8068 +torch/_inductor/runtime/cache_dir_utils.py,sha256=xnD1r0vvjc5OjL907C7tI7ORY9zTTxtoukAAjCRCseM,831 +torch/_inductor/runtime/compile_tasks.py,sha256=RYmWljlcHfIm0FGhhq0Twv6PWOFz9JN0UG1XUtMePaU,2143 +torch/_inductor/runtime/coordinate_descent_tuner.py,sha256=u7vLVgW4_Qq8lS6uBnYcdAWjypCFOFJL8hX6i7UerUU,9989 +torch/_inductor/runtime/halide_helpers.py,sha256=1hRekHz0FdgqRs8d8yjZnq4L2XGD9X59QRRKAZuA_tA,3658 +torch/_inductor/runtime/hints.py,sha256=bqM4eVCN4DuPWCHx1qG6I-3gAtNoXI1z_PGF0zFZyo8,6438 +torch/_inductor/runtime/runtime_utils.py,sha256=8W9q2m2oIw5VNjgXFe9PyEfSU9DryeFtg_NtRXdNHPo,4319 +torch/_inductor/runtime/triton_helpers.py,sha256=i9nKiHI8KDL9eGik-afr0VNRu-nN1t50BnRuk1wx1_M,21057 +torch/_inductor/runtime/triton_heuristics.py,sha256=ZYfhcgZtyd3-0KjnD6rs53LcK7yJViX6lFmug1EkH1U,76723 +torch/_inductor/scheduler.py,sha256=-7PI_SBq5l4L4eIOIevxrzAIW3Hj3CKXUWdBN3th2TE,151639 +torch/_inductor/select_algorithm.py,sha256=Ar0Vss3tOrhia74ACFRKy-rZqdPyF8j5en1_RYEkgZY,70651 +torch/_inductor/sizevars.py,sha256=z5AA4d6BO0WeQlOEKN9o2Hb5yTF20yoZD4TwcK5d21M,36205 +torch/_inductor/subgraph_lowering.py,sha256=GmRqMRE3yjDzRrXiW-1_VcghH0knxQ9EJMtZAEUQSFw,7553 +torch/_inductor/test_case.py,sha256=oe88Vng-IvE_2w7Jbsdf-_AyKVJX-sjrBZdJeg5FPwI,1291 +torch/_inductor/test_operators.py,sha256=GeNi8vH1Z-H73NsTr2dhEIhuluEafG5K2uhh_ht7c6Y,843 +torch/_inductor/triton_bundler.py,sha256=HP2T6TNXYznXZHZ4EduzbJpmlDyF_KtKPvzsJbzX-Wo,10829 +torch/_inductor/utils.py,sha256=jGm2zhy2siog_nHQUcoEbXZd15IcHapcH3n0d_5qWB0,75853 +torch/_inductor/virtualized.py,sha256=rRlhQ9o0CKvk3PFxVQk0la2Y-N-MBmkpcEFnw6xUtZw,13289 +torch/_inductor/wrapper_benchmark.py,sha256=j5YQdQEhZp_Iabc3FE9ABvDYnyMFVgfCvZYUt2zwnHU,13904 +torch/_jit_internal.py,sha256=86YfZl1zZOXSmA0l7f5_8CKYyiyd2dzet-IPQAI2BoE,55190 +torch/_lazy/__init__.py,sha256=GKBTkAfZ9pnbRwoWKT2GBUUBbC1WbSec_ufn7ekDhSY,1848 +torch/_lazy/__pycache__/__init__.cpython-312.pyc,, +torch/_lazy/__pycache__/closure.cpython-312.pyc,, +torch/_lazy/__pycache__/computation.cpython-312.pyc,, +torch/_lazy/__pycache__/config.cpython-312.pyc,, +torch/_lazy/__pycache__/debug.cpython-312.pyc,, +torch/_lazy/__pycache__/device_context.cpython-312.pyc,, +torch/_lazy/__pycache__/extract_compiled_graph.cpython-312.pyc,, +torch/_lazy/__pycache__/ir_cache.cpython-312.pyc,, +torch/_lazy/__pycache__/metrics.cpython-312.pyc,, +torch/_lazy/__pycache__/tensor_factory_functions.cpython-312.pyc,, +torch/_lazy/__pycache__/ts_backend.cpython-312.pyc,, +torch/_lazy/closure.py,sha256=lQJlD-bsIyLKrUHinsKB6ue1jf0aizUyn43rE_6mpBE,5587 +torch/_lazy/computation.py,sha256=Jd0b-aVk5Ek29dbMkt0Mov8Ysn1r5nqN8At7p17P6wM,946 +torch/_lazy/config.py,sha256=uO51WHsiOzr_wf6CXrvpHpqjNBw1wvAMlFYO-oLKdWY,464 +torch/_lazy/debug.py,sha256=Nr-aSxYVQzOAGGIrelenLGc7Pc0xS0Qsl8stUg2XUyY,760 +torch/_lazy/device_context.py,sha256=Kn_Co2_CBGP5ybTYVaDffnYJmjGH4zOAaAEkWcbUck0,683 +torch/_lazy/extract_compiled_graph.py,sha256=HrVLUok9UbtVoWzLAESod7NqKZreOtlbam3XNNlStHM,8660 +torch/_lazy/ir_cache.py,sha256=WOWccEwnoJyQnhzy0h78xPMB1ziKKx5wrIwYo4U-fng,362 +torch/_lazy/metrics.py,sha256=gMdsK2JUC5dFO4BQCCm5NypfTJmWBONucDDsxtDpp0M,567 +torch/_lazy/tensor_factory_functions.py,sha256=BotJAvC1li1Dj1YaOyd7tdI1A5ME-JfofMm_BV8oxIc,1417 +torch/_lazy/ts_backend.py,sha256=RR7S12OpeqSkVQrspwOcROc-ukN01WvBi_84YbLucCA,170 +torch/_library/__init__.py,sha256=lOd63Df7PCbuXjfCyiiC0NlnWqWbHQDUbNchLrQjVmw,262 +torch/_library/__pycache__/__init__.cpython-312.pyc,, +torch/_library/__pycache__/autograd.cpython-312.pyc,, +torch/_library/__pycache__/custom_ops.cpython-312.pyc,, +torch/_library/__pycache__/fake_class_registry.cpython-312.pyc,, +torch/_library/__pycache__/fake_impl.cpython-312.pyc,, +torch/_library/__pycache__/infer_schema.cpython-312.pyc,, +torch/_library/__pycache__/simple_registry.cpython-312.pyc,, +torch/_library/__pycache__/triton.cpython-312.pyc,, +torch/_library/__pycache__/utils.cpython-312.pyc,, +torch/_library/autograd.py,sha256=PVBWpm0jIsd0NmgDRDOwHSyQnMniYoT_Rl0YOq7fEkw,9052 +torch/_library/custom_ops.py,sha256=j4C5N6Mbuty3rBXQgzRyP8cWUMDODL5GJX4EBk4xYyE,33387 +torch/_library/fake_class_registry.py,sha256=EziUUqYEj9vHeDSBu9uuwBPk7i5WZ7D8ulM_-dWF8wA,12875 +torch/_library/fake_impl.py,sha256=AWdZaWhn7vn4RLE_25D7PXYF9QCj4ZgI1P7CAU3wbOs,8406 +torch/_library/infer_schema.py,sha256=yQD4_13GYCFlqifTvfCC_A6nL1MlDtmNbIM8aO2oPDU,11093 +torch/_library/simple_registry.py,sha256=obJBykxD52tEGM-G-mjyG6vvIfYyqNEvS9Cm5ogiLag,2723 +torch/_library/triton.py,sha256=WxlRGeaAkKL4IFjpO33bRoyf0gxSnFP3Ka2f-OY4H5A,10399 +torch/_library/utils.py,sha256=0_zutXY7zirdF_a7g_SZ9PxRV2jEGzVycwY-ICQr1V8,17068 +torch/_linalg_utils.py,sha256=HE5Q0jjITeXVufGICdXl1_6N3yD3QK9XXFgM2yVJXx8,5321 +torch/_lobpcg.py,sha256=4FcCeaR0QF431wZLR2tu4j3QqRVq2lbvg7Y3on5HXFc,44705 +torch/_logging/__init__.py,sha256=H9CB5w-ZPLwmOQ-uZp8-gz1tEVNWnFk1BnLWryxnekY,818 +torch/_logging/__pycache__/__init__.cpython-312.pyc,, +torch/_logging/__pycache__/_internal.cpython-312.pyc,, +torch/_logging/__pycache__/_registrations.cpython-312.pyc,, +torch/_logging/__pycache__/scribe.cpython-312.pyc,, +torch/_logging/__pycache__/structured.cpython-312.pyc,, +torch/_logging/_internal.py,sha256=93oneQyY8O3-vPOAh-0raXwl8_ZusNAwUGB9w9EsEB8,46276 +torch/_logging/_registrations.py,sha256=3LaYlt3ceY4xcFTkwFoBoMvZRiXt7TOW0xsR6_iMNdY,6882 +torch/_logging/scribe.py,sha256=6Qtet-E18nMaLLiUqiRTqz6mhEMkGgTxN_4OGD0oa0I,2647 +torch/_logging/structured.py,sha256=9M4uRpHKexl5eP3itkJGwG7_5BXT1Jb8DCfb_toRyc4,1367 +torch/_lowrank.py,sha256=4rSgO3jHaZSCTBBVAbsSEmaXHcWf6T9lWjlvtmWfmSM,10855 +torch/_meta_registrations.py,sha256=MQHjz246sKXFLXbWZyWXrH8a5K2L-y3Do15fdK6GLcc,216080 +torch/_namedtensor_internals.py,sha256=DE-bDTDM87iai21aDg_KS9zF17MCGSu-I0oE5cBG6gg,5449 +torch/_numpy/__init__.py,sha256=rzNKs-1_I8dcRkXHRDOsJ-SLjviebJ7G3JB_8exvcfY,590 +torch/_numpy/__pycache__/__init__.cpython-312.pyc,, +torch/_numpy/__pycache__/_binary_ufuncs_impl.cpython-312.pyc,, +torch/_numpy/__pycache__/_casting_dicts.cpython-312.pyc,, +torch/_numpy/__pycache__/_dtypes.cpython-312.pyc,, +torch/_numpy/__pycache__/_dtypes_impl.cpython-312.pyc,, +torch/_numpy/__pycache__/_funcs.cpython-312.pyc,, +torch/_numpy/__pycache__/_funcs_impl.cpython-312.pyc,, +torch/_numpy/__pycache__/_getlimits.cpython-312.pyc,, +torch/_numpy/__pycache__/_ndarray.cpython-312.pyc,, +torch/_numpy/__pycache__/_normalizations.cpython-312.pyc,, +torch/_numpy/__pycache__/_reductions_impl.cpython-312.pyc,, +torch/_numpy/__pycache__/_ufuncs.cpython-312.pyc,, +torch/_numpy/__pycache__/_unary_ufuncs_impl.cpython-312.pyc,, +torch/_numpy/__pycache__/_util.cpython-312.pyc,, +torch/_numpy/__pycache__/fft.cpython-312.pyc,, +torch/_numpy/__pycache__/linalg.cpython-312.pyc,, +torch/_numpy/__pycache__/random.cpython-312.pyc,, +torch/_numpy/_binary_ufuncs_impl.py,sha256=m6w0fYCYwaKH8IolQmS_vBIHmSoDjKe5l-YfRIOsU_8,1956 +torch/_numpy/_casting_dicts.py,sha256=pNVF9rNC9TFps2ktvWau9H-GOtUBDx17UQ-AEaRuefQ,43846 +torch/_numpy/_dtypes.py,sha256=bATVCRn5KFiYicTfRIhVNxUMacwUv-T1072yawIvwRk,10779 +torch/_numpy/_dtypes_impl.py,sha256=5pEM3baVa5OLRPMkW5VDjrZHo8ljtnICh1PklpjDuzQ,6124 +torch/_numpy/_funcs.py,sha256=bjhFuiOr_fYT-tJuwy6U3T_iW_7bNLKIqPznlisWxIw,2173 +torch/_numpy/_funcs_impl.py,sha256=vqWzJO4jJtz3cEVfvmY-h2dYQoy3CNB0q9FyNeSyLcM,61256 +torch/_numpy/_getlimits.py,sha256=9pCtO5PQvHygMv2keLR0-AlcM3zKwWjYQ5pvLxw9ASE,284 +torch/_numpy/_ndarray.py,sha256=T0RMcSq2On7OBvwFqZp6eIa4A7sWsUMyObZW30hJxog,17226 +torch/_numpy/_normalizations.py,sha256=duSg9Nq81ofi95BghXP_dzqVJSO6RX0HrahD7cTEzMg,8508 +torch/_numpy/_reductions_impl.py,sha256=T38ZyTuKN6N66pqt9ln4EBI8VNodqquvHtUBlQSzKJg,12259 +torch/_numpy/_ufuncs.py,sha256=4wJeqxLv37PN-ORu7jw0KqBdIOE4GdJKmpvMpfMqelQ,8700 +torch/_numpy/_unary_ufuncs_impl.py,sha256=oTAovTAdhzexww7B4rR9u2ONK7heDWc2Q52vuJ5hSjg,1233 +torch/_numpy/_util.py,sha256=1YYs7sk14tps2BNNOhIjQ14qJ_-2o_-EFaxpPk2UgE0,7818 +torch/_numpy/fft.py,sha256=CQRzqq_1Ys1j1ahExCTp5U8ZBigloBXK1kcoyAL0T9Y,2935 +torch/_numpy/linalg.py,sha256=tWsuH1U8n8irrr7AbixYsZuV_sgD8TqmbiCI7-xR_UA,5821 +torch/_numpy/random.py,sha256=CmLgwsBliHnaRwfuZfzgZRWC3v3UDxM6_f8DjIE90HM,4841 +torch/_numpy/testing/__init__.py,sha256=3F4nlODzdqjjbhBV4Nz9eA44BzLgp-BpbLycggm6GVY,395 +torch/_numpy/testing/__pycache__/__init__.cpython-312.pyc,, +torch/_numpy/testing/__pycache__/utils.cpython-312.pyc,, +torch/_numpy/testing/utils.py,sha256=9DgFKChHWowTAhLZNGAxffvbToR7yoHGi2GHBIUH3UY,78765 +torch/_ops.py,sha256=ZyyTXcGaEqDGIOD6H7fLa4Yk9G-PQkbKUl47Jpvec_M,56963 +torch/_prims/__init__.py,sha256=Qp7uQ8NZ317HKbujnFF-2XVxXz1HZ3L_ls9vZNtJAJE,83823 +torch/_prims/__pycache__/__init__.cpython-312.pyc,, +torch/_prims/__pycache__/context.cpython-312.pyc,, +torch/_prims/__pycache__/debug_prims.cpython-312.pyc,, +torch/_prims/__pycache__/executor.cpython-312.pyc,, +torch/_prims/__pycache__/rng_prims.cpython-312.pyc,, +torch/_prims/context.py,sha256=ThXXn0rHg8ex3yroOPxzMkYoarfYPnQ7PatRHPB75bY,5881 +torch/_prims/debug_prims.py,sha256=cBv9vw4uJ-9oynQi6EvZ7Se8STySagO-JFYmSbXB1NU,1943 +torch/_prims/executor.py,sha256=8aA_n4X1MjzFGVBkKe6cS3f5XuCAscwOh_h0LbMHdHw,1723 +torch/_prims/rng_prims.py,sha256=3SkxhmvjLa1TloV-TYMtPhGZVbMYV_Wr2qlYmGwamc0,11847 +torch/_prims_common/__init__.py,sha256=fRlLa2ecVVu6_1VR1OJ0NtCcluruezmNurXB5uN4tdQ,68514 +torch/_prims_common/__pycache__/__init__.cpython-312.pyc,, +torch/_prims_common/__pycache__/wrappers.cpython-312.pyc,, +torch/_prims_common/wrappers.py,sha256=bi1CjO6oThhkOQDGUF4xg-lwpIzJK8UWJsRSO40yUPE,17324 +torch/_python_dispatcher.py,sha256=xdkwxQV2DDsoB_7mGyVvh6UNtqIne2S2gpsdxhzLqv8,7317 +torch/_refs/__init__.py,sha256=Hs80ndQ5eWKW1uqGvFn2ECyfdhpbuMk8k8mxRXPAOnY,220285 +torch/_refs/__pycache__/__init__.cpython-312.pyc,, +torch/_refs/__pycache__/_conversions.cpython-312.pyc,, +torch/_refs/__pycache__/fft.cpython-312.pyc,, +torch/_refs/_conversions.py,sha256=xZr1y6bvByhAepVg0uqoo_z1S7OisYqt2jI7GwF2dCc,3652 +torch/_refs/fft.py,sha256=3NE2zIu5igKUaU2ZSQ2rWRsPxK01czrr7wXU-8Wo9Rs,18543 +torch/_refs/linalg/__init__.py,sha256=2fziVITKaNa4Z-m6ybTeabvWiBCCgkGEIwriY2Lo6G0,10811 +torch/_refs/linalg/__pycache__/__init__.cpython-312.pyc,, +torch/_refs/nn/__init__.py,sha256=XUCf9_asOuoqB-MMeCLCQ6X7u3iNSTsateMrDSw3fvQ,54 +torch/_refs/nn/__pycache__/__init__.cpython-312.pyc,, +torch/_refs/nn/functional/__init__.py,sha256=q2UAvWcYCm7ewwtFkRb92xgdYlxqb9d0zel3oM2W0AE,43486 +torch/_refs/nn/functional/__pycache__/__init__.cpython-312.pyc,, +torch/_refs/special/__init__.py,sha256=Y-kIlRtmmBtdoERl4MUqw-L883zb1RdJqaQKOdoDf6g,7025 +torch/_refs/special/__pycache__/__init__.cpython-312.pyc,, +torch/_size_docs.py,sha256=tedOqVaibfjlU5XyKZk_fKUaDDmMOse03-DJitVKAsc,947 +torch/_sources.py,sha256=PBBIq3v_xV9tDopus5gjE0ZATAcBjtj1ksKaolyOIf0,4592 +torch/_storage_docs.py,sha256=pG8tSpQ2-mioyhQLS8RL9VNuab107oh5U-DPQky9BXI,1419 +torch/_streambase.py,sha256=DwofDa9lCG6iGzBIQ4Yzam08Jeua98daSS_bidnYedM,455 +torch/_strobelight/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_strobelight/__pycache__/__init__.cpython-312.pyc,, +torch/_strobelight/__pycache__/cli_function_profiler.cpython-312.pyc,, +torch/_strobelight/__pycache__/compile_time_profiler.cpython-312.pyc,, +torch/_strobelight/cli_function_profiler.py,sha256=fqMarUqVYezNFff6hiKh6c4q7HihSiL2liadEH9MfVc,11788 +torch/_strobelight/compile_time_profiler.py,sha256=4zG40IewsG7_yl1FTU-QTv90JAjR1cSvrjosFkjXNsM,6787 +torch/_subclasses/__init__.py,sha256=nDR4CWhmJQdYQVYeY7KcoJn7nrLG7cAfAehXh3MOcWQ,392 +torch/_subclasses/__pycache__/__init__.cpython-312.pyc,, +torch/_subclasses/__pycache__/_fake_tensor_utils.cpython-312.pyc,, +torch/_subclasses/__pycache__/fake_impls.cpython-312.pyc,, +torch/_subclasses/__pycache__/fake_tensor.cpython-312.pyc,, +torch/_subclasses/__pycache__/fake_utils.cpython-312.pyc,, +torch/_subclasses/__pycache__/functional_tensor.cpython-312.pyc,, +torch/_subclasses/__pycache__/meta_utils.cpython-312.pyc,, +torch/_subclasses/__pycache__/schema_check_mode.cpython-312.pyc,, +torch/_subclasses/_fake_tensor_utils.py,sha256=EGRyqLsXpHx8sLjSfF8g48uadNIYakkm7VgJGjNuEtA,8770 +torch/_subclasses/fake_impls.py,sha256=F7oW0lr6gnHEZ4fMLkAYT8PXGM_Qz162QYJvJCnRmH8,35564 +torch/_subclasses/fake_tensor.py,sha256=x4cnGUP8rDDMs8Tbm1MdNM3CsX0IBVoH03KoYV_RpmE,116328 +torch/_subclasses/fake_utils.py,sha256=eR8eRTvW_JXdmSV_vU9oA93lf49Dv15tE87QR0l9nt0,10593 +torch/_subclasses/functional_tensor.py,sha256=z865pFsFEAnFDTY7kzxKgzVPdOPW29jkH8Va-3JQqDU,36261 +torch/_subclasses/meta_utils.py,sha256=TStqMQeVi7zdgLsmDDZmpbVI8QL4sC18vLwJ2GAQmlI,86453 +torch/_subclasses/schema_check_mode.py,sha256=fJIYBSEIZMiy-Q2tn5divLvwb0TOmh5jeKFrjHwYd6M,8885 +torch/_tensor.py,sha256=d3gCkpwOM7MYo7GkKfeizYMwyh9xdQF4lSPR-bOcJkw,73583 +torch/_tensor_docs.py,sha256=_zOhkX8guYorQolGnjo_vsPyibW88vcM0fDtZd61FW8,149580 +torch/_tensor_str.py,sha256=70YbQ4K7sINoAFQlze1RSZ0mPQouVRWUHs8wJIiiQ0A,27634 +torch/_thread_safe_fork.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_torch_docs.py,sha256=0X7HsxnRJBJvkrJfrziR5XK9kk-oWfIKd0zsgciSQMI,437203 +torch/_utils.py,sha256=LcyjqVzG8-M3wd4omxEdhd8oFsj9iHDII2R8knIhtmI,39414 +torch/_utils_internal.py,sha256=MORSJTtbkpEzjtJrIH31zSnVreCgHBk6QXHQD-159aI,8636 +torch/_vendor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/_vendor/__pycache__/__init__.cpython-312.pyc,, +torch/_vendor/packaging/__init__.py,sha256=tBMEyxhq3EEEWx2ildaGANR5SCtuuItz0Lbo217LOrg,511 +torch/_vendor/packaging/__pycache__/__init__.cpython-312.pyc,, +torch/_vendor/packaging/__pycache__/_structures.cpython-312.pyc,, +torch/_vendor/packaging/__pycache__/version.cpython-312.pyc,, +torch/_vendor/packaging/_structures.py,sha256=qrorE2MfdfAdF4JqdKD-aLgIo3sRECalhpljE8Accxs,1492 +torch/_vendor/packaging/version.py,sha256=o2agHbS_rqKFYhH6qABjDxZFyKWASNKtAWZ0KXHsjvU,16799 +torch/_vmap_internals.py,sha256=RBAWf86Z6Inlo3Y2bRyMj4907T3tY-ru8HSPTYcXVyo,9709 +torch/_weights_only_unpickler.py,sha256=MlW7l0Jz466CJbEAjqeUfBWZkGCktlgxM5pfmNhcRtM,21744 +torch/accelerator/__init__.py,sha256=YoGoy-vjJk8-3w1hxp7FZkZ8kyFuqgnP5kQTiMuJ__Q,5679 +torch/accelerator/__pycache__/__init__.cpython-312.pyc,, +torch/accelerator/__pycache__/_utils.cpython-312.pyc,, +torch/accelerator/_utils.py,sha256=mR-4tsNS6w_upD7AGWeUkHsnPCffMHVA3MWxkVXHZWQ,932 +torch/amp/__init__.py,sha256=Uc1hDB3zzt2r2cyu6mgC-cFsV2erFWz5r2QOKU-yj7Q,190 +torch/amp/__pycache__/__init__.cpython-312.pyc,, +torch/amp/__pycache__/autocast_mode.cpython-312.pyc,, +torch/amp/__pycache__/grad_scaler.cpython-312.pyc,, +torch/amp/autocast_mode.py,sha256=BCTvkR-rdgjPQyL47zhlO80t2J1LRXO5CwThNyDI74Y,24565 +torch/amp/grad_scaler.py,sha256=NpOP84ZsiYQ4p2Gjl6FxvooglflBfbCHu4Q0Tb_vmTg,31076 +torch/ao/__init__.py,sha256=ABPz8UuvoMlU_wkmZ8-NCeB3vaj5LDBfr4YfyT844_U,446 +torch/ao/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/__init__.py,sha256=pTGYZmnzUvTyeTsMrug61DpxdWbiJIUT0IzPvPhA6DI,550 +torch/ao/nn/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/intrinsic/__init__.py,sha256=8fFWGG1LSzpsXzGZ1JZGsfiAhCudlzdXRR9FnYYwD8Y,989 +torch/ao/nn/intrinsic/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/intrinsic/modules/__init__.py,sha256=TNOnhADW9Hj5TJmt_GwRWlkcFyRQT9P0bmRIwcutkag,696 +torch/ao/nn/intrinsic/modules/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/intrinsic/modules/__pycache__/fused.cpython-312.pyc,, +torch/ao/nn/intrinsic/modules/fused.py,sha256=9OYjwE5rHEc9574hb2KzeRjlhzkvAn34Av38saQflVM,10036 +torch/ao/nn/intrinsic/qat/__init__.py,sha256=sE-0qvXnTY5ilDKux2jZukNxzkeR-G2mlBp5ss2b4yk,38 +torch/ao/nn/intrinsic/qat/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/intrinsic/qat/modules/__init__.py,sha256=0ZwViGqdx6f0QYppptRbGOtCkl-E1tGcXJYqvkwjQkM,579 +torch/ao/nn/intrinsic/qat/modules/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/intrinsic/qat/modules/__pycache__/conv_fused.cpython-312.pyc,, +torch/ao/nn/intrinsic/qat/modules/__pycache__/linear_fused.cpython-312.pyc,, +torch/ao/nn/intrinsic/qat/modules/__pycache__/linear_relu.cpython-312.pyc,, +torch/ao/nn/intrinsic/qat/modules/conv_fused.py,sha256=jkCMJZVAGcmQG-1seQtTjLH31NIfxasYjyfbC_vQ9kU,33922 +torch/ao/nn/intrinsic/qat/modules/linear_fused.py,sha256=ZwKmsBl6_wIWhz6s_hN3LcIoIOcktreedFo5CI_NI4k,6610 +torch/ao/nn/intrinsic/qat/modules/linear_relu.py,sha256=0RGG5PMBAv7x18suJ2YCeSBSuh4Bj_EnVE5x5x5w4Fk,1736 +torch/ao/nn/intrinsic/quantized/__init__.py,sha256=QyW1Bo9d_YpVgKKEz_0XCK_vDpzGzr3cRCr6VFThD_g,251 +torch/ao/nn/intrinsic/quantized/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/intrinsic/quantized/dynamic/__init__.py,sha256=sE-0qvXnTY5ilDKux2jZukNxzkeR-G2mlBp5ss2b4yk,38 +torch/ao/nn/intrinsic/quantized/dynamic/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/intrinsic/quantized/dynamic/modules/__init__.py,sha256=YS0r9fkbJU20FDakDuLmzDJrWZXL-fB2wC3c5AOzDp8,76 +torch/ao/nn/intrinsic/quantized/dynamic/modules/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/intrinsic/quantized/dynamic/modules/__pycache__/linear_relu.cpython-312.pyc,, +torch/ao/nn/intrinsic/quantized/dynamic/modules/linear_relu.py,sha256=2RCKapwwAb0REMJzHjb3b8mAija8wY6G4BjAnUQKzSU,2060 +torch/ao/nn/intrinsic/quantized/modules/__init__.py,sha256=f6fu2CJkehRe7TovtjS-4asgjmz8O4LUhBlNKW5sPAU,427 +torch/ao/nn/intrinsic/quantized/modules/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/intrinsic/quantized/modules/__pycache__/bn_relu.cpython-312.pyc,, +torch/ao/nn/intrinsic/quantized/modules/__pycache__/conv_add.cpython-312.pyc,, +torch/ao/nn/intrinsic/quantized/modules/__pycache__/conv_relu.cpython-312.pyc,, +torch/ao/nn/intrinsic/quantized/modules/__pycache__/linear_relu.cpython-312.pyc,, +torch/ao/nn/intrinsic/quantized/modules/bn_relu.py,sha256=A4MXNOnCo-DGbau2bPuwtclq8ZH-3xh3OOskPd550AM,3336 +torch/ao/nn/intrinsic/quantized/modules/conv_add.py,sha256=lr_p6Iixce3nP-Ib-zsXsEgbppkxYESiP-Efa5ofcM8,4525 +torch/ao/nn/intrinsic/quantized/modules/conv_relu.py,sha256=bQH2I_xkkvrLcY3sXDVeXxzXGD-gJ4VI7NOTJDAqhHg,8633 +torch/ao/nn/intrinsic/quantized/modules/linear_relu.py,sha256=lyxsAG9D_7gzw4iWP7VAMvnX1xVsktmj-tfZpNeHNL4,6941 +torch/ao/nn/qat/__init__.py,sha256=sE-0qvXnTY5ilDKux2jZukNxzkeR-G2mlBp5ss2b4yk,38 +torch/ao/nn/qat/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/qat/dynamic/__init__.py,sha256=sE-0qvXnTY5ilDKux2jZukNxzkeR-G2mlBp5ss2b4yk,38 +torch/ao/nn/qat/dynamic/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/qat/dynamic/modules/__init__.py,sha256=h_S3dv05DjPYXtDjuRqkzrGoE6aeaPOjE1oKRfO9Bq8,54 +torch/ao/nn/qat/dynamic/modules/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/qat/dynamic/modules/__pycache__/linear.cpython-312.pyc,, +torch/ao/nn/qat/dynamic/modules/linear.py,sha256=4ArWejg5JhohI0ZhNwNgiqvDaCtFcorNra_jMZoNhM4,1043 +torch/ao/nn/qat/modules/__init__.py,sha256=kSrrX2n3rqdHWMMphT8j0lxEch9YVFQOM9FTRDJhf7c,241 +torch/ao/nn/qat/modules/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/qat/modules/__pycache__/conv.cpython-312.pyc,, +torch/ao/nn/qat/modules/__pycache__/embedding_ops.cpython-312.pyc,, +torch/ao/nn/qat/modules/__pycache__/linear.cpython-312.pyc,, +torch/ao/nn/qat/modules/conv.py,sha256=lZkRM9d6XWs7yxVnzpmItuYA_0eg1e1GoXmNy8H6JRY,9817 +torch/ao/nn/qat/modules/embedding_ops.py,sha256=UuNWG_ezbhhtJpQ06aTsrSyfTOoXD9J0_GFj3aNqU_U,8063 +torch/ao/nn/qat/modules/linear.py,sha256=MOgc7uja63rRhJ73JxZHP8PZ4sV_Je8JoKlhn46JPUo,3146 +torch/ao/nn/quantizable/__init__.py,sha256=sE-0qvXnTY5ilDKux2jZukNxzkeR-G2mlBp5ss2b4yk,38 +torch/ao/nn/quantizable/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/quantizable/modules/__init__.py,sha256=Cn3Ltv6d1JfKe7aV4GeTxQKkLfT2z5xLI-Jk1Sl938g,154 +torch/ao/nn/quantizable/modules/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/quantizable/modules/__pycache__/activation.cpython-312.pyc,, +torch/ao/nn/quantizable/modules/__pycache__/rnn.cpython-312.pyc,, +torch/ao/nn/quantizable/modules/activation.py,sha256=cEhRXVbmJ-TPXQ9Map3bVYjr0hiDqRq1Wf-A8ukzd3Q,23582 +torch/ao/nn/quantizable/modules/rnn.py,sha256=I2_H1he4HYnNaXuOqM1XXCDXC3nXUcwGAiwYBXB53I8,22229 +torch/ao/nn/quantized/__init__.py,sha256=rufZDT8E2pU6Y_RJUA9VnLIJ7-zHTR0wGyzghMKDFPY,725 +torch/ao/nn/quantized/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/quantized/__pycache__/functional.cpython-312.pyc,, +torch/ao/nn/quantized/dynamic/__init__.py,sha256=sE-0qvXnTY5ilDKux2jZukNxzkeR-G2mlBp5ss2b4yk,38 +torch/ao/nn/quantized/dynamic/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/quantized/dynamic/modules/__init__.py,sha256=5gD6fcxxz2UnPlOKoCLOHU3aa5zW60RpXDDeOECBpAc,439 +torch/ao/nn/quantized/dynamic/modules/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/quantized/dynamic/modules/__pycache__/conv.cpython-312.pyc,, +torch/ao/nn/quantized/dynamic/modules/__pycache__/linear.cpython-312.pyc,, +torch/ao/nn/quantized/dynamic/modules/__pycache__/rnn.cpython-312.pyc,, +torch/ao/nn/quantized/dynamic/modules/conv.py,sha256=ZcaCILIoU_19TiaJpiO2yjzUOlaDcTB9lJlUNpTAIBY,18715 +torch/ao/nn/quantized/dynamic/modules/linear.py,sha256=iID-ENQbTv3NLeZMh_9MD6oMqiJTl834H37VOrZKuoo,6498 +torch/ao/nn/quantized/dynamic/modules/rnn.py,sha256=NTkZaZpUKnXE3vXxGc8-BDbBnLxTbRRyasDS1g75cgU,52721 +torch/ao/nn/quantized/functional.py,sha256=9wDshFl3HsRwBgfbL4ZSnFr0JDT6ovI75_WdnGe12Ks,30373 +torch/ao/nn/quantized/modules/__init__.py,sha256=d7APn7TPLFlbJLMXxlGnTyqVZq9IGSch04idikjF_08,4683 +torch/ao/nn/quantized/modules/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/quantized/modules/__pycache__/activation.cpython-312.pyc,, +torch/ao/nn/quantized/modules/__pycache__/batchnorm.cpython-312.pyc,, +torch/ao/nn/quantized/modules/__pycache__/conv.cpython-312.pyc,, +torch/ao/nn/quantized/modules/__pycache__/dropout.cpython-312.pyc,, +torch/ao/nn/quantized/modules/__pycache__/embedding_ops.cpython-312.pyc,, +torch/ao/nn/quantized/modules/__pycache__/functional_modules.cpython-312.pyc,, +torch/ao/nn/quantized/modules/__pycache__/linear.cpython-312.pyc,, +torch/ao/nn/quantized/modules/__pycache__/normalization.cpython-312.pyc,, +torch/ao/nn/quantized/modules/__pycache__/rnn.cpython-312.pyc,, +torch/ao/nn/quantized/modules/__pycache__/utils.cpython-312.pyc,, +torch/ao/nn/quantized/modules/activation.py,sha256=9_vqO2hujggNhRYEhf7PCzVBLqaJQ_uCzl-_GC-N4TY,11934 +torch/ao/nn/quantized/modules/batchnorm.py,sha256=MUsvTL1Rc8fjbZOQHXzeGbIfu53pBDS_Mluf7RudBpc,4503 +torch/ao/nn/quantized/modules/conv.py,sha256=JBRho-O7PxJFdOTquON93eEeosvkkNa8kQJHoU7cV8Y,44453 +torch/ao/nn/quantized/modules/dropout.py,sha256=7EWdajteiitQbayVUtYQDAs_xCZCPp_kfh7l2GOvIyg,836 +torch/ao/nn/quantized/modules/embedding_ops.py,sha256=mdC_Blp88kt0if1XLnsYSSnAuLbiv2sHBusklVdGPks,15182 +torch/ao/nn/quantized/modules/functional_modules.py,sha256=vQUrr_bMKxNcLeJjfmBIeW4PUs5C3dAJE6gsjX-qWec,9545 +torch/ao/nn/quantized/modules/linear.py,sha256=Xzz1HfNjgnFzXAIZVbxjkI02lPOUih7rTa1TyYl_yE4,13968 +torch/ao/nn/quantized/modules/normalization.py,sha256=oZxqrQLXoFwly03W-UOFy1Qu2qVZ1nGFNd-f7SKDLRI,9884 +torch/ao/nn/quantized/modules/rnn.py,sha256=ZDHn3wyY35yVrmz38RU3uRYYV5lAwAQZtYTnNJzCt08,1852 +torch/ao/nn/quantized/modules/utils.py,sha256=Kxj9nrbLYDbFsBxkbUZdrd2m5w9hXDjsO1I0Wqk7Aso,4839 +torch/ao/nn/quantized/reference/__init__.py,sha256=uy5ftWsvDX4VkLX2C2wbtYF_sokM3UiC3PM5wwMcx4A,303 +torch/ao/nn/quantized/reference/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/quantized/reference/modules/__init__.py,sha256=8RHzSWvt67OBacAuyMPhZmpGHGm8GCe2TClxkq8BttM,523 +torch/ao/nn/quantized/reference/modules/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/quantized/reference/modules/__pycache__/conv.cpython-312.pyc,, +torch/ao/nn/quantized/reference/modules/__pycache__/linear.cpython-312.pyc,, +torch/ao/nn/quantized/reference/modules/__pycache__/rnn.cpython-312.pyc,, +torch/ao/nn/quantized/reference/modules/__pycache__/sparse.cpython-312.pyc,, +torch/ao/nn/quantized/reference/modules/__pycache__/utils.cpython-312.pyc,, +torch/ao/nn/quantized/reference/modules/conv.py,sha256=0DFd7NOCJ91ZmphTLsgb6hBE9Vv0Lm_Yn5IUadm8P_g,15756 +torch/ao/nn/quantized/reference/modules/linear.py,sha256=kJ1CDyIDM_BVuLSHtiWPeuUHYMnvFZHE_gRwPzlQaXI,2306 +torch/ao/nn/quantized/reference/modules/rnn.py,sha256=2SquRWBen1_jrXDw4_ySeUuibkyJFoTatqtX22rF2NY,30436 +torch/ao/nn/quantized/reference/modules/sparse.py,sha256=xJj8LsQVnLsxecBPjfyihkSnDa80vDlB7LzF_fEBxfc,4841 +torch/ao/nn/quantized/reference/modules/utils.py,sha256=Zvgc4ZGEV_-dPHNEBQy1f9r-oNpZyfc35bSpPaO99W0,15667 +torch/ao/nn/sparse/__init__.py,sha256=Lfoo4m9ZnVOja2YLfZa9jrz54iMOMhHzCg7RYcP5FLk,25 +torch/ao/nn/sparse/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/sparse/quantized/__init__.py,sha256=SEINwKuRz86NuFHzdWv4BowgnhoNv0qFpluJfm2nncQ,178 +torch/ao/nn/sparse/quantized/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/sparse/quantized/__pycache__/linear.cpython-312.pyc,, +torch/ao/nn/sparse/quantized/__pycache__/utils.cpython-312.pyc,, +torch/ao/nn/sparse/quantized/dynamic/__init__.py,sha256=fDXnm6MNQ02dzp2hv56Tg3fmTjnf2saSRH5ZBvPYafM,63 +torch/ao/nn/sparse/quantized/dynamic/__pycache__/__init__.cpython-312.pyc,, +torch/ao/nn/sparse/quantized/dynamic/__pycache__/linear.cpython-312.pyc,, +torch/ao/nn/sparse/quantized/dynamic/linear.py,sha256=eLe-g6CS9RToUb5eC_FhaLoV0KZ1WS-F76k52vSGIvw,6514 +torch/ao/nn/sparse/quantized/linear.py,sha256=qyGtegZRHv11OeYxfjEFCx1X1b5f4v-mfQqm7830SdI,9313 +torch/ao/nn/sparse/quantized/utils.py,sha256=MTA6odVt8pKqRQ2pgajS2tkwlagqJGQy-mo8bu9B5Kw,1929 +torch/ao/ns/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/ao/ns/__pycache__/__init__.cpython-312.pyc,, +torch/ao/ns/__pycache__/_numeric_suite.cpython-312.pyc,, +torch/ao/ns/__pycache__/_numeric_suite_fx.cpython-312.pyc,, +torch/ao/ns/_numeric_suite.py,sha256=n9696-r-PX7iWPQGZp6IRjO7lOKIcUhCtgHdX9leh2s,20617 +torch/ao/ns/_numeric_suite_fx.py,sha256=rQKFnE_lyMoJD6aADsSuQi-0Z6O8ft4oshBAJhF0G4M,42676 +torch/ao/ns/fx/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/ao/ns/fx/__pycache__/__init__.cpython-312.pyc,, +torch/ao/ns/fx/__pycache__/graph_matcher.cpython-312.pyc,, +torch/ao/ns/fx/__pycache__/graph_passes.cpython-312.pyc,, +torch/ao/ns/fx/__pycache__/mappings.cpython-312.pyc,, +torch/ao/ns/fx/__pycache__/n_shadows_utils.cpython-312.pyc,, +torch/ao/ns/fx/__pycache__/ns_types.cpython-312.pyc,, +torch/ao/ns/fx/__pycache__/pattern_utils.cpython-312.pyc,, +torch/ao/ns/fx/__pycache__/qconfig_multi_mapping.cpython-312.pyc,, +torch/ao/ns/fx/__pycache__/utils.cpython-312.pyc,, +torch/ao/ns/fx/__pycache__/weight_utils.cpython-312.pyc,, +torch/ao/ns/fx/graph_matcher.py,sha256=nE_etk6e0nsQUgnkMa9jTlwhM6XkTeF2ho3w9DOG8d8,19754 +torch/ao/ns/fx/graph_passes.py,sha256=739TSt9RtFKLRvS2sbJfQErrwC3XggOwvGhJ73a2pf8,45556 +torch/ao/ns/fx/mappings.py,sha256=qviIbJ4i9XZkvfrNtu3j1SZJ64XLsi1FCakMRabwzEA,19100 +torch/ao/ns/fx/n_shadows_utils.py,sha256=37Y0C4raGx0hBZq5VN_dkX5x-5d4P2kHTxuxsZ2hup8,52740 +torch/ao/ns/fx/ns_types.py,sha256=3ey9lQWWunD6e3HF9mPJbWlhPfiVCDmzdgz0QVAjz28,2404 +torch/ao/ns/fx/pattern_utils.py,sha256=M4TMDg5qsrRj3iYWJ1TYZoXzTMbYcG6bR52el72uFRM,8602 +torch/ao/ns/fx/qconfig_multi_mapping.py,sha256=-qFVb1YksQy0fgsoi09GH115_qlv_A5MOAiihzr_4KY,10444 +torch/ao/ns/fx/utils.py,sha256=jjtB2a2aJ9WDC-sVUwaFB04R9NXgJIYCgGUI_U61Qnk,21156 +torch/ao/ns/fx/weight_utils.py,sha256=cv48HF6VfmDLQL8f4vmkuAhjbJvISp9LwRaYqZwqyOE,11516 +torch/ao/pruning/__init__.py,sha256=buSUvIIoEdoVoBKVgjMHw6Tz52akY935O7_j9WCa034,663 +torch/ao/pruning/__pycache__/__init__.cpython-312.pyc,, +torch/ao/pruning/__pycache__/_mappings.cpython-312.pyc,, +torch/ao/pruning/_experimental/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/ao/pruning/_experimental/__pycache__/__init__.cpython-312.pyc,, +torch/ao/pruning/_experimental/activation_sparsifier/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/ao/pruning/_experimental/activation_sparsifier/__pycache__/__init__.cpython-312.pyc,, +torch/ao/pruning/_experimental/activation_sparsifier/__pycache__/activation_sparsifier.cpython-312.pyc,, +torch/ao/pruning/_experimental/activation_sparsifier/activation_sparsifier.py,sha256=DnQbzQQ3e3U4i5VhdQh1gSkC2iyuiCTHfmhyRk5TiM0,19488 +torch/ao/pruning/_experimental/data_scheduler/__init__.py,sha256=JZ8rO6gG9c8OxZ1COfSCl6viLVoj2hKjkrxaHcmIlWA,98 +torch/ao/pruning/_experimental/data_scheduler/__pycache__/__init__.cpython-312.pyc,, +torch/ao/pruning/_experimental/data_scheduler/__pycache__/base_data_scheduler.cpython-312.pyc,, +torch/ao/pruning/_experimental/data_scheduler/base_data_scheduler.py,sha256=Dvb-MnbDzrhECei1EvpE93X5PHeRoW63DivsH86w3nI,7804 +torch/ao/pruning/_experimental/data_sparsifier/__init__.py,sha256=XFtc3q0kNE1_DoO59bcPIm79KMkblr0AkKzrIMw_J3s,182 +torch/ao/pruning/_experimental/data_sparsifier/__pycache__/__init__.cpython-312.pyc,, +torch/ao/pruning/_experimental/data_sparsifier/__pycache__/base_data_sparsifier.cpython-312.pyc,, +torch/ao/pruning/_experimental/data_sparsifier/__pycache__/data_norm_sparsifier.cpython-312.pyc,, +torch/ao/pruning/_experimental/data_sparsifier/__pycache__/quantization_utils.cpython-312.pyc,, +torch/ao/pruning/_experimental/data_sparsifier/base_data_sparsifier.py,sha256=e8WoaoQ8SQ429MNP7L50rqm2hpmLw5hFAARoJAuPC5A,13759 +torch/ao/pruning/_experimental/data_sparsifier/data_norm_sparsifier.py,sha256=BpPDbcu73xLG_P5Sw6BEVo1jCl3JNoJvRU7OiphJkk0,7975 +torch/ao/pruning/_experimental/data_sparsifier/lightning/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/ao/pruning/_experimental/data_sparsifier/lightning/__pycache__/__init__.cpython-312.pyc,, +torch/ao/pruning/_experimental/data_sparsifier/lightning/callbacks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/ao/pruning/_experimental/data_sparsifier/lightning/callbacks/__pycache__/__init__.cpython-312.pyc,, +torch/ao/pruning/_experimental/data_sparsifier/lightning/callbacks/__pycache__/_data_sparstity_utils.cpython-312.pyc,, +torch/ao/pruning/_experimental/data_sparsifier/lightning/callbacks/__pycache__/data_sparsity.cpython-312.pyc,, +torch/ao/pruning/_experimental/data_sparsifier/lightning/callbacks/_data_sparstity_utils.py,sha256=oDL0SX3pzCs7EkZDklLYWSPwNZFA33Frc19532lQ7IA,1680 +torch/ao/pruning/_experimental/data_sparsifier/lightning/callbacks/data_sparsity.py,sha256=4bnta17jSTEOict9CLgqGrHVZ-DW_OuxeQ6qIbEEX_c,6798 +torch/ao/pruning/_experimental/data_sparsifier/quantization_utils.py,sha256=GyCF0ytXAU_nsd22jMhLlDgfYN8pwzgA4xRCZV9rC8o,6048 +torch/ao/pruning/_experimental/pruner/FPGM_pruner.py,sha256=xUziOzu3A4CQ6wnv1FMJcNBltBz3Ev0eqh-roi0Avzg,3553 +torch/ao/pruning/_experimental/pruner/__init__.py,sha256=B5dNGoaxQpyxLwzg-Ej7-UT3PZdJg4V4-58ZLqQCWTQ,265 +torch/ao/pruning/_experimental/pruner/__pycache__/FPGM_pruner.cpython-312.pyc,, +torch/ao/pruning/_experimental/pruner/__pycache__/__init__.cpython-312.pyc,, +torch/ao/pruning/_experimental/pruner/__pycache__/base_structured_sparsifier.cpython-312.pyc,, +torch/ao/pruning/_experimental/pruner/__pycache__/lstm_saliency_pruner.cpython-312.pyc,, +torch/ao/pruning/_experimental/pruner/__pycache__/match_utils.cpython-312.pyc,, +torch/ao/pruning/_experimental/pruner/__pycache__/parametrization.cpython-312.pyc,, +torch/ao/pruning/_experimental/pruner/__pycache__/prune_functions.cpython-312.pyc,, +torch/ao/pruning/_experimental/pruner/__pycache__/saliency_pruner.cpython-312.pyc,, +torch/ao/pruning/_experimental/pruner/base_structured_sparsifier.py,sha256=gvTi3elmx3LaMq1D8Cs3Uhb4PR8Q-UvpluGWcm-c5UU,11259 +torch/ao/pruning/_experimental/pruner/lstm_saliency_pruner.py,sha256=2bAtsqfPHu1Aw0QzpzVoamU7LSlVS2FwAKbcIXnRr8U,2194 +torch/ao/pruning/_experimental/pruner/match_utils.py,sha256=dIU-SY9EfNgwVtJLG-rZNpnQpXAy1WRCNVmRQazUVz4,2063 +torch/ao/pruning/_experimental/pruner/parametrization.py,sha256=V2QllSgsvCFfAU2Q6z0En0GPCA___UUhA7MgYdkTljU,1903 +torch/ao/pruning/_experimental/pruner/prune_functions.py,sha256=s0t4bdWFs5KQw1gqqvXT0VrrZHi_L_4QxKfJheeTmB8,19585 +torch/ao/pruning/_experimental/pruner/saliency_pruner.py,sha256=T4aIRKy_AYHr6Welx4hCMowTe53F9L1a5LaMsw23Xd4,1432 +torch/ao/pruning/_mappings.py,sha256=QyqsbrIsTq-gkHBuk2Y0iAIaA2UnY4DIvUo4bTW2d0I,620 +torch/ao/pruning/scheduler/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/ao/pruning/scheduler/__pycache__/__init__.cpython-312.pyc,, +torch/ao/pruning/scheduler/__pycache__/base_scheduler.cpython-312.pyc,, +torch/ao/pruning/scheduler/__pycache__/cubic_scheduler.cpython-312.pyc,, +torch/ao/pruning/scheduler/__pycache__/lambda_scheduler.cpython-312.pyc,, +torch/ao/pruning/scheduler/base_scheduler.py,sha256=W_EN0YNIsSg0caJbeY9C19mglURiqfWftSwO-NkT13I,6696 +torch/ao/pruning/scheduler/cubic_scheduler.py,sha256=43ACWjPjqyDHAC6OaAU9t3cVCzercN5PzKCSq2U9Qrk,3957 +torch/ao/pruning/scheduler/lambda_scheduler.py,sha256=Cr48B8GipPc9Vdqwnht5DnOwxuiBVoUVoA_9EwmzV2Q,2171 +torch/ao/pruning/sparsifier/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/ao/pruning/sparsifier/__pycache__/__init__.cpython-312.pyc,, +torch/ao/pruning/sparsifier/__pycache__/base_sparsifier.cpython-312.pyc,, +torch/ao/pruning/sparsifier/__pycache__/nearly_diagonal_sparsifier.cpython-312.pyc,, +torch/ao/pruning/sparsifier/__pycache__/utils.cpython-312.pyc,, +torch/ao/pruning/sparsifier/__pycache__/weight_norm_sparsifier.cpython-312.pyc,, +torch/ao/pruning/sparsifier/base_sparsifier.py,sha256=Z1SW6WtB3yGmcjJjAobO84F3fZF0EMGej9RiMj3fUSc,14063 +torch/ao/pruning/sparsifier/nearly_diagonal_sparsifier.py,sha256=pU_R9KkTtsAixDQ9q230XMC4Jm3uEC1uS0a_J4VnsKE,2326 +torch/ao/pruning/sparsifier/utils.py,sha256=1PePBbEvpAYaINvevCkRlIrfVuBsBC_apctUxjPhm38,4952 +torch/ao/pruning/sparsifier/weight_norm_sparsifier.py,sha256=2prkJhjvW24MXLNrgn6pU23tKutJp4XxutkxzTTgGAg,9550 +torch/ao/quantization/__init__.py,sha256=FrW5r5uAux8dTBIghhiqq6ts1Fr_WMumwSWi3vQVIKo,7249 +torch/ao/quantization/__pycache__/__init__.cpython-312.pyc,, +torch/ao/quantization/__pycache__/_correct_bias.cpython-312.pyc,, +torch/ao/quantization/__pycache__/_equalize.cpython-312.pyc,, +torch/ao/quantization/__pycache__/_learnable_fake_quantize.cpython-312.pyc,, +torch/ao/quantization/__pycache__/fake_quantize.cpython-312.pyc,, +torch/ao/quantization/__pycache__/fuse_modules.cpython-312.pyc,, +torch/ao/quantization/__pycache__/fuser_method_mappings.cpython-312.pyc,, +torch/ao/quantization/__pycache__/observer.cpython-312.pyc,, +torch/ao/quantization/__pycache__/qconfig.cpython-312.pyc,, +torch/ao/quantization/__pycache__/qconfig_mapping.cpython-312.pyc,, +torch/ao/quantization/__pycache__/quant_type.cpython-312.pyc,, +torch/ao/quantization/__pycache__/quantization_mappings.cpython-312.pyc,, +torch/ao/quantization/__pycache__/quantize.cpython-312.pyc,, +torch/ao/quantization/__pycache__/quantize_fx.cpython-312.pyc,, +torch/ao/quantization/__pycache__/quantize_jit.cpython-312.pyc,, +torch/ao/quantization/__pycache__/quantize_pt2e.cpython-312.pyc,, +torch/ao/quantization/__pycache__/stubs.cpython-312.pyc,, +torch/ao/quantization/__pycache__/utils.cpython-312.pyc,, +torch/ao/quantization/_correct_bias.py,sha256=ggTJffRDPPBDXr0v_9g4wBTSxBmkN7TdmM2_U-xPQFY,5625 +torch/ao/quantization/_equalize.py,sha256=5f_2IZSjT8UpGXQvccTCf1ek-rJqKCgVy368kyzyhwI,9731 +torch/ao/quantization/_learnable_fake_quantize.py,sha256=4IfFFqclj2fCpZN_iC3eG_2l5EHcrAbc0h2eCfJpy10,8110 +torch/ao/quantization/backend_config/__init__.py,sha256=4Y8ISKDtMW_f2GA6qOE-K4fo09GAclfC3RPo3bpxNJk,945 +torch/ao/quantization/backend_config/__pycache__/__init__.cpython-312.pyc,, +torch/ao/quantization/backend_config/__pycache__/_common_operator_config_utils.cpython-312.pyc,, +torch/ao/quantization/backend_config/__pycache__/_qnnpack_pt2e.cpython-312.pyc,, +torch/ao/quantization/backend_config/__pycache__/backend_config.cpython-312.pyc,, +torch/ao/quantization/backend_config/__pycache__/executorch.cpython-312.pyc,, +torch/ao/quantization/backend_config/__pycache__/fbgemm.cpython-312.pyc,, +torch/ao/quantization/backend_config/__pycache__/native.cpython-312.pyc,, +torch/ao/quantization/backend_config/__pycache__/observation_type.cpython-312.pyc,, +torch/ao/quantization/backend_config/__pycache__/onednn.cpython-312.pyc,, +torch/ao/quantization/backend_config/__pycache__/qnnpack.cpython-312.pyc,, +torch/ao/quantization/backend_config/__pycache__/tensorrt.cpython-312.pyc,, +torch/ao/quantization/backend_config/__pycache__/utils.cpython-312.pyc,, +torch/ao/quantization/backend_config/__pycache__/x86.cpython-312.pyc,, +torch/ao/quantization/backend_config/_common_operator_config_utils.py,sha256=fouUB6uBe79rIvpnRnla-HNX6U6QgMp1sKapd0IdJ-U,28450 +torch/ao/quantization/backend_config/_qnnpack_pt2e.py,sha256=E6JhnsvySqTDw5Ye6oL9pBJ8h2doSgNFjD0eoMNsRqA,6635 +torch/ao/quantization/backend_config/backend_config.py,sha256=rjLyPL0S4VqVXIDMmlC6lJ_vZYvNb0Tt1JSj9OZ4udI,32232 +torch/ao/quantization/backend_config/executorch.py,sha256=yTMq-iDFR8Acg7uHjL_IzhpncFrom_VXBejSApNuo8I,17447 +torch/ao/quantization/backend_config/fbgemm.py,sha256=Ol1Pr2cmjzPJnv5-jwz6mtvI1ggq7ZDv7-oOT4A3_Aw,4337 +torch/ao/quantization/backend_config/native.py,sha256=phw5IGaAYB6kIvFknf77xjJkXfeJxjaLWA8l1CWHaKk,8473 +torch/ao/quantization/backend_config/observation_type.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/ao/quantization/backend_config/onednn.py,sha256=EBeDnZQHcGWDCXkeoE8GgG5skNDUq-WTGppF1N9H1I8,19904 +torch/ao/quantization/backend_config/qnnpack.py,sha256=9rWj2g2g1BKg4btmxwunj9XqQHRB-k0y9Pxg6_tb3JM,5571 +torch/ao/quantization/backend_config/tensorrt.py,sha256=2EPv3N_J68FgWAJXmsrOr5393o_84xk5LFhU2k5A33A,3119 +torch/ao/quantization/backend_config/utils.py,sha256=82UjrgS-iklk038KWarDXjRKUxrDzjApF9Wuarh7H0A,12772 +torch/ao/quantization/backend_config/x86.py,sha256=pe-AhPb41P1BoL4ikQQ-UlgfIJ6wIEmRa4vAcfCCRLY,3995 +torch/ao/quantization/fake_quantize.py,sha256=PKK4q7UhXk5Zr6bE2t7S1J7cjKAtFGooOZuQwehpFHU,23416 +torch/ao/quantization/fuse_modules.py,sha256=swYebHQuIKhAe9i3fXRDIvtayf23nnql5ibh7wk4UOk,7047 +torch/ao/quantization/fuser_method_mappings.py,sha256=RVk1jf2hO4f-WWhUbd9kgcNvfpECtdxPRkdxaYRbs4A,10692 +torch/ao/quantization/fx/__init__.py,sha256=LznkRltyNzEL0Z_KaUUV2lOMPtlTaKXlwWx2Y428B9k,84 +torch/ao/quantization/fx/__pycache__/__init__.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/_decomposed.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/_equalize.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/_lower_to_native_backend.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/convert.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/custom_config.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/fuse.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/fuse_handler.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/graph_module.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/lower_to_fbgemm.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/lower_to_qnnpack.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/lstm_utils.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/match_utils.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/pattern_utils.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/prepare.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/qconfig_mapping_utils.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/quantize_handler.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/tracer.cpython-312.pyc,, +torch/ao/quantization/fx/__pycache__/utils.cpython-312.pyc,, +torch/ao/quantization/fx/_decomposed.py,sha256=Jc5igetT6HnXTqQXCNvuqIkN63S8oEeLZGV4d4KYPdk,43223 +torch/ao/quantization/fx/_equalize.py,sha256=aVAMeM-bHmUuhwGTASO5K6ZFZ4KkoG7tkM8hhNxKfSY,38789 +torch/ao/quantization/fx/_lower_to_native_backend.py,sha256=d6dmkyg_pxbzCYJb6lGiTyTZZDvK3rGyQFTPusbGXeU,54505 +torch/ao/quantization/fx/_model_report/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/ao/quantization/fx/_model_report/__pycache__/__init__.cpython-312.pyc,, +torch/ao/quantization/fx/_model_report/__pycache__/detector.cpython-312.pyc,, +torch/ao/quantization/fx/_model_report/__pycache__/model_report.cpython-312.pyc,, +torch/ao/quantization/fx/_model_report/__pycache__/model_report_observer.cpython-312.pyc,, +torch/ao/quantization/fx/_model_report/__pycache__/model_report_visualizer.cpython-312.pyc,, +torch/ao/quantization/fx/_model_report/detector.py,sha256=f-QYhaIU_0KBxZmL4NC06jCL05ox-s_3CR9haZ49ex0,78154 +torch/ao/quantization/fx/_model_report/model_report.py,sha256=xtvULod5Yiijv4-yi_9dyBHH3CR82E_Q6Ux6ARW7-H4,30162 +torch/ao/quantization/fx/_model_report/model_report_observer.py,sha256=Cgf3qJ0dbfnrKm2R3kyDruFQaks1S7OVpPugmlYfnTk,12343 +torch/ao/quantization/fx/_model_report/model_report_visualizer.py,sha256=jKiXemuYsr8a-r3An3kFRXgteLkKMn45SBYgjU-Wt50,33402 +torch/ao/quantization/fx/convert.py,sha256=6Bfr1Bis_G5iKfQzmV6kuGOIsnEgc_xs5naJAhxj0qM,59148 +torch/ao/quantization/fx/custom_config.py,sha256=CtMrcgceIrbXze7m81dMkamLbZUqjhOlryeegMBOgDk,22379 +torch/ao/quantization/fx/fuse.py,sha256=9EsxS_43khQ7_7RyLKDkY4PmAlgcMtkhi69c6FdJpSM,7466 +torch/ao/quantization/fx/fuse_handler.py,sha256=n6Xp9PTq0DkYmTwpAFhJU-IQ4Dld9lXBWv_O5j0t_as,4786 +torch/ao/quantization/fx/graph_module.py,sha256=6zzjGb_FgyAYpVlOIJG2VK0W9eOQA0StOgUZ4sIfYBI,6828 +torch/ao/quantization/fx/lower_to_fbgemm.py,sha256=k519gkcVJR0m54xHl-9eyXDa1Zozg7P2hrpsbwU2Xjw,576 +torch/ao/quantization/fx/lower_to_qnnpack.py,sha256=GZSCE0oROw9tHheH1bupDr6HvgL6iUpY6bWpPK3gHhg,579 +torch/ao/quantization/fx/lstm_utils.py,sha256=kX09Y9zifzz3nnOHMcEAjJvbYbzzcvcNjDau4LEfUm8,10354 +torch/ao/quantization/fx/match_utils.py,sha256=cr8U-O51ZaanfPrO6r0Zrm0HMVzdg0E42qPpxoWin7Q,9090 +torch/ao/quantization/fx/pattern_utils.py,sha256=l12YRPzojVEssqUEwdoHnfoB_5cqbr1M6X4XhjVQj7I,3783 +torch/ao/quantization/fx/prepare.py,sha256=qt3eLt2N7WXFeKCSc2kw9iZsk85lAcmYOxIxB7rIupM,89890 +torch/ao/quantization/fx/qconfig_mapping_utils.py,sha256=P7-b89u6ye8yELrnbbktn9HnUJ1tUwwIE3sWpZNjToA,15795 +torch/ao/quantization/fx/quantize_handler.py,sha256=99MwFaxK6TmFY403Hdvr09_fWbSNBsbkAv3VLf5Vq-w,7523 +torch/ao/quantization/fx/tracer.py,sha256=lp-BeJ9FQwTRZZthjV_Ize847Bm4yDdslZa7l8nT4dQ,1742 +torch/ao/quantization/fx/utils.py,sha256=jQ-E44BnHJ7267Hqk1paCIHWlV2vFj7wisHgoDHdE1k,38559 +torch/ao/quantization/observer.py,sha256=FLb8C2GQx_KvFJl6H5kJj1S7D6OLgy6qFE83Vkam6UI,68504 +torch/ao/quantization/pt2e/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/ao/quantization/pt2e/__pycache__/__init__.cpython-312.pyc,, +torch/ao/quantization/pt2e/__pycache__/_numeric_debugger.cpython-312.pyc,, +torch/ao/quantization/pt2e/__pycache__/duplicate_dq_pass.cpython-312.pyc,, +torch/ao/quantization/pt2e/__pycache__/export_utils.cpython-312.pyc,, +torch/ao/quantization/pt2e/__pycache__/graph_utils.cpython-312.pyc,, +torch/ao/quantization/pt2e/__pycache__/port_metadata_pass.cpython-312.pyc,, +torch/ao/quantization/pt2e/__pycache__/prepare.cpython-312.pyc,, +torch/ao/quantization/pt2e/__pycache__/qat_utils.cpython-312.pyc,, +torch/ao/quantization/pt2e/__pycache__/utils.cpython-312.pyc,, +torch/ao/quantization/pt2e/_numeric_debugger.py,sha256=vYtahmtQGyEs0_g5BXx9xk_gee8GpzkmjHJpuTItxoE,11412 +torch/ao/quantization/pt2e/duplicate_dq_pass.py,sha256=DpL0dIohK0DxXiu86Z-Ficps3alEbpPd2goUfDreOuo,3204 +torch/ao/quantization/pt2e/export_utils.py,sha256=zf6qtFnCerBPhwQSZFf4J-5kPYpTRMLY8eSwF5sR1W8,8748 +torch/ao/quantization/pt2e/graph_utils.py,sha256=pGAep-0RvBPwOtOdyHOYj5LlZ0m72i2uh6FZBa-I9Lc,5603 +torch/ao/quantization/pt2e/port_metadata_pass.py,sha256=UrTnXjkybZ-eyjy4dpUa774QfgPcqnI4YboHKZ1r2ZY,9300 +torch/ao/quantization/pt2e/prepare.py,sha256=7dyKxphyRPEUXjm0Jqv2baIAYeNUoRPwSqzCkzBCht8,22136 +torch/ao/quantization/pt2e/qat_utils.py,sha256=86PYbpDsK3CtESw65A9yx4A-QQm1X2KavMXBmFJFvXE,37776 +torch/ao/quantization/pt2e/representation/__init__.py,sha256=uhKkqgWmX_G43QgqbD4FvLpn6nyf_y_ZRM8A7U9SOMM,116 +torch/ao/quantization/pt2e/representation/__pycache__/__init__.cpython-312.pyc,, +torch/ao/quantization/pt2e/representation/__pycache__/rewrite.cpython-312.pyc,, +torch/ao/quantization/pt2e/representation/rewrite.py,sha256=QKmITwtIECvfRl6mIshkTbymwvM_iXs59oN32p8cxXg,28485 +torch/ao/quantization/pt2e/utils.py,sha256=ukYzJqkbW0YetuXnuTJNEUgUl6M5NYE21TVm1R-nplE,24621 +torch/ao/quantization/qconfig.py,sha256=VmOTwQgBtbXRGjw4pr980xmtU6uf1GDx5BKYQ5hRUcM,24991 +torch/ao/quantization/qconfig_mapping.py,sha256=d_SL71pmNQMcXfeKq8dpw2X9NfXDRXHugcB_eFWugDw,15209 +torch/ao/quantization/quant_type.py,sha256=2pNr0PUNaewO7-VwLB_k9s02isvSuDSoDBYuiDMvA9k,795 +torch/ao/quantization/quantization_mappings.py,sha256=k8dADy7py6KFdp811k8RNk85BWikNzAKIusplD7zOc8,14224 +torch/ao/quantization/quantize.py,sha256=UxG3_EAwo8Eh6X_yZi1xT5KwnjtXol3CNJM8XYnezt8,31372 +torch/ao/quantization/quantize_fx.py,sha256=Unvzbg4VCu0rjlqedQ8FVlxYPHVI6cOW4qvnEJYYLcg,33005 +torch/ao/quantization/quantize_jit.py,sha256=tMeiA-RIIvbVOUYO71HPUvidItvQ2CWTEJoZnT5z25o,15017 +torch/ao/quantization/quantize_pt2e.py,sha256=r_VYVxE7ctAhU7mjmwUPQPjI3Zwq9d0FjEsaGa5hFtE,9738 +torch/ao/quantization/quantizer/__init__.py,sha256=kDj8d9proE6S4UYCNwSxFnaldBqsYVktx0gs1RYl1g0,477 +torch/ao/quantization/quantizer/__pycache__/__init__.cpython-312.pyc,, +torch/ao/quantization/quantizer/__pycache__/composable_quantizer.cpython-312.pyc,, +torch/ao/quantization/quantizer/__pycache__/embedding_quantizer.cpython-312.pyc,, +torch/ao/quantization/quantizer/__pycache__/quantizer.cpython-312.pyc,, +torch/ao/quantization/quantizer/__pycache__/utils.cpython-312.pyc,, +torch/ao/quantization/quantizer/__pycache__/x86_inductor_quantizer.cpython-312.pyc,, +torch/ao/quantization/quantizer/__pycache__/xnnpack_quantizer.cpython-312.pyc,, +torch/ao/quantization/quantizer/__pycache__/xnnpack_quantizer_utils.cpython-312.pyc,, +torch/ao/quantization/quantizer/__pycache__/xpu_inductor_quantizer.cpython-312.pyc,, +torch/ao/quantization/quantizer/composable_quantizer.py,sha256=8M9huw707QDoxQTEVE8tP8peq2d231GnAS44atpQJDE,3072 +torch/ao/quantization/quantizer/embedding_quantizer.py,sha256=3fbPWkzeDMyZVk4BpsleEryzTuFihALx1xDOVm1QDJ4,3584 +torch/ao/quantization/quantizer/quantizer.py,sha256=uJDIpZth0Aqo80inOP8UXywGbBcd6VcRt-7TgBRCZaw,6824 +torch/ao/quantization/quantizer/utils.py,sha256=wjYnRbl2u4KpAz4D92VK8ZNKAHkTCY9zmQw9sTMdbzc,3332 +torch/ao/quantization/quantizer/x86_inductor_quantizer.py,sha256=HpZOevkmMZqQx-BAksNH-M8u1JfywpPO6mOJyej3X_s,66134 +torch/ao/quantization/quantizer/xnnpack_quantizer.py,sha256=U_opsWz2kfV6nYcb6pHm3pMkEHCScgUE7PG4h7fiN8U,16174 +torch/ao/quantization/quantizer/xnnpack_quantizer_utils.py,sha256=Jky9SeiH_rvM_JEWPJCUGt-qQIWZNySoKi9ZG5o1S28,41237 +torch/ao/quantization/quantizer/xpu_inductor_quantizer.py,sha256=rZ5zw1NDFGrd9jrqf2x-wqux6JQugozJzG4-wvRzDwM,4890 +torch/ao/quantization/stubs.py,sha256=oVejdrHWBdDv_aobhSWe2AJXF0-uU6vfynTS_76W8rw,2108 +torch/ao/quantization/utils.py,sha256=aVcNjPgieKA55_1APR3-avYvk6NvTX6Oa5Pw-QNX-wg,28972 +torch/autograd/__init__.py,sha256=lqxcqaUDSNHiO93E4rXsb3c9KkgBn6txMOnhavK0idU,25693 +torch/autograd/__pycache__/__init__.cpython-312.pyc,, +torch/autograd/__pycache__/anomaly_mode.cpython-312.pyc,, +torch/autograd/__pycache__/forward_ad.cpython-312.pyc,, +torch/autograd/__pycache__/function.cpython-312.pyc,, +torch/autograd/__pycache__/functional.cpython-312.pyc,, +torch/autograd/__pycache__/grad_mode.cpython-312.pyc,, +torch/autograd/__pycache__/gradcheck.cpython-312.pyc,, +torch/autograd/__pycache__/graph.cpython-312.pyc,, +torch/autograd/__pycache__/profiler.cpython-312.pyc,, +torch/autograd/__pycache__/profiler_legacy.cpython-312.pyc,, +torch/autograd/__pycache__/profiler_util.cpython-312.pyc,, +torch/autograd/__pycache__/variable.cpython-312.pyc,, +torch/autograd/_functions/__init__.py,sha256=jgHrjtlIe3ka_xUh-D_Ayj7EmRq003Wtyg9TQwQ1QPw,37 +torch/autograd/_functions/__pycache__/__init__.cpython-312.pyc,, +torch/autograd/_functions/__pycache__/tensor.cpython-312.pyc,, +torch/autograd/_functions/__pycache__/utils.cpython-312.pyc,, +torch/autograd/_functions/tensor.py,sha256=EHOdTCy-8k8WtAQdrsd3WczYwk9lJHNfbQWCfjmYx3o,2255 +torch/autograd/_functions/utils.py,sha256=EvocbTRiTvbdNIbRo-nV1nBLH_KjUVYlvk8OjKLT38M,2120 +torch/autograd/anomaly_mode.py,sha256=Fowf0oEBew4jesoYI1bgaKXsJ8-u-qoU-9TeucGMsJA,5072 +torch/autograd/forward_ad.py,sha256=Azf0UHlPhQIzoRfePI3R1iQdIzNOMiwLHeuWk8P762Y,7912 +torch/autograd/function.py,sha256=cfgR9GBgf4wkQoOsjZ2mPkfdQkgyhXrvbusH8M5W5oI,34118 +torch/autograd/functional.py,sha256=EU_MlTefCBxfCYMwPNR_fXahd_yqBfKyWU8si7nAZeA,53472 +torch/autograd/grad_mode.py,sha256=h9K_xnC0CywJ7fpaZWyiEMtiDAi3EaSV67OB8uKDI8w,13398 +torch/autograd/gradcheck.py,sha256=X63imDXa0E_UGSJc61sRXLPKIoQCbQgRZ2jj26PTI1Q,92943 +torch/autograd/graph.py,sha256=gvvyYTppI36xObejsKzcWLWgDab6niv-ElTPXPLXAaQ,30777 +torch/autograd/profiler.py,sha256=2IUKqmNlPWdxStIg3hHLG6nacgTSsHeAdoVJs9oE38A,49232 +torch/autograd/profiler_legacy.py,sha256=7_j9EBGlXH-hcdBjMJImdot_vo5O8x8EjJgE9pEHe4w,11858 +torch/autograd/profiler_util.py,sha256=zT-_QNIFg3t3ySn7Y-z6ws6trwxTtrwDOskHfoe8Zgk,41034 +torch/autograd/variable.py,sha256=DvFQwaN93efyHpN42uFcUVSHWNwFyfiuC3t45H5vJns,406 +torch/backends/__init__.py,sha256=0dRHfnE96oEN1E4aZWcAvyAgXeUv1p2skHNj5P287SM,1823 +torch/backends/__pycache__/__init__.cpython-312.pyc,, +torch/backends/_coreml/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/backends/_coreml/__pycache__/__init__.cpython-312.pyc,, +torch/backends/_coreml/__pycache__/preprocess.cpython-312.pyc,, +torch/backends/_coreml/preprocess.py,sha256=m6zaleoWxlibPTHVttqrcseIyJzT5nN-EyFtKb8j74Y,4396 +torch/backends/_nnapi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/backends/_nnapi/__pycache__/__init__.cpython-312.pyc,, +torch/backends/_nnapi/__pycache__/prepare.cpython-312.pyc,, +torch/backends/_nnapi/__pycache__/serializer.cpython-312.pyc,, +torch/backends/_nnapi/prepare.py,sha256=NVa1AHU8jKwMsLGpQChBBc_pKpheed38OG5T1ok4tJ8,6764 +torch/backends/_nnapi/serializer.py,sha256=EW1zkiv7QvFWz0olVaIyZEdXGu-GPll8hy1vGecg0P4,85136 +torch/backends/cpu/__init__.py,sha256=B9FowRUnLL7Zbxlmzn84Sd8NwK2-o9HbopMdz4L4npo,335 +torch/backends/cpu/__pycache__/__init__.cpython-312.pyc,, +torch/backends/cuda/__init__.py,sha256=DYZOLjBZd1yd4Y-x4YvqJzR8HZQFz6QuUax0VyHoRxg,17049 +torch/backends/cuda/__pycache__/__init__.cpython-312.pyc,, +torch/backends/cudnn/__init__.py,sha256=XV2hlv_W0AO9Jh50SqSYpnA6DN1rhW0egDm6rjDwcV4,6811 +torch/backends/cudnn/__pycache__/__init__.cpython-312.pyc,, +torch/backends/cudnn/__pycache__/rnn.cpython-312.pyc,, +torch/backends/cudnn/rnn.py,sha256=gl9XlLM0aEJlQSYFuORoTWq1FQZwHJ-wy8jfwRHj9lE,2125 +torch/backends/cusparselt/__init__.py,sha256=Ktl12_Mgjoroyk7pR5CWHXlMqgZjiweX7yxXEYWOrpM,1303 +torch/backends/cusparselt/__pycache__/__init__.cpython-312.pyc,, +torch/backends/mha/__init__.py,sha256=BFy3pkZgPeYCxZsgSWMrFQmz24tMi4yf0jQ2R0L70ys,741 +torch/backends/mha/__pycache__/__init__.cpython-312.pyc,, +torch/backends/mkl/__init__.py,sha256=OjXc4GzGn1hvOzElfPcYFKClk1LTM_om_7zy-Ab2geA,1839 +torch/backends/mkl/__pycache__/__init__.cpython-312.pyc,, +torch/backends/mkldnn/__init__.py,sha256=zz-mrEbTI0NgEoWU16TRrKkd10gWXbmrlf92FMKLf98,3257 +torch/backends/mkldnn/__pycache__/__init__.cpython-312.pyc,, +torch/backends/mps/__init__.py,sha256=0MlxJPku0fNMou_8Jb5uER7PeAlZ-EouY4gglJhdMTU,1697 +torch/backends/mps/__pycache__/__init__.cpython-312.pyc,, +torch/backends/nnpack/__init__.py,sha256=Lza7vXQTuE_baJZL_05OozTyfeg4vu1VTWHCoMfso-I,869 +torch/backends/nnpack/__pycache__/__init__.cpython-312.pyc,, +torch/backends/openmp/__init__.py,sha256=Aee3z5fqS3euk0SSK4X39uZvxSZ-huoS5WY_Fvu54EE,164 +torch/backends/openmp/__pycache__/__init__.cpython-312.pyc,, +torch/backends/opt_einsum/__init__.py,sha256=ZK9DkzK067poaRJS2Jhblw8l8RWcNYEVQkx53ziBhbk,4001 +torch/backends/opt_einsum/__pycache__/__init__.cpython-312.pyc,, +torch/backends/quantized/__init__.py,sha256=JgSHiSfzkGMYg1P4REydP4K9veFowDJ4t2q3s1WiJoc,1951 +torch/backends/quantized/__pycache__/__init__.cpython-312.pyc,, +torch/backends/xeon/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/backends/xeon/__pycache__/__init__.cpython-312.pyc,, +torch/backends/xeon/__pycache__/run_cpu.cpython-312.pyc,, +torch/backends/xeon/run_cpu.py,sha256=vED8HAuTXJn9sM92pMBxRec5uArI9uWAASac8QGMNo8,38510 +torch/backends/xnnpack/__init__.py,sha256=ifIkHb5pGCc3aYwkb6tSQnm30iPBvViD8A8KLvXrc8U,731 +torch/backends/xnnpack/__pycache__/__init__.cpython-312.pyc,, +torch/bin/asmjit.dll,sha256=cZ-0BnW8b6BXnrHM12-4x3rCg-nW5AeLEWlNc5IHb-Y,358912 +torch/bin/fbgemm.dll,sha256=k-zfhMyCeIuDUgfgWQZLwIj3F-c9eICUUZHKUsXqZ04,4961280 +torch/bin/protoc.exe,sha256=6l2oqs-6pGVi3a5NpMtEUCW_lLJPvXqxxN7TnFk0EI0,2810880 +torch/compiler/__init__.py,sha256=6rZA0slyErZz1QjByLFIVJ6wXE9lmY_P77tMoCi05ww,15364 +torch/compiler/__pycache__/__init__.cpython-312.pyc,, +torch/compiler/__pycache__/config.cpython-312.pyc,, +torch/compiler/config.py,sha256=bZXdwAZI2dPpYOYa4LnLIG-CDCqgcDvMR5qLZg8awe0,2770 +torch/contrib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/contrib/__pycache__/__init__.cpython-312.pyc,, +torch/contrib/__pycache__/_tensorboard_vis.cpython-312.pyc,, +torch/contrib/_tensorboard_vis.py,sha256=vvM4kopa75VAgWUg9KstoPqJq2YQykYSSQTUWKV7908,6073 +torch/cpu/__init__.py,sha256=uRyFHCtb5FiJh_5_pbApSXxnF29yG65UE-pGDTdWOxQ,4876 +torch/cpu/__pycache__/__init__.cpython-312.pyc,, +torch/cpu/amp/__init__.py,sha256=22SHegVxLfn2YM_gFoxYPfBrppjsWUXMqBTWipe3uIc,74 +torch/cpu/amp/__pycache__/__init__.cpython-312.pyc,, +torch/cpu/amp/__pycache__/autocast_mode.cpython-312.pyc,, +torch/cpu/amp/__pycache__/grad_scaler.cpython-312.pyc,, +torch/cpu/amp/autocast_mode.py,sha256=uYNYUnj1JcbKjf4HZOgBvBAeRGqcf1YgukaTSosL8RY,1572 +torch/cpu/amp/grad_scaler.py,sha256=GOq20a01Ba0YFMVEuGlYlgMGtBLo6koIUl9uYgxW8l4,993 +torch/cuda/__init__.py,sha256=kvLSQ0znE9gfWK7ONv4bvI_ZlClz29p7oSAJ3jDd2IU,58784 +torch/cuda/__pycache__/__init__.cpython-312.pyc,, +torch/cuda/__pycache__/_gpu_trace.cpython-312.pyc,, +torch/cuda/__pycache__/_memory_viz.cpython-312.pyc,, +torch/cuda/__pycache__/_sanitizer.cpython-312.pyc,, +torch/cuda/__pycache__/_utils.cpython-312.pyc,, +torch/cuda/__pycache__/comm.cpython-312.pyc,, +torch/cuda/__pycache__/error.cpython-312.pyc,, +torch/cuda/__pycache__/gds.cpython-312.pyc,, +torch/cuda/__pycache__/graphs.cpython-312.pyc,, +torch/cuda/__pycache__/jiterator.cpython-312.pyc,, +torch/cuda/__pycache__/memory.cpython-312.pyc,, +torch/cuda/__pycache__/nccl.cpython-312.pyc,, +torch/cuda/__pycache__/nvtx.cpython-312.pyc,, +torch/cuda/__pycache__/profiler.cpython-312.pyc,, +torch/cuda/__pycache__/random.cpython-312.pyc,, +torch/cuda/__pycache__/sparse.cpython-312.pyc,, +torch/cuda/__pycache__/streams.cpython-312.pyc,, +torch/cuda/__pycache__/tunable.cpython-312.pyc,, +torch/cuda/_gpu_trace.py,sha256=-0CMfrtlWekcDWXLaJ--L7cP8M9nrOckgsEWsn_kOq8,2458 +torch/cuda/_memory_viz.py,sha256=XXl89AaTZ3ryyXIBxTd8TefOwJwwZbM5cqJx60b833E,25419 +torch/cuda/_sanitizer.py,sha256=J1g563J9fWgjPu20uw8MG27B9AAAqvHopNH87B52fkk,24857 +torch/cuda/_utils.py,sha256=VKnmce-MKGDno59gGVNZlfCveYM9jHZn9_PiAWn4RAw,1635 +torch/cuda/amp/__init__.py,sha256=SKHKvfv4Lj8s0Z0gO1S5FWSALds7Td7iWnEq4e-_vkc,279 +torch/cuda/amp/__pycache__/__init__.cpython-312.pyc,, +torch/cuda/amp/__pycache__/autocast_mode.cpython-312.pyc,, +torch/cuda/amp/__pycache__/common.cpython-312.pyc,, +torch/cuda/amp/__pycache__/grad_scaler.cpython-312.pyc,, +torch/cuda/amp/autocast_mode.py,sha256=AiSWnontfiZ6YOMUrhLrQ3z34lYPheUgjNSVxhUQmUU,2909 +torch/cuda/amp/common.py,sha256=3uWhYUr9-qeHDGh4U6n6NQYqeVnI4k1Y_FZnSIDJGgQ,241 +torch/cuda/amp/grad_scaler.py,sha256=Tv9cOcK98Sd2c65ft3gGf6SHBzv9Kb_wqzQMoNaS4MQ,1111 +torch/cuda/comm.py,sha256=mBimRSrUau-nRDQgCcmU4tsplgQBqZErOo1lcPKYGRw,363 +torch/cuda/error.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/cuda/gds.py,sha256=EHNsXz7QsyiM3MA08j3qxL9Cp36bzFHtsjLai4v8Pbk,4567 +torch/cuda/graphs.py,sha256=RynKTXzFmBd4yGmqtGLlvE7Oq7CxxA3DYJ-laP2VfXE,22625 +torch/cuda/jiterator.py,sha256=SRyV3o7Gh9djCPyaqRz_dqObsNHGkKpjDBLSMotwBs0,7021 +torch/cuda/memory.py,sha256=K0PrUgEka_2shKs6MV-uVYlKVK5wlqEcgRFFdoxsM5w,42666 +torch/cuda/nccl.py,sha256=J2x9Ya0BerMBcRl6e31Nfi85JiiSyusgV_R5Q90DGGY,4701 +torch/cuda/nvtx.py,sha256=kYoWspwfOxbZRx1sCuyxkpQx0gNEe4_EaMDW3PRgRCs,3662 +torch/cuda/profiler.py,sha256=ulYEZICkOD7hyCW-WjxnXAPHoGMtpDvfRjeW0v5hRzc,2487 +torch/cuda/random.py,sha256=DPVrgjeleKbgZ4ztjK7Wk1qHaUmIvdKN-cPzIjOdxxw,5437 +torch/cuda/sparse.py,sha256=Fz_B2EnQ-a1-gPpkiuaOykIin7tXmT-CeLj7YflcloA,68 +torch/cuda/streams.py,sha256=00buDVLXvugOPjVdOM6vJzDaYtdKLtUS5_yLOTBW0bM,8576 +torch/cuda/tunable.py,sha256=Svct0GCxUcVfZ-rGfNxrEXhDgDiFjLjxN8CvzZWHd00,21035 +torch/distributed/__init__.py,sha256=Ic4QtqqkMv7nc6liaPLAfXf8r481ZaGn5AhISUm2_W4,5122 +torch/distributed/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/__pycache__/_checkpointable.cpython-312.pyc,, +torch/distributed/__pycache__/_composable_state.cpython-312.pyc,, +torch/distributed/__pycache__/_functional_collectives.cpython-312.pyc,, +torch/distributed/__pycache__/_functional_collectives_impl.cpython-312.pyc,, +torch/distributed/__pycache__/_state_dict_utils.cpython-312.pyc,, +torch/distributed/__pycache__/argparse_util.cpython-312.pyc,, +torch/distributed/__pycache__/c10d_logger.cpython-312.pyc,, +torch/distributed/__pycache__/collective_utils.cpython-312.pyc,, +torch/distributed/__pycache__/constants.cpython-312.pyc,, +torch/distributed/__pycache__/device_mesh.cpython-312.pyc,, +torch/distributed/__pycache__/distributed_c10d.cpython-312.pyc,, +torch/distributed/__pycache__/launch.cpython-312.pyc,, +torch/distributed/__pycache__/logging_handlers.cpython-312.pyc,, +torch/distributed/__pycache__/remote_device.cpython-312.pyc,, +torch/distributed/__pycache__/rendezvous.cpython-312.pyc,, +torch/distributed/__pycache__/run.cpython-312.pyc,, +torch/distributed/__pycache__/utils.cpython-312.pyc,, +torch/distributed/_checkpointable.py,sha256=eDoHFvo8tdEAaQ3ptUHex4-qvpfObCbfEs9eY2DfnJY,1324 +torch/distributed/_composable/__init__.py,sha256=thBK3Pd-YbW1Q444eLu9PciaPGsNWw039cR1Q19Q4Gg,128 +torch/distributed/_composable/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_composable/__pycache__/checkpoint_activation.cpython-312.pyc,, +torch/distributed/_composable/__pycache__/contract.cpython-312.pyc,, +torch/distributed/_composable/__pycache__/replicate.cpython-312.pyc,, +torch/distributed/_composable/checkpoint_activation.py,sha256=22ak5sYfoXSsK_ttSS5gB4V5LAIME3KcHjIcy1sSSwU,4676 +torch/distributed/_composable/contract.py,sha256=8pZ_wlMkuX1uQCc4citdpDOSRHmbD77rFTKnL0uYHHk,9796 +torch/distributed/_composable/fsdp/__init__.py,sha256=9DBnmW1yy-ApaEL75QCo7hsYTUQMzo5Ew8O4-BikHaE,172 +torch/distributed/_composable/fsdp/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_composable/fsdp/__pycache__/fully_shard.cpython-312.pyc,, +torch/distributed/_composable/fsdp/fully_shard.py,sha256=bKBtbDN-wr8z90nXgoGpEOJO1J8Fc6it-HfkNbwRCgQ,248 +torch/distributed/_composable/replicate.py,sha256=TaIQMRkQ8WCjKR8T-lVhRwUgHj2KP9-xh8Skwn-wgpo,9532 +torch/distributed/_composable_state.py,sha256=SG-CUbC4e328QzL33Rz9hN02nORP3We-VsNcqzIFrt8,1438 +torch/distributed/_functional_collectives.py,sha256=PXzIjhjyPG8n5RcGODxlpHtahj1G0KKLdSMUSnb_qAo,45182 +torch/distributed/_functional_collectives_impl.py,sha256=AMZD8h0bzMS73m3TyWXuWN9qD24aUIAJtwiKAZdFttU,3346 +torch/distributed/_shard/__init__.py,sha256=iQH3xAO1oGHbWgMAaP_ITI5ogx8MnQTSjowtvbYP6Tk,88 +torch/distributed/_shard/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_shard/__pycache__/_utils.cpython-312.pyc,, +torch/distributed/_shard/__pycache__/api.cpython-312.pyc,, +torch/distributed/_shard/__pycache__/common_op_utils.cpython-312.pyc,, +torch/distributed/_shard/__pycache__/metadata.cpython-312.pyc,, +torch/distributed/_shard/__pycache__/op_registry_utils.cpython-312.pyc,, +torch/distributed/_shard/__pycache__/sharder.cpython-312.pyc,, +torch/distributed/_shard/_utils.py,sha256=oJh1-3ZOSufLdnAmKMnGVnC6ptlBzmBkn4FVZzsPuhQ,1093 +torch/distributed/_shard/api.py,sha256=MnAEYQSnSFts0mx3aJ_1DCSq9kN8dYanLbgRdVPyzck,12702 +torch/distributed/_shard/checkpoint/__init__.py,sha256=BLwYCF5RBdVhgcQWIt-okUz4b2j4s8dZJUV5noFajKE,603 +torch/distributed/_shard/checkpoint/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_shard/common_op_utils.py,sha256=GBorT9WnU4hYLQN2jnHL810UnDLiEzFMlSnL-nsLg7U,2244 +torch/distributed/_shard/metadata.py,sha256=dn955fqGKxawPeRj_pAQCe74ipkesBntFh3GsCS97Hc,2285 +torch/distributed/_shard/op_registry_utils.py,sha256=CiG2tqa17vB8-byEvREH1xa6n3ok6jeZTw7yMfIJbOU,1072 +torch/distributed/_shard/sharded_optim/__init__.py,sha256=S7hLxfblwqYlMpkNUP-iS0_X9suMM545hlcbXd1BZeY,1901 +torch/distributed/_shard/sharded_optim/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_shard/sharded_optim/__pycache__/api.cpython-312.pyc,, +torch/distributed/_shard/sharded_optim/api.py,sha256=r2daNo_YYPz3tSiNRod8kHo0hanpQEg20lWtpHUICOw,4363 +torch/distributed/_shard/sharded_tensor/__init__.py,sha256=Vykg-mkkzTnCz6LyfSWya5MDHers257OVpKPh2oEsYk,19750 +torch/distributed/_shard/sharded_tensor/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/__pycache__/api.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/__pycache__/logger.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/__pycache__/logging_handlers.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/__pycache__/metadata.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/__pycache__/reshard.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/__pycache__/shard.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/__pycache__/utils.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/_ops/__init__.py,sha256=lmxOnYVj19giuuuhimdPOa9_hhfUDLNtb54PRrrn0rc,511 +torch/distributed/_shard/sharded_tensor/_ops/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/_ops/__pycache__/_common.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/_ops/__pycache__/binary_cmp.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/_ops/__pycache__/init.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/_ops/__pycache__/misc_ops.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/_ops/__pycache__/tensor_ops.cpython-312.pyc,, +torch/distributed/_shard/sharded_tensor/_ops/_common.py,sha256=WZ3HQwHgf7pEMrxtRH7iwQzU2BwA90YTc2eeBsrSJ2I,4309 +torch/distributed/_shard/sharded_tensor/_ops/binary_cmp.py,sha256=5r6jlsQqp-QSnX58cw15qd60IHOqdF1QabbmkCLKTMM,2814 +torch/distributed/_shard/sharded_tensor/_ops/init.py,sha256=tztslfE21-UP2LBiSbOLMGVH2BGCwxKh3A9XjrM2Xe4,5637 +torch/distributed/_shard/sharded_tensor/_ops/misc_ops.py,sha256=PyhosH2velC0RYXbcy8M2AfRLBslVuslDIx8CqvSMdU,509 +torch/distributed/_shard/sharded_tensor/_ops/tensor_ops.py,sha256=9-6N_L2SP2YQhBT7Ug3u1te0_ZfhIrUCYgL66NwOCyk,7930 +torch/distributed/_shard/sharded_tensor/api.py,sha256=r-Fl-g2Laam7_uBrRbSzq-10rbuoAfwk3_FI7qAgb5k,53444 +torch/distributed/_shard/sharded_tensor/logger.py,sha256=vhix43UZwdDgcSU1l64gLusQxFqTwUBuQliEybAJDsg,1151 +torch/distributed/_shard/sharded_tensor/logging_handlers.py,sha256=ZO39h4e0bTiAisboYDz1QtiT3UgmLJ1HptEgNaQg07Q,406 +torch/distributed/_shard/sharded_tensor/metadata.py,sha256=QpBuSL95KItWL6jODHY3k6dUWD3l79FGLBlsqWq2tLo,3117 +torch/distributed/_shard/sharded_tensor/reshard.py,sha256=jok0Mu0TMNOwDGXM2y8iEJqzqqk6gixc--QzuPRWrJM,11025 +torch/distributed/_shard/sharded_tensor/shard.py,sha256=LbByD5MYuvFBBKRUmAZrCqIl4PcOWI2yhM6XeIA0Miw,2456 +torch/distributed/_shard/sharded_tensor/utils.py,sha256=nVnPnWi7835iJ3NfsFADzYsJ7K63U3-msZUGrqirZA8,9760 +torch/distributed/_shard/sharder.py,sha256=Hit1lmP4br_NABzhst2jkTINzzO3Oj_9aTiIeI2rjHQ,930 +torch/distributed/_shard/sharding_plan/__init__.py,sha256=bwXPLAUqt1LbEwkmcKf0F2xfLjOZOe3-H7XF9WzSba0,48 +torch/distributed/_shard/sharding_plan/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_shard/sharding_plan/__pycache__/api.cpython-312.pyc,, +torch/distributed/_shard/sharding_plan/api.py,sha256=69qP4cghM-p3V1w-zpcxBKI-70HWSIloJSedPdR-R0A,3748 +torch/distributed/_shard/sharding_spec/__init__.py,sha256=_5g_LTK5iUs19ZKCKThnOF3EfnUICbolGW_nuhep6zs,301 +torch/distributed/_shard/sharding_spec/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_shard/sharding_spec/__pycache__/_internals.cpython-312.pyc,, +torch/distributed/_shard/sharding_spec/__pycache__/api.cpython-312.pyc,, +torch/distributed/_shard/sharding_spec/__pycache__/chunk_sharding_spec.cpython-312.pyc,, +torch/distributed/_shard/sharding_spec/_internals.py,sha256=ccK8aTSD4UAJQ-T95_7eqdnBuvLQozaexi4MXfnesUI,8212 +torch/distributed/_shard/sharding_spec/api.py,sha256=32sQ40bEtcKWCwfqXLHC7XhQ0EK_JEgGZrJczGd8FYI,10096 +torch/distributed/_shard/sharding_spec/chunk_sharding_spec.py,sha256=KVdlRbYcOmusLJamvPztHy38fDBap9j87JrLeeLel5s,9413 +torch/distributed/_shard/sharding_spec/chunk_sharding_spec_ops/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/distributed/_shard/sharding_spec/chunk_sharding_spec_ops/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_shard/sharding_spec/chunk_sharding_spec_ops/__pycache__/_common.cpython-312.pyc,, +torch/distributed/_shard/sharding_spec/chunk_sharding_spec_ops/__pycache__/embedding.cpython-312.pyc,, +torch/distributed/_shard/sharding_spec/chunk_sharding_spec_ops/__pycache__/embedding_bag.cpython-312.pyc,, +torch/distributed/_shard/sharding_spec/chunk_sharding_spec_ops/_common.py,sha256=N0dbjzsCv5kDGBMztA8Ty_v-Xj5HqB8vFEjDLyc8XzI,13377 +torch/distributed/_shard/sharding_spec/chunk_sharding_spec_ops/embedding.py,sha256=ZuCM_9GDQfMp_0iLvmRgPMxdmHj6mG85Acq6dqN6O9o,11503 +torch/distributed/_shard/sharding_spec/chunk_sharding_spec_ops/embedding_bag.py,sha256=tQ9P_0gH2txDQ3XSfhoJ1P71aOWmcc5TxkxYkw9zs0s,18802 +torch/distributed/_sharded_tensor/__init__.py,sha256=UOFA3u-I6GMkntg6vudsoAaE0hg9FmH4F1bjJx7YcX8,636 +torch/distributed/_sharded_tensor/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_sharding_spec/__init__.py,sha256=hpjniVEKyMpjJj_Y8896cZfS0O0DAQczWxKb0EQd6Zg,668 +torch/distributed/_sharding_spec/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_state_dict_utils.py,sha256=h0QDI-3qLLAAw6FSSt2JaDuMal4vCoDdiF8yq7_h2C0,27210 +torch/distributed/_symmetric_memory/__init__.py,sha256=xh_5ihJN1lL9v8WOa4Hbk9r--BQH6wejAISmFzK7xbE,54380 +torch/distributed/_symmetric_memory/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_tensor/__init__.py,sha256=PCiBRWY_m2Tlkd30wIkxTxazZ8J9Xz1EZOv5mywtlJg,1012 +torch/distributed/_tensor/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_tensor/__pycache__/api.cpython-312.pyc,, +torch/distributed/_tensor/__pycache__/placement_types.cpython-312.pyc,, +torch/distributed/_tensor/api.py,sha256=66VAvT_Nt3qGd1RfjGp8GAaJ0GbE2tfNO2deCCygDIQ,309 +torch/distributed/_tensor/placement_types.py,sha256=7neBt_m_QwfieD-08DUeKq9y1z-UAhswe2NSznxdw2c,394 +torch/distributed/_tools/__init__.py,sha256=Dsgy-WmACc3x2RvRhcnu-RMJKwmGHk8tpAt2N40fSkU,339 +torch/distributed/_tools/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/_tools/__pycache__/fsdp2_mem_tracker.cpython-312.pyc,, +torch/distributed/_tools/__pycache__/ilp_utils.cpython-312.pyc,, +torch/distributed/_tools/__pycache__/mem_tracker.cpython-312.pyc,, +torch/distributed/_tools/__pycache__/memory_tracker.cpython-312.pyc,, +torch/distributed/_tools/__pycache__/mod_tracker.cpython-312.pyc,, +torch/distributed/_tools/__pycache__/runtime_estimator.cpython-312.pyc,, +torch/distributed/_tools/__pycache__/sac_estimator.cpython-312.pyc,, +torch/distributed/_tools/__pycache__/sac_ilp.cpython-312.pyc,, +torch/distributed/_tools/fsdp2_mem_tracker.py,sha256=B3pdiiI2KiFavYIVbYOQXSmfufRsaQHeULwvBcl-GL0,26615 +torch/distributed/_tools/ilp_utils.py,sha256=AMCUi-py9zHbq2QOdzaX_PdM99wFUB0d9Va1d-40sdY,10381 +torch/distributed/_tools/mem_tracker.py,sha256=9IaEq60S4IBMR0mLtexnDCk76s79k0vgJzDXCYfWDcw,43053 +torch/distributed/_tools/memory_tracker.py,sha256=eFSwjBuAz9JNrk_q-Ik5OgWe3GxA6weBF4ioRrRToS0,11787 +torch/distributed/_tools/mod_tracker.py,sha256=qPxc57VqQ9rhsYX2GNNjCYjtcj-C-Cb8lTQf-FROlyQ,9780 +torch/distributed/_tools/runtime_estimator.py,sha256=vf4iI8tnff4B-6jYeYw7xbpiO2DdZlLkKHdEREWWh5k,21695 +torch/distributed/_tools/sac_estimator.py,sha256=86C7xljoC1EdGPdr9GgieQySL_2_rCkwQGv7v0Etm-c,44557 +torch/distributed/_tools/sac_ilp.py,sha256=4nkD504aj6qSONNtGhXoHD6DK1y92jhqjcIZ_a1jLVw,11635 +torch/distributed/algorithms/__init__.py,sha256=Pc8JMBAT_SDP0rhlhN4ziK8VIAsxKju29iZsKZwUH9A,44 +torch/distributed/algorithms/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/algorithms/__pycache__/join.cpython-312.pyc,, +torch/distributed/algorithms/_checkpoint/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/distributed/algorithms/_checkpoint/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/algorithms/_checkpoint/__pycache__/checkpoint_wrapper.cpython-312.pyc,, +torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py,sha256=2E9Gp5Kox_5V7cMNXpF_0TanP2YhJUlEXL-g11dEloU,12608 +torch/distributed/algorithms/_comm_hooks/__init__.py,sha256=EzLHTA765VfQrU0Bb7qJNZlXoJ7tMh44_VWY4QpS5pQ,138 +torch/distributed/algorithms/_comm_hooks/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/algorithms/_comm_hooks/__pycache__/default_hooks.cpython-312.pyc,, +torch/distributed/algorithms/_comm_hooks/default_hooks.py,sha256=wEX_wE24RvTc5Ad8hiECxl4BdoOlcbCA0m9stue-m1U,7845 +torch/distributed/algorithms/_optimizer_overlap/__init__.py,sha256=gfhXcWlZiV9qc3HF3rE0iAqb3i7O7IFvQzpKbnMnddQ,53 +torch/distributed/algorithms/_optimizer_overlap/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/algorithms/_optimizer_overlap/__pycache__/optimizer_overlap.cpython-312.pyc,, +torch/distributed/algorithms/_optimizer_overlap/optimizer_overlap.py,sha256=ofE4CESBmeM-FVpBWvdP3Ksu0Ij0-RL-pT67PR2I9dI,3880 +torch/distributed/algorithms/_quantization/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/distributed/algorithms/_quantization/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/algorithms/_quantization/__pycache__/quantization.cpython-312.pyc,, +torch/distributed/algorithms/_quantization/quantization.py,sha256=T03DHrPPcM8BaHTOHHBmTAae29SYV0gwmTfrvMnRGCA,5760 +torch/distributed/algorithms/ddp_comm_hooks/__init__.py,sha256=K_YD3IGlXqXEWNo7FhpuBj6Njr7hqUCkrcDvQQjLXSo,3707 +torch/distributed/algorithms/ddp_comm_hooks/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/algorithms/ddp_comm_hooks/__pycache__/ddp_zero_hook.cpython-312.pyc,, +torch/distributed/algorithms/ddp_comm_hooks/__pycache__/debugging_hooks.cpython-312.pyc,, +torch/distributed/algorithms/ddp_comm_hooks/__pycache__/default_hooks.cpython-312.pyc,, +torch/distributed/algorithms/ddp_comm_hooks/__pycache__/mixed_precision_hooks.cpython-312.pyc,, +torch/distributed/algorithms/ddp_comm_hooks/__pycache__/optimizer_overlap_hooks.cpython-312.pyc,, +torch/distributed/algorithms/ddp_comm_hooks/__pycache__/post_localSGD_hook.cpython-312.pyc,, +torch/distributed/algorithms/ddp_comm_hooks/__pycache__/powerSGD_hook.cpython-312.pyc,, +torch/distributed/algorithms/ddp_comm_hooks/__pycache__/quantization_hooks.cpython-312.pyc,, +torch/distributed/algorithms/ddp_comm_hooks/ddp_zero_hook.py,sha256=uEjAt-vWIngRJurm68w9oNwY1Bz4Zc60fgMyI3SU_jY,20187 +torch/distributed/algorithms/ddp_comm_hooks/debugging_hooks.py,sha256=QQCaAKHjMyAvy9aAL5H66XR5sWbYAB5RaiYa_q_Aw20,1144 +torch/distributed/algorithms/ddp_comm_hooks/default_hooks.py,sha256=27dOvhcJdkJZHYE81LKqk9nL_kAdxMP9bODFybT_vsk,7987 +torch/distributed/algorithms/ddp_comm_hooks/mixed_precision_hooks.py,sha256=BnbL925nEh2IpSqLgF7TzQe-Bca7Ibf7E09mDTti9Vw,3374 +torch/distributed/algorithms/ddp_comm_hooks/optimizer_overlap_hooks.py,sha256=0rOdKiZrIdeadoNjt105c2f1MgpMweyK5D_DcmG76W0,6327 +torch/distributed/algorithms/ddp_comm_hooks/post_localSGD_hook.py,sha256=tNrXqBtz0ShZDpDsgVLsVEhYdTAgpcc4pEfucfebJVU,5274 +torch/distributed/algorithms/ddp_comm_hooks/powerSGD_hook.py,sha256=lMMWi9jn9DEgapmDeflJitclax6axcdx3AlZ97D7XGc,41299 +torch/distributed/algorithms/ddp_comm_hooks/quantization_hooks.py,sha256=b-CWczlooxNUZFlhDUeF5B9491XKKz6JTunPLjTgr3A,8452 +torch/distributed/algorithms/join.py,sha256=V1QuZU6X4Qh1xWdz4lx8mQcX5MGWR5lvDTltQgixu1U,13755 +torch/distributed/algorithms/model_averaging/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/distributed/algorithms/model_averaging/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/algorithms/model_averaging/__pycache__/averagers.cpython-312.pyc,, +torch/distributed/algorithms/model_averaging/__pycache__/hierarchical_model_averager.cpython-312.pyc,, +torch/distributed/algorithms/model_averaging/__pycache__/utils.cpython-312.pyc,, +torch/distributed/algorithms/model_averaging/averagers.py,sha256=u_ojFBIWj6PWkdIsExcwMS0N4A-ZEeOLjzq1Ccp-ll4,5563 +torch/distributed/algorithms/model_averaging/hierarchical_model_averager.py,sha256=Ebv7DZff4ABLvJNqFHMp8J-qinxY4-wPp2Cwo-McODo,9953 +torch/distributed/algorithms/model_averaging/utils.py,sha256=NYsGiZYAsJduomLgaMv14lU9TSo2MsHSwVWQi7ojamk,3225 +torch/distributed/argparse_util.py,sha256=hsAuTVu0mAjfWycxDQwSMzF64PvTIE2s7cOa2kpOCHY,4007 +torch/distributed/autograd/__init__.py,sha256=GwTijeDd_HN8FuYgHpMIqooT1z3AkuhQMSnqqPm4Ugc,1700 +torch/distributed/autograd/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/c10d_logger.py,sha256=vQxD6TUZ9bxxderkkNnOugIVu4DEk8BkYnpFR1FovYc,3242 +torch/distributed/checkpoint/__init__.py,sha256=TjQeL9H5wXlXd8C7ZZ333vsw7Y_pe3dE1o1__MW5g_s,608 +torch/distributed/checkpoint/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/_checkpointer.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/_dedup_save_plans.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/_dedup_tensors.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/_fsspec_filesystem.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/_nested_dict.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/_sharded_tensor_utils.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/_storage_utils.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/_traverse.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/_version.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/api.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/default_planner.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/filesystem.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/format_utils.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/logger.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/logging_handlers.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/metadata.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/optimizer.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/planner.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/planner_helpers.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/resharding.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/staging.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/state_dict.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/state_dict_loader.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/state_dict_saver.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/stateful.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/storage.cpython-312.pyc,, +torch/distributed/checkpoint/__pycache__/utils.cpython-312.pyc,, +torch/distributed/checkpoint/_checkpointer.py,sha256=UzDNjTZ99EtuL2oIEdCpO5ts_JddlihB5uCPl2ogUBQ,3768 +torch/distributed/checkpoint/_dedup_save_plans.py,sha256=6iKyAicCSYOIVj7kyABw7Vj-YeaCpbJBGDshap9PsjM,2398 +torch/distributed/checkpoint/_dedup_tensors.py,sha256=80NuYAPYr9RJ_LN1n-6ti_Rl3A-GI2I9nMSu8XqXC2M,2065 +torch/distributed/checkpoint/_fsspec_filesystem.py,sha256=blwI5C1ULn5jHB1Q9Ntuax08tQrlgpBqRwL5z-x0V1Y,4925 +torch/distributed/checkpoint/_nested_dict.py,sha256=-RphBx8DnSm5hozbO4mwEDM1VtCjPhE-ovzGwwTBE6k,2374 +torch/distributed/checkpoint/_sharded_tensor_utils.py,sha256=vFi5JrynZ9tqGDO1osMg3ZFRcdY7PPOak-VSz4xmE2Q,4251 +torch/distributed/checkpoint/_storage_utils.py,sha256=OHQL9XL8H5zYSbZxiEaAVg8DwxDnmuig-bvCONhU4Xo,1470 +torch/distributed/checkpoint/_traverse.py,sha256=_vOPN14OXAg1APvnwmt0WcpISXsfNphvmYj9_G67hbY,7115 +torch/distributed/checkpoint/_version.py,sha256=2jSNOCX7Es6XawPrXxduplCACzbtzIgW_lSkURkP8a4,128 +torch/distributed/checkpoint/api.py,sha256=BJkqnlbyC7FAN2ybqz4V8UPgnccEXng7NjSUzecqnT0,1493 +torch/distributed/checkpoint/default_planner.py,sha256=NkzlsqatStov9YQS3i6UkYds3-R4v_wF5PcU82shFWQ,21060 +torch/distributed/checkpoint/filesystem.py,sha256=P5HMECzsoaf80nz8_3TpWa06JVm5kqBoEVJw3-aVjWY,26673 +torch/distributed/checkpoint/format_utils.py,sha256=kcIVPTkyjfi3h_HUwYBPifQh8RuP_cGNCdPE65eQ5Cs,10526 +torch/distributed/checkpoint/logger.py,sha256=0mjEhP0Pq28kp4WOqT1fhyrRuufakB7G1T0BFko-a3E,3319 +torch/distributed/checkpoint/logging_handlers.py,sha256=IaqCSw7IoFN4BrIdTCjlIAs46r8Gh-ZSlHp3dXiNiLY,259 +torch/distributed/checkpoint/metadata.py,sha256=jjIDbQcH7DOfBGUDcg4bhcRbfUDHocgWEWN9b2ig8lo,5711 +torch/distributed/checkpoint/optimizer.py,sha256=YXHPeogFB_2FG9UDDdBvUhTcxoHsEOQhVY8dTXLXzaM,13500 +torch/distributed/checkpoint/planner.py,sha256=W1HcnB-H09d7ktxzmXJsJesavCnjigpIouw5k8U9pJA,15325 +torch/distributed/checkpoint/planner_helpers.py,sha256=5JVbB5l_qZXp6PL-XLLTqiUTqRsB1cXC5MgdKZkToUM,13386 +torch/distributed/checkpoint/resharding.py,sha256=PNrMH9a308zc7sQJ_xgXu_Ry5gQlb3CqrzTRf66qY6s,2398 +torch/distributed/checkpoint/staging.py,sha256=uWfcSLjvepa725dBzcaKUivmRLJspwsYbkNWOrvh_sA,5016 +torch/distributed/checkpoint/state_dict.py,sha256=RZ5HJYx-Oe_JjCbSUvotilugHc1NFDSXzbSo4ICytUY,53892 +torch/distributed/checkpoint/state_dict_loader.py,sha256=ybAP6AWSTB5fSgITBMSJYk_jAQYz0QAjeQqz-2oWZwA,12381 +torch/distributed/checkpoint/state_dict_saver.py,sha256=7ExK3lzads7p5SGfVZ8yHnweT-WBuCJjdEaiAvInm7U,13068 +torch/distributed/checkpoint/stateful.py,sha256=cMxjbcpObFEp9CGmHq3Mb_fuHVEymJOAL9k9ujYCqd0,1109 +torch/distributed/checkpoint/storage.py,sha256=50hhu1dPj7ZGBmMNFBw1PaMy1gQ63rfBPAO3aPXCvxM,10015 +torch/distributed/checkpoint/utils.py,sha256=ee6zQkJiE85Xw9ThFIJvegFbJKE228O2ktD2jYbsGLQ,14882 +torch/distributed/collective_utils.py,sha256=8D2UDXM6BNjbNkF9dpl7wm4mNXTeSr1q7HMx3rPnK8A,7503 +torch/distributed/constants.py,sha256=Pjs43yROh30CejBTYtVgWqkZn-MzHw31KGcLcpJ2fLc,1255 +torch/distributed/device_mesh.py,sha256=bDQuDbctAJTG8ZgzTUQS9k0ByUkaygVAEQP04N5qk4Q,48878 +torch/distributed/distributed_c10d.py,sha256=5fQ21ASEiubSezHavHMHVY-zYEqJjX7unb5z_027_qQ,215396 +torch/distributed/elastic/__init__.py,sha256=I6xvpW3XNSMV50kNmYbKxwaz1Ihf-QwjazmhwXW1ANA,3731 +torch/distributed/elastic/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/elastic/__pycache__/control_plane.cpython-312.pyc,, +torch/distributed/elastic/agent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/distributed/elastic/agent/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/elastic/agent/server/__init__.py,sha256=UuEcXkRQTe9-_iwHlKktGEyx8btsOrld-ZHngbhYLB4,1442 +torch/distributed/elastic/agent/server/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/elastic/agent/server/__pycache__/api.cpython-312.pyc,, +torch/distributed/elastic/agent/server/__pycache__/health_check_server.cpython-312.pyc,, +torch/distributed/elastic/agent/server/__pycache__/local_elastic_agent.cpython-312.pyc,, +torch/distributed/elastic/agent/server/api.py,sha256=WbuVRRWqFlbEHKxzhHLzwGs1qWMqcX1aq_66dEMNjL8,37921 +torch/distributed/elastic/agent/server/health_check_server.py,sha256=OuAC2PiBuSyBxRfreLqU30u-aDAVuSWotTR1lihhTFc,1744 +torch/distributed/elastic/agent/server/local_elastic_agent.py,sha256=t8zB_IgbMoZPgcU8LI8_Otb_eGtwNs_sapz-xOQ4pHU,17171 +torch/distributed/elastic/control_plane.py,sha256=SG9hxflm8oRh6mgwAns1EVFfyQBrviqgFqfBdr0TV1c,1220 +torch/distributed/elastic/events/__init__.py,sha256=LY37vO-tP5AIksvPs8OR3dWgllIrz3IAnACMC7WWv6s,5541 +torch/distributed/elastic/events/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/elastic/events/__pycache__/api.cpython-312.pyc,, +torch/distributed/elastic/events/__pycache__/handlers.cpython-312.pyc,, +torch/distributed/elastic/events/api.py,sha256=L4QsZcP_VopTxM683jPJE-YuxPlaadw0XzT141U0GIw,3367 +torch/distributed/elastic/events/handlers.py,sha256=dBnfEmxmVNQyXiqZ1hJQjr-FTc4LyaJBHHcouuri4s8,602 +torch/distributed/elastic/metrics/__init__.py,sha256=Bqb3tbw4dYMFJkoTgOCgQQfqBJytV4Z-w8lQ2eDS66I,5044 +torch/distributed/elastic/metrics/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/elastic/metrics/__pycache__/api.cpython-312.pyc,, +torch/distributed/elastic/metrics/api.py,sha256=L7rSAHRA5x8R4fNnDb98lDs2ESq-8IZ6h2xZvQNtOHU,5897 +torch/distributed/elastic/multiprocessing/__init__.py,sha256=jxy5Hq6hbNW3XcUhr-weoaeag-r7We2R9QZO57fKaYQ,7650 +torch/distributed/elastic/multiprocessing/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/elastic/multiprocessing/__pycache__/api.cpython-312.pyc,, +torch/distributed/elastic/multiprocessing/__pycache__/redirects.cpython-312.pyc,, +torch/distributed/elastic/multiprocessing/__pycache__/tail_log.cpython-312.pyc,, +torch/distributed/elastic/multiprocessing/api.py,sha256=pupzqlvbxMtORziFEgdoVYuwYGyGuQVlc5leMXioO9c,34676 +torch/distributed/elastic/multiprocessing/errors/__init__.py,sha256=6gtw0H4v5SaA49EuTk1Cw4OSXXOKgU15LBtswNHUDGI,14735 +torch/distributed/elastic/multiprocessing/errors/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/elastic/multiprocessing/errors/__pycache__/error_handler.cpython-312.pyc,, +torch/distributed/elastic/multiprocessing/errors/__pycache__/handlers.cpython-312.pyc,, +torch/distributed/elastic/multiprocessing/errors/error_handler.py,sha256=bH-f3_fJ-RN5Q2PgP9jgkmIR8hw5PFUqNj63QSR4WdQ,6775 +torch/distributed/elastic/multiprocessing/errors/handlers.py,sha256=TTNoSJ6JFkHUruB0lNM9MdLmA7Kse33DV-IjWfmrK8s,494 +torch/distributed/elastic/multiprocessing/redirects.py,sha256=M6kca0OhxlblpEvq8FSsZfZ6KuqxbM_VrlV65GRrLhA,2868 +torch/distributed/elastic/multiprocessing/subprocess_handler/__init__.py,sha256=ch8Cj7Mamh9UeiXgVwvn-DfiZA7pSZpz42BqNOjBde4,539 +torch/distributed/elastic/multiprocessing/subprocess_handler/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/elastic/multiprocessing/subprocess_handler/__pycache__/handlers.cpython-312.pyc,, +torch/distributed/elastic/multiprocessing/subprocess_handler/__pycache__/subprocess_handler.cpython-312.pyc,, +torch/distributed/elastic/multiprocessing/subprocess_handler/handlers.py,sha256=EgmEANFdPfmYUhk_U3SjDeg3FCArIOZ_oehFvTfgHx8,821 +torch/distributed/elastic/multiprocessing/subprocess_handler/subprocess_handler.py,sha256=HKPAKjhUzQG6KOElXz9juRJ3EU3unfG1qEPf829bsWU,2527 +torch/distributed/elastic/multiprocessing/tail_log.py,sha256=Z4wWUTLTzD2L6CnLDovWw5Jc6jmZOkhIEW1eRdKkmBc,5117 +torch/distributed/elastic/rendezvous/__init__.py,sha256=dfi3ctNftIl_n8VRib_CcWosBCR-2ozy_KfzVKhUlXY,6474 +torch/distributed/elastic/rendezvous/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/elastic/rendezvous/__pycache__/api.cpython-312.pyc,, +torch/distributed/elastic/rendezvous/__pycache__/c10d_rendezvous_backend.cpython-312.pyc,, +torch/distributed/elastic/rendezvous/__pycache__/dynamic_rendezvous.cpython-312.pyc,, +torch/distributed/elastic/rendezvous/__pycache__/etcd_rendezvous.cpython-312.pyc,, +torch/distributed/elastic/rendezvous/__pycache__/etcd_rendezvous_backend.cpython-312.pyc,, +torch/distributed/elastic/rendezvous/__pycache__/etcd_server.cpython-312.pyc,, +torch/distributed/elastic/rendezvous/__pycache__/etcd_store.cpython-312.pyc,, +torch/distributed/elastic/rendezvous/__pycache__/registry.cpython-312.pyc,, +torch/distributed/elastic/rendezvous/__pycache__/static_tcp_rendezvous.cpython-312.pyc,, +torch/distributed/elastic/rendezvous/__pycache__/utils.cpython-312.pyc,, +torch/distributed/elastic/rendezvous/api.py,sha256=nvh86NvxOsQl8CU1ZJrdTCF93LDGrFbneNqLr8i_bnM,13388 +torch/distributed/elastic/rendezvous/c10d_rendezvous_backend.py,sha256=tyb5ohZiRHqGMKYxrv6tYsNik8B0QRc4E24i2t7AVhU,11180 +torch/distributed/elastic/rendezvous/dynamic_rendezvous.py,sha256=imxVBqE8gdQVi3L_x6odWp80FM7rEuASMrlZx75mNk4,49531 +torch/distributed/elastic/rendezvous/etcd_rendezvous.py,sha256=l5I1FZ9u2l64nbgtfmdxfaobSpXwr_YnxPJ_fiB22-s,44532 +torch/distributed/elastic/rendezvous/etcd_rendezvous_backend.py,sha256=3hVdtUNI6xuSGo_y4KtkOm8rOw9hDPeCDLRa_cqvtlk,7654 +torch/distributed/elastic/rendezvous/etcd_server.py,sha256=xApL8vRQkGk0w2xewCIcHFn95ZNReQVHMMDm8xAOQBI,8685 +torch/distributed/elastic/rendezvous/etcd_store.py,sha256=b0wlfpWNDfkSdc9Th1dRIWNb85uIV5G78wg7c40L1cM,7392 +torch/distributed/elastic/rendezvous/registry.py,sha256=Sa0jJ8BFsDjjCTxngSNF7YlTuRA9IjISHBgLNVDotrI,3097 +torch/distributed/elastic/rendezvous/static_tcp_rendezvous.py,sha256=ThxJvPoZaCdTHlg_eQGiVteLNPKdEl6N-hxTHQxIUxY,3793 +torch/distributed/elastic/rendezvous/utils.py,sha256=C5ye2asfRARzvJHJUCvdWgqMiIjv-dZ41oW0wUdGcxw,8687 +torch/distributed/elastic/timer/__init__.py,sha256=vh5LGpZfIfvcRSca6cMhWT6m30YPW7YxIR8s7fWpF2w,1804 +torch/distributed/elastic/timer/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/elastic/timer/__pycache__/api.cpython-312.pyc,, +torch/distributed/elastic/timer/__pycache__/debug_info_logging.cpython-312.pyc,, +torch/distributed/elastic/timer/__pycache__/file_based_local_timer.cpython-312.pyc,, +torch/distributed/elastic/timer/__pycache__/local_timer.cpython-312.pyc,, +torch/distributed/elastic/timer/api.py,sha256=EdyOjMOsMnyCaxzxceWTQNmlMk_jmuiTVdtrGt542M0,9895 +torch/distributed/elastic/timer/debug_info_logging.py,sha256=bt19yvfJ9oXKp3F6jDSZoOJaBu17LuDQVd4FZdtvMJQ,665 +torch/distributed/elastic/timer/file_based_local_timer.py,sha256=gDkAY_prqZrVGfnSPAdg8BXbrz-Prhl3sRzHBhxPzYo,15477 +torch/distributed/elastic/timer/local_timer.py,sha256=hPHgbrO6qRQ7TbB9FtNpBjVN7hBAs7VGTUzIMaRpvb4,4437 +torch/distributed/elastic/utils/__init__.py,sha256=tUTWXyJ9Fd67kIGlH9Lv_G0qNPSv2GjzOIts1uZop50,327 +torch/distributed/elastic/utils/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/elastic/utils/__pycache__/api.cpython-312.pyc,, +torch/distributed/elastic/utils/__pycache__/distributed.cpython-312.pyc,, +torch/distributed/elastic/utils/__pycache__/log_level.cpython-312.pyc,, +torch/distributed/elastic/utils/__pycache__/logging.cpython-312.pyc,, +torch/distributed/elastic/utils/__pycache__/store.cpython-312.pyc,, +torch/distributed/elastic/utils/api.py,sha256=PrNOFAAC9e2pp5COsmjovfPzOjcwn5XPSNz4I9F4Jj8,1773 +torch/distributed/elastic/utils/data/__init__.py,sha256=SAnEMDWeN7az6Keywbq5hzReYUH2CtnatIkMOuiB0Wc,382 +torch/distributed/elastic/utils/data/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/elastic/utils/data/__pycache__/cycling_iterator.cpython-312.pyc,, +torch/distributed/elastic/utils/data/__pycache__/elastic_distributed_sampler.cpython-312.pyc,, +torch/distributed/elastic/utils/data/cycling_iterator.py,sha256=xpw1H59kv_00zZQLUbQzqU8SGzq2UUSP0Whwh8t5IQs,1447 +torch/distributed/elastic/utils/data/elastic_distributed_sampler.py,sha256=ckhe7_YoratxslorvYVfnnLmF9lsnpx9XHTKk-Bf-cM,2554 +torch/distributed/elastic/utils/distributed.py,sha256=CoA8X6SOec2Wizx_42-y2yvFg0pfXTn2eQQxM9fdSFQ,6105 +torch/distributed/elastic/utils/log_level.py,sha256=XU53rCS6i_d1O-_Iz4TRBE-Iup_Qe1hvgBHGzzFdXt4,353 +torch/distributed/elastic/utils/logging.py,sha256=Kje64eetEoFbJI7eDGD_RADHggPyVeepyMQxnWBr7i4,2332 +torch/distributed/elastic/utils/store.py,sha256=iw3sg1G2Z3vX_bxfrN2DFeTf2_WTkBUCRX2zNbBcn4w,7478 +torch/distributed/fsdp/__init__.py,sha256=cz340oLncBv822k_hmxn6eXp3yBX8yM9j-KhqL8oyA0,1806 +torch/distributed/fsdp/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_common_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_debug_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_dynamo_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_exec_order_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_flat_param.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_fsdp_extensions.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_init_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_limiter_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_optim_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_runtime_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_shard_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_state_dict_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_trace_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_traversal_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_unshard_param_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/_wrap_utils.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/api.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/fully_sharded_data_parallel.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/sharded_grad_scaler.cpython-312.pyc,, +torch/distributed/fsdp/__pycache__/wrap.cpython-312.pyc,, +torch/distributed/fsdp/_common_utils.py,sha256=V9YVWZUgCf5GsPtsxYeBKlpEJw60BhnnOfoJdWrqLiQ,23020 +torch/distributed/fsdp/_debug_utils.py,sha256=f56oJb8s7D9A2wjDEneyeuhYpLF9RGXD3vytQT9E3mw,5863 +torch/distributed/fsdp/_dynamo_utils.py,sha256=j5M0ou7USKJPEUaElcrP3gvaOh7Vj2yxRF-KYVLPG1w,2720 +torch/distributed/fsdp/_exec_order_utils.py,sha256=HEW8V0zsoqsfkZ2x1I5h7GaTYVGQpNpNWFjvUhZjFvw,16487 +torch/distributed/fsdp/_flat_param.py,sha256=cljx-3SaXmQryM5N9LK2zFN2WobhwbNQT4HZkSDkU40,126405 +torch/distributed/fsdp/_fsdp_extensions.py,sha256=xKLI8TkMr_txDchQd6IxoJGgq79TK7041Rg4MmvpKZg,5148 +torch/distributed/fsdp/_fully_shard/__init__.py,sha256=_yoX0FoVuiHi1epOHbpyDddq9vA-zAuNsaiuXOw79vc,394 +torch/distributed/fsdp/_fully_shard/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/fsdp/_fully_shard/__pycache__/_fsdp_api.cpython-312.pyc,, +torch/distributed/fsdp/_fully_shard/__pycache__/_fsdp_collectives.cpython-312.pyc,, +torch/distributed/fsdp/_fully_shard/__pycache__/_fsdp_common.cpython-312.pyc,, +torch/distributed/fsdp/_fully_shard/__pycache__/_fsdp_init.cpython-312.pyc,, +torch/distributed/fsdp/_fully_shard/__pycache__/_fsdp_param.cpython-312.pyc,, +torch/distributed/fsdp/_fully_shard/__pycache__/_fsdp_param_group.cpython-312.pyc,, +torch/distributed/fsdp/_fully_shard/__pycache__/_fsdp_state.cpython-312.pyc,, +torch/distributed/fsdp/_fully_shard/__pycache__/_fully_shard.cpython-312.pyc,, +torch/distributed/fsdp/_fully_shard/_fsdp_api.py,sha256=oIpnxPY-hb20oxw3PWJ278ly6vtqHhOxEHmHIq82Ujc,3814 +torch/distributed/fsdp/_fully_shard/_fsdp_collectives.py,sha256=rlBcM3CCQN1zSJo4r3rsM47jE8QeOvEzcgYFfxo2P28,23055 +torch/distributed/fsdp/_fully_shard/_fsdp_common.py,sha256=GVeeYDkw8MkFFdDYIgdbbR4HBucuUMjraBWWuNSjeiQ,5925 +torch/distributed/fsdp/_fully_shard/_fsdp_init.py,sha256=za9f679JIqzMkF5ezE6CsS-55AduW8dmF4G6QYl-PXU,6920 +torch/distributed/fsdp/_fully_shard/_fsdp_param.py,sha256=ZDszUB5UMLD5nVUSo2YrI3ozCVZO1c9bss8FDMCHSxI,42178 +torch/distributed/fsdp/_fully_shard/_fsdp_param_group.py,sha256=A2kVxWUScGPDmtVRAqjCeifb9SlkU8-H12G0hNWaBtQ,33787 +torch/distributed/fsdp/_fully_shard/_fsdp_state.py,sha256=9XrRHINC08BzF---dUu5CQTqmb6klSjtQ9jNd9Nh6BU,17508 +torch/distributed/fsdp/_fully_shard/_fully_shard.py,sha256=5HPqCzsYIrdfLfXJvX8HD6vZwCPA2C82b0uTb87BPL4,23759 +torch/distributed/fsdp/_init_utils.py,sha256=I7nXVgq_x5NQjXBKu1aH0C2zuKV_-x5P34ti4H5h2p8,47474 +torch/distributed/fsdp/_limiter_utils.py,sha256=yaCjqz41GglIFa7U8OPQc6fB9GoMXxDQ4d4m0sKBfTU,1114 +torch/distributed/fsdp/_optim_utils.py,sha256=T33rXSPSmFsZt0kjcxRZH85AeGEZYfopjFUc7sELDVo,89023 +torch/distributed/fsdp/_runtime_utils.py,sha256=GquIXOkhirhD8pLWMsVW-6toIZ6U5r6tbjayXCHc-d4,67835 +torch/distributed/fsdp/_shard_utils.py,sha256=ds7DNeHxTowaVEwlUtxuHzd5OB7r2RI1Ch7tn993Xps,4760 +torch/distributed/fsdp/_state_dict_utils.py,sha256=ytZKKPjHgr-0aMF4CWkPmFXlNjV0hbWD73pwn4gkJ6M,35295 +torch/distributed/fsdp/_trace_utils.py,sha256=gPR9tXjbskWTeDfxBV7Ymx6Hd7DQH7wDq5MZLIdtWL8,11014 +torch/distributed/fsdp/_traversal_utils.py,sha256=rUSKgH3Ut-h90e7Eh0I_bQvbHoK9JA8GQtAH6KpgcMk,4754 +torch/distributed/fsdp/_unshard_param_utils.py,sha256=5FBwx7sHMj6KuDAOwilijjptpY9wav2pwLRIFxnP4f8,11833 +torch/distributed/fsdp/_wrap_utils.py,sha256=pYhppaxi_AQB0UnyVT4XsIBfAYTRV3_7pQlr0H4kEeA,11187 +torch/distributed/fsdp/api.py,sha256=thX2X4hCFnEiddoWth4pQwzj0BpaaQD1NcZ3JmlgOvQ,19290 +torch/distributed/fsdp/fully_sharded_data_parallel.py,sha256=nVu32nNY3oR2SW-KOw8Gpq0H1aIDSvXosOwRoKl5oW8,102484 +torch/distributed/fsdp/sharded_grad_scaler.py,sha256=BPf8vt9_cKqUAGgo0oa-zKsog2bSytJ78gbVNOVWUsQ,16508 +torch/distributed/fsdp/wrap.py,sha256=Z84EyVY3lsgGtAZYTltyNq1gl9eZC1TKrVr9kqWNd_Q,23251 +torch/distributed/launch.py,sha256=fCd9Kh0jTRWZNdWIrxhktKUb2HyHRFbzwT6lqz0hgkQ,7818 +torch/distributed/launcher/__init__.py,sha256=C63mqEEdfXL6c0fKxb8XMOAA5DQm28pvC-Y6EtiFKnY,363 +torch/distributed/launcher/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/launcher/__pycache__/api.cpython-312.pyc,, +torch/distributed/launcher/api.py,sha256=U8K0T4kcWq0YcBMw3o04uXWh2Dj7lwLhokAidfRMLQE,11272 +torch/distributed/logging_handlers.py,sha256=ZO39h4e0bTiAisboYDz1QtiT3UgmLJ1HptEgNaQg07Q,406 +torch/distributed/nn/__init__.py,sha256=rT2varq7EORrQ1fq7hl6VAaULUlo9wcFS3AvGw-tt2g,152 +torch/distributed/nn/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/nn/__pycache__/functional.cpython-312.pyc,, +torch/distributed/nn/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/distributed/nn/api/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/nn/api/__pycache__/remote_module.cpython-312.pyc,, +torch/distributed/nn/api/remote_module.py,sha256=S2KZTUNQy1_esUajsGt9zRCpWUSoc1hMX0tf4rLepu0,32058 +torch/distributed/nn/functional.py,sha256=7C1JXMoCqhhfP559rp_6FmaGY-iT9928QpciOETxKLw,15630 +torch/distributed/nn/jit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/distributed/nn/jit/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/nn/jit/__pycache__/instantiator.cpython-312.pyc,, +torch/distributed/nn/jit/instantiator.py,sha256=F1Dg4us5NczJefsW_i6Tc_uhkt4rp7ftViIumK3Qp24,5613 +torch/distributed/nn/jit/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/distributed/nn/jit/templates/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/nn/jit/templates/__pycache__/remote_module_template.cpython-312.pyc,, +torch/distributed/nn/jit/templates/remote_module_template.py,sha256=Kdt3GxUr-0oy4S4x9D43MPn6MmBSMvvR_hJqB2IkPZg,3571 +torch/distributed/optim/__init__.py,sha256=doVthi5wyPVL_cONuyDB-RJnfJjQqXf-_CZzQIuACus,1482 +torch/distributed/optim/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/optim/__pycache__/_deprecation_warning.cpython-312.pyc,, +torch/distributed/optim/__pycache__/apply_optimizer_in_backward.cpython-312.pyc,, +torch/distributed/optim/__pycache__/functional_adadelta.cpython-312.pyc,, +torch/distributed/optim/__pycache__/functional_adagrad.cpython-312.pyc,, +torch/distributed/optim/__pycache__/functional_adam.cpython-312.pyc,, +torch/distributed/optim/__pycache__/functional_adamax.cpython-312.pyc,, +torch/distributed/optim/__pycache__/functional_adamw.cpython-312.pyc,, +torch/distributed/optim/__pycache__/functional_rmsprop.cpython-312.pyc,, +torch/distributed/optim/__pycache__/functional_rprop.cpython-312.pyc,, +torch/distributed/optim/__pycache__/functional_sgd.cpython-312.pyc,, +torch/distributed/optim/__pycache__/named_optimizer.cpython-312.pyc,, +torch/distributed/optim/__pycache__/optimizer.cpython-312.pyc,, +torch/distributed/optim/__pycache__/post_localSGD_optimizer.cpython-312.pyc,, +torch/distributed/optim/__pycache__/utils.cpython-312.pyc,, +torch/distributed/optim/__pycache__/zero_redundancy_optimizer.cpython-312.pyc,, +torch/distributed/optim/_deprecation_warning.py,sha256=fBIq67Fwa8ctxVsAPCiPF_S52-6oK5zB5fldvXykTOI,563 +torch/distributed/optim/apply_optimizer_in_backward.py,sha256=A2T8EgniwelWc241t8fo_UVi4d0Ssl_Dee8ZyeNFuX8,5322 +torch/distributed/optim/functional_adadelta.py,sha256=vnYXM6qIQP74g8n5fsz0MvaAbAlmVAk3O9ag5ISiawg,4077 +torch/distributed/optim/functional_adagrad.py,sha256=jV6ExcHlUu1Poym6JaJrgL_8VpSxjbhGVyvgKfI7ek0,4431 +torch/distributed/optim/functional_adam.py,sha256=dwzAb0hdXBHzPdC2ToD1LyiTWU3AswizIy9o65ibm7c,7646 +torch/distributed/optim/functional_adamax.py,sha256=mfpu3DuUac7L-WnfKRE-K3LxUIHT8RH4rMkTW9McnqU,4793 +torch/distributed/optim/functional_adamw.py,sha256=sCwx-SUlx908RbaRuYJvQZadlef2UKbUURB-NryqFWg,7767 +torch/distributed/optim/functional_rmsprop.py,sha256=S_TVOmfmBRBkmG5DuEA875AVMOl1pplY3gJbeS7G1V4,4826 +torch/distributed/optim/functional_rprop.py,sha256=5Ne3srWb4fb7cd2Y360jSFOMUVwT_ImRL05WylzvfZY,3964 +torch/distributed/optim/functional_sgd.py,sha256=OGTnB7C7iuWWutf6L5cyb_-QHU-5f075VaLRNEoav1s,6116 +torch/distributed/optim/named_optimizer.py,sha256=WYqdq8lR9Ye00KAFxNhxwRbxvifc3XVWf8wK3X8Br54,14323 +torch/distributed/optim/optimizer.py,sha256=WbeKshG8mmcoZBgIbHsr0UTQr_L6wegDAc9_vkIwijE,10066 +torch/distributed/optim/post_localSGD_optimizer.py,sha256=pcIC3SMJ6VmY0CdPRanhM2KIteBa4h-7Er_e33TlkzQ,4550 +torch/distributed/optim/utils.py,sha256=UU8k5AujBx-9i43lXCkAmSqtUIUp8dp0Ajrz5Hv27Rk,2332 +torch/distributed/optim/zero_redundancy_optimizer.py,sha256=A3873ZIgNlEjdqJUI8zGeTHxrfE_MdwA7lmevoZCps0,73545 +torch/distributed/optim/zero_redundancy_optimizer.pyi,sha256=5ab6dD7JuG2qDdXjCtU61iTflOvi6LeHja6DIfnXWaY,2905 +torch/distributed/pipelining/_IR.py,sha256=MopGMfxkIAW9YniGUUiG9tu1_4_B9GsUMb1gfiUW3pQ,50184 +torch/distributed/pipelining/__init__.py,sha256=VKWp2ptehCalmwioR733ODYJpIpekzy_qC5XaiKFlrY,669 +torch/distributed/pipelining/__pycache__/_IR.cpython-312.pyc,, +torch/distributed/pipelining/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/pipelining/__pycache__/_backward.cpython-312.pyc,, +torch/distributed/pipelining/__pycache__/_debug.cpython-312.pyc,, +torch/distributed/pipelining/__pycache__/_unflatten.cpython-312.pyc,, +torch/distributed/pipelining/__pycache__/_utils.cpython-312.pyc,, +torch/distributed/pipelining/__pycache__/microbatch.cpython-312.pyc,, +torch/distributed/pipelining/__pycache__/schedules.cpython-312.pyc,, +torch/distributed/pipelining/__pycache__/stage.cpython-312.pyc,, +torch/distributed/pipelining/_backward.py,sha256=ptJfGpKgbEtoqv4lLiEDnH_SYB0l58NRCPiISM4GOLU,16074 +torch/distributed/pipelining/_debug.py,sha256=v2TbuLBub3dVvzQ6oHOWtB4dcCd3zIu0p_mpcwq0l0s,578 +torch/distributed/pipelining/_unflatten.py,sha256=_G9q30F3eHew7-woAgfVglJaImdboPNh2UZrs1AlFg8,1016 +torch/distributed/pipelining/_utils.py,sha256=CJVdSrCVymMjCgueVhJPQi0tOwFQjCPmcJ5DtUuzI4U,2710 +torch/distributed/pipelining/microbatch.py,sha256=Pz0J_gqWqTyL1xRjOwAq6mw281jIUK13b9j6h5TYbiI,16673 +torch/distributed/pipelining/schedules.py,sha256=BRC_bxljWaxtWjM7I6vc4E5EhevvFJ4pksteRhf4vLw,107126 +torch/distributed/pipelining/stage.py,sha256=QWqGuKRivJpTZ8qBZFeFHkJ0A9Iz7yBUuJRlPFD7_4E,62378 +torch/distributed/remote_device.py,sha256=Rdo6612_BpP5mLwqiyPPatc8fIgWCKKjf6izbg7Xjfg,4720 +torch/distributed/rendezvous.py,sha256=1XCKX1XVXSFw4yqMnNDSmlXnCXYxtAl7YTnkmttBw-c,10260 +torch/distributed/rpc/__init__.py,sha256=ibIeIT6mTC9aiwmgGlGhoQcrnFlIcpTH3teVPnN_-fU,9957 +torch/distributed/rpc/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/rpc/__pycache__/_utils.cpython-312.pyc,, +torch/distributed/rpc/__pycache__/api.cpython-312.pyc,, +torch/distributed/rpc/__pycache__/backend_registry.cpython-312.pyc,, +torch/distributed/rpc/__pycache__/constants.cpython-312.pyc,, +torch/distributed/rpc/__pycache__/functions.cpython-312.pyc,, +torch/distributed/rpc/__pycache__/internal.cpython-312.pyc,, +torch/distributed/rpc/__pycache__/options.cpython-312.pyc,, +torch/distributed/rpc/__pycache__/rref_proxy.cpython-312.pyc,, +torch/distributed/rpc/__pycache__/server_process_global_profiler.cpython-312.pyc,, +torch/distributed/rpc/_testing/__init__.py,sha256=xKw92jp7vItiAWGmkWoKFy8tmnHqoW_TpOFMpP_JSMQ,519 +torch/distributed/rpc/_testing/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/rpc/_testing/__pycache__/faulty_agent_backend_registry.cpython-312.pyc,, +torch/distributed/rpc/_testing/faulty_agent_backend_registry.py,sha256=m6TJSTXVA063XVAYeDQ9ZRvWHaDmGeXXzyRIlhv_p1E,1701 +torch/distributed/rpc/_utils.py,sha256=9M3JFkMFY-MSWGKgeQFaiVPrFMJY-V2oD7wcMNjQQuA,1692 +torch/distributed/rpc/api.py,sha256=FmQDxjJNKWxfnMCq_ffXoL9LtjEaUT8fN2C0nFiHTDQ,37942 +torch/distributed/rpc/backend_registry.py,sha256=Tq7boO1Gfvt5Cmr4EfRA9z1WDAuNUx6NHia4lSIqgf4,16743 +torch/distributed/rpc/constants.py,sha256=yZ3xYP077A03pwAMfv_4trt45AgI2cLGipsnvM4rHYA,853 +torch/distributed/rpc/functions.py,sha256=jXJmab8tseRiT-x2DbdMqyGcujL5aFAgGTTWzHnP2l4,7441 +torch/distributed/rpc/internal.py,sha256=nIMGSSq4H7lrbthg2h2Dg2q_h_PmfGqKo5BYxKKSm_k,11397 +torch/distributed/rpc/options.py,sha256=lAWGoUSzS_c2cb_eCl7RxIhX95FpLak2BaImKR8m7qo,7248 +torch/distributed/rpc/rref_proxy.py,sha256=k7LMkvNtzZ-jo-dgKpb336Hy10nJjzvG6bp_vfDXy1A,2753 +torch/distributed/rpc/server_process_global_profiler.py,sha256=M4zs4M1yNW-3cgHhw7pCoKI2PxBv8bP0e-0D0ORwuj4,8580 +torch/distributed/run.py,sha256=GnZHII0WL0qVi5dscxQb4dVTAZNCptvORr6xQRDGhLk,35222 +torch/distributed/tensor/__init__.py,sha256=wcRUiVWPwueSzxQFCJITl0tTF4nISqFWjWmUvar0fgI,2226 +torch/distributed/tensor/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/_api.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/_collective_utils.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/_dispatch.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/_dtensor_spec.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/_op_schema.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/_random.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/_redistribute.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/_sharding_prop.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/_shards_wrapper.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/_tp_conv.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/_utils.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/device_mesh.cpython-312.pyc,, +torch/distributed/tensor/__pycache__/placement_types.cpython-312.pyc,, +torch/distributed/tensor/_api.py,sha256=UHgnKUW7p0FCHSKsF5rvwtWH7eGbHYOp82_aGU3AvNo,56557 +torch/distributed/tensor/_collective_utils.py,sha256=vN-y_691-_B2qZapARbEBaZFXMk7zeN8DV4cuA7oZfo,13892 +torch/distributed/tensor/_dispatch.py,sha256=t0PqSJfVyuF58zZHD2k57Iz29pfaqMn8fK35fMxRhsw,22125 +torch/distributed/tensor/_dtensor_spec.py,sha256=v8AI-i3akkT_R0eUOZ51xIHbDHDLChRId7EJr8zujGk,10577 +torch/distributed/tensor/_op_schema.py,sha256=7Zd2RxaOh_KAzW4bYbe0Pri6Q-TGhW7uLi63DDIEWS0,17614 +torch/distributed/tensor/_ops/__init__.py,sha256=YP300bvaJ8woe5eZVlNwmvoufBGs-vGmZVqMDsLbVrI,437 +torch/distributed/tensor/_ops/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/tensor/_ops/__pycache__/_common_rules.cpython-312.pyc,, +torch/distributed/tensor/_ops/__pycache__/_conv_ops.cpython-312.pyc,, +torch/distributed/tensor/_ops/__pycache__/_einsum_strategy.cpython-312.pyc,, +torch/distributed/tensor/_ops/__pycache__/_embedding_ops.cpython-312.pyc,, +torch/distributed/tensor/_ops/__pycache__/_experimental_ops.cpython-312.pyc,, +torch/distributed/tensor/_ops/__pycache__/_math_ops.cpython-312.pyc,, +torch/distributed/tensor/_ops/__pycache__/_matrix_ops.cpython-312.pyc,, +torch/distributed/tensor/_ops/__pycache__/_pointwise_ops.cpython-312.pyc,, +torch/distributed/tensor/_ops/__pycache__/_random_ops.cpython-312.pyc,, +torch/distributed/tensor/_ops/__pycache__/_tensor_ops.cpython-312.pyc,, +torch/distributed/tensor/_ops/__pycache__/_view_ops.cpython-312.pyc,, +torch/distributed/tensor/_ops/__pycache__/utils.cpython-312.pyc,, +torch/distributed/tensor/_ops/_common_rules.py,sha256=rCb_VAZpCcNUSHmvphD7D2o5MPhKqPG2Z-DqLwXRHOo,12360 +torch/distributed/tensor/_ops/_conv_ops.py,sha256=p_BEntNd6XOaT1sXEQ6Mp1TBh76HfSim4y4Frt6RtDs,3422 +torch/distributed/tensor/_ops/_einsum_strategy.py,sha256=gErLda9odoRSP56L_QyIVKw9bbkbwyqI2HKVxrE2BKU,6615 +torch/distributed/tensor/_ops/_embedding_ops.py,sha256=BHLxOrrHvJhWzcXN-yLW-MwyqvfinfCS6OWg4wVHe-g,10447 +torch/distributed/tensor/_ops/_experimental_ops.py,sha256=G3NugU3FPUUyYYhMWWZNQwFBiRvRVZfJ3748yyNfdhA,1016 +torch/distributed/tensor/_ops/_math_ops.py,sha256=j1PXdXgHNpDXUMw9wNitoiIpTgXXn7EDVe8Aw7hz5rg,41646 +torch/distributed/tensor/_ops/_matrix_ops.py,sha256=4u6KHuebsBJJSd5nz0bjrqg08aa8fidfPoC5Izq0HBk,17623 +torch/distributed/tensor/_ops/_pointwise_ops.py,sha256=CskfljY8MU26Sfm1Hpissvh_Yz-29KqhPgRoyLxX_Jo,21427 +torch/distributed/tensor/_ops/_random_ops.py,sha256=2cx-vfYrhcvzotIty0PqfbRKI4wLv9MP3YUfW-d_M3A,1251 +torch/distributed/tensor/_ops/_tensor_ops.py,sha256=P3JdBXAhPpNXgp8Q6WnMSCp9MSa1oSHfu1vVOGOdsMs,30943 +torch/distributed/tensor/_ops/_view_ops.py,sha256=ZEWozUXF4p5CWtvk7QE7yJHH_LE38hw_O4b2jC9Utl8,23486 +torch/distributed/tensor/_ops/utils.py,sha256=q4_WGqRdRBucXSG_GWRTMaqKGLPWHsAYYU2lVckteD0,10531 +torch/distributed/tensor/_random.py,sha256=L9T8CRZ35oRBkRcfFPVw8MJv2yhldY7bvZHlThjwS5k,15750 +torch/distributed/tensor/_redistribute.py,sha256=RaMfSVg4hMfiUo-kBU--BJGjvCbqIGFhcws_Wm_0HtA,15134 +torch/distributed/tensor/_sharding_prop.py,sha256=c9NAW-gAba3ABxApXHxGtEE50phJQPPtm18sd9-vZj8,22297 +torch/distributed/tensor/_shards_wrapper.py,sha256=LeG1prLoify7mLOAjEuWhT9zHwTM9WI8rWiX6oFbhIA,11951 +torch/distributed/tensor/_tp_conv.py,sha256=r6cnoma7Shih_Wd2TBb9-gWKtB2JGO9DRJAPkl_yeyk,10392 +torch/distributed/tensor/_utils.py,sha256=Ujv8TzFAPil1v5myJo5sXFISaFhgiHH5c8Enz7LECqk,13107 +torch/distributed/tensor/debug/__init__.py,sha256=yQKhaK8ee4k6pdKbGGYsy_u6GovU6zweXan2aGRif0M,874 +torch/distributed/tensor/debug/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/tensor/debug/__pycache__/_comm_mode.cpython-312.pyc,, +torch/distributed/tensor/debug/__pycache__/_op_coverage.cpython-312.pyc,, +torch/distributed/tensor/debug/__pycache__/_visualize_sharding.cpython-312.pyc,, +torch/distributed/tensor/debug/_comm_mode.py,sha256=JX33iEYQ14JR-mMf3JCRcJKl21_3yWUdtodtQZ2EU_k,29498 +torch/distributed/tensor/debug/_op_coverage.py,sha256=tkJLLrwvhd0qOwy_fgxGAFQEaCmpbI1NKfX5308S5Tc,3271 +torch/distributed/tensor/debug/_visualize_sharding.py,sha256=utRDNnesVxPykx4R7s0KOokyVqXCxcjCSGkydrzG-cs,6674 +torch/distributed/tensor/device_mesh.py,sha256=WmVZoV1gmNbdpIPJm-7BWJba8WDtfwbQlTjswMiTBrI,199 +torch/distributed/tensor/experimental/__init__.py,sha256=wSQfZW8QApoGRjtRAPSLxcxVozY2ORm_g2nULwYkuJ4,1430 +torch/distributed/tensor/experimental/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/tensor/experimental/__pycache__/_attention.cpython-312.pyc,, +torch/distributed/tensor/experimental/__pycache__/_func_map.cpython-312.pyc,, +torch/distributed/tensor/experimental/__pycache__/_register_sharding.cpython-312.pyc,, +torch/distributed/tensor/experimental/__pycache__/_tp_transform.cpython-312.pyc,, +torch/distributed/tensor/experimental/_attention.py,sha256=N7OtsgmWnEuFANqTpNV91g4Wb2ObDe8i9fwmJCQV2hY,48088 +torch/distributed/tensor/experimental/_func_map.py,sha256=QzcWcY4s-Yytdwcjw3buaMqHgsIVFeWlf8cB7_cMa_8,11171 +torch/distributed/tensor/experimental/_register_sharding.py,sha256=cXn5VqBKMphB339jubz-F7zOto1rYwhKz9sQHzOKyuY,5802 +torch/distributed/tensor/experimental/_tp_transform.py,sha256=3M5YX6SAWE8S47uUrU_Fx2YiDgOttHZ-AYU9EzeUbV4,20955 +torch/distributed/tensor/parallel/__init__.py,sha256=09o1Pe-2DwYeZUQr4QypEm3FD9yidrZUHFRjMhbAzYs,604 +torch/distributed/tensor/parallel/__pycache__/__init__.cpython-312.pyc,, +torch/distributed/tensor/parallel/__pycache__/_data_parallel_utils.cpython-312.pyc,, +torch/distributed/tensor/parallel/__pycache__/_utils.cpython-312.pyc,, +torch/distributed/tensor/parallel/__pycache__/api.cpython-312.pyc,, +torch/distributed/tensor/parallel/__pycache__/ddp.cpython-312.pyc,, +torch/distributed/tensor/parallel/__pycache__/fsdp.cpython-312.pyc,, +torch/distributed/tensor/parallel/__pycache__/input_reshard.cpython-312.pyc,, +torch/distributed/tensor/parallel/__pycache__/loss.cpython-312.pyc,, +torch/distributed/tensor/parallel/__pycache__/style.cpython-312.pyc,, +torch/distributed/tensor/parallel/_data_parallel_utils.py,sha256=BuSkazKS7nzZtiZbw2C6ILjDx-l1SJ9u2azfc8HgBRA,1568 +torch/distributed/tensor/parallel/_utils.py,sha256=mk6L6Nmcaw9OK056PJeKT88cwNAJUjsaasIdnlKUYYs,2387 +torch/distributed/tensor/parallel/api.py,sha256=ZRmQWy4HVNgCWMM6mdqpZONZjLk2tqi1o3LBg8fLwQk,5187 +torch/distributed/tensor/parallel/ddp.py,sha256=rbNJN2hd8GA-i6P6YVZMuJbmebs5KOLrggAzlxfm53U,3856 +torch/distributed/tensor/parallel/fsdp.py,sha256=UdzyrWNdoNjBVuei0xfdFHyegxqORVaToEVq_VOD4hc,14040 +torch/distributed/tensor/parallel/input_reshard.py,sha256=hUKy_gvG3iK1C7Podh9UceuUw-S5WGHobyxibqkQeMQ,3885 +torch/distributed/tensor/parallel/loss.py,sha256=hQl05n7zZDLuPGGFDbEhOWAEteUlBJK7Em8pES3SHC4,18173 +torch/distributed/tensor/parallel/style.py,sha256=5rh0zxzxWGu-PQFtbvMfIdXm1I-LgvT40yezbtKRZYs,29144 +torch/distributed/tensor/placement_types.py,sha256=NMZKWnUUqlIrp5i5owH03TmhGR1nah4K0JhaCSCy78E,26187 +torch/distributed/utils.py,sha256=gRl8JjQf32yllaMUvYy_yFyrgcvTmkcKDAiNNwFjp9A,13858 +torch/distributions/__init__.py,sha256=xWOIZCtG40gwSB77PKG0RxL7khStBrIGShY_UTmaNEM,6208 +torch/distributions/__pycache__/__init__.cpython-312.pyc,, +torch/distributions/__pycache__/bernoulli.cpython-312.pyc,, +torch/distributions/__pycache__/beta.cpython-312.pyc,, +torch/distributions/__pycache__/binomial.cpython-312.pyc,, +torch/distributions/__pycache__/categorical.cpython-312.pyc,, +torch/distributions/__pycache__/cauchy.cpython-312.pyc,, +torch/distributions/__pycache__/chi2.cpython-312.pyc,, +torch/distributions/__pycache__/constraint_registry.cpython-312.pyc,, +torch/distributions/__pycache__/constraints.cpython-312.pyc,, +torch/distributions/__pycache__/continuous_bernoulli.cpython-312.pyc,, +torch/distributions/__pycache__/dirichlet.cpython-312.pyc,, +torch/distributions/__pycache__/distribution.cpython-312.pyc,, +torch/distributions/__pycache__/exp_family.cpython-312.pyc,, +torch/distributions/__pycache__/exponential.cpython-312.pyc,, +torch/distributions/__pycache__/fishersnedecor.cpython-312.pyc,, +torch/distributions/__pycache__/gamma.cpython-312.pyc,, +torch/distributions/__pycache__/geometric.cpython-312.pyc,, +torch/distributions/__pycache__/gumbel.cpython-312.pyc,, +torch/distributions/__pycache__/half_cauchy.cpython-312.pyc,, +torch/distributions/__pycache__/half_normal.cpython-312.pyc,, +torch/distributions/__pycache__/independent.cpython-312.pyc,, +torch/distributions/__pycache__/inverse_gamma.cpython-312.pyc,, +torch/distributions/__pycache__/kl.cpython-312.pyc,, +torch/distributions/__pycache__/kumaraswamy.cpython-312.pyc,, +torch/distributions/__pycache__/laplace.cpython-312.pyc,, +torch/distributions/__pycache__/lkj_cholesky.cpython-312.pyc,, +torch/distributions/__pycache__/log_normal.cpython-312.pyc,, +torch/distributions/__pycache__/logistic_normal.cpython-312.pyc,, +torch/distributions/__pycache__/lowrank_multivariate_normal.cpython-312.pyc,, +torch/distributions/__pycache__/mixture_same_family.cpython-312.pyc,, +torch/distributions/__pycache__/multinomial.cpython-312.pyc,, +torch/distributions/__pycache__/multivariate_normal.cpython-312.pyc,, +torch/distributions/__pycache__/negative_binomial.cpython-312.pyc,, +torch/distributions/__pycache__/normal.cpython-312.pyc,, +torch/distributions/__pycache__/one_hot_categorical.cpython-312.pyc,, +torch/distributions/__pycache__/pareto.cpython-312.pyc,, +torch/distributions/__pycache__/poisson.cpython-312.pyc,, +torch/distributions/__pycache__/relaxed_bernoulli.cpython-312.pyc,, +torch/distributions/__pycache__/relaxed_categorical.cpython-312.pyc,, +torch/distributions/__pycache__/studentT.cpython-312.pyc,, +torch/distributions/__pycache__/transformed_distribution.cpython-312.pyc,, +torch/distributions/__pycache__/transforms.cpython-312.pyc,, +torch/distributions/__pycache__/uniform.cpython-312.pyc,, +torch/distributions/__pycache__/utils.cpython-312.pyc,, +torch/distributions/__pycache__/von_mises.cpython-312.pyc,, +torch/distributions/__pycache__/weibull.cpython-312.pyc,, +torch/distributions/__pycache__/wishart.cpython-312.pyc,, +torch/distributions/bernoulli.py,sha256=-bon1HMlhdPrraH7qKkNIWmC4c6jPsSHqSDPNipbLks,4331 +torch/distributions/beta.py,sha256=yfUOnjdw0a_sU1OpyqKOMYKbOTw5VTMVrp3p-5Z1VG4,3863 +torch/distributions/binomial.py,sha256=7EZogdBa3mtYkHftS6CD57eZCSjepJ02iiIFyIE-9xM,6172 +torch/distributions/categorical.py,sha256=3231rEah6RC8LxNOWj6z1oC3EHG5f4bZafVKXr08fxs,5962 +torch/distributions/cauchy.py,sha256=TyWM3XidYQKcyH6KPB9Uwxd3aP7CO52CmeN2J15pE6U,3104 +torch/distributions/chi2.py,sha256=74lhambR_fD_tAVXKzPAQAvP2DZEe15Qmz5vVDGzRmQ,1037 +torch/distributions/constraint_registry.py,sha256=-_FJlvzdyD5WxktvjS55YewAQObuGqRIyccBptNrAGk,10623 +torch/distributions/constraints.py,sha256=w4jn3npqw2T2X2A8udzfo9o0Yjmswtd8S_hTW7Wfr48,20083 +torch/distributions/continuous_bernoulli.py,sha256=dmDbF_LhIIaDuJnuqUVbDXj_ZlWPstJF0YNAHEYUz-0,9013 +torch/distributions/dirichlet.py,sha256=jSkMUPJSYZd3hTRjS3MKppM_h207q0AI1YvtKWOhIDo,4380 +torch/distributions/distribution.py,sha256=Ec9wZtuy_f7vUIt8ZSocayoNkbHoBDx7nH_Oi74J_RY,12719 +torch/distributions/exp_family.py,sha256=siV9j_jWP29BmxW7JEVv0nFqLKYR0tS7x_rtsdc_2zA,2445 +torch/distributions/exponential.py,sha256=6B-ux6g3yxIFCA1FX728qOgl7VAZkrAkLYOZwmDRG-4,2608 +torch/distributions/fishersnedecor.py,sha256=EDI-iEOpEBnIqkDtYVVCtAoDg2kaKk6Il25yBhkhIMQ,3618 +torch/distributions/gamma.py,sha256=GOYjkQGxjrD90pGbYVX_axp5nsmUG4oNRaoZrP6H8wM,3816 +torch/distributions/geometric.py,sha256=o-kOb527popUgmuVgaXy89o_09juFkDWrcvsVr7OxM8,4810 +torch/distributions/gumbel.py,sha256=SfkdN6rMXZ4AYZifEvC-KAqxn-emRMFDFXoPxzm1fDA,2881 +torch/distributions/half_cauchy.py,sha256=XmrxaNNM4LDuIkep0lvPoFxTbVE4oaoEa9Oq4UmNey4,2507 +torch/distributions/half_normal.py,sha256=EdQFL4tjfYo_-1M20-YJbJh7lC6A2GkM8T9k8jGkCBM,2264 +torch/distributions/independent.py,sha256=ctNi655_H2r7k9Uh6evOV5DajcMTUFYhbMmzm2_FbrU,4816 +torch/distributions/inverse_gamma.py,sha256=0w98QwzNxy03DTXbxLylwmRjkwF1UPoZJhMte6pcfjQ,2586 +torch/distributions/kl.py,sha256=k8Pn3eh9xfUwXC1kJweDfICORU6uAfIDAq2ud2ZwGqQ,32677 +torch/distributions/kumaraswamy.py,sha256=h_tTAUFUUX25PABrwgsy5MqoGUVapMroQiORN22QR30,3566 +torch/distributions/laplace.py,sha256=NYu0IrN30SAcuavOVnLgtxTpaZORtCP3VTErN8c334s,3412 +torch/distributions/lkj_cholesky.py,sha256=B8_oQ4DKFF3D9_HdGUDYFk86ykXplWAXcS_G7GSkHFw,6545 +torch/distributions/log_normal.py,sha256=RY1hIdFqLPPS_FiHtkzOMej0RAVMYOx8eq0HD3M-hpU,2021 +torch/distributions/logistic_normal.py,sha256=0H-xqEZJZaINzZycYqnUsv3XZgZt2KWnnzE-OukF23Y,2033 +torch/distributions/lowrank_multivariate_normal.py,sha256=NoEsFBeW-VFx6TSCazQT0gE7cRWPCSgZZaWrf2o9T9M,10103 +torch/distributions/mixture_same_family.py,sha256=P4VgpVSMQMnRPWVBzRBsV0ImZcdRyIF_TcIIaKxh6Bw,8705 +torch/distributions/multinomial.py,sha256=s7kJa6jlzkrxn1oqI8CA8q9lUavv-6-RmuojjE0dj2I,5565 +torch/distributions/multivariate_normal.py,sha256=lpyZIKhqg2_P-IMj8wDfqx-uoE2IPXS6EKzXLQwt8xQ,11094 +torch/distributions/negative_binomial.py,sha256=XuBK4vSejVS-KEYk7byXngcouc-zAn9_3GfSemRSKnk,4834 +torch/distributions/normal.py,sha256=lj51_SWmfIl9E2m8wdOTHCcp44-6J_zXrpegMYpkdVc,3744 +torch/distributions/one_hot_categorical.py,sha256=fMHJUBQ6r3BwBkh8QnjFXqWbFdQiAe561y83SmEold0,4895 +torch/distributions/pareto.py,sha256=JxcIczcQ9dzJzdUrFYvoG2r527LkxyHD1_Lx4ub9RlM,2265 +torch/distributions/poisson.py,sha256=glbHDSKTVTeDHNLfMz9-5Vuwel0a65w3rW8kKr-rIKQ,2324 +torch/distributions/relaxed_bernoulli.py,sha256=F1zEU9ZKDxtmFOij4yJePna4HiyCLycWvXQgU28bmQw,5605 +torch/distributions/relaxed_categorical.py,sha256=Gd305sGyWyq21GOMdP883p41GKCv0B2R4ZCLOMIMkuU,5390 +torch/distributions/studentT.py,sha256=sgRrOJuIRoab39ZKjOwAkEhzyUCGW6KITKJhflNQfnQ,4058 +torch/distributions/transformed_distribution.py,sha256=6FdS2SzDCo9VldBfHi8p_tChV_-A8hUC4yechLjKFyU,8911 +torch/distributions/transforms.py,sha256=s4kuwgup0dxCf27QEn7GXTYLaxTyhR4pIQxVix9d-H0,42209 +torch/distributions/uniform.py,sha256=XSujtCK6NYkpLc5TNFj1HYqGF23H9YWj8TWGfizA5cg,3425 +torch/distributions/utils.py,sha256=Y1LjuRzIbdU3lhU24SHWDEGY8Z2v7_Zm2B5BQkwGep0,7286 +torch/distributions/von_mises.py,sha256=IvfLfmVEwT5BfhEEuPMK3zNspSjCzwj0APA80QCpl8g,6316 +torch/distributions/weibull.py,sha256=fKEAFQvzG0Glm6w4Ob1CgfRei9dmQbDosLn-S3vtOns,3182 +torch/distributions/wishart.py,sha256=3OFEOpem5-8sQEMMjKBZLQBuvkMKqbazCH3ug-uhrVE,13979 +torch/export/__init__.py,sha256=b2ZVfIaJw9Pi4fa5Ue08YWSftxkUsmA61VBYMderu8A,25621 +torch/export/__pycache__/__init__.cpython-312.pyc,, +torch/export/__pycache__/_draft_export.cpython-312.pyc,, +torch/export/__pycache__/_remove_auto_functionalized_pass.cpython-312.pyc,, +torch/export/__pycache__/_remove_effect_tokens_pass.cpython-312.pyc,, +torch/export/__pycache__/_safeguard.cpython-312.pyc,, +torch/export/__pycache__/_swap.cpython-312.pyc,, +torch/export/__pycache__/_trace.cpython-312.pyc,, +torch/export/__pycache__/_tree_utils.cpython-312.pyc,, +torch/export/__pycache__/_unlift.cpython-312.pyc,, +torch/export/__pycache__/custom_obj.cpython-312.pyc,, +torch/export/__pycache__/decomp_utils.cpython-312.pyc,, +torch/export/__pycache__/dynamic_shapes.cpython-312.pyc,, +torch/export/__pycache__/exported_program.cpython-312.pyc,, +torch/export/__pycache__/graph_signature.cpython-312.pyc,, +torch/export/__pycache__/unflatten.cpython-312.pyc,, +torch/export/_draft_export.py,sha256=2Juw95Uxa4rQbH9Uw4HkYojY4SOXeRoFHwwvHCfE5EI,12306 +torch/export/_remove_auto_functionalized_pass.py,sha256=9p25-hNrCIeTPM_m7oXLWniZtpa1DTtnIGcE3i3hyWU,2004 +torch/export/_remove_effect_tokens_pass.py,sha256=HnS966k42ZDMm3vFs3gkOcEKqagkSKy7a2vawLnh_NE,6104 +torch/export/_safeguard.py,sha256=OHb5_QzVfyGuP25IIvKkLE7-fnAyjLHQoaZsMiPZeRo,2000 +torch/export/_swap.py,sha256=mOjFulA_6lf97zHcQ9NDoUA0DXxnUsoawpeFZaOJ5QQ,18041 +torch/export/_trace.py,sha256=2scDzmWX2WcJtQ9axEAgHOyd8cYZ636OA_MOk20Fnkw,80257 +torch/export/_tree_utils.py,sha256=jZy7ZSupyBtY9G72u0uLlBzBdHW3ghHR6w2lItkw5Pk,2332 +torch/export/_unlift.py,sha256=o3cWT4r16H45ACeXo4cgQpnvuac7UwulGDw54MefeoQ,15529 +torch/export/custom_obj.py,sha256=sayHd5SniH20UVLJ4QVUuhtjLa2RRqDR2fbvbMDXXfA,312 +torch/export/decomp_utils.py,sha256=opH8yGkVDup_03LfBV10Y82ufB1ojjR8qW-CZXrsa38,5230 +torch/export/dynamic_shapes.py,sha256=QKwf0n8LaOOkyiMCAOyCkTlKIKWJXPExfbqiIYgfICE,46046 +torch/export/experimental/__init__.py,sha256=JX_Ahj_yUzgehlB7r3hNrUbqgquZcMaKoRjZ3RfaRr8,2627 +torch/export/experimental/__pycache__/__init__.cpython-312.pyc,, +torch/export/exported_program.py,sha256=M6z5FJhK6hRoKcVMZMcLT_-DmWaHrotSIFl0SrxNP98,58369 +torch/export/graph_signature.py,sha256=wawXztWAFIVPegldjq-u4meodZN1zrps4-pVNNcVqCo,23303 +torch/export/passes/__init__.py,sha256=BkF2IRZhPbZz_G_vC3Ly4dpH_O4RlaiW3jtEfwP_EeE,2338 +torch/export/passes/__pycache__/__init__.cpython-312.pyc,, +torch/export/unflatten.py,sha256=N20i1i5vd-QqYOxrtp9gfXHg4EKpWcmKOiwHUoFDSaA,67515 +torch/fft/__init__.py,sha256=6pNIwgSrrAiIvUII992Gav1NpPXqvANhnGiPXhKwA9w,56420 +torch/fft/__pycache__/__init__.cpython-312.pyc,, +torch/func/__init__.py,sha256=LEpchMYIvP8jKaoRTBaoMYVtUHKhtUXk55l5vKrPAOA,410 +torch/func/__pycache__/__init__.cpython-312.pyc,, +torch/functional.py,sha256=-6CBKfC9SVxXFuufE5mlfWZO2cAF9vmhoYT2Ei-CeeE,89664 +torch/futures/__init__.py,sha256=UlX_tGqglAkC54emiM0da0TgUrz6bBFfsH7V62DWfPk,14738 +torch/futures/__pycache__/__init__.cpython-312.pyc,, +torch/fx/__init__.py,sha256=RUEEkTdpzyMNlwh-1IfpgwCo6j4r7dc6qGT7MEwmCIk,4235 +torch/fx/__pycache__/__init__.cpython-312.pyc,, +torch/fx/__pycache__/_compatibility.cpython-312.pyc,, +torch/fx/__pycache__/_lazy_graph_module.cpython-312.pyc,, +torch/fx/__pycache__/_pytree.cpython-312.pyc,, +torch/fx/__pycache__/_symbolic_trace.cpython-312.pyc,, +torch/fx/__pycache__/_utils.cpython-312.pyc,, +torch/fx/__pycache__/annotate.cpython-312.pyc,, +torch/fx/__pycache__/config.cpython-312.pyc,, +torch/fx/__pycache__/graph.cpython-312.pyc,, +torch/fx/__pycache__/graph_module.cpython-312.pyc,, +torch/fx/__pycache__/immutable_collections.cpython-312.pyc,, +torch/fx/__pycache__/interpreter.cpython-312.pyc,, +torch/fx/__pycache__/node.cpython-312.pyc,, +torch/fx/__pycache__/operator_schemas.cpython-312.pyc,, +torch/fx/__pycache__/proxy.cpython-312.pyc,, +torch/fx/__pycache__/subgraph_rewriter.cpython-312.pyc,, +torch/fx/__pycache__/tensor_type.cpython-312.pyc,, +torch/fx/__pycache__/traceback.cpython-312.pyc,, +torch/fx/_compatibility.py,sha256=cabo18HTyYYp-xwIJtCJbp0HbtqhjLFK-SxJGulNRCI,1126 +torch/fx/_lazy_graph_module.py,sha256=PaYsiptsRlJCGlQKzJiRBzPZWwZLHuTLCJb9dLjvuVM,7343 +torch/fx/_pytree.py,sha256=rxizK_0Nnf6aqiaCgLwLdbBwgXYtXeynX_mLzROy0qM,3605 +torch/fx/_symbolic_trace.py,sha256=-xqBm28WlENwaba1ysskZ5WNfR2zMsxlJah20k1OyIU,51204 +torch/fx/_utils.py,sha256=wYhL6e84Notjv7A6tDwybBGlcW2YSWEanRHsNfrqzFY,1809 +torch/fx/annotate.py,sha256=dn7XPNwrztonT4wNge5uEuD-pUa_WIsh5hqWX6DTwys,1292 +torch/fx/config.py,sha256=T3TTYqs3by9AqZqczmB4odnDmtnWfepicu-QExxw2gI,334 +torch/fx/experimental/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/fx/experimental/__pycache__/__init__.cpython-312.pyc,, +torch/fx/experimental/__pycache__/_backward_state.cpython-312.pyc,, +torch/fx/experimental/__pycache__/_config.cpython-312.pyc,, +torch/fx/experimental/__pycache__/_constant_symnode.cpython-312.pyc,, +torch/fx/experimental/__pycache__/accelerator_partitioner.cpython-312.pyc,, +torch/fx/experimental/__pycache__/const_fold.cpython-312.pyc,, +torch/fx/experimental/__pycache__/debug.cpython-312.pyc,, +torch/fx/experimental/__pycache__/graph_gradual_typechecker.cpython-312.pyc,, +torch/fx/experimental/__pycache__/merge_matmul.cpython-312.pyc,, +torch/fx/experimental/__pycache__/meta_tracer.cpython-312.pyc,, +torch/fx/experimental/__pycache__/normalize.cpython-312.pyc,, +torch/fx/experimental/__pycache__/optimization.cpython-312.pyc,, +torch/fx/experimental/__pycache__/partitioner_utils.cpython-312.pyc,, +torch/fx/experimental/__pycache__/proxy_tensor.cpython-312.pyc,, +torch/fx/experimental/__pycache__/recording.cpython-312.pyc,, +torch/fx/experimental/__pycache__/refinement_types.cpython-312.pyc,, +torch/fx/experimental/__pycache__/rewriter.cpython-312.pyc,, +torch/fx/experimental/__pycache__/schema_type_annotation.cpython-312.pyc,, +torch/fx/experimental/__pycache__/sym_node.cpython-312.pyc,, +torch/fx/experimental/__pycache__/symbolic_shapes.cpython-312.pyc,, +torch/fx/experimental/__pycache__/unify_refinements.cpython-312.pyc,, +torch/fx/experimental/__pycache__/validator.cpython-312.pyc,, +torch/fx/experimental/_backward_state.py,sha256=sY7kEctuCzdVZJUCrhkCgCCk61-XepGYuRmmNv6NW9o,994 +torch/fx/experimental/_config.py,sha256=J_hlbpuqmxbZsduR10ZEtcNBoHf_SvjFgV98vD1k5eY,3847 +torch/fx/experimental/_constant_symnode.py,sha256=4ndLW6IPKnidbSnZVu3FZcw0WQ0Ssy7jQtyP9_kXbEg,1591 +torch/fx/experimental/accelerator_partitioner.py,sha256=KoRXjRR7_Uj9ohr-dsXsce8VY-rAqu7XRb7vdGUBdVU,48874 +torch/fx/experimental/const_fold.py,sha256=Tzx117y6INRUOlBbjFb3QEvw2-3VNfqPYHz8FBup2kc,12663 +torch/fx/experimental/debug.py,sha256=5NcVQLuVruuEdM5qGeKdoXc6sQAupudAZGQrAYqoV-I,775 +torch/fx/experimental/graph_gradual_typechecker.py,sha256=eMXcc5-Q1KourlQAtBRI0jkVPgDZlgYgltJmPf5RQOQ,33812 +torch/fx/experimental/merge_matmul.py,sha256=NWKNbQhdYZgBiSHjV6jj9PSOHvBeoIVZwoNgcR9ABLc,6278 +torch/fx/experimental/meta_tracer.py,sha256=OvZBnSHB5ZYq9OzpWXJ1dOOFi5Fu4Z81OTUFqxfhx0g,10868 +torch/fx/experimental/migrate_gradual_types/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/fx/experimental/migrate_gradual_types/__pycache__/__init__.cpython-312.pyc,, +torch/fx/experimental/migrate_gradual_types/__pycache__/constraint.cpython-312.pyc,, +torch/fx/experimental/migrate_gradual_types/__pycache__/constraint_generator.cpython-312.pyc,, +torch/fx/experimental/migrate_gradual_types/__pycache__/constraint_transformation.cpython-312.pyc,, +torch/fx/experimental/migrate_gradual_types/__pycache__/operation.cpython-312.pyc,, +torch/fx/experimental/migrate_gradual_types/__pycache__/transform_to_z3.cpython-312.pyc,, +torch/fx/experimental/migrate_gradual_types/__pycache__/util.cpython-312.pyc,, +torch/fx/experimental/migrate_gradual_types/__pycache__/z3_types.cpython-312.pyc,, +torch/fx/experimental/migrate_gradual_types/constraint.py,sha256=WeKDkuPjoFYWGotIfW8hRgevxKDN6I2AoWAdJ5KmJ-s,17865 +torch/fx/experimental/migrate_gradual_types/constraint_generator.py,sha256=pJcqIyLJIPm5YlPhmD63K2eTsZCuK9DcXwBbbnxK7Ak,51054 +torch/fx/experimental/migrate_gradual_types/constraint_transformation.py,sha256=NVqKXKq3PYkPwDpWLif-PJ7lQf4mjITbf-rSU-_uvJM,42334 +torch/fx/experimental/migrate_gradual_types/operation.py,sha256=zbUGWchsU6rC48vqKklLLe_z8MW-y076OlSNy7w2w2E,301 +torch/fx/experimental/migrate_gradual_types/transform_to_z3.py,sha256=GL5enOEip4xoTg_Rymw7ISMVH8uKY7D63VeSqSymw4o,16816 +torch/fx/experimental/migrate_gradual_types/util.py,sha256=VqJ-qT2Ho6-n4U6fE-FulBGzY3ds1oBFHhvgld_6PMg,1424 +torch/fx/experimental/migrate_gradual_types/z3_types.py,sha256=ipCI1wud5fXjuavpPXK9T61D-sNXsId__Ux849pJcAs,837 +torch/fx/experimental/normalize.py,sha256=J049STJ9LhUnRuCtv8Qu7WpSdr1WBSpXNf7gRSGm8fo,5668 +torch/fx/experimental/optimization.py,sha256=bycU1Boki0-cjU0RD45K_hwzx-pN0zaO01yBwv6AYy4,18141 +torch/fx/experimental/partitioner_utils.py,sha256=PlplSy3Vn4CCkqPfA44bkAUjjQCPCYuL3Mjb9NrqyJk,12629 +torch/fx/experimental/proxy_tensor.py,sha256=o-oIS2GaNpYgvdNmkkfq916F6PG9KhKzvwGGYVECJVM,87789 +torch/fx/experimental/recording.py,sha256=GyRQ2acEfP2wFUFp9zCt0U1swSY42jXtdy3LmB4r9Jk,19865 +torch/fx/experimental/refinement_types.py,sha256=ENTjLC6Hc0XEYtpuL5EWKgn65WWJvFOH9a8uiyp3j7c,449 +torch/fx/experimental/rewriter.py,sha256=U_jklR9-_iTLilL1uIF2P1OSabHKPpxf2r5eHwO30Zk,5617 +torch/fx/experimental/schema_type_annotation.py,sha256=m9LWV8zzJUBzS3Nz0aGw7SLt0v-N1h3NBTEwlhZEEig,5537 +torch/fx/experimental/sym_node.py,sha256=2ylFth0ZL21gettauDnzPdH5-QE0ATF1ptVRqrRB-Mo,57871 +torch/fx/experimental/symbolic_shapes.py,sha256=f5v4c_KERm46DlXcedfWF0ZyWrHsBkX_278ficZs3Lc,298833 +torch/fx/experimental/unification/__init__.py,sha256=gFSoj0KQx-HXb10CoJ-yxySJWTOfzpbfnDE8AFupMLc,200 +torch/fx/experimental/unification/__pycache__/__init__.cpython-312.pyc,, +torch/fx/experimental/unification/__pycache__/core.cpython-312.pyc,, +torch/fx/experimental/unification/__pycache__/dispatch.cpython-312.pyc,, +torch/fx/experimental/unification/__pycache__/match.cpython-312.pyc,, +torch/fx/experimental/unification/__pycache__/more.cpython-312.pyc,, +torch/fx/experimental/unification/__pycache__/unification_tools.cpython-312.pyc,, +torch/fx/experimental/unification/__pycache__/utils.cpython-312.pyc,, +torch/fx/experimental/unification/__pycache__/variable.cpython-312.pyc,, +torch/fx/experimental/unification/core.py,sha256=oHudUofULazwHxFMY3OhQc44hEb3-3r2AMAl1en_ol0,2895 +torch/fx/experimental/unification/dispatch.py,sha256=b10Td_2mmcMUQXpNaXlfxKqQr8TdHUQJ4fmiE5xoDqY,201 +torch/fx/experimental/unification/match.py,sha256=04VuNhNb8MVJMbCbSDSYffq5rQzSlWSoGsgbXxypU54,3543 +torch/fx/experimental/unification/more.py,sha256=hNwXS1xLeT_53UyIdOkZ1sQxbZ7bsSnsGoCQ6USpi7k,3084 +torch/fx/experimental/unification/multipledispatch/__init__.py,sha256=GFz_pmv1HGMq8u3esbhpKoY3evsaQ7j2fXBWNFbuz6c,146 +torch/fx/experimental/unification/multipledispatch/__pycache__/__init__.cpython-312.pyc,, +torch/fx/experimental/unification/multipledispatch/__pycache__/conflict.cpython-312.pyc,, +torch/fx/experimental/unification/multipledispatch/__pycache__/core.cpython-312.pyc,, +torch/fx/experimental/unification/multipledispatch/__pycache__/dispatcher.cpython-312.pyc,, +torch/fx/experimental/unification/multipledispatch/__pycache__/utils.cpython-312.pyc,, +torch/fx/experimental/unification/multipledispatch/__pycache__/variadic.cpython-312.pyc,, +torch/fx/experimental/unification/multipledispatch/conflict.py,sha256=CMuB6kiOBSnm3tyUhdRYrLYP9WuunP5sj0181d-qynY,4349 +torch/fx/experimental/unification/multipledispatch/core.py,sha256=MPqKK-76yIwOK1GUR_S2fmHwZ9y6AEA-ZaGgDiNQKfk,2798 +torch/fx/experimental/unification/multipledispatch/dispatcher.py,sha256=0JZ8ZWUYjEfYEFovLtkIApCFNTfC56S26USm8v42yUk,14311 +torch/fx/experimental/unification/multipledispatch/utils.py,sha256=EKZjqQsAnnGOiTlzwprexz2GlTN8haGFfxAXYi4MH3M,3887 +torch/fx/experimental/unification/multipledispatch/variadic.py,sha256=L3fDMtGGBH6SyV9WcUdzQwgrkGDQfXN_6pQ7RLf4usg,3058 +torch/fx/experimental/unification/unification_tools.py,sha256=03QW1SVCUedg7YLcd1Ilv90V8ChO0L32RyfbFyLvRfs,10986 +torch/fx/experimental/unification/utils.py,sha256=Y9naJmr_hgJWv-bLeP5hwhekMXvLEHMTgv7NDF_4Tx8,3045 +torch/fx/experimental/unification/variable.py,sha256=VQJygi4031DYRKK7ZR9IZop0gV7gi1Yc6LoMtwrO-X8,2155 +torch/fx/experimental/unify_refinements.py,sha256=MlfK84ALx4gOF5WSNb1jkOkapjKF7PMIVu-hwqVzliY,3275 +torch/fx/experimental/validator.py,sha256=6JfhiGuWA2l0XkaaFVpsvdp1r15SwK3YxgOpfTlRiLg,34653 +torch/fx/graph.py,sha256=r3TTe8JzXhgP2vZd-SOFy5p5jp4LjZmGH4R0_MLt6Ak,78609 +torch/fx/graph_module.py,sha256=Ch5nM4knhd0cYmsMafOdLsDToNSG3f9vEusY4qPBUkk,40586 +torch/fx/immutable_collections.py,sha256=k_k_6y8ErGvMnR5LZkiH_vqtl-Ln-Mgrowt0Q55RYmc,3104 +torch/fx/interpreter.py,sha256=pkAOc7wonefwLY4b6BIKKxEvW1WwiC2OaobIyR4YfN4,23243 +torch/fx/node.py,sha256=KW8S1axEiY5BpbQYVobc2q4tNQ5kstorAKBa1_sgK-Y,36108 +torch/fx/operator_schemas.py,sha256=CZp3XQwJqiEUlv6QAp8_EBmGKLvmLkoXDjZTwX70Yls,21915 +torch/fx/passes/__init__.py,sha256=OhaBf_mMwHezRK3aq2IaBYymXfmydwZEmbbkMvsrdgM,254 +torch/fx/passes/__pycache__/__init__.cpython-312.pyc,, +torch/fx/passes/__pycache__/_tensorify_python_scalars.cpython-312.pyc,, +torch/fx/passes/__pycache__/annotate_getitem_nodes.cpython-312.pyc,, +torch/fx/passes/__pycache__/fake_tensor_prop.cpython-312.pyc,, +torch/fx/passes/__pycache__/graph_drawer.cpython-312.pyc,, +torch/fx/passes/__pycache__/graph_manipulation.cpython-312.pyc,, +torch/fx/passes/__pycache__/graph_transform_observer.cpython-312.pyc,, +torch/fx/passes/__pycache__/net_min_base.cpython-312.pyc,, +torch/fx/passes/__pycache__/operator_support.cpython-312.pyc,, +torch/fx/passes/__pycache__/param_fetch.cpython-312.pyc,, +torch/fx/passes/__pycache__/pass_manager.cpython-312.pyc,, +torch/fx/passes/__pycache__/reinplace.cpython-312.pyc,, +torch/fx/passes/__pycache__/runtime_assert.cpython-312.pyc,, +torch/fx/passes/__pycache__/shape_prop.cpython-312.pyc,, +torch/fx/passes/__pycache__/split_module.cpython-312.pyc,, +torch/fx/passes/__pycache__/split_utils.cpython-312.pyc,, +torch/fx/passes/__pycache__/splitter_base.cpython-312.pyc,, +torch/fx/passes/__pycache__/tools_common.cpython-312.pyc,, +torch/fx/passes/_tensorify_python_scalars.py,sha256=pvEFHqxIeh8hM_fKWKs-0ojKUn_jJg8-_vo1ybCrJ7c,14974 +torch/fx/passes/annotate_getitem_nodes.py,sha256=boqlyY7G8Xg8B1MCVk3-Iv0NCjJwkv5UTvG0dm6d6ZU,1997 +torch/fx/passes/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/fx/passes/backends/__pycache__/__init__.cpython-312.pyc,, +torch/fx/passes/backends/__pycache__/cudagraphs.cpython-312.pyc,, +torch/fx/passes/backends/cudagraphs.py,sha256=aYZYaP1-eeY4j8BgmFadWoO5vkhgbTVx6r_Vg3vNknY,2144 +torch/fx/passes/dialect/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/fx/passes/dialect/__pycache__/__init__.cpython-312.pyc,, +torch/fx/passes/dialect/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/fx/passes/dialect/common/__pycache__/__init__.cpython-312.pyc,, +torch/fx/passes/dialect/common/__pycache__/cse_pass.cpython-312.pyc,, +torch/fx/passes/dialect/common/cse_pass.py,sha256=bN_eYHW4MoZoUgjxjIrPNylOnRroIQnCfHOgJQpEOHQ,5416 +torch/fx/passes/fake_tensor_prop.py,sha256=vZ1HceT_3OnFC-fqr7ylcCIDLRQJeGJO4MmupuUDR54,2898 +torch/fx/passes/graph_drawer.py,sha256=5-j6uv-OB8MUCgvzkOTXJQ0641Ee6eI8IT8CcivJsWs,19225 +torch/fx/passes/graph_manipulation.py,sha256=kfau-yRw_LanFILm6Swwc7kWLuCBkdPpxrBFVIGUF5w,4089 +torch/fx/passes/graph_transform_observer.py,sha256=BXI1ubXkdVLDPRuKMk9KuMsk2yd0o_UQrMN-UC2vh60,4332 +torch/fx/passes/infra/__init__.py,sha256=XeK4BKH-Vs9snoA5CTrYmG0ZXdkAiCus1btUs3EPjvo,28 +torch/fx/passes/infra/__pycache__/__init__.cpython-312.pyc,, +torch/fx/passes/infra/__pycache__/partitioner.cpython-312.pyc,, +torch/fx/passes/infra/__pycache__/pass_base.cpython-312.pyc,, +torch/fx/passes/infra/__pycache__/pass_manager.cpython-312.pyc,, +torch/fx/passes/infra/partitioner.py,sha256=JhLhqbY3r_hSFtLBmKrQcv5PDnpHs4OYHr4hSLiEzws,17368 +torch/fx/passes/infra/pass_base.py,sha256=OVDB-2S-Nh4X8KnIbZAy3KFxpHREgb4XgxP7nVRtxCg,2557 +torch/fx/passes/infra/pass_manager.py,sha256=qOd5lofPYy923yFOIMVYZNM-ukLcYK_BreCZnop1qwM,10666 +torch/fx/passes/net_min_base.py,sha256=JW1elqhXkzF6j_IHkOAiK2WIEvkNkJGHXccJHEFpGh8,36155 +torch/fx/passes/operator_support.py,sha256=UdP--8XzZQ7di81X29V7uT5nXCOK7-04DLLmEtT098s,7867 +torch/fx/passes/param_fetch.py,sha256=Kb5FnyEIwn1jtbUMK6Pz5OnNg06RQyPAo2F-cIXxGlk,3835 +torch/fx/passes/pass_manager.py,sha256=4kwkh-c6Iw2h_bbeZRXjkrp4uBIU4x5pV0Xpc_hRyzA,7315 +torch/fx/passes/reinplace.py,sha256=-uRf_PvYd9sUus5giJNzXCvXV-y9YchvTAkg2C0DO8M,35187 +torch/fx/passes/runtime_assert.py,sha256=canMRziEM_lXrnVSdQc7N9bB-DFOxxQZK7Sx_EPHVwM,29385 +torch/fx/passes/shape_prop.py,sha256=yhNhAiluupLIWth4wFhLpxB90N3PpDyLsTAVlIMqiTA,7632 +torch/fx/passes/split_module.py,sha256=QL8S1gRNFtOQyMTMV98fFwRivTq7zuLelhaoC1jzL9I,26901 +torch/fx/passes/split_utils.py,sha256=R8cg5qnI_V34GS6yUyuviV4U9sex6TLcdow6dhkM-G8,11556 +torch/fx/passes/splitter_base.py,sha256=D1cebqlgCHTy8fDzoeHSiNbnjEKQlIJ5Sz1Yj_uhCpU,34665 +torch/fx/passes/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/fx/passes/tests/__pycache__/__init__.cpython-312.pyc,, +torch/fx/passes/tests/__pycache__/test_pass_manager.cpython-312.pyc,, +torch/fx/passes/tests/test_pass_manager.py,sha256=lL-SQ_BqCcQ7LALERNZzbgM58ClKBwFehjtCzDDv9g4,1929 +torch/fx/passes/tools_common.py,sha256=dz6WNg1QOKCIQDWqIWcmZBIcrEpU7JWTYVUwyBmYZtI,11517 +torch/fx/passes/utils/__init__.py,sha256=zsDIGQhthjEgPZr4tzE61sCnPNNwG725qUyZ-yzP-_M,75 +torch/fx/passes/utils/__pycache__/__init__.cpython-312.pyc,, +torch/fx/passes/utils/__pycache__/common.cpython-312.pyc,, +torch/fx/passes/utils/__pycache__/fuser_utils.cpython-312.pyc,, +torch/fx/passes/utils/__pycache__/matcher_utils.cpython-312.pyc,, +torch/fx/passes/utils/__pycache__/matcher_with_name_node_map_utils.cpython-312.pyc,, +torch/fx/passes/utils/__pycache__/source_matcher_utils.cpython-312.pyc,, +torch/fx/passes/utils/common.py,sha256=o4m1uSV1unKwoRTQmPCEOEX6cDlv7yqqyAdCYoMBsVQ,3233 +torch/fx/passes/utils/fuser_utils.py,sha256=3A0oPqqPfQJgzdd_2fIekGPHVEWbBsJ1YyGRxpgxaCQ,10002 +torch/fx/passes/utils/matcher_utils.py,sha256=y6I7G8Jzjgec464KkVdUTDGTfpIA0IdnJGRa-pdF5Uk,17704 +torch/fx/passes/utils/matcher_with_name_node_map_utils.py,sha256=f3t3zCTWxp1k4-j3N3C6DYvKo8QNJxr-vaD2magmrOo,4343 +torch/fx/passes/utils/source_matcher_utils.py,sha256=KyiFfvRo78_QtX_0x3mcuWefKmITC25zkSMOTfPjr7o,5785 +torch/fx/proxy.py,sha256=XGjLoAq5cLd0oMLcwi0rXaHuCf_lLrfcFms1LrT-2BY,26442 +torch/fx/subgraph_rewriter.py,sha256=u6cR1A48f1EmmoLFoqAY0aynganRw0dB87VlyeqIyzc,15778 +torch/fx/tensor_type.py,sha256=-fPKzS2WSrGQwJH6s-riLEY6jLe5BfMN1h_gbQwCWuY,3120 +torch/fx/traceback.py,sha256=UzpRQbXsm4EV2TKeOeeLa5TlJCN_x2lSaHq12_mUlbI,7000 +torch/hub.py,sha256=CRinQrh-qLUOvJyYLfVPxyVq2JjoNiMWCYzC3IZP1uY,34273 +torch/include/ATen/ATen.h,sha256=2_a2EFRq8L3ZbUfOQ-U_MB2YFIocV0SmrwJSogR1TKM,1144 +torch/include/ATen/AccumulateType.h,sha256=tY72G0xRvH6E7_bussnxnpp4LsaRZc8zxCDIKYxMnBg,6284 +torch/include/ATen/ArrayRef.h,sha256=4zYGzRZtvYteRd__xp5pu9VciucD8IIzuVMs3A5Dp6k,46 +torch/include/ATen/Backend.h,sha256=-GO1LYCj0b1jHvhCo90emKutow1cpN3rM32YAP9T_Co,45 +torch/include/ATen/Backtrace.h,sha256=SlqFuyqN3PvlfyP68y1DEnFdWQUgLcNM0gmR3E_8a_I,48 +torch/include/ATen/BlasBackend.h,sha256=UpcLdpQnCH2OyT3250dSP3MI71bVB9MNd3Jf_SG3h-Q,703 +torch/include/ATen/CPUApplyUtils.h,sha256=LZQ0BtpIZljzKYGV0DhuYk0eztgVPPnwiM2daTik9zw,10986 +torch/include/ATen/CPUFixedAllocator.h,sha256=HevhsXM95SEkJu9W99gG-Lxdsf8BPzeMtmwLWSy1mxI,915 +torch/include/ATen/CPUFunctions.h,sha256=_eyHokMWODET3hOMLSvjcITHqi1_DGMTKj44IEYDr20,1983 +torch/include/ATen/CPUFunctions_inl.h,sha256=iGKv-hlEmFkefk5q3FUdIksrGXkhkI9DBBEcd8ox6pU,27664 +torch/include/ATen/CPUGeneratorImpl.h,sha256=VDLdZFrny0eUiwfOpUNL7LTA1xYc-1t2aEIftQ9SDkw,1576 +torch/include/ATen/CUDAFunctions.h,sha256=LHMeRXdRzosLFV4qmPvH5v_2qfRNCEGnxGstavfYbWE,1984 +torch/include/ATen/CUDAFunctions_inl.h,sha256=tdpGEafZifjaXCRdoNQfyP5jBSxlC7E1MXHHoYQ9lnQ,33081 +torch/include/ATen/CachedTensorUtils.h,sha256=oJKriW3daq5pz89rPdOwrfdBBvyOmuApbv2a8cJlqkQ,1031 +torch/include/ATen/CollapseDims.h,sha256=ZUyvqAOAPtHfJGq3-mo_49i3SfnP-hzUUGdprm_mimM,2654 +torch/include/ATen/CompositeExplicitAutogradFunctions.h,sha256=0-lSNBSpctfyiR_BsNj1F0mBsaunfRe-vATxxLQuBW8,2005 +torch/include/ATen/CompositeExplicitAutogradFunctions_inl.h,sha256=F-2AHLxJd01azDpaTE-6mL95G4AMPnpmSyOIm6JOpGI,41235 +torch/include/ATen/CompositeExplicitAutogradNonFunctionalFunctions.h,sha256=nWMWcnR8GBCsKho56RjV6iV28-HyCTTE5q7EnzXh3-M,2018 +torch/include/ATen/CompositeExplicitAutogradNonFunctionalFunctions_inl.h,sha256=Ko9u6UsZ2XoGQl6jczJ_0WhsUZRFf6nrb3XLXlyYo6E,26567 +torch/include/ATen/CompositeImplicitAutogradFunctions.h,sha256=gliKmhdZ6nnFt44YvI4GnnAM3pmV6vN_V0QSOZXH3PY,2005 +torch/include/ATen/CompositeImplicitAutogradFunctions_inl.h,sha256=ZGmOirJc0r6ZJV4A965QEgQbY8GTJ1aF1KJdAuHJ7Xg,35444 +torch/include/ATen/CompositeImplicitAutogradNestedTensorFunctions.h,sha256=lXqy20Dh8nt-a7CUAhHw-_Go_9srUA7XeWGPkRS_nuA,2017 +torch/include/ATen/CompositeImplicitAutogradNestedTensorFunctions_inl.h,sha256=J9aQiNqgqLlYNfc6aPBtYHOqGLqlyT3-NUHN5pL66Ls,1151 +torch/include/ATen/Config.h,sha256=-IV4ZGxZWWrvSQMkM9cF8uwV41rJCgvTo8wlCeLFndc,758 +torch/include/ATen/Context.h,sha256=vnqT301N69A0UfR_zsMpotV3OVrFHUK8Dzq1aM3F0y4,21778 +torch/include/ATen/DLConvertor.h,sha256=k4cdswqzeWLo1FIx9yaT3s1qEdvcJlA5R50f1D5VBAo,678 +torch/include/ATen/Device.h,sha256=PjTFxYOH8EE9gj2HbfmHkdVKNk0X1KBYoNoZgM-CEXw,44 +torch/include/ATen/DeviceAccelerator.h,sha256=m59GBhj2hPL-HrwNmVAT3gxNRANVwZYs7mbxAJEYVaY,938 +torch/include/ATen/DeviceGuard.h,sha256=WNtJWtrcb6QBvpqBe659BJDSH3GSTtPrUbt_fms9scU,1206 +torch/include/ATen/DimVector.h,sha256=UPELKgtkpIVtPe50MeJeVbzFzbmSSnd95P3eRfyVwbs,48 +torch/include/ATen/Dimname.h,sha256=irl8d98QKHdk4MLNTgPE-Qx2kiCFrzikBtkiAsyNGkU,32 +torch/include/ATen/Dispatch.h,sha256=VoOWqRYMFRZpG1JYpa92uv92L_nAhjebWhsKyhNgI2I,40988 +torch/include/ATen/Dispatch_v2.h,sha256=ZGFbzG-L7Le37JUZyAAE1_XU9LP1Pn-jVtL5ePNYPg4,60516 +torch/include/ATen/DynamicLibrary.h,sha256=3jFXb6PPJc69xKO93s2V9sdvw63lzPvghMmE3F4bKWU,715 +torch/include/ATen/EmptyTensor.h,sha256=97Sl49WBpUcga5FG-29A62IeD1CkhlzsSiXvpAkAYJs,4876 +torch/include/ATen/ExpandBase.h,sha256=M9aB8mJ0CnGtGPP6X6mIFzbH5PmrOX2yQ2rA7yAPRyA,944 +torch/include/ATen/ExpandUtils.h,sha256=k1UB9SruK7aD_ZXnYudrqtFZe8Y75ezGh-EgRk5XUBc,16868 +torch/include/ATen/Formatting.h,sha256=aDSVbqYGSFP73pWYd8X5cz7TwYLpZwHm9EtvITHprw8,35 +torch/include/ATen/FuncTorchTLS.h,sha256=JRGM1XzpnjcNA-7ei0S-anOq5bLfvjXKEZ8999BWlic,1862 +torch/include/ATen/FunctionalStorageImpl.h,sha256=AhdCg9lxndHfbrHeXmR3oupugfix7NQYHAauKtfLL90,7907 +torch/include/ATen/FunctionalTensorWrapper.h,sha256=ywrLNkzD_CTIkUvkSVZiTGyLc0f8WqLGh0SqhKqwn2Q,18220 +torch/include/ATen/Functions.h,sha256=nkhXTIX0myPp7PVgt-T8WFLfawQB5lEv40xGwQYr1uk,56235 +torch/include/ATen/Generator.h,sha256=IsmYQ8-OVWES4O4d2Cw2zJ2zUCcVNnQtwmBJKM68P4s,48 +torch/include/ATen/InferSize.h,sha256=0wQlY5jAxd4hvvN5xytf-JxFxCSdHCFeJL8AM-4XM-w,2731 +torch/include/ATen/InitialTensorOptions.h,sha256=JtlTji1MCEwQtcGcBFkAusPdNsq1HXx-mpHALNi4Wh4,454 +torch/include/ATen/Layout.h,sha256=uHy5slYoQiyLads1R9kjGHbFecuijeOHhHvtIxgnmOA,44 +torch/include/ATen/LegacyBatchedFallback.h,sha256=zsxktFB1yZ2exes2nr1Ct0r0n8TyoRtU4hEheSNM4sE,999 +torch/include/ATen/LegacyBatchedTensorImpl.h,sha256=u_rr-p-PMjg3pXjPIqOiNTliehlwJ9ccCCF_FYT0K38,5704 +torch/include/ATen/LegacyVmapMode.h,sha256=8EcLBLxOnPKRVBqdG1uOYWa3yitoazcKcFNSWWk33pE,953 +torch/include/ATen/LegacyVmapTransforms.h,sha256=q1qn5bc2yTlZJkZMjQQ1BSlEN6c1lLMCZJcrKbbAqXk,7998 +torch/include/ATen/LinalgBackend.h,sha256=SQjROHqkWakXnXNWO9FGhVme2GiElIWz9k8V81i7sk8,750 +torch/include/ATen/MapAllocator.h,sha256=yswU8WDFuwpGiOoGflaClMErXUDJ857EDDzgZxihGdE,3784 +torch/include/ATen/MatrixRef.h,sha256=Jor-7y4-1K7YjNnSVfwlgeypWYI3MBwxZ4m0VzvEaCs,3051 +torch/include/ATen/MemoryOverlap.h,sha256=YbxE7UTcAX6LIZfzVGt-zvnAFd2VrJC5OVD27-YkqZI,1329 +torch/include/ATen/MetaFunctions.h,sha256=CTCyu8ARsTGOtWr0Wqn9ZiE4SLYQ8d_Acf7DqzT8MzA,1984 +torch/include/ATen/MetaFunctions_inl.h,sha256=03ky9P_qMhs5MwWKIGsevq7QbJvA931OeSPYGKvh9wk,16234 +torch/include/ATen/MethodOperators.h,sha256=opWOVIY0lE9N5SJK5_XB4iMjuzZybn6WPL2Mg2QAZr0,15888 +torch/include/ATen/NamedTensor.h,sha256=2Ccbg_TjhIsGFC1e6QAHsS79WUvjjhkKFOmf52bgG8w,36 +torch/include/ATen/NamedTensorUtils.h,sha256=mW1P7l48zsCxjcbIDYLciIwvYJospzfgD-JpdecROnw,7008 +torch/include/ATen/NativeFunctions.h,sha256=cpvCI3c_1RrUrR8dGaTE5tfSDbq6_5RqX2n-V5fV8u4,61803 +torch/include/ATen/NativeMetaFunctions.h,sha256=DFa8Ad1D3YygIaBjz59x2T8rsvKyRXtTr6jDVqUXpTE,58310 +torch/include/ATen/NestedTensorImpl.h,sha256=Hki61cUh7GQDZjugHWGrdy4ujCzJFKg54ZwFMkfsscQ,10508 +torch/include/ATen/NumericUtils.h,sha256=Ff-htYloFWMsmWakl-Oyuq4QByAjcVr-WVzZYfqungU,5340 +torch/include/ATen/OpMathType.h,sha256=yOlwXXIUXkphvTso7uqAe5Zt4XtbmkUqlxPzf9sX1ys,1573 +torch/include/ATen/OpaqueTensorImpl.h,sha256=7Bj8OqInxkLFsElS3OJxUEnSn_muRDme45QmVe3nk7Q,6380 +torch/include/ATen/Operators.h,sha256=m1ZRNNf145hrO7EmIP1pMybd3uVsw4cElRazDzTQnpw,59953 +torch/include/ATen/PTThreadPool.h,sha256=XoZi3jPKkJZWTgsrJSM9JhhQKaa0VAJ5KebQYrudqFI,408 +torch/include/ATen/PadNd.h,sha256=hBfW00bnEx2LZNvZSoDOksijiyQkAXvUBE50CAoKXEQ,206 +torch/include/ATen/Parallel-inl.h,sha256=2sIG8SeGjEQ9KIAbmZADV55ihH1DUtTRGZics9QsdJE,2386 +torch/include/ATen/Parallel.h,sha256=HTvhEWY4382_QuVQrnD-8AdL1dgoTU3oke6IO32hz9k,4911 +torch/include/ATen/ParallelFuture.h,sha256=HZ6MOFJ2bNk1Ks-nqaMUVqp5PFYxLu7e-Km6LYAXCbc,312 +torch/include/ATen/ParallelNative.h,sha256=OQFHzvOXR4-kgl6GyW0xUJCAyogTFjscwq5qMkEp5H0,307 +torch/include/ATen/ParallelOpenMP.h,sha256=CL3441Xwv8xa5tcbW0QOuNA98_GlM9VV2DcjGblYP_c,1337 +torch/include/ATen/PythonTorchFunctionTLS.h,sha256=OV4er-KFz4enf85D9OCMvu1ofmWIv1hkj7LdA4y-2g8,1229 +torch/include/ATen/RedispatchFunctions.h,sha256=iKZzzAizpQ23eORH9-D6ONiUcIRzHgplxCRLHhPgQtU,2234459 +torch/include/ATen/RegistrationDeclarations.h,sha256=QUflt4S9WmKGjGpUEv-yE3HYXFrbFNkjeGu5OEzgIiE,859875 +torch/include/ATen/SDPBackend.h,sha256=m5MU7tSYNniQmgoq7EAFsvxIhq76AsOucX5O89C93o0,249 +torch/include/ATen/SavedTensorHooks.h,sha256=QejaCaC-K30-KLDR2dQFZ20MZM8TwUEdX-xDzKG8mV4,2472 +torch/include/ATen/Scalar.h,sha256=xdFJVWXQK44860D9dbtCrS_dIekAxuHnaeKlrvfLzCw,47 +torch/include/ATen/ScalarOps.h,sha256=75E4Ow6xw85BlSK4qnIGznJR4dKzGc2RnBBn7qP0D50,1648 +torch/include/ATen/ScalarType.h,sha256=ex-_jwtx4oUXviBFRBVrRVkJtSaZMsXa2JELvxRT0DU,133 +torch/include/ATen/SequenceNumber.h,sha256=HVNCQ1sW1di-7_TzIcaxLdbRFjkEAFjxokjjXqraJU4,346 +torch/include/ATen/SmallVector.h,sha256=SHoiKu_mdXsJq0UTlSdElvvXCBP0ZJsjBsdxMS7B4so,49 +torch/include/ATen/SparseCsrTensorImpl.h,sha256=C_OwNOgRc_RaJqujRV40UlaaPd_sVS0rng7vWHyYsII,7315 +torch/include/ATen/SparseCsrTensorUtils.h,sha256=lwpFrnveq5id6e_EXO_RvdmKEwhGuE6_YqSM5q2W0Ik,18228 +torch/include/ATen/SparseTensorImpl.h,sha256=VePg7ZwWw3m3Vqbjc472wYQ-vqjsno9E-nvRjvqUIfM,15729 +torch/include/ATen/Storage.h,sha256=VcWXKctsV2y4A-q7YACqbA4B-hRxu9XrxPQlfE5xByA,45 +torch/include/ATen/StorageUtils.h,sha256=Eh67tSk2Vx9xHW59bBMg7wZ6Rg-GOvgtYJ2fIkPHstg,1357 +torch/include/ATen/Tensor.h,sha256=qHcsthT-fkjfFAcpWpbEmOAOwgZOfBzeyX2rHW9qusk,47 +torch/include/ATen/TensorAccessor.h,sha256=XVhywuAjpY8Wo1NnE-1OJJLRc3Rg6LOMvK6CoD8cI1I,53 +torch/include/ATen/TensorGeometry.h,sha256=Ce4hQpEzNgij4IxIUxd9qLsxzlwuat7KomO6oXyqs9U,4417 +torch/include/ATen/TensorIndexing.h,sha256=7q1Y1pxUUVSMy3xbSM0TkfzvhUc_88A1XKzCyl2zkrU,24860 +torch/include/ATen/TensorIterator.h,sha256=w1RIKqxeiS8wmeiunVRduQ9Cm1-xi3XMunSh3EY0Lk8,39912 +torch/include/ATen/TensorIteratorInternal.h,sha256=bQVnD0TF5q1HXnqCPdNSRDa_e_eYAN8unMhG4OO6a64,2003 +torch/include/ATen/TensorMeta.h,sha256=DNMcV-wfwGnc5S5P6rOUglUrVR1I0bKGusdM4n5ZVQk,5171 +torch/include/ATen/TensorNames.h,sha256=ZKD71pEkjZvo7cK537WsZPxfBmVBtgO1CEt-t2EQc68,2646 +torch/include/ATen/TensorOperators.h,sha256=XU-nDCEu3pd3a30vOprnTY9Edx3mk0MByVG1zlZJTuA,2542 +torch/include/ATen/TensorOptions.h,sha256=uSxXHUaxx0nKq6iXL8iu4qgb0XuWEADFDQmlNWslCXo,51 +torch/include/ATen/TensorSubclassLikeUtils.h,sha256=TMHqah26TN7Vv_neiBaqsxSw5Z3dMX0eLL66GGF1IS4,3317 +torch/include/ATen/TensorUtils.h,sha256=9mSWS8jNwZRFJGg4T-cP_5KJ71i_XMiJHisAcOX5ZJk,6148 +torch/include/ATen/ThreadLocalPythonObjects.h,sha256=spp4m4wqpaGRiZ12EQYGOjfJHKVCdjw4aE4Iq9lz7rk,628 +torch/include/ATen/ThreadLocalState.h,sha256=vd6RyYyFmDpEMh3d4U83NksRGVncXLR1Ar3jlHtid7Y,4433 +torch/include/ATen/TracerMode.h,sha256=Y-ZUcvLev3AhrwEP1K4K_GRVjco1wVtm5KU6KHFiAUg,5640 +torch/include/ATen/TypeDefault.h,sha256=2SUtJuipgP0Aho0EKh3CMy_TKkBYNQiNoIhaDw6S8Go,469 +torch/include/ATen/Utils.h,sha256=qm-Hv9mHK81-sZAxJP8fVr3DGIcvzncdB5W3Nd2zuPE,3702 +torch/include/ATen/Version.h,sha256=qxyNg02gIqQhC_ZS282Qgu0frus7RL07bXSYBXpIOh0,402 +torch/include/ATen/VmapGeneratedPlumbing.h,sha256=AxvRTFN0YBUqNC3Yw--S9BPuJYTYrDMIQd85CDPIqS4,1756576 +torch/include/ATen/WrapDimUtils.h,sha256=QH18Ku_vwxYuyTW2lk0jTwf0QRIzHfzrImLNMWOLoKk,5023 +torch/include/ATen/WrapDimUtilsMulti.h,sha256=mfGp49hqJg3uHiChEcZaP3NXx-AZSixHWqr9JcZOEQ4,1119 +torch/include/ATen/autocast_mode.h,sha256=DXgwm9wwEntatwVlAdFfNzRk3UMdX-wGfHynO88g6dk,39852 +torch/include/ATen/ceil_div.h,sha256=_TEAuNd5Nqes7nlpi9kP2yXI5F23wZzVvxvx3aCUPYw,521 +torch/include/ATen/code_template.h,sha256=DBC_68YyW_PW8cY0y49WVen8ydY1CRexm5dkRIat7iI,7196 +torch/include/ATen/core/ATenGeneral.h,sha256=IQQc92i1DuPkEZ7sKJ4DjM6a_zEyf0Y3bVzu5wDc984,48 +torch/include/ATen/core/ATenOpList.h,sha256=aakj8oiOCMjnG7fgAIaA70W_afez0btAF-x3PTPE9h0,259 +torch/include/ATen/core/ATen_fwd.h,sha256=TFN6NG2CHYp-O_gQIWLIAnxuuuCgZiAfnrFvQDpIzhs,1070 +torch/include/ATen/core/ATen_pch.h,sha256=mVEq7o8sPaIQGac8WH8Avk_VJ055b_ki5fGZjljd-5A,5415 +torch/include/ATen/core/Array.h,sha256=8kbQ-Pxou1H_OvMuBb1zydD_KFttpcpr8ORor0eukPA,1182 +torch/include/ATen/core/Backtrace.h,sha256=NHY_QVjlzACvtgnyHYa9nYai5N0aO0O9-ByeuDotpOw,61 +torch/include/ATen/core/CachingHostAllocator.h,sha256=SItvXVlcRKy1_-LkCUXdG8ozVQ1YF-AnIvk6eiv-ocs,16632 +torch/include/ATen/core/CheckMemoryFormat.h,sha256=RBxWRzYZl3YvVUyu0mgF-_kqe0FzwL5DlTerediJ5lg,814 +torch/include/ATen/core/DeprecatedTypeProperties.h,sha256=u9Dt7N1gfAyEiL_smw1z9n2Fd7aqLENpGrTTWTOqRW0,4018 +torch/include/ATen/core/DeprecatedTypePropertiesRegistry.h,sha256=5SRdiKiCKqFjIgkP68i4o0aX7Gzu8pMom2yWE0FCDRc,877 +torch/include/ATen/core/Dict.h,sha256=pR2pJDV-FtzsoMh8Gbh6Kfz_K93lFYZZKaQDriFYxZM,13719 +torch/include/ATen/core/Dict_inl.h,sha256=4bzJtPbWXeQX95Bw_YvBpZeT4Wpke9JF6boMdYfCI6g,7688 +torch/include/ATen/core/DimVector.h,sha256=Ls0_clT44nBVoSTR7RP-FUrDcb_ejj7JguM_lVyyXXk,292 +torch/include/ATen/core/Dimname.h,sha256=2rWiZJpRnk6Wfo8IiZWJd0Izn1f_mmn-r1WcmiXAeRw,1215 +torch/include/ATen/core/DistributionsHelper.h,sha256=XklazWrYV8PhsuX6-JYpgqYXUdyEs0ZQMsgxT8RdkjY,12839 +torch/include/ATen/core/Formatting.h,sha256=oM97AkBviueNwY7aDcE4CEFLnHcpBdyuj8EtOY4qlCo,718 +torch/include/ATen/core/Generator.h,sha256=NpJtnS68Ul7eqSC-7Vlz_R9WjqyxvYRUxpmyui4kQBY,6597 +torch/include/ATen/core/GeneratorForPrivateuseone.h,sha256=xxh6tPTiJSrUhDvHfCAoTTeGKfk5e8T6tQHIv_xsg5E,1110 +torch/include/ATen/core/IListRef.h,sha256=tgBErnLE8heYtfrtWyqdN53ZDp_P1MhxLMLGACbvN1c,21567 +torch/include/ATen/core/IListRef_inl.h,sha256=k3hcHY_t3RsslFgVivTbIka9LYM-MHmqhDFuhLH4RBY,6310 +torch/include/ATen/core/LegacyTypeDispatch.h,sha256=7pRRzqbhIwm7wkqpWXV1BKPjR15BxiYWMRBCJ9cVwa4,4968 +torch/include/ATen/core/List.h,sha256=BPPPrN4QwVFjE9dj-SSpqx-j9gGeqrrNxJOjDS-NWBc,16569 +torch/include/ATen/core/List_inl.h,sha256=NDuLMNneKMkA-tT-4d0mMBKKhlS5WtswoZzbd4CCEUc,11110 +torch/include/ATen/core/MT19937RNGEngine.h,sha256=BvBrpPVLoygmSiLGPubPJlMOMwbwCzWFXgpk46y0C6M,6704 +torch/include/ATen/core/NamedTensor.h,sha256=mq9oOK9M2tCUBHAP2UtVeCpIPqxMeJNaXq3Ise9lx6s,5375 +torch/include/ATen/core/NestedIntSymNodeImpl.h,sha256=An4TFB0-qSROiv3pEkgwYNEP_kpAUHJaFzl2_bO6cDE,6147 +torch/include/ATen/core/PhiloxRNGEngine.h,sha256=lJ97bZh1hkhZZ4BPHa4PqiwTIaQQr5td1_GuXaFZIsA,7984 +torch/include/ATen/core/PythonFallbackKernel.h,sha256=nrEyVK3V-40iw0jR2hkbvWc_4Rh442UYiB28hWcufaU,1129 +torch/include/ATen/core/PythonOpRegistrationTrampoline.h,sha256=eu81ON9auDlHX86hHvI0fjIwiTn4sMw4KiaU5aCgeCs,617 +torch/include/ATen/core/QuantizerBase.h,sha256=gRuvu0vzE7CYmjuhq1--MvexJ-zabo2X1VSgCmBTq2g,2771 +torch/include/ATen/core/Range.h,sha256=47XY3n5sg3XIQ2gYgMPpTCD1RLQl32EVytCt4j7aHTw,443 +torch/include/ATen/core/Reduction.h,sha256=DMk5kCWiHjmL8VKSU6NIP0v1wNboJhmsKvTOQH4f5I8,413 +torch/include/ATen/core/Scalar.h,sha256=WPwKE4RciXVN9db99hpCLvDZAK39jlG1zlKffEFmgcQ,30 +torch/include/ATen/core/ScalarType.h,sha256=gzNZUMu8I-Zts17Fg2oXY0RLx6xTqy6XK_TIdCwxAus,34 +torch/include/ATen/core/Tensor.h,sha256=rl-RnCIWQ9B_MU9umHjehOeB1FCcOAYLVAiW10qNcGw,2617 +torch/include/ATen/core/TensorAccessor.h,sha256=6IxxjxWpVHsAX5QbuCBmNPpYBTyY6Iuy55PDw4hnwWw,10802 +torch/include/ATen/core/TensorBase.h,sha256=KbEjbOqrg875ckfZCiy7ryk-T1pJFCgXBpiuOtKwNeE,39179 +torch/include/ATen/core/TensorBody.h,sha256=T-l1kVHWiAjmiHyZ1oB0sY0wB9BGDHZE6f4DTcqOCRc,296050 +torch/include/ATen/core/TorchDispatchUtils.h,sha256=BovdvVDa5kO88mb6jiyWabkRr7E7p0TKDQ_NH5mEP9Y,501 +torch/include/ATen/core/TransformationHelper.h,sha256=Dj6V-dJtsXjESPTm-zxAsePkLGvEkn5SfzfjA2oPr6c,7029 +torch/include/ATen/core/UndefinedTensorImpl.h,sha256=gZf3eRbLC3HoqVKb2iiqACGBU_iTRgjareRV-Wub1DY,43 +torch/include/ATen/core/UnsafeFromTH.h,sha256=J6Ok0E3N54Y33xmyd0fPI0kOnYKUOtwfon559YnT-Yk,729 +torch/include/ATen/core/VariableHooksInterface.h,sha256=vWBqTy11Pte-sg7S8imcGN5ymCzxPE4CQFb0MpiNRs8,3621 +torch/include/ATen/core/Variadic.h,sha256=l40dcQD6ZmkpghGoEkIHyNi5xK50ct0vbq0CGiRzCpI,2472 +torch/include/ATen/core/Vitals.h,sha256=hE2O_y6FsLZkp_8BNX1Y-mslh3GwzT6dNHDFWc_uwCw,2532 +torch/include/ATen/core/alias_info.h,sha256=hKsRBpZHV1OAPdNJOoP_PSCYS45jkOH_qEZlD0py0gY,4311 +torch/include/ATen/core/aten_interned_strings.h,sha256=KUoLn9kKfH70FUR0zAp21YZ7IbEnXt2WUcAlzNCdJdY,58233 +torch/include/ATen/core/blob.h,sha256=NvKfsNclpdYa-dnyQdxrFJf-xmARNF06OS1orERwtOo,5450 +torch/include/ATen/core/boxing/BoxedKernel.h,sha256=3tNBJXI7iaBoj7qiWtupJGJJTqBi8F6uA5CkfGARoUM,8350 +torch/include/ATen/core/boxing/BoxedKernel_impl.h,sha256=dsqkF3DXRHni7DUYax7xuq-QaSWBnT8qsQG-N1ipD_w,3361 +torch/include/ATen/core/boxing/KernelFunction.h,sha256=9_2qFzxLV9kzTLbsdrRaQvyBTgp6AKI1_Il3qU-UTrc,9008 +torch/include/ATen/core/boxing/KernelFunction_impl.h,sha256=6hbhkD5JUSN9UJ7C7IWms-S9mhmA7coMZ8WH0oWslgg,12013 +torch/include/ATen/core/boxing/OperatorKernel.h,sha256=qQ3pujC0MeTGkO_m-Cx3gs0Y4zr32-VHFKY00pX-OBI,718 +torch/include/ATen/core/boxing/impl/WrapFunctionIntoFunctor.h,sha256=PTEoTFHJ0-N2ApDbpKamTMyLSX8HzTeNPLzOdNCXgYU,1366 +torch/include/ATen/core/boxing/impl/WrapFunctionIntoRuntimeFunctor.h,sha256=FpEKCbEh8L4tRXQIImZpS2M8MmBr6eYGX-yOk_DMMtc,1473 +torch/include/ATen/core/boxing/impl/boxing.h,sha256=OaSCnOlQvH9rWiHyqvCWAK2PO5zPdsBHY8hn7-xVWP8,14271 +torch/include/ATen/core/boxing/impl/make_boxed_from_unboxed_functor.h,sha256=WfyvuD3eMCSry3yGv4iV0xAGpJ5wPcdI0V9yddF5gG4,32527 +torch/include/ATen/core/boxing/impl/test_helpers.h,sha256=4tsSztQnU76NNyxLxjnWBI-AWyGifOOnDq72uC65Bu0,4541 +torch/include/ATen/core/builtin_function.h,sha256=So8-NHvU_URhTsdHErhCnyh_YmD4IkcmjafQK51LSRo,2134 +torch/include/ATen/core/class_type.h,sha256=TCwPe4TGVYMMhZ4DWGXG90DyPU7nLHChCd7XnoW_XNQ,14541 +torch/include/ATen/core/custom_class.h,sha256=oIQZOptRGJV2w908hvdHCd0aCW43mWpAmEU5AAKXThE,772 +torch/include/ATen/core/dispatch/CppSignature.h,sha256=YysqyV4ETUnNJtY1gJ-uqnsGDDWisdSOmzDUjdL8YyE,2505 +torch/include/ATen/core/dispatch/DispatchKeyExtractor.h,sha256=Qb2jIoLRdRqtj967UpNf_lGKpUGojTN4cdt9KGyaEyY,10154 +torch/include/ATen/core/dispatch/Dispatcher.h,sha256=8bNE8SaaLaNs9yLnT78m62dvv3VU5Z2hHniTpdfitmo,33779 +torch/include/ATen/core/dispatch/ObservedOperators.h,sha256=NyVoJTiGihd_fcQO-tzHXCBJh0QaY_aaM3JtiWCW2M8,346 +torch/include/ATen/core/dispatch/OperatorEntry.h,sha256=0jDGCVpaxXxsT_kBYL1OQbp5Qi9QBQxugAkZ-pF7wDU,13200 +torch/include/ATen/core/dispatch/OperatorOptions.h,sha256=_cv1qGxdAi1s52tqNHH4ZRbuoTooyqByfICi0a3d-uc,953 +torch/include/ATen/core/dispatch/RegistrationHandleRAII.h,sha256=3no-STtJD0LpKIT6m5AKF-wHKiuUy4VQ-Ay-McM1p9Y,894 +torch/include/ATen/core/dynamic_type.h,sha256=iviDi1Mjm61VfIuzWbHsxz7BQeoqHle2W36DvNEAkys,10840 +torch/include/ATen/core/enum_tag.h,sha256=Pg0NlQTHrRu9qjfGJ2T9LpeIZBIDczo67cSQu2hvskI,538 +torch/include/ATen/core/enum_type.h,sha256=2Hk7AG7tKn1hAdWS7cDdxPTs_pibDZhI92jIGM1A8P0,2942 +torch/include/ATen/core/function.h,sha256=Y2XZ-caDqsWt8lu51lVXEF-HWiRSB9gvwFLPuj32Xvo,3574 +torch/include/ATen/core/function_schema.h,sha256=cNt6ZP5jEPLIHKU264gRdQUAISwv4yKfmIDsuxZ_iYk,24670 +torch/include/ATen/core/function_schema_inl.h,sha256=xC5TvePRpi_ZKmeHOyyh34zcyUKIUN-7ixhB4J8yWTY,2072 +torch/include/ATen/core/functional.h,sha256=NVGx0ofC04rv9MfOzCcqsSzubMY7v-sT8Ggj9N3wIDY,1518 +torch/include/ATen/core/grad_mode.h,sha256=ay3zsOf0ukxMxLVRkKEd5IOCU9syB7pAX1tL1AQvW2o,220 +torch/include/ATen/core/interned_strings.h,sha256=SWAHBjKumMsJHM0YSiTc3OqGLW59_qObCLAJZ8TNEo8,13763 +torch/include/ATen/core/interned_strings_class.h,sha256=Qnu3MhKsj0nEGQ7HRxCKpdhEiWfa6VnKsvfC4f-5NZI,754 +torch/include/ATen/core/ivalue.h,sha256=KvPRSzSGqQ1RbiRY7FvKpnuY9l2Zg6jbb3w5jXQ8-TU,53031 +torch/include/ATen/core/ivalue_inl.h,sha256=shfy6r77WnYVB-8l7_D6Y4zpu1afGQbV7A26Xa5645A,89773 +torch/include/ATen/core/ivalue_to.h,sha256=1sZ1MHxxnyqiv1FLFg8KfoLnDw7kq8Q2IKWGOBHyVhg,792 +torch/include/ATen/core/jit_type.h,sha256=dK8DI_rOJ0Fqyg6C0XYMB7xWsZfMBeOQdE22Tchf1I4,74418 +torch/include/ATen/core/jit_type_base.h,sha256=o9XXQaf8lvscPkUPgEuHps6-hHKZ19lUo88NEHONjr8,23845 +torch/include/ATen/core/op_registration/adaption.h,sha256=_B5PnaAl6QWlPKi2IgycIZR1gu_ANPJe24ixfnVwo0o,3297 +torch/include/ATen/core/op_registration/infer_schema.h,sha256=85t4axjs2tUcMRwDC_RgbjlasZR2POqc6hLz0CqlcBo,6894 +torch/include/ATen/core/op_registration/op_allowlist.h,sha256=9heOZqUPATOhB6AhCs9rBpZVWonvcljnyVclTHK7Hy8,7078 +torch/include/ATen/core/op_registration/op_registration.h,sha256=4sVaCIgZiKwa_hCORoOvByrfQzmaH2v11Hiqux-43QQ,29195 +torch/include/ATen/core/operator_name.h,sha256=DrQTc8DxzVfufdTmDf4b3koddHAlg4BxEIVYFIbcZtE,3143 +torch/include/ATen/core/qualified_name.h,sha256=hs6uTmzCsudXlclzLMJt6CMEAJzhUFoSm3aLmj0WT0Q,4534 +torch/include/ATen/core/rref_interface.h,sha256=GQ2fMHcFaMV8uemkwNkbiNlQlrScEDlP68Qmf-TE7po,1249 +torch/include/ATen/core/stack.h,sha256=fA038dfXMvuA0_baghOh0MQBwM9k_dYRS6zakejgso8,6474 +torch/include/ATen/core/symbol.h,sha256=MpW9bAln8kwd5yllTP2Aeebsv41tSfJv5ncl43xCBPc,6020 +torch/include/ATen/core/type_factory.h,sha256=nxnQy3wuMbotQ6oQgeqmxLUq9pCaCLcyU7iFvPfiK-4,3360 +torch/include/ATen/core/type_ptr.h,sha256=TrlSyrHfXSMPezm_eIQYsMuNk2LVP3LrYwT30MWRcDg,1272 +torch/include/ATen/core/typeid.h,sha256=fR5DkdL7DayDhWT3Y69CQySt_TMFIsuCFAjV4Ihc1yc,30 +torch/include/ATen/cpp_custom_type_hack.h,sha256=938TgHVOXsBljP5x3gegAr4du0NGkJ8o2ZJ8XY-3-N8,5540 +torch/include/ATen/cpu/FlushDenormal.h,sha256=MTiddtcTeSZVkkfL7HQvP0_nzt_Q-cQxrjPoC_nYo5g,551 +torch/include/ATen/cpu/Utils.h,sha256=WxsYDq4kJAPs_wduXihzDa9rVPT3ASnjh4qErXjV078,933 +torch/include/ATen/cpu/vec/functional.h,sha256=lUHsuFIHH4XHaUs9TOTbrr3rgVsiMB4ywI6JJwQrl60,106 +torch/include/ATen/cpu/vec/functional_base.h,sha256=c7DCNbsZi_FTRivTrrSbBSaWaHsB9exYy00gWpVkpeU,13835 +torch/include/ATen/cpu/vec/functional_bfloat16.h,sha256=-oN2URBrAJP5oTn6eJkhaIKIUzxG0aY5H6TuMYuJRYg,25227 +torch/include/ATen/cpu/vec/intrinsics.h,sha256=qqDRejyBiy-sH5pDYqnSuHc14HFM5T47afVksQ4orfg,2159 +torch/include/ATen/cpu/vec/sve/sve_helper.h,sha256=PlV6mb0TnKCCzE5M05ejMrLVLecSp_ZaTYIADvocBLs,2914 +torch/include/ATen/cpu/vec/sve/vec_common_sve.h,sha256=3gavpP1pX4N3bt6iCLlg6Qf7kkzGLQCTunnluN60CEU,7180 +torch/include/ATen/cpu/vec/sve/vec_double.h,sha256=u7lNpUT_-tDECJqg2Fl6RP6h-AxIs61-k27cu8HI2CE,17872 +torch/include/ATen/cpu/vec/sve/vec_float.h,sha256=A9fHs9WIcu4wByzapeHCADV46J8qKsMq3-Hw4cyXc7c,20709 +torch/include/ATen/cpu/vec/sve/vec_int.h,sha256=astHWGnAoHU_l-XlJCmQNlM5qnlsFl-31D5ZycoUiZA,28865 +torch/include/ATen/cpu/vec/sve/vec_qint.h,sha256=AXBql8NzZZSnmZmQYuRRq89Fc_79oQUiQ2Gpoitw3QY,20055 +torch/include/ATen/cpu/vec/vec.h,sha256=pUzqsjwZnGwjbAXRm0CUhoq_IMSWfiqSvv-t7kMq0Ik,1368 +torch/include/ATen/cpu/vec/vec128/vec128.h,sha256=a54IXRmXz7HwNvlenpZNnP47m59cV8B-ZWvDE0qeixQ,379 +torch/include/ATen/cpu/vec/vec128/vec128_bfloat16_neon.h,sha256=NSjWOr9WogZNhIMvCzJcXhDlhX30uSX9J2t0M2LwhTc,23859 +torch/include/ATen/cpu/vec/vec128/vec128_convert.h,sha256=sPGBkfTLad6i2-oaugbOasd2yWK0y4zYI_qJX8bHW-U,2043 +torch/include/ATen/cpu/vec/vec128/vec128_float_neon.h,sha256=OSL3683m1bm54RtM5A1nBxxXfOF47Lu3gIhZPEYVOpw,20338 +torch/include/ATen/cpu/vec/vec128/vec128_half_neon.h,sha256=8c6AN4Tq-CQA1Fq_yi3SiQnBvds3IjdMo35B8w7I5fw,21077 +torch/include/ATen/cpu/vec/vec128/vec128_reduced_precision_common_neon.h,sha256=aJyJ2Bz_nBBDm90d3uF-cJeYCo3KoJuqA27UxawAZ6o,9564 +torch/include/ATen/cpu/vec/vec256/missing_vld1_neon.h,sha256=Vp2fvSMk-9OtDDeaFJyJg7yDsGx5aRiGcOks3z9oi0Q,14011 +torch/include/ATen/cpu/vec/vec256/missing_vst1_neon.h,sha256=AceV6uHlAHv3XHfYLhjtz3tlIj1EfH2xpQxQEOTOV-0,290 +torch/include/ATen/cpu/vec/vec256/vec256.h,sha256=mjBXrqF5FoROfF8uAp9nI_G5Crc5-enGwIWvg_lSMa0,12233 +torch/include/ATen/cpu/vec/vec256/vec256_bfloat16.h,sha256=UoAMtTH0raBwxo0bugpC9hEII4Vr25h_t3Vj6P6jSPo,41932 +torch/include/ATen/cpu/vec/vec256/vec256_complex_double.h,sha256=wR_EjTq4rMcDlDl3cytnO7zuXVY0s-Yl7zTlm0Tt828,18573 +torch/include/ATen/cpu/vec/vec256/vec256_complex_float.h,sha256=90djbtyXPznGId-lpww9tKFBhbT_1MT1SpEJt7X9j6A,20415 +torch/include/ATen/cpu/vec/vec256/vec256_convert.h,sha256=cw5WL2U_R8n_n0UfDZZJp_7K2gn5L-C6ztEy6lCXZLk,10014 +torch/include/ATen/cpu/vec/vec256/vec256_double.h,sha256=JRGRag2ScNdRI0ATc0_bqqyXLaLxB9sGZ5L_zeCS8Ew,15140 +torch/include/ATen/cpu/vec/vec256/vec256_float.h,sha256=hSFn-a5iinwAsDIVNF3QM8EnyLij-jcI_iKbRORwTJY,23557 +torch/include/ATen/cpu/vec/vec256/vec256_int.h,sha256=iDxFchjOTtEFdihZkaNwQi5qhMcRTgcKXqfW7DfdaAA,62193 +torch/include/ATen/cpu/vec/vec256/vec256_mask.h,sha256=hArgJrOoCPMpaXKtMkaAZXlBqyn5cI1-VL2dhboWbN0,9070 +torch/include/ATen/cpu/vec/vec256/vec256_qint.h,sha256=PDayxRBcE70t02Rsztndus1bXH7mVRrbkaWyUcFQ0_s,49189 +torch/include/ATen/cpu/vec/vec256/vsx/vec256_bfloat16_vsx.h,sha256=IcdIEgbKCZQRx7UGDzZR4CFSS2FzWJT10-jr8sLp5-8,2186 +torch/include/ATen/cpu/vec/vec256/vsx/vec256_common_vsx.h,sha256=kPsHeEttD-YCaaOagBws-9tFJ6uKl-5MwJTa9NA50_Y,8298 +torch/include/ATen/cpu/vec/vec256/vsx/vec256_complex_double_vsx.h,sha256=izPJczp5vr3h7tIZHqWCdYipyZDYa2vcTScE-8eEmFo,19608 +torch/include/ATen/cpu/vec/vec256/vsx/vec256_complex_float_vsx.h,sha256=lqGN-MdDi2J9dJK4Gx5787rmMH6VzIOUEXb4f5BmY8c,22230 +torch/include/ATen/cpu/vec/vec256/vsx/vec256_double_vsx.h,sha256=RtAtE8iemRPvD5eOKTWi39K_5iFn7a2X_2Re7EFovTg,16348 +torch/include/ATen/cpu/vec/vec256/vsx/vec256_float_vsx.h,sha256=WhViYWqyUVZuhus527Y48nXvj8y4Gq02CNl9NzvCB1U,16768 +torch/include/ATen/cpu/vec/vec256/vsx/vec256_int16_vsx.h,sha256=Gu8LyMm__74o0YxvD1qUjTo1WGhWXzHtGkgBgk4t8PI,14489 +torch/include/ATen/cpu/vec/vec256/vsx/vec256_int32_vsx.h,sha256=1rdHEdnBPOSz__O2qUjNnyppBBhbMyDMlLfmGAEAyvo,12249 +torch/include/ATen/cpu/vec/vec256/vsx/vec256_int64_vsx.h,sha256=U8ZbrQ0Omof9G36DGDDPuZeti-6PWJ8SmQj6ltBI4ls,10461 +torch/include/ATen/cpu/vec/vec256/vsx/vec256_qint32_vsx.h,sha256=EfIA81IH_lLD2CPEd4ap3p4S1etEcI59E1SdQedYV2U,10060 +torch/include/ATen/cpu/vec/vec256/vsx/vec256_qint8_vsx.h,sha256=2NO9jlW8abl2tHPmSj32zGfKyLLeQ8u8bz8Pdf-VABw,17179 +torch/include/ATen/cpu/vec/vec256/vsx/vec256_quint8_vsx.h,sha256=v_OXR9WBSWSnInew4CwfqqQt-3tt20ioy8XmO4UKrlg,17880 +torch/include/ATen/cpu/vec/vec256/vsx/vsx_helpers.h,sha256=L1sDCeYyfmLfBDS6Hd1Zi9TUlfyU0bDS0Dh271LsHm4,20533 +torch/include/ATen/cpu/vec/vec256/zarch/vec256_zarch.h,sha256=9xA4ineKswTgr5w5S90iKWtc10TWXgWI6mFfmUUsWkI,109720 +torch/include/ATen/cpu/vec/vec512/vec512.h,sha256=hQc-BfgeJ2-XnZZOlIz3MGWlqRkj284huMuMFihf-T0,10769 +torch/include/ATen/cpu/vec/vec512/vec512_bfloat16.h,sha256=dNZ9sA44XFurELd5RZ6BJruCaw2yGuvsfDBDIG9dgZ4,64163 +torch/include/ATen/cpu/vec/vec512/vec512_complex_double.h,sha256=RCQ-I_dQaSTwJRJq5jL6Z7QT7azf1MeyAYKCHajC1xo,24083 +torch/include/ATen/cpu/vec/vec512/vec512_complex_float.h,sha256=M8hb0DZoLcuYAJNhKbkCAvpKNQ7EOcD0mKjBGm_b2Pc,44783 +torch/include/ATen/cpu/vec/vec512/vec512_convert.h,sha256=UWMgSOhiyqn5cHOP8tNpQ0bheIJflId9OR3DqxVttS4,8759 +torch/include/ATen/cpu/vec/vec512/vec512_double.h,sha256=5uzgyBHV3JPX_dPlIbvPh9sv4DWA9py_7TVAo7p72Ik,17096 +torch/include/ATen/cpu/vec/vec512/vec512_float.h,sha256=rBfLU6eXmpwj2Y7gIbJo8Hdt8wlA-ooE9Nx1mbv3ogM,26577 +torch/include/ATen/cpu/vec/vec512/vec512_int.h,sha256=lwNUcmotBS9RouV1k0e24Qp7feIcCc508RdvNVrWIp8,55958 +torch/include/ATen/cpu/vec/vec512/vec512_mask.h,sha256=_VgTL9_FssJ0YjlY7DzKw-XJwvY7O3GVesgniqh4xzQ,12715 +torch/include/ATen/cpu/vec/vec512/vec512_qint.h,sha256=70oyLDwgs2snzCG--2kdaPbjcbzYP7pTBQoeh7gIsiQ,51790 +torch/include/ATen/cpu/vec/vec_base.h,sha256=31PT6UPHhBarj03XCYLVqqW-zzZs708GVPMQ091WTCw,42846 +torch/include/ATen/cpu/vec/vec_convert.h,sha256=rxwzeyuNo1xvpM52uqyBM1iLSfg8MNFfxiOjwY6pmOU,1903 +torch/include/ATen/cpu/vec/vec_half.h,sha256=ukGr5G-83nDVuOFB7-h4rJ_GXK-Io0047irGj1DMWWs,1438 +torch/include/ATen/cpu/vec/vec_mask.h,sha256=dfb9mvAEOQvyGO0UtdVDptf6csr9q9d9GWxui2X8I2U,10240 +torch/include/ATen/cpu/vec/vec_n.h,sha256=CeM88n_9DKJteb-0KYvMDH1kbnVfyvQPacKoOzlevLQ,13828 +torch/include/ATen/cpu/vml.h,sha256=Wa4w5yQBvAU_JoIj0cSjF_3ofYNRzxGDefRBCHDrHXY,6245 +torch/include/ATen/cuda/ATenCUDAGeneral.h,sha256=-37BTZQ1d8h5R2_fTgelbx4RKkKYjI33FB2x2sf8jaY,199 +torch/include/ATen/cuda/ApplyGridUtils.cuh,sha256=8F8ridaqhj3mdDVgqPLSFbUaUNNEqxPORGfy4YE-c7U,1356 +torch/include/ATen/cuda/AsmUtils.cuh,sha256=1zIB1Nz8ZhhFQftcLwxwEeYo7IINf1bMPFd5XOVyflQ,3543 +torch/include/ATen/cuda/Atomic.cuh,sha256=Mv7Hzjh8xbJEwR33gwzn85AJVdShex7UysZuorK86Og,27186 +torch/include/ATen/cuda/CUDAApplyUtils.cuh,sha256=gQKAWnTaN1vEGFvqkWauagW6l7imtH2IMEFr8Hy0D-U,20983 +torch/include/ATen/cuda/CUDABlas.h,sha256=jAGKXhbJ7LKfYC901-st5YH-sx5uI_STBQbOIYqSj9o,13320 +torch/include/ATen/cuda/CUDAContext.h,sha256=cNOI7xgC-x_8PsQjeI6Usa4giKkD-ftPG_vIR3n1Wsw,247 +torch/include/ATen/cuda/CUDAContextLight.h,sha256=U8QqcU-pD4LJxleWeUy02quELOYcT5X6xLIUPniZ5XU,2836 +torch/include/ATen/cuda/CUDADataType.h,sha256=xyIW-BnPrpf_0Va9h8YL--huEPhJG7yA_zS2gTgA9wc,2983 +torch/include/ATen/cuda/CUDADevice.h,sha256=t7S0OV_AsARopbfquC6hGWnO4M0PgvwPwTTYBn65SRA,555 +torch/include/ATen/cuda/CUDAEvent.h,sha256=9N4kcgaua58sNGKpSFdPPmVmccrXYDsClGuyKc6swfk,7307 +torch/include/ATen/cuda/CUDAGeneratorImpl.h,sha256=tlE6fy29RKzYo7-eMidtujOpNWN0E4lt67weEx1y72c,6262 +torch/include/ATen/cuda/CUDAGraph.h,sha256=xj3M3z1JLbFPFumTKOxeRGZZ1ssjQZWfL2AM8-1UcjA,3434 +torch/include/ATen/cuda/CUDAGraphsUtils.cuh,sha256=S5JvMK81gjexaeJ1EBEOc7K9Npt-4cpLWXsIgpfsLtw,1954 +torch/include/ATen/cuda/CUDASparse.h,sha256=CAQ_5Wc2lBCdvyRXg7wbbiK88UTz-a0EhCMmUIiySB0,2671 +torch/include/ATen/cuda/CUDASparseBlas.h,sha256=sC3nFgkZqNlhyXMQGpKcEsnAN3z7RwmpcVEmMoY25KI,13095 +torch/include/ATen/cuda/CUDASparseDescriptors.h,sha256=I4EoclUNNl3iILr6x4J5fdN8Udlj8k0eDZ9p24CX3b4,9637 +torch/include/ATen/cuda/CUDATensorMethods.cuh,sha256=NMDm85ZoVJgCF5a8IDFoYtTC6cjGGLbSRwZm7k7mocM,285 +torch/include/ATen/cuda/CUDAUtils.h,sha256=kShPcd6MMHM9udS_bqKHchrN6sHuf28T3o2GrpiiYIg,436 +torch/include/ATen/cuda/CachingHostAllocator.h,sha256=dF5b6c8n9qaJkPyql4-OWCke7xOM0mXRYA3Am9N_dlk,1363 +torch/include/ATen/cuda/DeviceUtils.cuh,sha256=5Ys4trVnuxkZK7YpVQTXTa6dYf9t--bR1u5zU988l3c,3401 +torch/include/ATen/cuda/EmptyTensor.h,sha256=JVhy_vgi-l5h8JU23Bi2tExQ-nP6yQdjYbeo2zSBuMI,1250 +torch/include/ATen/cuda/Exceptions.h,sha256=RoQSL9oXYoBQsnjlQl-R1FRipPRq7MF3WSFoe_CIPX4,11287 +torch/include/ATen/cuda/NumericLimits.cuh,sha256=l8ZMeSe4Z7YDm3eZOioax0qLXDxfW-QqErHdDzSTQis,5335 +torch/include/ATen/cuda/PeerToPeerAccess.h,sha256=BajqGhURmf0x3cWqQdQpJNRPJyKkGdFJKc54x4Vk4mg,306 +torch/include/ATen/cuda/PhiloxCudaState.h,sha256=_l4MLBwVfl97Y2lyUlJ7N5UKKPwzyWii7vZVDnY-LR4,90 +torch/include/ATen/cuda/PhiloxUtils.cuh,sha256=gXAtRGIoTgIVLwG5aZhwbggg9tQGu3_t6Xi7yfFPFdQ,99 +torch/include/ATen/cuda/PinnedMemoryAllocator.h,sha256=a5veg34q0HTustIG_ZoHQTGKF6n-17w_jM6e4l2MTMg,256 +torch/include/ATen/cuda/ScanUtils.cuh,sha256=vly6Da0bLznDlFg6QD68wCm_L1W2ouZM5zzIzF3xtwI,2105 +torch/include/ATen/cuda/Sleep.h,sha256=suesWOumhYyEhgLdpcQR69Dh683RE22IfP7LtilxRHM,332 +torch/include/ATen/cuda/ThrustAllocator.h,sha256=XnhZ1t6xSoCEW-w2IDpbqye2mSNy_T-dX2vIfEGetoQ,528 +torch/include/ATen/cuda/cub.cuh,sha256=yr1FLvvgr0zsPIYhKn_VYTh_-GcyAN0P8X6uxx1Nj74,23160 +torch/include/ATen/cuda/cub.h,sha256=9FrasgI3FN9cI2cbZ-APR8lyGf-Rx06_EkUbmtNzsaE,3455 +torch/include/ATen/cuda/cub_definitions.cuh,sha256=Oz2Q_AyivGFhtFPSS7K99ziO42trv7dE-WcCe8B7W3Q,1510 +torch/include/ATen/cuda/detail/CUDAHooks.h,sha256=e4j0iLQQHpVizmRXBYVJZFBwillkJDr6g4OeDXkb6h0,2495 +torch/include/ATen/cuda/detail/DeviceThreadHandles.h,sha256=97vDhT1VlEy3DJZB-5BmNuV0U3_cjOdr4P50L8e4Lik,7168 +torch/include/ATen/cuda/detail/IndexUtils.cuh,sha256=pZQVDPSx-nrWRHaKQ1D4ErRuBE96jJP8GHTGK9VaMIk,903 +torch/include/ATen/cuda/detail/IntegerDivider.cuh,sha256=jYQGvBlRr344Q401CFlF8fErsVj8_ZL5Zz9L7GJJ58Y,4143 +torch/include/ATen/cuda/detail/KernelUtils.h,sha256=zll4AvARCACTL_aUCKyJ-3n__9n7WHC8R1K5U-Fn7XQ,1560 +torch/include/ATen/cuda/detail/LazyNVRTC.h,sha256=WMzEfhr89A1AVJ-6pP5YRIXwxnZOEjLgRUlcpTtsBHY,231 +torch/include/ATen/cuda/detail/OffsetCalculator.cuh,sha256=8dJkdAws9RLtDkSFZUOCk2xTFCwrJnm0s-WgEob18TI,4536 +torch/include/ATen/cuda/detail/PhiloxCudaStateRaw.cuh,sha256=LWCXbSKG02-cDaIs3nJAL8sFwaJ1tGKGF0rxBp24iCU,1401 +torch/include/ATen/cuda/detail/TensorInfo.cuh,sha256=96mVn_puxthtLQmp4XnI3uv0rBm3mB1Ll95X3LHiw3U,3355 +torch/include/ATen/cuda/detail/UnpackRaw.cuh,sha256=6yY9GDS-Q7Oo9oZX0vUPrAbsUgXfPWWVtwfvg7iXjeQ,1490 +torch/include/ATen/cuda/jiterator.h,sha256=UUmWS5iO_7CC9yILbli86y6pxVqGsufKGXTElgAuXEk,1000 +torch/include/ATen/cuda/jiterator_impl.h,sha256=8_mj3vLsZnghVYqNpnY9BwtfBx9TIrEg9eVpm518I20,7351 +torch/include/ATen/cuda/llvm_jit_strings.h,sha256=sgRyT8521Q5edS-Qb8jrj-Ca4sbolZtP9O7xBFws4GU,442 +torch/include/ATen/cuda/tunable/GemmCommon.h,sha256=du7UiY4ts8KzNGPK8qs_E6Yv3mZhsb0OE2KDbkqba_M,13773 +torch/include/ATen/cuda/tunable/GemmHipblaslt.h,sha256=Hdt9e7OYPkduqViDxCxzi6wXu7uZlZqdbgiZ9F__pGk,19620 +torch/include/ATen/cuda/tunable/GemmRocblas.h,sha256=V8RqFOv-gOXV877IqOPZYyK5LH6TOnxB1VbQD-Wh7wE,10513 +torch/include/ATen/cuda/tunable/StreamTimer.h,sha256=Lcd3qmC90mby04VlT3xwhDz9sCmpZlDQwYpp9aronvY,815 +torch/include/ATen/cuda/tunable/Tunable.h,sha256=kVtJ_FXbwy-VoNPfjNTVLftKU1Whh3VC2A2XLlcFowQ,7546 +torch/include/ATen/cuda/tunable/TunableGemm.h,sha256=prdB1_qnDpPyXSbKLVoIUjDJIGDeISOGrsTdSoauO1U,9281 +torch/include/ATen/cuda/tunable/TunableOp.h,sha256=HHCFlraRiHuoRUKuUi-yZAa6yLy5cKhw-V91h73QcjU,10825 +torch/include/ATen/cudnn/Descriptors.h,sha256=G_BwvOP2W514rGnib4nb1Zxco1sx8kSM-fN7Hk5XISc,15452 +torch/include/ATen/cudnn/Handle.h,sha256=Nf75UCb8ZTtzwoGTbZamRPEzbFnJAz_bZR9SIAggeqI,202 +torch/include/ATen/cudnn/Handles.h,sha256=5VYWmo7Rbp7rZ7tqo41LW8uPffcQMr3BnOeraCNXyFg,46 +torch/include/ATen/cudnn/Types.h,sha256=fvPWpAN_ZVdy_aWFG_TmCw9hs291DTyHt3L742WjX5c,324 +torch/include/ATen/cudnn/Utils.h,sha256=-qGtL87I43FefzKtAWQutgqmTIO6qhG8p2c10JdUYbs,617 +torch/include/ATen/cudnn/cudnn-wrapper.h,sha256=V5j0h5KwKmPn6TtQAEXoDnPtXkCrnfBQ7YKVL0vxiS8,556 +torch/include/ATen/detail/AcceleratorHooksInterface.h,sha256=TrvQMil9CK59jZMBxxdz5kLlwzj-1D4K3Nfo637eqew,2399 +torch/include/ATen/detail/CUDAHooksInterface.h,sha256=v7Bzb6pdN3xBU7V3kUxAE988NJgSbT3_ksOyGN-Zixo,7423 +torch/include/ATen/detail/FunctionTraits.h,sha256=XisBM9m6dhb6TSpOB-xLo8dxXVDyHD1DU8hT8I3VKsM,3178 +torch/include/ATen/detail/HIPHooksInterface.h,sha256=PnnFNMO0KyHpJ8kx5ODI-1OiJFKRZd_I--n90ksTn8I,2082 +torch/include/ATen/detail/HPUHooksInterface.h,sha256=QMm6hT2zkuLGB1-UTmVDQYBVUqqLMvqZW9BiRpQckbI,1697 +torch/include/ATen/detail/IPUHooksInterface.h,sha256=S0Q66saAHz6BMX_pQyRoB4thor3hE8NG6t6RHe9Eb1c,1296 +torch/include/ATen/detail/MAIAHooksInterface.h,sha256=1nCIMVg9OcRToUlmzmfdSVGKtbkBL02inReh5nyPLL4,1313 +torch/include/ATen/detail/MPSHooksInterface.h,sha256=lYrzKuzced5i0AnXbihxNgGPlWPXbMa7s1KxZgwY3Vs,3576 +torch/include/ATen/detail/MTIAHooksInterface.h,sha256=55qAa9K3ZuGtVZiybR7-iIqGFzttTXaPImqWqYwk_tM,3510 +torch/include/ATen/detail/PrivateUse1HooksInterface.h,sha256=Lq7q44UoSkaHr-7AFmGM0t6_tNljJhbkPWJgnrgY-Uo,2108 +torch/include/ATen/detail/XPUHooksInterface.h,sha256=K_THShPDOYwBAbxYtdeOUlREnFoKwaXh5MbSZUk9704,2546 +torch/include/ATen/div_rtn.h,sha256=Q7k8n-6y8wBgGm7PCYEtbiRwpzevrhzHGZIRR15vcTU,222 +torch/include/ATen/dlpack.h,sha256=mFxGMjYMkTgwkShffsf1qmzoh8TiSlYgmvWogQmpC80,7243 +torch/include/ATen/functorch/ADInterpreters.h,sha256=ro4Qx9WgX-4S4IIR5iyt90lX2ByeUsW9UHaxQxG7IqU,1598 +torch/include/ATen/functorch/BatchRulesHelper.h,sha256=r81Qfp-ffj1-kn_UsQQKhbu72fv8Jkl9LQb4Ixvstzo,19135 +torch/include/ATen/functorch/BatchedFallback.h,sha256=6nc7zt07GiUdovhKWujknb1z1okQ2d-ppKQoTwgcTDg,3520 +torch/include/ATen/functorch/BatchedTensorImpl.h,sha256=jimCeUtQ6jKOsOhM7z1Iru5imGr3cJhuDTyKD3UcYrY,6535 +torch/include/ATen/functorch/BatchingMetaprogramming.h,sha256=xQKz8P2IAt379YxdQtii7q62ZSdZEbF4MoIiiTt244c,5116 +torch/include/ATen/functorch/DynamicLayer.h,sha256=nFSf6Z7RUNNVxihqen9YqL-Pgtcl2C20CWAmZ78K1NE,5685 +torch/include/ATen/functorch/FunctionalizeInterpreter.h,sha256=0waU2epkJRIlw0EGIUCQ0mbhuGvLC463hKkZ1OgDT6w,929 +torch/include/ATen/functorch/Interpreter.h,sha256=UUSO74R5_d5NMOfkH7pusld6i77v1tlZ4gkAZbqc8hw,8096 +torch/include/ATen/functorch/LegacyVmapTransforms.h,sha256=c7obTpnca0mBbay29WvdPL0QAtV-oLE4x0QY86gSL7E,8439 +torch/include/ATen/functorch/Macros.h,sha256=Z8hbiYFWsvcM_BC6o_J4Pil5qQzy08uro3On4FJfCnI,53 +torch/include/ATen/functorch/PlumbingHelper.h,sha256=tvnthIraFvLOe1XIM47j_AM7omsUnXNHwCgStyP44pA,2917 +torch/include/ATen/functorch/TensorWrapper.h,sha256=E-heUCT274eyak8BnUHCl5ju-gA53bJIJoNiQ-N_C5o,4129 +torch/include/ATen/functorch/VmapInterpreter.h,sha256=sy5qLelkkoxdFVaK01jZW0x59kMu0r_ODM89AFtYQlg,982 +torch/include/ATen/hip/impl/HIPAllocatorMasqueradingAsCUDA.h,sha256=xkwaSS6EDZxsz_-JieKG6PHDOZchv5JPd2EVrP3SMSM,1016 +torch/include/ATen/hip/impl/HIPCachingAllocatorMasqueradingAsCUDA.h,sha256=kRh_G1bry35jcSl_NVlZaPJLRybg_5gO-nieLSRbKNA,535 +torch/include/ATen/hip/impl/HIPGuardImplMasqueradingAsCUDA.h,sha256=8-iXaD6HpeJXUVq_nbaaR4i2p7Y2SxkrUw04NQ3kfmo,15571 +torch/include/ATen/hip/impl/HIPStreamMasqueradingAsCUDA.h,sha256=ZyWygxLAUi9M2k_oxEcHNTdlge2PzNDJT2Gh_GSpo8Y,4649 +torch/include/ATen/jit_macros.h,sha256=cfnCnYngW-RIzvgPQFYJ1ioU9__tjop3o7qbYI9NUwc,237 +torch/include/ATen/jiterator_macros.h,sha256=4HKQ1TD4xob_WnlJRrxQLf6Mm2WiDKylhoeE-Agn0ms,1544 +torch/include/ATen/miopen/Descriptors.h,sha256=1WXw39S8WdE2vh662criY8llIqYEe9H5mnoSUtlSfzc,4907 +torch/include/ATen/miopen/Exceptions.h,sha256=XPTOzEKeFSeuwImwaC0ywu7X99xv6Ujv7wCjADcQygc,1117 +torch/include/ATen/miopen/Handle.h,sha256=o-dc95yFpOgAoNyDMcmJCBeDxwhpXivEq32cTiOhj48,150 +torch/include/ATen/miopen/Types.h,sha256=UZX5EgbXzvXb1s_MOjvkmGDBjHCXgNVGi2G601z1X1k,245 +torch/include/ATen/miopen/Utils.h,sha256=H-Xt_OYpmgEwhSan-TAeGsgDbLPT89b1MJTgRCdhG1A,419 +torch/include/ATen/miopen/miopen-wrapper.h,sha256=9rXdSdgSvBHJvz7Yalv0X1Zry_UGDg9fTcFyktr4dNQ,44 +torch/include/ATen/mps/EmptyTensor.h,sha256=QxeOGTk1aqjG5AoNvtoEjeKqecm2E0LtEwtAX-Wco8I,783 +torch/include/ATen/mps/IndexKernels.h,sha256=bO1RX-k-88VZHAPVvnaEk105emDrqoKF5N1ilta_5ek,9696 +torch/include/ATen/mps/MPSAllocator.h,sha256=C_jThJP1pOWBMnoaTeHeLXykimR4Fo7afcgwcDL-Bgc,19068 +torch/include/ATen/mps/MPSAllocatorInterface.h,sha256=uBgPZBG1FF5-Zbm70P_MqvH4F0slPDea9thIFpMnAE4,2786 +torch/include/ATen/mps/MPSDevice.h,sha256=i4TgjHKDGPb34VUtVSQnKTHiCpk7xoTHbFsgKuzCVls,1708 +torch/include/ATen/mps/MPSEvent.h,sha256=B3eR_4hbyfiSO7T75AXwgxeimzPbwbhQCZpW6kCENZo,3673 +torch/include/ATen/mps/MPSGeneratorImpl.h,sha256=xO_zDPgPtupQLbNlo0Desfo_UdWosFWehEAvuqi_oO4,1623 +torch/include/ATen/mps/MPSGuardImpl.h,sha256=9yyhCnEkSESD0s9ay58lju--5Fn16ciQLpFkumWKJDI,5521 +torch/include/ATen/mps/MPSHooks.h,sha256=U4-DCWzV9Qd0QASNZ2a-fqinVvySHYFcGsUh0YbzOH4,2157 +torch/include/ATen/mps/MPSProfiler.h,sha256=MNRh7Akd9MUIPPJwN4cmq8zpw8t_9GpZqpnvVlRNSwU,17660 +torch/include/ATen/mps/MPSStream.h,sha256=MKMKksJJ-f-BHLLNzdPMhu2FHdZnPMoKXvv5uvEMEUo,4634 +torch/include/ATen/native/Activation.h,sha256=w-eq24SiSpy1fB8tmq5cV-O7M8pPL4USNS-7PX_AUwY,3588 +torch/include/ATen/native/AdaptivePooling.h,sha256=hWxPmjg1DCSNnCrJUtmOyc8PXE3-kPjXeZDrj8tKeO0,2477 +torch/include/ATen/native/AmpKernels.h,sha256=Aw5YDDuhaoP2GiUVIV4bRaa884ABelzmi_nOTx8eC7I,645 +torch/include/ATen/native/BatchLinearAlgebra.h,sha256=1U3nJUjWeH4j7B40CpIex2TS9n3oDi425766V9Mj094,10228 +torch/include/ATen/native/BinaryOps.h,sha256=NGYNT-UF2s-C3WSxFhzR1ZL_3QZlr47mJzlGaMeUY0E,6051 +torch/include/ATen/native/BucketizationUtils.h,sha256=h0dygvjMzoURwdKPYUbw6XBbzI6_J5Vgbk534EJHZZ4,7962 +torch/include/ATen/native/CPUBlas.h,sha256=Ou4l1oQWbkgYCqA0ubu-efsHLQgkcuKYvguuhZ-IZDQ,7535 +torch/include/ATen/native/CPUFallback.h,sha256=-qaQlDTyFDJZsaiWybF7bQU5Dr3SaZ46l_I201qDDu8,2459 +torch/include/ATen/native/CanUse32BitIndexMath.h,sha256=U52Kul-OwisG0btJZF2uE4f088sCDlhnbi02Tm1V3rc,255 +torch/include/ATen/native/ComplexHelper.h,sha256=GrvKp2LRHsH_Qd68Yjmp_Hznh5gNTqUN8kWAW8fXfQ0,4145 +torch/include/ATen/native/CompositeRandomAccessor.h,sha256=xPsPiT87SI6A5HgfosgHXxs0ej-EtIUfVqmH4jHSyxs,910 +torch/include/ATen/native/CompositeRandomAccessorCommon.h,sha256=hZmBUjm5zNTylyMM9op-YStUCqLK2xl6D5e4ahc2ZOc,6996 +torch/include/ATen/native/ConvUtils.h,sha256=2XcwaUNYIVVt0Z9zM8NB_Qt3hVY5MR-K_9zwO2bIaKA,20028 +torch/include/ATen/native/ConvolutionMM3d.h,sha256=0hDCvqA3y1Ha7WhuGQx42mF01mACnLxvFGL25iL_r3U,354 +torch/include/ATen/native/Copy.h,sha256=5-Wh5nVLhuPFMgj79OxBDquqvp-LfO5o_7k__ScvHAg,392 +torch/include/ATen/native/Cross.h,sha256=J_5BCt9RdEfgYe7Q8CvtPngfUHx6eaJxlfDKfxYbqWs,273 +torch/include/ATen/native/DilatedConvolutionUtils.h,sha256=vhVksJGxl7x3MEVJ3L4F_TFEuQYooiBpsKt1YVyvcH8,6631 +torch/include/ATen/native/DispatchStub.h,sha256=WMUDRS5zd5LbCq9mjNzpszrEeWBzx3edG3l5PelLXxE,15924 +torch/include/ATen/native/Distance.h,sha256=RTDQPiS-wsDylb4xOu2vRL6ISammoZM0AN8h6I0TBxk,740 +torch/include/ATen/native/DistributionTemplates.h,sha256=SH0WI8jN6QrMhZaDsJd2IJxdEw6QyD1T8zDo1Ayx8pw,18888 +torch/include/ATen/native/Distributions.h,sha256=tUPkbp644uqRp2qY6-GzrXWTIZNmog0zqmQJWSSso8s,22090 +torch/include/ATen/native/EmbeddingBag.h,sha256=4HGEr_ToyUfCTLMbTZUwib2BBjW1W_5UKoxay5hkJl8,5368 +torch/include/ATen/native/Fill.h,sha256=G-Y7r7VjTtPdQ6V4McYr1STrJAblQyC4RBjedEasTak,417 +torch/include/ATen/native/ForeachUtils.h,sha256=n5XpCzQdSPK9eogdl477X6RqgmXY92irgzdCwd9H92s,15476 +torch/include/ATen/native/FractionalMaxPooling.h,sha256=BkLXkSARJbVcWovxqf7JyevhPpEN5PX8ly-dkbTMKao,2241 +torch/include/ATen/native/FunctionOfAMatrixUtils.h,sha256=DxD8VGsuy4eDch3LAn7dE2tNpfEoiyHd3oA7AeRJ2F8,408 +torch/include/ATen/native/FusedAdagrad.h,sha256=8TnDNnQYyZm4I9M7g0Y6UtCOOpYt32tqxMGS7XFzbNI,515 +torch/include/ATen/native/FusedAdam.h,sha256=HcmPv9VWj9Cs9h4BxVmfHvLp8ybmlcQN5y2MS-Y0nyM,710 +torch/include/ATen/native/FusedSGD.h,sha256=F1moSFCTk7jISyYoNOroM6Aogx-3iNzVg5JxWL4XuzI,537 +torch/include/ATen/native/Gelu.h,sha256=EwXHTJI-drWHEqEg1GSyPOHNSQQfQjw93nt1fFNyfKA,887 +torch/include/ATen/native/GridSampler.h,sha256=3vHkG4USE2wN4HAvvjqx_fSTXXcVvsEmj02eyVwDOxI,10705 +torch/include/ATen/native/GridSamplerUtils.h,sha256=tdVy5xNQZV1WTidufBgcAksfXtqwv4p__CdSTa4cS60,3604 +torch/include/ATen/native/Histogram.h,sha256=4P0LLz7d89omvU22HnAZQEboz56y0YZoKKsGSiJyAHM,761 +torch/include/ATen/native/IndexKernel.h,sha256=piBtn-V1Yz4eNmuQisPY2HZI4CRxFg6tPlcrlc3r8Jk,1744 +torch/include/ATen/native/IndexingUtils.h,sha256=TW2cKjC_z9otJUx_LZ7IBaZqgsueWw8phVCco2-fE4o,5789 +torch/include/ATen/native/Lerp.h,sha256=3rnb_-pij_rs7Yz5amtrMe_259Al8rHgrwyJaW5794o,1507 +torch/include/ATen/native/LinearAlgebra.h,sha256=sFafYjeSEdcNRAAAoupbGafLi36EYM-IDNUr9Ex-mhQ,316 +torch/include/ATen/native/LinearAlgebraUtils.h,sha256=1Fu61dliAnIXE5-jx0YoCjGlalOjknQXgcpJy6H3joo,26981 +torch/include/ATen/native/LossMulti.h,sha256=nk6hc3M5ZbWrN7PAL2IIPy-iXOS6PSa7yQXNNrSAd9E,2183 +torch/include/ATen/native/Math.h,sha256=n2ELd0zKOOolsfp3MCNqK3zlrew9RHtXWZSgdM9Gtno,145317 +torch/include/ATen/native/MathBitFallThroughLists.h,sha256=APedlL7LkuLODYxBKrnnu52Otm8tUxctz5v4KPJolAY,4207 +torch/include/ATen/native/MathBitsFallback.h,sha256=TKlaontfuQgj_H7y4YMGyOSCmFlz0vdIzHHI4lnkSFw,7465 +torch/include/ATen/native/MaxPooling.h,sha256=MPog5iqNPVFWYCgUV_7QRLoWYUUzjE_i8sPx0rsopto,3365 +torch/include/ATen/native/NonEmptyUtils.h,sha256=LQZRFh6lr1mK38DiWjlJYd2tav2xzauFZfHevAWIZdo,626 +torch/include/ATen/native/NonSymbolicBC.h,sha256=lJJ_tyRLmmmNivbYh6To1Z4dBI5vJhWISVwrVdoU5Wk,2902 +torch/include/ATen/native/Normalization.h,sha256=XMTS5KKEP6qt8LMnd4Dum2G34idEoew9tI5hwV-qazM,572 +torch/include/ATen/native/Padding.h,sha256=D7WTS7HLJgixkEqVLPkAAk4jVykc-pck-VeydpSBlI8,2069 +torch/include/ATen/native/PixelShuffle.h,sha256=Bcpq2zR7D3SGENiEWVR-L1fxuA1dBkaWNl7Qib8uwi8,1790 +torch/include/ATen/native/PointwiseOps.h,sha256=e7tofC6uVLaNmpNW6SwRhwibyp-q-QjjmTAujXaX-Qs,809 +torch/include/ATen/native/Pool.h,sha256=ue_v77bDKE9GQZafW0RLKZDpSFxX8NqFp1ANYt4EXtQ,13437 +torch/include/ATen/native/Pow.h,sha256=kJqmBpmimTA219I6mxITLwqWL7eEvrDxxyI5Mi7ahCg,1718 +torch/include/ATen/native/RNN.h,sha256=H-VH3_OiEzxTtLxbI2dXCzEoxEZs9zfbFO7plxQt4c0,2557 +torch/include/ATen/native/RangeFactories.h,sha256=gN6xY4X3VM9xTOxWMUawxT4u4eIWeBFWo8le9tZxIl4,366 +torch/include/ATen/native/ReduceAllOps.h,sha256=yOimIBqQFDthtDGST-__q7HiJg92LLPUt2UnBJ901To,413 +torch/include/ATen/native/ReduceOps.h,sha256=dzcZt3pB4buPfTF-kGthU4x__AaOPFwBJXa1mFeGqcs,1822 +torch/include/ATen/native/ReduceOpsUtils.h,sha256=i2qhfJJlXSKiqwGbKa9bouPbmosfdug6NmVE_M2HKWM,16905 +torch/include/ATen/native/ReductionType.h,sha256=tRZO6vVCuiP3pCxmCgeqiJsqAoK3COfcnGYc-8B3w28,1179 +torch/include/ATen/native/Repeat.h,sha256=121zLyyDsGpo7nv14Fx2D2bX9HllOz8momYpyBv0mMs,1525 +torch/include/ATen/native/Resize.h,sha256=hzdhJlLOdZfmc6kL8VYGvdhfhH5WCsAXViCgpDbRK2Y,6733 +torch/include/ATen/native/ResizeCommon.h,sha256=QqlMUJtLul9FAXnay1PfEAv4TqbHg99Z3uO4YFtXBow,2566 +torch/include/ATen/native/ScatterGatherChecks.h,sha256=avXTSDkak4XUkaYu3K0PSb5GOW3XvKPqdYs_cLM-16c,3812 +torch/include/ATen/native/SegmentReduce.h,sha256=eSS5ICFfGKXzZb2lqKWDNWt37QWqj5RwRYcMtyP_0CU,1315 +torch/include/ATen/native/SharedReduceOps.h,sha256=XlwmlvQf7VXRlg8jOokpA2eE8zKeNNJNkajIld3LwSI,16700 +torch/include/ATen/native/SobolEngineOpsUtils.h,sha256=NeugDPq15OXgIqLOuNMkGfilM0VTKaC5hRL_89ndURQ,1890 +torch/include/ATen/native/Sorting.h,sha256=f1LXeM0rdTtfaqMZY4SDcic3ssMmGENACm_RKif3bSk,644 +torch/include/ATen/native/SortingUtils.h,sha256=bIE98OX_i0DMF-GaBTu0w__N68bcoolkCWL92uCUYTI,2760 +torch/include/ATen/native/SparseTensorUtils.h,sha256=eI_QN2a4CjCIdbw-rN-RWy_Si4ovZS5VqFNqsCS1bWA,6690 +torch/include/ATen/native/SpectralOpsUtils.h,sha256=tAzQdNQuVOvTN_41z2wCXLV-dnhd9oI_hE_ehad42OA,3367 +torch/include/ATen/native/StridedRandomAccessor.h,sha256=5RWP8XBxj2iroOvF71RDImGSr7bsj5yLdf4Pt8NJACo,7136 +torch/include/ATen/native/TensorAdvancedIndexing.h,sha256=p6Htp_H8X_CrM6IMFzma5vXDQrGEcktV-pD49h6-usg,2819 +torch/include/ATen/native/TensorAdvancedIndexingUtils.h,sha256=PVmzTK15r5TZOyX92hCXZ5DO1fwl1Yyp_5JPMcpKfAw,3179 +torch/include/ATen/native/TensorCompare.h,sha256=X54yhVBBf-RQdzl6jfaI2n_nkL2w-qYRbOxmRG7CMnI,1528 +torch/include/ATen/native/TensorConversions.h,sha256=nsfZdnqIjAV22Wak6uzMEuv74-u465Weyb_EU9AuAI8,845 +torch/include/ATen/native/TensorDimApply.h,sha256=P3LlNkJCnHiPWqXfeOrC5V_33CHvbqUJfR2OzWSs7yg,1794 +torch/include/ATen/native/TensorFactories.h,sha256=yYjXMqvgoG0rxqPS1-gyQQKu2u_NXqe8h6kOuaatf44,5257 +torch/include/ATen/native/TensorIterator.h,sha256=YtrZWy-qCP6CIX6LY2t6G7K7wuERpRuC2u6otAg1c7Y,48 +torch/include/ATen/native/TensorIteratorDynamicCasting.h,sha256=udlNdugf-a5pchkgj9b50OFVZRZCreS5kT7sVKHKeYM,1853 +torch/include/ATen/native/TensorProperties.h,sha256=uFG9u7k1bBJ550OKSabBPSrgZSsRmLkrGj_3PACvBDw,210 +torch/include/ATen/native/TensorShape.h,sha256=i0VPZQ3d1SMRfaMFWhJyQdGAuSaYxKJfzqYd5oZWk2o,4470 +torch/include/ATen/native/TensorTransformations.h,sha256=7kp6Xl5Z90zNZNNhH7a2wlfevtQmyM3sGpPzWHkEZJw,926 +torch/include/ATen/native/TopKImpl.h,sha256=3ATbQ19F2TVzNvqdp6DlXLRq0DildzAnoRj_xi_nbN4,3557 +torch/include/ATen/native/TransposeType.h,sha256=fyc3us0hyOJEwyK0x2JvD2jSLdydgGvhj1WMeSzXMxI,601 +torch/include/ATen/native/TriangularOpsUtils.h,sha256=SBf8u6J6NTfFl2lBWIfTXKPlI3DHyXAsd4PWXOkojOo,2059 +torch/include/ATen/native/TypeProperties.h,sha256=PaIxe2X6O2ahFTN8HreJdhPXqO9Qrca_eZbQT6ollIQ,678 +torch/include/ATen/native/UnaryOps.h,sha256=_CZwM5kouAmbMz3SsxRxIhdyB0t_LOoffcL4o5KEAl0,5637 +torch/include/ATen/native/Unfold2d.h,sha256=zZS0_Ac16KUXA90JzhNgf6AvIKq2pF-9trtxdMoHWBg,1027 +torch/include/ATen/native/Unfold3d.h,sha256=LcmkxSu9CkhvEviPb1HF8k6D7466H-kWlF6dBSBbMP8,922 +torch/include/ATen/native/UnfoldBackward.h,sha256=gv8ben2gdqJFFadg875Oz-ckGn5Uja4syYcekOJFrDE,3210 +torch/include/ATen/native/UpSample.h,sha256=R-UJv8SnCmMB3rY_eqRksQGdFJZgF6UZgPEiH8zZwjA,19720 +torch/include/ATen/native/batch_norm.h,sha256=0WBU59_s_-S9miN3AuK59-0HNKu7fVoCNL4kz6Hitws,1463 +torch/include/ATen/native/cpu/AtomicAddFloat.h,sha256=9t9RmFpCbL-0Li4OpcTajsXW-_WzQa-HeALl7Tt7bWs,894 +torch/include/ATen/native/cpu/CatKernel.h,sha256=NYMajqK5zwwir7vd605zck88852jcqiHjqAFIr_HzeY,318 +torch/include/ATen/native/cpu/ChannelShuffleKernel.h,sha256=itT2xG4osbiorOhkKIOLzKC368fqX2TPkuS9Nw0qfe4,300 +torch/include/ATen/native/cpu/CopyKernel.h,sha256=Rh8HoSfeC8SsqVk4tOJdzCLUa6euo1uqbOxNIMSAHAs,326 +torch/include/ATen/native/cpu/DepthwiseConvKernel.h,sha256=PAwD562BJU4ha-L-tOheXXBsoj_vPayu273FGywiAhY,491 +torch/include/ATen/native/cpu/DistributionTemplates.h,sha256=hteOOgC-9QwmkiZ4vzoo0RQRuQP_vRDdUYqeoUlje1Y,16889 +torch/include/ATen/native/cpu/Gelu.h,sha256=ZYmqDyG2POzR_Hyif9jxjpNL6Z86hVvzCuFyV4G6Ubk,2882 +torch/include/ATen/native/cpu/GridSamplerKernel.h,sha256=fOVEnusBoP8ktEXd84rivIeTUTWH57Hd_iR-FJDS7lw,857 +torch/include/ATen/native/cpu/IndexKernelUtils.h,sha256=Tm7K2LaZrAyWtglotUeCksZhIaOGkuBKbfOTlJOmpU4,3012 +torch/include/ATen/native/cpu/Intrinsics.h,sha256=ZcIIF9QKb0w4h5x6S7JX42ydWbDuSf1B8EBOukjZaCA,1245 +torch/include/ATen/native/cpu/IsContiguous.h,sha256=Ky3x3EDBfnZptf6LXYEka8nlY4gZnKVCEIrGjzhCOc0,2433 +torch/include/ATen/native/cpu/LogAddExp.h,sha256=dVwpkz5rmTvRB0VbRgmvr42IAWk-XvSCUM12y4rrE-s,2507 +torch/include/ATen/native/cpu/Loops.h,sha256=qHnPOsPzKbR7RdjeinYD2GoPb4KqQ1sNsa3CuwmVvUQ,15300 +torch/include/ATen/native/cpu/MaxUnpoolKernel.h,sha256=2cKRRLMxNIMX6vypgtEXEPyC6QIclvGJ3agxxmk1DRQ,320 +torch/include/ATen/native/cpu/PixelShuffleKernel.h,sha256=SGg4WEeCMr7Pd6UMUCFh8B03A-AwaD34cuQtht9r58M,334 +torch/include/ATen/native/cpu/Reduce.h,sha256=NuX1ptAtdpGW-T9lw9FY8ZosoSb5MvvdsVqgHTJ_jSI,12380 +torch/include/ATen/native/cpu/ReduceUtils.h,sha256=RQifpnWDImXIUgFgwR9J87r-R8umY7zggEzkuZ7-S_w,8976 +torch/include/ATen/native/cpu/ReducedPrecisionFloatGemvFastPathKernel.h,sha256=7sFxr9u1V0cUkoiUaeSAaoBpe4bwT0X4KMzbVXskKic,839 +torch/include/ATen/native/cpu/SampledAddmmKernel.h,sha256=79g8IipvP9FMjdvH2h1BCKvq7rK1Hh4xTeSLKnehtdI,334 +torch/include/ATen/native/cpu/SerialStackImpl.h,sha256=bWjvosbjh1Tt7vQXyd7yWzUue2F7ewQtWQRcnX-km4g,5604 +torch/include/ATen/native/cpu/SoftmaxKernel.h,sha256=J7d_n2OGJSOMcRdq29Fv6mYPWLI6ipL9Q7NNBjj1fZQ,963 +torch/include/ATen/native/cpu/SpmmReduceKernel.h,sha256=g3eSj61yRAzX7iGJ8pRXh9OGwNfg6RBkxET0PGnZCfA,1374 +torch/include/ATen/native/cpu/StackKernel.h,sha256=q3_Olp3FLU1gan4DonR8QApiYTuEYIB_P_qXXBD7_pc,320 +torch/include/ATen/native/cpu/UpSampleKernelAVXAntialias.h,sha256=NmWq1qOyYdD3abdEzqU45r50AYUVr84OVDXp4QvUMEY,59554 +torch/include/ATen/native/cpu/WeightNormKernel.h,sha256=zRaE5HeSq_Xaf9pfLQu3u6T7korC3nq4NPeWjoFvegw,570 +torch/include/ATen/native/cpu/avx_mathfun.h,sha256=A3D6L0Mu1xxCZoDTUpUbxq6_dwsC_no1TSB16_XlFZU,17971 +torch/include/ATen/native/cpu/int_mm_kernel.h,sha256=tquvkPiK1uo1gtJCDZr5ryBJNlsFP1uiTtbC0f9rB-s,576 +torch/include/ATen/native/cpu/mixed_data_type.h,sha256=qJ_l0zO9ExRkI0WUVIVEDePJlwK0fhi0Djw8vKFEWHk,1449 +torch/include/ATen/native/cpu/moments_utils.h,sha256=KvMNHMa70ritejKgqlaU25YtetwtkvSaK6rJT5ccltQ,6779 +torch/include/ATen/native/cpu/utils.h,sha256=GNF0DspT36GwpysPxzCZh2kcsVONPDlveBPqnXvmnIs,7363 +torch/include/ATen/native/cpu/zmath.h,sha256=GjtYmzTMZ7iYbznMEfNwWterwRSfpWGwzudl4y6XdyA,6872 +torch/include/ATen/native/cuda/Activation.h,sha256=bUQiLTRr97tZn5DDzOZ_d6i20c9ngGkWZLEG0T5tvuM,556 +torch/include/ATen/native/cuda/BinaryInternal.h,sha256=J6R3KlzgXjHEhdAZ0M9fpXL0cH68V-crbopAJ9MIlV8,1231 +torch/include/ATen/native/cuda/CUDAJitLoops.cuh,sha256=wn9nYouIRAOooSgfz7nqo4C3zYiasdDEdenB05iqPzk,11100 +torch/include/ATen/native/cuda/CUDALoops.cuh,sha256=RnUNv2nqYlzCmo7k5QF_cZDCiOeGbDc5ENh7iSEDGgk,12889 +torch/include/ATen/native/cuda/CompositeRandomAccessor.h,sha256=OrszxRptzH-0CcEs7tVGQObnBI9ok0nQvjAvg8GbCKo,964 +torch/include/ATen/native/cuda/Copy.h,sha256=dXAA0lggucz5X7V9CU075ArUBinIdwH5ePq7szaKzfU,165 +torch/include/ATen/native/cuda/CuFFTPlanCache.h,sha256=bERvlhdONciNuvuIsX2SXqW8RknmzQ2qSE6Am0ULvPw,18450 +torch/include/ATen/native/cuda/CuFFTUtils.h,sha256=B0kZmcXiYYMx7C0KhoJ-Fz8msGxYIqfoZBrhyAFSESc,1946 +torch/include/ATen/native/cuda/DeviceSqrt.cuh,sha256=NEcpLMzvoNwJiVB6GLVdRcs9W-CXNQCVNlYDDES71IA,610 +torch/include/ATen/native/cuda/DistributionTemplates.h,sha256=U_CRIuvfblxg6GGGF38moB87wHVofNLoV3QPc0W695Y,28567 +torch/include/ATen/native/cuda/Distributions.h,sha256=lLZ4jOyaLZyJUD-pTigWN7WZ9UaHJ4qiN9AITNEr9Xw,666 +torch/include/ATen/native/cuda/EmbeddingBackwardKernel.cuh,sha256=coa6GAqH0MzrxQr9bYUvZ4g5Ow6Xq4x0mKJ-JMOKV5o,576 +torch/include/ATen/native/cuda/ForeachFunctors.cuh,sha256=LgPKwk4p_9aH4WoANoE1AFfC8YsHIYyf7nCjZUAWq8w,25376 +torch/include/ATen/native/cuda/ForeachMinMaxFunctors.cuh,sha256=yHPnNBDV5oQiqY17xeXO8UFYf3gLe6dLliagjI2Zgfk,448 +torch/include/ATen/native/cuda/GridSampler.cuh,sha256=MiCqfMnvREMuP7crQDjrZ4a2PqahlrGLUSL0qUriX8g,11296 +torch/include/ATen/native/cuda/GridSampler.h,sha256=swQJkjxzqz86fGbZnw8jXT9hTsM7v7PrcARnqlL_8nc,1176 +torch/include/ATen/native/cuda/IndexKernel.h,sha256=tOFuXNaP66hcSRhVuEKXQwUgWjBqan_GzPpeuOcuQcI,353 +torch/include/ATen/native/cuda/JitLoops.cuh,sha256=B9HcboDzkT2Zy9d2dr7m-zNH6piQCaYo0kiNJuPIajM,7093 +torch/include/ATen/native/cuda/KernelUtils.cuh,sha256=vbO_PD6CxeiKx8gJsjZcYKLp8aoTBHBFdaquAMS3mbU,8040 +torch/include/ATen/native/cuda/LaunchUtils.h,sha256=1a-qdCxNQSpFqgz5TQ7bv_u2XxMHEEeZP8deoTfEJSk,298 +torch/include/ATen/native/cuda/Loops.cuh,sha256=H3qXdfKvbOV7yrsVwbiRpMdiLfXJfNK6OCbRK1Wi5TE,11970 +torch/include/ATen/native/cuda/Math.cuh,sha256=KxxaCbVv6_CcD1SOPoNaUgIhHwRrQPX-R0SQZJ6-xP4,125638 +torch/include/ATen/native/cuda/MemoryAccess.cuh,sha256=5ThswOmuG0ful9hXDHWzY5XA_FEd_9b4Dh6C7SGSvMw,14169 +torch/include/ATen/native/cuda/MiscUtils.h,sha256=iSGgfXZqhxWifo7bQR-1xxKX8s_iGKyxwecQXW_Oh20,990 +torch/include/ATen/native/cuda/MultiTensorApply.cuh,sha256=cKZAMmXfaIdX4AC85aj-UG4caFzXtyjrlwZA2aAjXYc,14317 +torch/include/ATen/native/cuda/Normalization.cuh,sha256=Q_l4a42YS5ET47huEzsSO-y2BzYXuOb1h_9M5qicr90,75967 +torch/include/ATen/native/cuda/PersistentSoftmax.cuh,sha256=z97flb-dd6Oka-hgxkESw9_UL9KKZfT5aypuevqns0g,18333 +torch/include/ATen/native/cuda/Pow.cuh,sha256=o30Ts6PL5iUApZkSn3e706OfI_7VG_QA_c1-oHm52fk,2178 +torch/include/ATen/native/cuda/Randperm.cuh,sha256=pduqztZygnWLgWCVhgIR_s6QNROGjN_D6zeipJ3o7Cc,2166 +torch/include/ATen/native/cuda/Reduce.cuh,sha256=oyJw3-nAuRWjwfCtJDCN3cDmwnTQOeFbJZCwgNF3TS0,50876 +torch/include/ATen/native/cuda/ReduceOps.h,sha256=vK7q7aqyoIjM0z4rbtet8VKPhUjDxtfAI9f-5xSvLEE,508 +torch/include/ATen/native/cuda/Resize.h,sha256=UNPixIQcvNKlpFsJlLPNuPJYCDNaWEXy8bKFZ4ZPc6A,1609 +torch/include/ATen/native/cuda/RowwiseScaledMM.h,sha256=6iYXKL_dzZVaXWY8LLuTeErs_WRV0LlmP9JUAJMLhgY,383 +torch/include/ATen/native/cuda/ScanKernels.h,sha256=1zfILyxxqd5HRNjTjAa577LsX9rxIZVMFGXUx-cuimU,797 +torch/include/ATen/native/cuda/ScanUtils.cuh,sha256=K6iQbhFRONwPUz5H5SC5G3giU_m72dCpQSGlsJDan6k,21490 +torch/include/ATen/native/cuda/Sort.h,sha256=nlEJ8hFW7VSh8w9LUAKf0RW4Rvrdt91YvRMCSIbKxcw,418 +torch/include/ATen/native/cuda/SortStable.h,sha256=LKrKGvanplh37OCGTlnKmZjLaW6qcVh77ESJZD-vJvw,456 +torch/include/ATen/native/cuda/SortUtils.cuh,sha256=fmYVJ7V0p66NgPHDkfmNoxqu5kLVqAxS9Ffu-QMs7DQ,12718 +torch/include/ATen/native/cuda/Sorting.h,sha256=vAnpVScSkqC1Ak5RaBMJL6bXR-EsdNoJMIxwb7_qd9o,413 +torch/include/ATen/native/cuda/SortingCommon.cuh,sha256=xFDGxI8WlXgal2R2wU6ViHZBtFSvLXTlO8HLCtQBfKw,5649 +torch/include/ATen/native/cuda/SortingRadixSelect.cuh,sha256=-KrnH7BRzeFir0VHrV58U_7auEblUYdwBrUYoaTYUKE,12741 +torch/include/ATen/native/cuda/TensorModeKernel.cuh,sha256=qiWgvgkJwPAoCgjGn-VG2N4fcrlnP_B8QNfWaJFeHOY,14920 +torch/include/ATen/native/cuda/TensorModeKernel.h,sha256=H8-rNfvEvsiJ84oax1qNJFQdzpSxcwh-Wbkb92Zl3X4,437 +torch/include/ATen/native/cuda/TensorTopK.h,sha256=nxt6_0ypGrKXHtEdDGARVD6yk4qJKEipRxTiyYSm8XA,267 +torch/include/ATen/native/cuda/UniqueCub.cuh,sha256=dA195d5ES3K-QMyaTBUGpRUT0rGPNvMmIziEr1wzEAI,314 +torch/include/ATen/native/cuda/UpSample.cuh,sha256=2IsVVsgm-fFOIdsSZVZAYYyTfZxIPmPRBO2_aqDbaT4,11992 +torch/include/ATen/native/cuda/block_reduce.cuh,sha256=l-QV1Zc-I4gYABAkqrg4MMevptB0B2xuN6MaAKdZiVU,4367 +torch/include/ATen/native/cuda/fused_adam_amsgrad_impl.cuh,sha256=TflsQN-84nDH3xd0GDz76fWSPKNV0PJBNn4zEpWKQOE,1067 +torch/include/ATen/native/cuda/fused_adam_impl.cuh,sha256=Z9FOhtX1QDtPzR-SXCjy2XiRRXK_R74MyWrBV8GmB0Q,977 +torch/include/ATen/native/cuda/fused_adam_utils.cuh,sha256=L0FlzFCP9zx8mODPeTPwnaYNmg9OMJMnFHSsO5BmAZY,7197 +torch/include/ATen/native/cuda/fused_adamw_amsgrad_impl.cuh,sha256=Uo-4skXIzxxiD97j_f6PkJqpe40jPLTwHESwIi1MMLc,1069 +torch/include/ATen/native/cuda/fused_adamw_impl.cuh,sha256=ucijwI0HIugvrCnhzXBFFlqcYTfDHoG_wLEpJ8bYPE0,979 +torch/include/ATen/native/cuda/im2col.cuh,sha256=SfgjmAgUEuwzxqsvHL74PTzBvbRWMzyv4RyfTKPP7Kk,10036 +torch/include/ATen/native/cuda/jit_utils.h,sha256=B4qTojLt4xoSjG9PkvK-8eQ8vLpBeaF4GgJPyaHbpv0,6311 +torch/include/ATen/native/cuda/reduction_template.cuh,sha256=k-KJ6L6q6FD263HJquY364pVLdJswbvIB-kaPLwwxSM,22348 +torch/include/ATen/native/cuda/thread_constants.h,sha256=r1Ae6WIGzPPnf9_EtNTOP_YbYbCBjuhY8QK-zoilyCM,633 +torch/include/ATen/native/cuda/vol2col.cuh,sha256=oy91IHLAYwuOC3ouap4GuqvveQNX7wBbDXhJbQwMiQI,8355 +torch/include/ATen/native/group_norm.h,sha256=jb8QS_68-AEwK5PHOcevNA1OVKA6WfTkx3SpjxjnF2o,947 +torch/include/ATen/native/hip/ck_bgemm.h,sha256=qmPuYrd1y1FW9FV05qIC1jv4sqkfyxHSUZEFjtTkjmU,414 +torch/include/ATen/native/hip/ck_gemm.h,sha256=-cnlGlh2s3zXGy9K88YybaFDuB0pfYNhCNso3CsQWYI,646 +torch/include/ATen/native/hip/ck_gemm_template.h,sha256=NjcaZHu8Z35RCnQserZv_6F4ZwWRe7LBs5rWhptLmfg,8909 +torch/include/ATen/native/hip/ck_types.h,sha256=FhmQlIp_4WpiqPoU35aEWJiPyyn3k5JAC6IkACdCQKU,1408 +torch/include/ATen/native/im2col.h,sha256=EjbClkS0NVTJOqxSVC6xH9EUNZJGelabyBz3u6hTqfI,5386 +torch/include/ATen/native/im2col_shape_check.h,sha256=xOI0CckFMlW-BFO9yFNiE0IFXBInPq3hwE_asoru6i4,7167 +torch/include/ATen/native/layer_norm.h,sha256=Po3G0Y2mJ-HgNziluT8SLMY287rb2KvUMFgRfeZDHHE,4344 +torch/include/ATen/native/mkldnn/xpu/detail/Attr.h,sha256=BoPPhCq6mKHb55iDiZr19UTWJXpdg7ZYg0w48Op49z4,16643 +torch/include/ATen/native/mkldnn/xpu/detail/Utils.h,sha256=URoVssf3ePpqDt4Zpz_Wv5X6A94Stf_ySWzXs0dMezY,2822 +torch/include/ATen/native/mkldnn/xpu/detail/oneDNN.h,sha256=n7yKcR34Nnnhy1IK57vcEXCSwE4z6Yv42JRuY3Gy4vc,3989 +torch/include/ATen/native/mkldnn/xpu/detail/oneDNNContext.h,sha256=H5-9BNQe6R_H-mE9Gu6e05KeGyIF6uu28UEBapShfmQ,2841 +torch/include/ATen/native/mps/Copy.h,sha256=9yt3cf9b2x8sACUn7Dx9iAIVhTsMSijASyhMSnBCDSo,309 +torch/include/ATen/native/mps/MPSGraphSequoiaOps.h,sha256=1jfG2B3WoFEUXYwON5B6mQsVWmYHrClbiMF6H8ekYPE,1560 +torch/include/ATen/native/mps/MPSGraphSonomaOps.h,sha256=8rqs_yz9ejFJuiurvdCaTWpgLtd-GqvGzGxsvU-asfQ,2376 +torch/include/ATen/native/mps/MPSGraphVenturaOps.h,sha256=Dvo7Od0ZuQGy9tXitVp6k4jTwHhOp9jP27-7chnN9Yk,12413 +torch/include/ATen/native/mps/MetalShaderLibrary.h,sha256=SMRfPR0xZy81riWHE4MBMAn39R7CliTEJZ4s4lsIMMw,5183 +torch/include/ATen/native/mps/OperationUtils.h,sha256=I6wu3SjEnwmlEAaUWUCSlOVSHbQe8AMfi7c5pDF7nSo,19496 +torch/include/ATen/native/mps/TensorFactory.h,sha256=q93kMHFDZJmhvl20JP2TQEyebF56PD3cOU6J9l7nZl4,1018 +torch/include/ATen/native/mps/UnaryConstants.h,sha256=p6KR4oEntG6g3loZxes0ki8o3OZoJbFtH8KnXtKfbmM,2879 +torch/include/ATen/native/nested/NestedTensorBinaryOps.h,sha256=b4Wv15orB2RVyiiheAgNyCVSSwD02nvDrS7cS4oN-Vo,431 +torch/include/ATen/native/nested/NestedTensorMath.h,sha256=y7UUYeMLNhzkzI95kqS_GaOxylTIeLB3cKswjZhdeUI,2802 +torch/include/ATen/native/nested/NestedTensorTransformerFunctions.h,sha256=79muP83YzXqyT0c9flvTUDoEPtmty2JuvllqwmTVzEE,2925 +torch/include/ATen/native/nested/NestedTensorTransformerUtils.h,sha256=K-iKFCSkdLDRJjzsZ9nH1z56YaprsCUgfwHV7iQOaC4,1417 +torch/include/ATen/native/nested/NestedTensorUtils.h,sha256=EQvyj6omJOeR8mTaUwwg11nDJChPHlP88v1cTIGk3oE,15697 +torch/include/ATen/native/quantized/AffineQuantizer.h,sha256=HJ_Sp3eSIElfYrR5AWsFwxTj7uMkdCyEKgqMpMoZmVg,3843 +torch/include/ATen/native/quantized/AffineQuantizerBase.h,sha256=vQygeUXuEGfppDz4sBSTEXqNxDukNdqusL9GGq_ALQk,1472 +torch/include/ATen/native/quantized/ConvUtils.h,sha256=seN12fWOkAEvHZBTtO42HLjn281xu49n4H1oTerRQww,2302 +torch/include/ATen/native/quantized/Copy.h,sha256=xah-h77O-cmGIXLLfOpOxgO7vgDbZLDIJuTqaj1zo1I,164 +torch/include/ATen/native/quantized/FakeQuantAffine.h,sha256=g8rcQYh0LYvi69qvrbjW73cul6GfFacRlViWlL83eGU,1854 +torch/include/ATen/native/quantized/IndexKernel.h,sha256=HxCBEAyIkb4pGBqHPBVfh3syua8tyZjAmQ-l5lFjZMI,593 +torch/include/ATen/native/quantized/PackedParams.h,sha256=M2X-c_eZW163CZBXll-Wtd32WG20IPyB4pvxC0j2qc0,4886 +torch/include/ATen/native/quantized/cpu/BinaryOps.h,sha256=1d5kERam0caSwpUMgndD2zkxRXPx5ApfyVW4HTXMeQM,174 +torch/include/ATen/native/quantized/cpu/EmbeddingPackedParams.h,sha256=J1RbfggPZZMZ426fz8ZeX4pwCI6reK_fLBqNSVxRvVE,950 +torch/include/ATen/native/quantized/cpu/OnednnUtils.h,sha256=1Qff5axOXFCW6JM8UiQxltt9SkBl3SZpj1kji_o1Wd0,14263 +torch/include/ATen/native/quantized/cpu/QnnpackUtils.h,sha256=tqGcKxHjsrNloH2PBb3d004UnxHmJ_xIFY-XOUltW5w,18215 +torch/include/ATen/native/quantized/cpu/QuantUtils.h,sha256=b-Ai8zO0xtNFNh-fi70GVDzC_Gw6Usq52qQsTMxUqTE,8571 +torch/include/ATen/native/quantized/cpu/QuantizedOps.h,sha256=GeWs9sW568YkNMEdQbPTKyWgP6Jy8EoIYAJyb1p_kbg,8056 +torch/include/ATen/native/quantized/cpu/RuyUtils.h,sha256=GOdYSMJ0WWhJIGJ0oB2UxjMbHsdn9XSKYihVJjG2SrA,355 +torch/include/ATen/native/quantized/cpu/XnnpackUtils.h,sha256=IFAn3vmPcSBUU1FTDac1pXh8BMqbcCSFWV0OZGBJXIM,14436 +torch/include/ATen/native/quantized/cpu/conv_serialization.h,sha256=dMT9cnhVyixvSMJT7UDlf2X3sZL6q1CxZ8WIGqPz51o,13173 +torch/include/ATen/native/quantized/cpu/fbgemm_utils.h,sha256=fos5S5U9btRHh6G8kVfj3SrNLiZrJdY4FR_ilR0xdRQ,12381 +torch/include/ATen/native/quantized/cpu/init_qnnpack.h,sha256=fiGGqZRkWMnGbkWC19hGb3ye7jpqu8I-4EtCcLi2nps,132 +torch/include/ATen/native/quantized/cpu/qconv.h,sha256=lMRNupeDijr1pYWHU-rPAQFKg4ZdAs4EcBLxu1l3R4o,3655 +torch/include/ATen/native/quantized/cpu/qembeddingbag.h,sha256=UjbET4aD5-EHI-3Je8Ku5UCPu5HwG5F9TX3qhdw0rEs,1047 +torch/include/ATen/native/quantized/cpu/qembeddingbag_prepack.h,sha256=y5-QKhJ8s5plKNM4QOWj122f1vWXngG60e_lwIFHPPE,306 +torch/include/ATen/native/quantized/cpu/qlinear.h,sha256=-Y6zfKEoAIsdq0l8-GYFm4YZeUWDxNWIhEguZHrRvP0,1572 +torch/include/ATen/native/transformers/attention.h,sha256=c_iyq7Ok-GFrCY9x1KEs77QvXY8CAQM5vDXnvDNrFWI,2336 +torch/include/ATen/native/transformers/sdp_utils_cpp.h,sha256=X5xbETTmOwHLNa0oyofjnVEy9No-3uPjtlw0e2Gcfnk,18145 +torch/include/ATen/native/utils/Factory.h,sha256=PmNgcH1tGKt2NQ5W17-62tty7Frqj2VfEt51yl6jGfo,507 +torch/include/ATen/native/utils/ParamUtils.h,sha256=5tLsOeu0UmFj2YyypGCo_5dSthnJNTM9QLflqyx3V1M,1240 +torch/include/ATen/native/utils/ParamsHash.h,sha256=naW9o6L151VBIFZer2OSrmW--fzQJUm_s5mu6kq66DQ,3228 +torch/include/ATen/native/verbose_wrapper.h,sha256=xS8Eo9ShhQLbBJRjg5BydHX3miqWGT7bVbJ7VGr_XhQ,201 +torch/include/ATen/native/vol2col.h,sha256=xqXZK-qrhU9nxkhjxD2w67chbrdOGgajdItW5HhU0Hc,3664 +torch/include/ATen/ops/_adaptive_avg_pool2d.h,sha256=aoYRpXmph3wmLf9LX8sSBf51Sh3oXnVdvly3I8qqLPY,4209 +torch/include/ATen/ops/_adaptive_avg_pool2d_backward.h,sha256=zdxwlHcvcVldgy8A-RK72m-3SN0XX70brz7RcnDw2ts,1468 +torch/include/ATen/ops/_adaptive_avg_pool2d_backward_compositeexplicitautograd_dispatch.h,sha256=pANA8PPa9w6d39hwIAW3d_vIYgze_yFxB4z2pUClmlI,1001 +torch/include/ATen/ops/_adaptive_avg_pool2d_backward_cpu_dispatch.h,sha256=oa4uVfaqzbnO-x2HJeB1JMiJXP-OFoDZ9V3bsTJWQg0,798 +torch/include/ATen/ops/_adaptive_avg_pool2d_backward_cuda_dispatch.h,sha256=au5tf5wNJxE56ppJ1Q8Ccb2WdOw8SNr2sbuXWyd9AkU,800 +torch/include/ATen/ops/_adaptive_avg_pool2d_backward_native.h,sha256=cZ5-FsV7aKFO3G9DrUwO1F_CxJweRHDj3reGYnJZkNo,803 +torch/include/ATen/ops/_adaptive_avg_pool2d_backward_ops.h,sha256=6OZD68xICl6mmNZJUCOLdzYh17I91W8YotGODsZiELk,1909 +torch/include/ATen/ops/_adaptive_avg_pool2d_compositeexplicitautograd_dispatch.h,sha256=aq4CmVrYzsGS8e2E64mHIxJG_obvRvUEb3c-5cKSELw,1244 +torch/include/ATen/ops/_adaptive_avg_pool2d_cpu_dispatch.h,sha256=irE7CDWQ91LzrzoXf288NBRAi02EJaYAe48yIiOfk-M,895 +torch/include/ATen/ops/_adaptive_avg_pool2d_cuda_dispatch.h,sha256=AT9OJq4wdLAHaOYljU7cbWV9jVpsgJSRERDmOPX94ec,897 +torch/include/ATen/ops/_adaptive_avg_pool2d_native.h,sha256=8MOZRzNkLafqy1zh0NwVE0rwZQ4Avuh6LMB6iQrHj2c,1001 +torch/include/ATen/ops/_adaptive_avg_pool2d_ops.h,sha256=wMaW3Dg5-jgBG_8KYAnE-wb-Tr0uHL7Fr0UX0GEe0FQ,1867 +torch/include/ATen/ops/_adaptive_avg_pool3d.h,sha256=iE6q9-itbvBUvAi0EA5xHgZL75PJ9PYtfqjoHXCE66c,4209 +torch/include/ATen/ops/_adaptive_avg_pool3d_backward.h,sha256=wD1PMlVd6mbllpQTCY2uroFlfrTY0X76wOXaW4Jp7I0,1468 +torch/include/ATen/ops/_adaptive_avg_pool3d_backward_compositeexplicitautograd_dispatch.h,sha256=Sczz2-fRLMvyF_lPhvBSGkMh-ZOuaxdkZlMuiFjx0w0,1001 +torch/include/ATen/ops/_adaptive_avg_pool3d_backward_cpu_dispatch.h,sha256=AtKoGN1BgAc8mD58wJyY-b064QsjZxCXr2-AudAfPRs,798 +torch/include/ATen/ops/_adaptive_avg_pool3d_backward_cuda_dispatch.h,sha256=1jdPmTS16FpDTFFWV7Xh0_tZPrGl5w2I_KOCIvv2htU,800 +torch/include/ATen/ops/_adaptive_avg_pool3d_backward_native.h,sha256=-FmiN5nSrzX3q2VGef_M-Sfm8WPetVj4OKMI7lyHjkg,803 +torch/include/ATen/ops/_adaptive_avg_pool3d_backward_ops.h,sha256=FIQ__I1YZrDNKxO9J3ZR_kstWxXv7yxx9bPWGsas2Ic,1909 +torch/include/ATen/ops/_adaptive_avg_pool3d_compositeexplicitautograd_dispatch.h,sha256=11NH6mgY9nIvLuB1tdzjxdf2HxqgVmhrlNwtoMFF9Ho,1244 +torch/include/ATen/ops/_adaptive_avg_pool3d_cpu_dispatch.h,sha256=slB5A0_V-CXs0CcNc7GyxjFJQpABjN1yVk1FoM3F9SY,895 +torch/include/ATen/ops/_adaptive_avg_pool3d_cuda_dispatch.h,sha256=eNPirPuPg2yZblx_dceSSIq8zHil_l8-zsxSsZBDSBg,897 +torch/include/ATen/ops/_adaptive_avg_pool3d_native.h,sha256=gXBEXtf_bGOIK2KA4VJK1DrTFi2rndKf9ZXhubOSHTA,889 +torch/include/ATen/ops/_adaptive_avg_pool3d_ops.h,sha256=p-Wh2kGXsblMu1m81q9njNzKEme1MqZBMEcgzXz53I4,1867 +torch/include/ATen/ops/_add_batch_dim.h,sha256=5Df7wS0xZRRhQko9P7_tJvLnIJ5SSsecd5PzSk5kLYg,754 +torch/include/ATen/ops/_add_batch_dim_compositeimplicitautograd_dispatch.h,sha256=ScLkbrTMOURu8UPSgO_OWen7t1EMu72ZVf8gUJxCYbM,829 +torch/include/ATen/ops/_add_batch_dim_native.h,sha256=REBJVuUyHnrV64k2nIXCVxoe7NHxTtL28gx6d1aU4R0,539 +torch/include/ATen/ops/_add_batch_dim_ops.h,sha256=Ti8Z_v1rxtTz8XhD7M-_Mj_m9nTniQb9cr0Tbf0gMB8,1098 +torch/include/ATen/ops/_add_relu.h,sha256=Rys06xkSJzMx9CJzspcGbeSVrDXz3wCqCf9vHFZJq5M,2821 +torch/include/ATen/ops/_add_relu_compositeexplicitautograd_dispatch.h,sha256=jF86va7Sq0DA3dpJCoRgpCUB7mQC-4qjACiRjx0AyT4,1003 +torch/include/ATen/ops/_add_relu_cpu_dispatch.h,sha256=EQe6rq-p-IR9g--Yww5jEHkFLOCfN4XuAevS7JHhxns,1401 +torch/include/ATen/ops/_add_relu_meta_dispatch.h,sha256=RgEkbMxE81nAJ3J6PUMnEOtuHt_VCresrSlR6-eBtQc,908 +torch/include/ATen/ops/_add_relu_native.h,sha256=3o5F1bQEWvqNmdUzoupiPlybl9Uphh_nTP2cIn43rWc,1154 +torch/include/ATen/ops/_add_relu_ops.h,sha256=XmWS8V5L5xqCNmjyZY2YojSkqbYOIo1f7RlgMV265WQ,4900 +torch/include/ATen/ops/_addmm_activation.h,sha256=ejcrLYFBLynK6vMXwEXxPXPelYYjCZM-8WrHdHUHJOU,1863 +torch/include/ATen/ops/_addmm_activation_compositeexplicitautogradnonfunctional_dispatch.h,sha256=b1Xj0KBf6aj0r-aTnJej05kLi8KgCKGtL60NG4GbQC0,950 +torch/include/ATen/ops/_addmm_activation_cpu_dispatch.h,sha256=iYibqkZe2aOQoERWv0GXxT6PujHEzLvsBUFWpcHLuFE,1303 +torch/include/ATen/ops/_addmm_activation_cuda_dispatch.h,sha256=u4LtSqOjXdXzOJbO-uCKG70t0yWbu44sXfUyOVnsTyA,1305 +torch/include/ATen/ops/_addmm_activation_meta.h,sha256=0gZ9RJfGlGoAqiAWMPAODCZk3Xz7H5KBPQVygayGlxM,729 +torch/include/ATen/ops/_addmm_activation_meta_dispatch.h,sha256=j7HY8YwS5FkRG1sy6fVgY4ufvACgxcxYdbHKgKOjKm4,1305 +torch/include/ATen/ops/_addmm_activation_native.h,sha256=jXvUQmPsz3LENLuHcr3hBY44Z3REWoHsoQ04eqefakY,1057 +torch/include/ATen/ops/_addmm_activation_ops.h,sha256=R3L04YW1b8NGzkW2ItRbuQorwwpF-FSpJcTgTszzHvs,2424 +torch/include/ATen/ops/_aminmax.h,sha256=eZCbOral-39vvqrB6gFMzoMbWPqUuRfszjnKwdMIBr0,2280 +torch/include/ATen/ops/_aminmax_compositeexplicitautograd_dispatch.h,sha256=eNo8LlyCwr83SRFc6Bcx6oZomBOv2PDpARN0I5hTsHU,1306 +torch/include/ATen/ops/_aminmax_cpu_dispatch.h,sha256=JQdIVCG-KH--2flxdixP4AgDoqr77R6wJpEYb0svUfg,885 +torch/include/ATen/ops/_aminmax_cuda_dispatch.h,sha256=o5nciTlAmIEd_qCtTgCM2tel3oBUE0ZoWjlftfJ3dbw,887 +torch/include/ATen/ops/_aminmax_native.h,sha256=j0VvEcyERd31MAZ7_n3CUIyHRt0zgKONgoPyGjwrC9Q,930 +torch/include/ATen/ops/_aminmax_ops.h,sha256=SrUj82e5nF_AH25EBZ9S2rXPxBMlRqlA3xH3GekCK04,3422 +torch/include/ATen/ops/_amp_foreach_non_finite_check_and_unscale.h,sha256=X0AZ8Zodhdm6N4XX3L5mfWHgqxduBDyzNtMrDC_fu0M,2144 +torch/include/ATen/ops/_amp_foreach_non_finite_check_and_unscale_compositeexplicitautograd_dispatch.h,sha256=b0wHQnoGB2Af1DkiIbfIDoMq5UpXdPb7CRTO9yTze8g,1235 +torch/include/ATen/ops/_amp_foreach_non_finite_check_and_unscale_cpu_dispatch.h,sha256=KEjFeJWMUwy3hS3J2HoPPP-imyHVaSJPunn9S5WYJTY,823 +torch/include/ATen/ops/_amp_foreach_non_finite_check_and_unscale_cuda_dispatch.h,sha256=caieoRLUGobHxQVlI4ZymUhnsgllHlAoRHNzlS14BsY,825 +torch/include/ATen/ops/_amp_foreach_non_finite_check_and_unscale_native.h,sha256=N4Nhv1V8PNkPqQdBGtDWbirtfnHk4RLHb3ONU6OZCAI,1065 +torch/include/ATen/ops/_amp_foreach_non_finite_check_and_unscale_ops.h,sha256=y35LczE6BStBi6Pja4DLRRfCbOaFv4B2K3OukbPHU38,3035 +torch/include/ATen/ops/_amp_update_scale.h,sha256=oGS5BwRa9C6kA5lrD3NZ9qdAeuTQezMSiUff_8f-nlc,2785 +torch/include/ATen/ops/_amp_update_scale_compositeexplicitautograd_dispatch.h,sha256=WHBR1m6XqEc9XK77h7Ncv_MQ2eqgF3jTygDTKPwJIJM,1433 +torch/include/ATen/ops/_amp_update_scale_cpu_dispatch.h,sha256=Av5AeAvAO43oBC22vHtgt6vz_5oKxwkK3wNT2HanKwQ,892 +torch/include/ATen/ops/_amp_update_scale_cuda_dispatch.h,sha256=6LZzC80wx7l7icbGV8Chu7eACT3GWAvQWaqkB722zbw,894 +torch/include/ATen/ops/_amp_update_scale_meta_dispatch.h,sha256=h9Ev5kF_XDFrlApMiaY8rh6vNxH5HIHaDOq7bZpuu6o,894 +torch/include/ATen/ops/_amp_update_scale_native.h,sha256=E-Ocjz00GSDLxCjpbBPiCktomhAdv-wfU3-vQsMZHHc,1328 +torch/include/ATen/ops/_amp_update_scale_ops.h,sha256=AXZ16kGgC-9phLBoyTjEveh-BXqWw5Tm2sDwpzvQDdg,3676 +torch/include/ATen/ops/_assert_async.h,sha256=ibFzGkyZFndx8ptMFS0z4JBQAZOWCYBfC0MFiyvEbyE,878 +torch/include/ATen/ops/_assert_async_cpu_dispatch.h,sha256=L4-Y8LLFrGRag2kiqjzPl32v2jZKUyDy-c-wN2iCXrg,829 +torch/include/ATen/ops/_assert_async_cuda_dispatch.h,sha256=eTObruAJJVLGErVIy9TNM-QCBqVfEGYJB0-FP9wJRGk,831 +torch/include/ATen/ops/_assert_async_native.h,sha256=twWJiJFAnQJVnuTTGsJrDwg7tLN7g0i2A5fwA7ADUUQ,750 +torch/include/ATen/ops/_assert_async_ops.h,sha256=Qgktw0M4Vwyrw1256PAcIelXRsN5NbASnBCF9v2OjNw,1574 +torch/include/ATen/ops/_assert_scalar.h,sha256=RolVM8YYNaZaML_JxyWPLLUHkwmmNr0xXPn1XaVb_eI,723 +torch/include/ATen/ops/_assert_scalar_compositeexplicitautograd_dispatch.h,sha256=6zBeyr51kd38BDPeNbghNj36Y8l69_k7q__TOB8Mt2M,818 +torch/include/ATen/ops/_assert_scalar_native.h,sha256=UtI57zQ-qW1iiksQnRkMu7kXCUCORwAQkAbSYl5otSI,528 +torch/include/ATen/ops/_assert_scalar_ops.h,sha256=5XimQnDAcA2v4yh0_FxdJV78C-lM884tgyeJYNbh9w4,1056 +torch/include/ATen/ops/_assert_tensor_metadata.h,sha256=mZP2wjoLvS9B7HX3-0Wv42ui-tq4Da7FIcSwd9irIkE,3042 +torch/include/ATen/ops/_assert_tensor_metadata_compositeexplicitautograd_dispatch.h,sha256=Egh729_4lvmvCDbqvZt2R6EPCsoNSCPTI_Det4f40bw,1367 +torch/include/ATen/ops/_assert_tensor_metadata_meta_dispatch.h,sha256=tCMEim27krBSkngt4BuoJgt4CuTJ5Y7j9oOKfgIIa_c,1325 +torch/include/ATen/ops/_assert_tensor_metadata_native.h,sha256=vAFRiWJ1rKyXCqDBJ5q36IM11DEkKKqCT6YF6sYeUFw,1082 +torch/include/ATen/ops/_assert_tensor_metadata_ops.h,sha256=lAMgZEQum32TW4p8o49Gyl-E75O6q8spsFUOpsqnDRw,1600 +torch/include/ATen/ops/_autocast_to_full_precision.h,sha256=IuaU5gD5dbxF3MGRt3DC3Gyjnx0rnv560ruHKVNiiNQ,527 +torch/include/ATen/ops/_autocast_to_full_precision_compositeimplicitautograd_dispatch.h,sha256=_U1_03lX7WkSQsCoU1vN-U8XiCPG78fbwzCP-HiRWY4,845 +torch/include/ATen/ops/_autocast_to_full_precision_native.h,sha256=Vb0oQ07zhIPHfhlVsDnbiv4qv8OLkpLoYE3WwKRTnec,555 +torch/include/ATen/ops/_autocast_to_full_precision_ops.h,sha256=F58400q7KOZ394z9Z7cscIs4QbQSVw0M74BLeG16sos,1154 +torch/include/ATen/ops/_autocast_to_reduced_precision.h,sha256=y5WvYmSePNoA8NoiX8tOX61ZWpq0V0xsSMdm8JZEFZ4,530 +torch/include/ATen/ops/_autocast_to_reduced_precision_compositeimplicitautograd_dispatch.h,sha256=Cv8MBhpSfT7lHvi5OBpEGUqEyTyROPinV8CtOEqYqKs,901 +torch/include/ATen/ops/_autocast_to_reduced_precision_native.h,sha256=LMQtpdmmYqHmg00b4lVo3DJbL6-Ogej0MSDoxVWfzZI,611 +torch/include/ATen/ops/_autocast_to_reduced_precision_ops.h,sha256=KStTzXYrdZilhf3BF_KESkA4gcqxqAWeASXipq94kII,1346 +torch/include/ATen/ops/_backward.h,sha256=EeaItmv92JcCpEbH1n-xlEgqIrof8VJCx3KfobRhMCU,509 +torch/include/ATen/ops/_backward_compositeimplicitautograd_dispatch.h,sha256=8fNJ2JxxegqKS67dzCYLKohLOeZbmEcJZGAYMgvPd0E,932 +torch/include/ATen/ops/_backward_native.h,sha256=tzH4qFnRrh-nobtrTzjV9zTFq-dPCOaboQYlfHniCdo,642 +torch/include/ATen/ops/_backward_ops.h,sha256=y99IjQM6bBH3icfLgJmkPw6wZwh1qQiufBiyLZ8Z6Ps,1369 +torch/include/ATen/ops/_batch_norm_impl_index.h,sha256=U30Z4EfGD6wJumpgH_YJyA3sFuwdQm52dWcgMx0LHu4,1262 +torch/include/ATen/ops/_batch_norm_impl_index_backward.h,sha256=x-vhDsxVj4r8m7ombdi3PmNCN7JUmYkVAt7eswtj4oM,1530 +torch/include/ATen/ops/_batch_norm_impl_index_backward_compositeimplicitautograd_dispatch.h,sha256=3-cnEBbrBi8JbJgWfpdhaVAY87AugBXuktZhmPxFgm4,1239 +torch/include/ATen/ops/_batch_norm_impl_index_backward_native.h,sha256=ccQHHHzsCG65WurX_fCzf_t9SnFJnmDDfUdvyKzy3iU,949 +torch/include/ATen/ops/_batch_norm_impl_index_backward_ops.h,sha256=SFOckY4bn8Uu5BzXNpx830I7zs4gjTv8dnJ0OJa0KJc,2424 +torch/include/ATen/ops/_batch_norm_impl_index_compositeimplicitautograd_dispatch.h,sha256=CXcfrzDFCx3EKbxz-f5jyoCQewH9sMvu9K3apLiCe_c,1108 +torch/include/ATen/ops/_batch_norm_impl_index_native.h,sha256=tMZmsvd8nd4DfPsmUL47eJBKHCcvLnNHtU_1s2zvIMU,818 +torch/include/ATen/ops/_batch_norm_impl_index_ops.h,sha256=cEng12DS29QrtY9TjvTGZmhxxtB1GlODsvmaefGMHho,2018 +torch/include/ATen/ops/_batch_norm_no_update.h,sha256=1WdhMl-L21LL-jKDuVAnRiDoYa4kP4k4cT24O1N9Q6w,2825 +torch/include/ATen/ops/_batch_norm_no_update_compositeexplicitautograd_dispatch.h,sha256=b6-5joZxXmdc3etq_Vape7ICj3EBysEu82M-MP2x_dw,1905 +torch/include/ATen/ops/_batch_norm_no_update_native.h,sha256=pR1oysdLyUeDdm_c9ZiW5YSTP0XJFSWxLvc38Id4viA,1194 +torch/include/ATen/ops/_batch_norm_no_update_ops.h,sha256=iKcoE3oVUAOOSbmE0jBN61S6kQUF4rr-Adap55-iPTs,3617 +torch/include/ATen/ops/_batch_norm_with_update.h,sha256=s9nFvCmE8z32bf9T5GAIfpQ3D93P6_qjGfjPHlueyIM,3514 +torch/include/ATen/ops/_batch_norm_with_update_compositeexplicitautograd_dispatch.h,sha256=N3fJ84Cqry3jZBu8_mNTqxIdxUzJ6KzdmV9HKPLU6VU,1065 +torch/include/ATen/ops/_batch_norm_with_update_cpu_dispatch.h,sha256=lmLWYuszFRg9SYv-A7T8JlI3qmNw7FOFwCzTmhAn78k,1757 +torch/include/ATen/ops/_batch_norm_with_update_cuda_dispatch.h,sha256=NK3yf7QN6wIV9g0gjbynw6FPsHqhOKNg9ONyD0NNpzo,1759 +torch/include/ATen/ops/_batch_norm_with_update_native.h,sha256=XXMWeZ4ilgI62_b-L_sVnYmKz5SPyp8mnELaLe24CHs,2444 +torch/include/ATen/ops/_batch_norm_with_update_ops.h,sha256=qmOEpmDIjlFYbwB7l_-EWcrNgJPTUH4w9X0SJ71KtB4,4875 +torch/include/ATen/ops/_cast_Byte.h,sha256=PTi6llJsWlyDumC_Wjk8BCH3LjoLiXYPNaniYz7QzTU,724 +torch/include/ATen/ops/_cast_Byte_compositeimplicitautograd_dispatch.h,sha256=x-nzOsNwnEvGHJWwEPqsqlS1J1de0HDLpFANVsW_ozE,816 +torch/include/ATen/ops/_cast_Byte_native.h,sha256=iIiFdsP8Nri8iueCiFMeZWMhj20aWt8ElO5KkJ5H9oQ,526 +torch/include/ATen/ops/_cast_Byte_ops.h,sha256=wokb-fuQgxKzFR3Z3i-QMgAaHaN4EO70uXIS41ANFeE,1043 +torch/include/ATen/ops/_cast_Char.h,sha256=6mL0o3oOpI6A7VfykFR2aTwyvSGZrS9gNQahJZHLwb8,724 +torch/include/ATen/ops/_cast_Char_compositeimplicitautograd_dispatch.h,sha256=EYVr9OItGZMxDYDQOnhn6VeTJ4h9t-qyQbblJeP9iNY,816 +torch/include/ATen/ops/_cast_Char_native.h,sha256=zDiByFv0LpUpiu3yz8YcPUCzQclHPcOLJjqnZmSDvNs,526 +torch/include/ATen/ops/_cast_Char_ops.h,sha256=pzH7R0cEdXoFnXhLnSdD49EATRUGYZ0bPf0D8fW3E_M,1043 +torch/include/ATen/ops/_cast_Double.h,sha256=AZS9GX4Eqo1l9UG-RBMnZR2HZL2yvtPONtgLlAGKTKU,732 +torch/include/ATen/ops/_cast_Double_compositeimplicitautograd_dispatch.h,sha256=SW32RvDuw8_TwkhnYzDYyUNOrkuCaBUbAPK70O0f9zA,818 +torch/include/ATen/ops/_cast_Double_native.h,sha256=EYfrIbp3l4ZXCLxA8ZTzGQTZZUIXqS40wazERI27z64,528 +torch/include/ATen/ops/_cast_Double_ops.h,sha256=ltwjm36gEDF_AOUdle6YRW7-GbdGffEQcXKoe74ULXU,1049 +torch/include/ATen/ops/_cast_Float.h,sha256=RrIIKwm1S5FmEGdiFAGD_JpfLwREcWuBwLmjOOpODm4,728 +torch/include/ATen/ops/_cast_Float_compositeimplicitautograd_dispatch.h,sha256=OJhv0SlE9VORDo5b0S1DDQwNKmi72_1cKwCjqT0GJtA,817 +torch/include/ATen/ops/_cast_Float_native.h,sha256=arQvOeOnS1Gm-JJUr3VE1gnI6BDyrHufys76UrELevQ,527 +torch/include/ATen/ops/_cast_Float_ops.h,sha256=s19JctpHPuLNcgsa0tS1LmoLArKyu6DYfJFfcqwLZgU,1046 +torch/include/ATen/ops/_cast_Half.h,sha256=oJ8y0iJbWiV17uHLPxa0OUePtOubFL-I3Rv6nWf0fc8,724 +torch/include/ATen/ops/_cast_Half_compositeimplicitautograd_dispatch.h,sha256=gQmob8ogOPleKWSQW9oYe38iRnFmq1uyN7gD3X7zpeI,816 +torch/include/ATen/ops/_cast_Half_native.h,sha256=sEekZ_rbibdK-HBE2wdOkVJ1HGcaALjb_vsdCQJGlzg,526 +torch/include/ATen/ops/_cast_Half_ops.h,sha256=KwsA5PEv0b1x6PKg5xnDtDRX45-f73io2oP7pV0vmVA,1043 +torch/include/ATen/ops/_cast_Int.h,sha256=6JQ9ik6UscKVB1o0GqYmkjpQrH8Jr8zCPwqvJcJE6eU,720 +torch/include/ATen/ops/_cast_Int_compositeimplicitautograd_dispatch.h,sha256=WaPWLY7WTzqP__vB-rbpd1ayR7z4nrvZxzQHgiS_zPY,815 +torch/include/ATen/ops/_cast_Int_native.h,sha256=kh_0f0cHdNQpDfuDIUchWrXdutH-6mqGwIoa5pqEFoc,525 +torch/include/ATen/ops/_cast_Int_ops.h,sha256=kyKJFyZps_idYZzskOvrZBt4RC5tVwvJ9uE32_MkdzY,1040 +torch/include/ATen/ops/_cast_Long.h,sha256=PNCBVcaB-Xor32WrF_fa1rc56oqXNtNxJ7ddQvKAz3c,724 +torch/include/ATen/ops/_cast_Long_compositeimplicitautograd_dispatch.h,sha256=stJ57xlV2LQxIHTNgKBtjtcUhRDR_9_8y9OBNLNihS4,816 +torch/include/ATen/ops/_cast_Long_native.h,sha256=unYUm3nGWF6gq10XE2_jaOf-Eh3MXuOEHUIDY881vhE,526 +torch/include/ATen/ops/_cast_Long_ops.h,sha256=xIYM3XmPNojcuc6H2quLMEjvBuhS7ObPcukMSMt4qH8,1043 +torch/include/ATen/ops/_cast_Short.h,sha256=ggBHFz4YVhfKirTz9qVmvwV1Loy-oWVmWis-HkNuKW0,728 +torch/include/ATen/ops/_cast_Short_compositeimplicitautograd_dispatch.h,sha256=mq4jHXg63wFbO06YaEdNQU1Q5vEEvIVGBsjazFdlyQk,817 +torch/include/ATen/ops/_cast_Short_native.h,sha256=d8Psk6Mnf1x4nQzEBqbpcDTM-4veJKE9N-8vT2fBMjM,527 +torch/include/ATen/ops/_cast_Short_ops.h,sha256=hlFAnrUCL5OiCl2zKmnGvfcNNJDmeHSmcNj7O1e7kM4,1046 +torch/include/ATen/ops/_cdist_backward.h,sha256=KLewcRRocNfXw6XiKpnOSN29c-mqSfFNsZZOP3vpde4,1568 +torch/include/ATen/ops/_cdist_backward_compositeexplicitautograd_dispatch.h,sha256=sgA7Su3m-8iHc9V4ZF2IV9a4UnR-VuOzFuXI8-12V6g,1073 +torch/include/ATen/ops/_cdist_backward_cpu_dispatch.h,sha256=Cm_SF7Eh3rHCYTCTap_cTVVjQmcXY5k-muYeT5crLro,834 +torch/include/ATen/ops/_cdist_backward_cuda_dispatch.h,sha256=A0FIf35VKqIFRni-31nbg_bbxwaM2Q_5klDhcoJbD2Q,836 +torch/include/ATen/ops/_cdist_backward_native.h,sha256=dwKjn1DFUNHOoWhRQN6RFuDN2NPv3s6QTbNykOYzYAs,758 +torch/include/ATen/ops/_cdist_backward_ops.h,sha256=pa0MEhni9khMjxR_wh9Bv_-qAq9T4BmS33i1XwvZ3aw,2171 +torch/include/ATen/ops/_cdist_forward.h,sha256=MxcalOgShuNCd_Z5RXYHCnsASMik7Q3tmJzcRhE2nl0,1501 +torch/include/ATen/ops/_cdist_forward_compositeexplicitautograd_dispatch.h,sha256=VfWi6WXjR3JsvrMbIXISAuU3liFGz6vwzbdiQg_Km1A,1047 +torch/include/ATen/ops/_cdist_forward_cpu_dispatch.h,sha256=T6twrFA8x8WgXdYOyp8QWa4pyu1qsfE9VS1CPV-PxT0,821 +torch/include/ATen/ops/_cdist_forward_cuda_dispatch.h,sha256=LvYQooPq_LoVpMCzLJunw0Arsr5AWvvJsdraEwxB-Jc,823 +torch/include/ATen/ops/_cdist_forward_native.h,sha256=bMWDYlROEDlSobZLpMAmmy3yIKkIuC-64xwCocOIeFk,732 +torch/include/ATen/ops/_cdist_forward_ops.h,sha256=qL1hv5WxScpwKStv0JQwvB7CvfCwBNgsUR0PmO62k7I,2073 +torch/include/ATen/ops/_cholesky_solve_helper.h,sha256=xlwmgculpRegbwZAnhXr9aNE6CXkH2o9B2MDKWV5TV4,1401 +torch/include/ATen/ops/_cholesky_solve_helper_compositeexplicitautograd_dispatch.h,sha256=EiOBZ3k9Na1NuIXgsmFHNBu_3a-D2M4AR_cq8JswLu4,991 +torch/include/ATen/ops/_cholesky_solve_helper_cpu_dispatch.h,sha256=fBGKTGSQN1JKFfEnfE7z_44Imi1HtqUMvn7O5ox1MT4,793 +torch/include/ATen/ops/_cholesky_solve_helper_cuda_dispatch.h,sha256=0bTFGi5OFMfuFmnGJcKtECiTUE0_ukns_xoUtwH8aFI,795 +torch/include/ATen/ops/_cholesky_solve_helper_native.h,sha256=IQGLxRcnZ3i3Vw3uh-mZoJCbBQ0yw6b4FmMc7qOW4wE,790 +torch/include/ATen/ops/_cholesky_solve_helper_ops.h,sha256=yLVJzp_3lHg6C_gBgWqMzW6B0Da1rIXGxSCPSI2pzBA,1891 +torch/include/ATen/ops/_choose_qparams_per_tensor.h,sha256=G_PA1OzZoqIRgtqzFpnq8f_C4bS__mF7NCvrWdIbypI,812 +torch/include/ATen/ops/_choose_qparams_per_tensor_compositeimplicitautograd_dispatch.h,sha256=g3KOZar9pPpa49yLXnmpw-vsSswFIn_ZvSI7JIZB2Cg,850 +torch/include/ATen/ops/_choose_qparams_per_tensor_native.h,sha256=lKiSerULu1iWDdlEq7ITUsEASYtvUMvGJumqQxQsbj0,560 +torch/include/ATen/ops/_choose_qparams_per_tensor_ops.h,sha256=raoHyvFa1MLt0tnQeUqP8Mnbta0hTPnRdIFCw-H45CM,1151 +torch/include/ATen/ops/_chunk_cat.h,sha256=jJ9cYgVcxJwqMElAt4y0KA9ihoWL21K1BDate5K3Esg,1329 +torch/include/ATen/ops/_chunk_cat_compositeexplicitautograd_dispatch.h,sha256=eYuAV3i11oT5P-A7wnN4hFnW_xxBCzj8-hGy-EGSpaI,1054 +torch/include/ATen/ops/_chunk_cat_cuda_dispatch.h,sha256=y1AjBvq7qbHfN5vYP3_rA-dfJkMW_RwaRDgpxenbnIc,1012 +torch/include/ATen/ops/_chunk_cat_native.h,sha256=O6iDDLH82R1D_ynhGjv8k_2dmywGJgWD17OGC_4U_oY,864 +torch/include/ATen/ops/_chunk_cat_ops.h,sha256=Yj5x-_TXgOiwSoNIBBXVTXzOmn5ClFqktrebB3g3zU0,1803 +torch/include/ATen/ops/_coalesce.h,sha256=2XFl4nN68Oj_WaGQMMkSlWSe7JSux04ABjEUF5gRef4,1073 +torch/include/ATen/ops/_coalesce_compositeexplicitautograd_dispatch.h,sha256=yB7yEtg2XEJF5ZgA4nyoG-k_1H0iELy3Gdyd65IjoH0,897 +torch/include/ATen/ops/_coalesce_native.h,sha256=_T8rC5DchG_N1XafTmh_-HYaldVBh5gGoc5XH6qEwYE,663 +torch/include/ATen/ops/_coalesce_ops.h,sha256=SnI4TOHLSZm36zTpJ6V8PjqEP0jEv2lehgs-izM2jmw,1581 +torch/include/ATen/ops/_coalesced.h,sha256=1eKr7Z1kkiYObtL21g5d7jZ4HlT0qN1EZBTE13MlfoA,1212 +torch/include/ATen/ops/_coalesced_compositeexplicitautograd_dispatch.h,sha256=j7i91HeUW3vwTecJSsEpF0aFnrNUE0Ji3Riwvq1wYzk,1006 +torch/include/ATen/ops/_coalesced_meta_dispatch.h,sha256=Ja3WiiBMMjG1qfYRW7kwYakjHHcwa-yUH-VQ9jk-jIU,762 +torch/include/ATen/ops/_coalesced_native.h,sha256=KJ4jZiTNf_VtJeSLn0_dXxf0MW6TaM540Err4lvJLc4,695 +torch/include/ATen/ops/_coalesced_ops.h,sha256=lQ5P0dl4vsYfTg8DKGYu212_5vdfPtAAfJ3pPDNkFBk,2271 +torch/include/ATen/ops/_compute_linear_combination.h,sha256=pn9psluItW9Mly62BAM4o0AyCPKNZlVdqLy-pEZ1H7c,1466 +torch/include/ATen/ops/_compute_linear_combination_cpu_dispatch.h,sha256=sA13mtupRzN00xJf-4fC-jp3TGTAvAzWmsUFPVhm8Ao,1067 +torch/include/ATen/ops/_compute_linear_combination_cuda_dispatch.h,sha256=ZONZ-kGg2EgNO43ZkWlGUUEL-tt2EeS8NpD1Qp_BYC8,1069 +torch/include/ATen/ops/_compute_linear_combination_native.h,sha256=nzopHo1Vy2v68_BYJSRQpn_c2oFHr8hzxVVh0Zih_iQ,686 +torch/include/ATen/ops/_compute_linear_combination_ops.h,sha256=sjpssc7PdrRl435O3xdGtqC9oCIH_2o7HtpamGBMabQ,1909 +torch/include/ATen/ops/_conj.h,sha256=GvmTma-8FQ9gJThgOwxV4X9ZE6ZFAUdq2EZFQmfamlA,646 +torch/include/ATen/ops/_conj_compositeexplicitautograd_dispatch.h,sha256=HJPCcR2g6VH4VEi6vjEfWjfb5T8Zyqb4hWsWDBTPL-c,786 +torch/include/ATen/ops/_conj_copy.h,sha256=8p5y0Cm23l0Row55iwGYVgAyQS6HQ5Uqn5ASmHAaMMY,1083 +torch/include/ATen/ops/_conj_copy_compositeexplicitautograd_dispatch.h,sha256=UyRI63XSqqYSEhZ-RayyLSHQGomVFtZji0T5_adxac0,899 +torch/include/ATen/ops/_conj_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=xBt0CK6HTq8UQukMwRCkX7kr7-50G8P91t7QXTZGz9A,817 +torch/include/ATen/ops/_conj_copy_native.h,sha256=vj1Ioua7Waw0oGm4wmqoSJKMSGGxgFo5S4sNdF1HikA,584 +torch/include/ATen/ops/_conj_copy_ops.h,sha256=mSoK2gfxZiLNsJqonBrOUfwZV4y4kmbdJ1Ndw3LZd0Q,1587 +torch/include/ATen/ops/_conj_native.h,sha256=n4zF_Wis0SdANht7A2XhkC4OtpuvMb1LfLCT2w8yoic,496 +torch/include/ATen/ops/_conj_ops.h,sha256=vFj7Vy-PPRtZ2cHYDVtEVJflQgSahKbQykLgpU_SnW8,965 +torch/include/ATen/ops/_conj_physical.h,sha256=GRiTem8rbRjf8eSnOcB3f0wjtGbBLi0Itj2OvBKgazU,1123 +torch/include/ATen/ops/_conj_physical_compositeexplicitautograd_dispatch.h,sha256=SxJJ6UyzER7U_WpTLVqa1RmS-Yvvar-D6qgRuuqcIVQ,970 +torch/include/ATen/ops/_conj_physical_native.h,sha256=adccAFr6Yj9WwRQiFyFmDneZgGFBIn90v6tch82WDwo,665 +torch/include/ATen/ops/_conj_physical_ops.h,sha256=p8QZdtN1TiXNnuBltxJLZEdBPeI0Cv_jCykbBhuslVM,1611 +torch/include/ATen/ops/_conv_depthwise2d.h,sha256=WQ6cJrb-u2DdfOZLDvZv7imFolXF3ERJK-W_lu4eE5Y,7488 +torch/include/ATen/ops/_conv_depthwise2d_cuda_dispatch.h,sha256=o0LDtsJuyr8SIOaQGzvt7IhDyX0EAZi8yfi0A4EhANI,2339 +torch/include/ATen/ops/_conv_depthwise2d_native.h,sha256=0fQQhYaXUCkbQDYA2odoHSTiRTRo_eZ3ZaRrxk8shZE,964 +torch/include/ATen/ops/_conv_depthwise2d_ops.h,sha256=C6m57EP8uijGmDd1gWomdMZ6oS-q8gG7ntkehR8Rk0o,2921 +torch/include/ATen/ops/_convert_indices_from_coo_to_csr.h,sha256=imW6bN5jA8AlvuWG_ux78krxBwpWi_0ktJ9Ny9bi5f8,1555 +torch/include/ATen/ops/_convert_indices_from_coo_to_csr_compositeexplicitautogradnonfunctional_dispatch.h,sha256=na70uMryAzCjGE-SF5CJ_33SOsTCONIZaise90ruAS4,875 +torch/include/ATen/ops/_convert_indices_from_coo_to_csr_cpu_dispatch.h,sha256=ckHNC4iLTGL2T9g03_P-0EtAvAzq9QHViwUEmdsJ_MY,1082 +torch/include/ATen/ops/_convert_indices_from_coo_to_csr_cuda_dispatch.h,sha256=lQP1UY5gVLami-fHRqGe1xFwK2SrX9H8S1R-iBwHkp8,1084 +torch/include/ATen/ops/_convert_indices_from_coo_to_csr_meta.h,sha256=2VNGvuBs1aWVyV1D3euMKtWRDIUazVheExDZrD0f7fQ,658 +torch/include/ATen/ops/_convert_indices_from_coo_to_csr_meta_dispatch.h,sha256=k8RrPHprXow5W9fLnsXWHC_mpubuQS_vGTDUlSoWEgE,1084 +torch/include/ATen/ops/_convert_indices_from_coo_to_csr_native.h,sha256=l_2AwpQEaA12p7uYqN2xxsSq3v2DmlrBKkLvTRfFdao,976 +torch/include/ATen/ops/_convert_indices_from_coo_to_csr_ops.h,sha256=vgEd5qCrmFMLr6oGA7h2mYyHERiMJNU0TcJYI7vXXy4,1936 +torch/include/ATen/ops/_convert_indices_from_csr_to_coo.h,sha256=BiZ1dHGR4gfA9Cv7-XtdnvAIHDWNWpushA8Zs9dBUUg,1891 +torch/include/ATen/ops/_convert_indices_from_csr_to_coo_compositeexplicitautogradnonfunctional_dispatch.h,sha256=l2vn16L7aeQd4ZKf7LqXDBhZMIxfb1Yk7SosPIR0pRU,923 +torch/include/ATen/ops/_convert_indices_from_csr_to_coo_cpu_dispatch.h,sha256=j7ga3HIpV6aU5vrLqBF_uaGeQEdOYc-yoJXURBAPgAE,1220 +torch/include/ATen/ops/_convert_indices_from_csr_to_coo_cuda_dispatch.h,sha256=v0oTPgrOY5UsSTxQ0ZqYyOQ7WYxXaGQeWJzY_-ZLR2U,1222 +torch/include/ATen/ops/_convert_indices_from_csr_to_coo_meta.h,sha256=n62wl6q9EV6pxEkI04Ua_6o2K6dIL_uP-F-_y_Wpgtk,700 +torch/include/ATen/ops/_convert_indices_from_csr_to_coo_meta_dispatch.h,sha256=DDfV9opmf096rrehB5u5HLT3VgmeDEqNOlFFrtU3ivo,1222 +torch/include/ATen/ops/_convert_indices_from_csr_to_coo_native.h,sha256=ABpBxQ-eHqlomz3UTGgvCxdnW6JR18BG7mPL6PccD8A,1060 +torch/include/ATen/ops/_convert_indices_from_csr_to_coo_ops.h,sha256=IgwtgrnjiNTVOqHgolhGpBh4gXBoriYt5YhFaezhZWU,2218 +torch/include/ATen/ops/_convert_weight_to_int4pack.h,sha256=UrGI_qhxeUCUa2o8ONpY9s400MiTsIygzZQdoDlPSMk,779 +torch/include/ATen/ops/_convert_weight_to_int4pack_cuda_dispatch.h,sha256=iLUhn_4cvD3ZtBrksRGt-whANqAjHDMRXzm-tBRt4RM,787 +torch/include/ATen/ops/_convert_weight_to_int4pack_for_cpu.h,sha256=QOJ5ZxEsbVU_Df-n7gyYIblFABxnYyLsj9AcVqxHaNU,811 +torch/include/ATen/ops/_convert_weight_to_int4pack_for_cpu_cpu_dispatch.h,sha256=0Q4kJBaOitp6Q0YpUqpqoVAU5D07rqUTLYYHuw8Dvck,793 +torch/include/ATen/ops/_convert_weight_to_int4pack_for_cpu_native.h,sha256=YtuThNJfZiCyZG42NDvBsotwtjyio4tr6-3XU3sA2pI,543 +torch/include/ATen/ops/_convert_weight_to_int4pack_for_cpu_ops.h,sha256=UdD56eLWlejA_f1bimxjWaEXJjyN8WGvtUhMulAeJd8,1117 +torch/include/ATen/ops/_convert_weight_to_int4pack_native.h,sha256=VHGkSbJ9Cc8T46JzZvCkspTknfzSfkBlIO7xbZTWMvc,544 +torch/include/ATen/ops/_convert_weight_to_int4pack_ops.h,sha256=pPeMfPvz9ZTKfjGQOZJMaN0knTCMZX8ZTNyP8xJGyzI,1093 +torch/include/ATen/ops/_convolution.h,sha256=4q6kRctaOLyrA75X3hsDAeS2VJFp2bRUWUIunvnDyAc,13068 +torch/include/ATen/ops/_convolution_compositeexplicitautograd_dispatch.h,sha256=ejvo7k1rt86-TUfVIhCLLR-nUkJtMfCDv2TNwXrjsgU,2975 +torch/include/ATen/ops/_convolution_compositeimplicitautograd_dispatch.h,sha256=NjcLXczUNQ40oWmP3pQzU0bBgU0LxwxncqOtVn0_pZo,1409 +torch/include/ATen/ops/_convolution_double_backward.h,sha256=UN6bziBfvpxICD0iBH6sGZvtmPWR4x1SgmEhTC9q8dY,4059 +torch/include/ATen/ops/_convolution_double_backward_compositeimplicitautograd_dispatch.h,sha256=-s0w5GgTLr_i564EaGx6XQJi0I1JZ7UdIozVXIl2HiA,1679 +torch/include/ATen/ops/_convolution_double_backward_native.h,sha256=Gw-LWnZpjh_3jYWLD4KU5KMu2-vgYNJmK1o4p8vljAE,902 +torch/include/ATen/ops/_convolution_double_backward_ops.h,sha256=1JjmNuZKB-sulwKtbRzDr_evBIpV7j2aW3wygiGZGps,2361 +torch/include/ATen/ops/_convolution_mode.h,sha256=z_5SdJnslMeMzSVP_2MuCccCwLM3T7yZ8KR9KjhTiPU,2480 +torch/include/ATen/ops/_convolution_mode_compositeimplicitautograd_dispatch.h,sha256=PZo7Bf5TNXdMmc1oSf8bxh9zUtLqejILBcZqp90DB4I,1207 +torch/include/ATen/ops/_convolution_mode_native.h,sha256=JcZMBy14v5ovJu9WpbtFVOWyMnGiWd-7gTMYnW4duhw,689 +torch/include/ATen/ops/_convolution_mode_ops.h,sha256=itAL0MsTkVbSKBleSFkzwsB1vgQIwD01_yhjXlM5Bv8,1567 +torch/include/ATen/ops/_convolution_native.h,sha256=iz3Z5iGV_tP2kJhJfGeRVLUmOxcRyJb-rPh8ntt-jVQ,1508 +torch/include/ATen/ops/_convolution_ops.h,sha256=Xc1yEJU6-3sSiA-tHpweYey_SXldJilk6RIpHFaCkbU,5100 +torch/include/ATen/ops/_copy_from.h,sha256=sEa8dodICV3noISLDfdJJ9U9UgmdxSuW-_Xd-fQojdQ,1392 +torch/include/ATen/ops/_copy_from_and_resize.h,sha256=-5CCizg-ivJATcJ6249F9vgSAmzW7lOYWD2eyF3gmLQ,1316 +torch/include/ATen/ops/_copy_from_and_resize_compositeexplicitautograd_dispatch.h,sha256=5lpBxcy2Ay5kRcmaA50iURA0sNBbgfCj3NBdgg_Opjw,969 +torch/include/ATen/ops/_copy_from_and_resize_native.h,sha256=XKiGor0z-NvKjF5PFVTEskl4TdNvC8PTtmjsBm0KcOE,560 +torch/include/ATen/ops/_copy_from_and_resize_ops.h,sha256=4faSiSFTkSkZW22BObyoIqPB1O0Ti7JMMwU7XZp_GPs,1813 +torch/include/ATen/ops/_copy_from_compositeexplicitautograd_dispatch.h,sha256=Xkmp-_XINm4Z6eFythNxt4kSWJiDPEebC87z9xqSHUA,991 +torch/include/ATen/ops/_copy_from_native.h,sha256=NBgPYCInNWVGGJ0lkKCUA4Spp51ZqZZspbkLs9bhTOA,568 +torch/include/ATen/ops/_copy_from_ops.h,sha256=tI_Xfe1u2aV44zfRe3XDvEemMyUDbmgBDKhij1imHiw,1885 +torch/include/ATen/ops/_cslt_compress.h,sha256=x6yVM3IdBJFR3E0Y49EMMfDZXStKxT9IlfOIUU5XiWU,679 +torch/include/ATen/ops/_cslt_compress_cuda_dispatch.h,sha256=kjXf1hY1GQfRmjLsfwE3y2mfH-1c-FyI82fL_956FSE,754 +torch/include/ATen/ops/_cslt_compress_native.h,sha256=TGknp3myJhWMDXKK1IZKnOWqqCyj_A3v8mMn1i5RSsw,506 +torch/include/ATen/ops/_cslt_compress_ops.h,sha256=XBVzanuHhgCmK0vL737Ej2AVaRFczL78KVOa-aoPRLw,989 +torch/include/ATen/ops/_cslt_sparse_mm.h,sha256=yVSZBG7ZWbPNWSFOdi78fPcoinZcFyKd8Tvdi4yAaqY,1236 +torch/include/ATen/ops/_cslt_sparse_mm_cuda_dispatch.h,sha256=Z0yrssXrxBzDQIGMP98VEuSrTTuEGgrD2eYTmvLsMUk,1035 +torch/include/ATen/ops/_cslt_sparse_mm_native.h,sha256=56nD-WknQ9lNpgA6Jcen_SZ_tRarGRgAsyeQMsilKOo,787 +torch/include/ATen/ops/_cslt_sparse_mm_ops.h,sha256=Iqd0GzDn7GCoEePvVlgjVjGl-U6OA01u1C2L1O39y90,1815 +torch/include/ATen/ops/_cslt_sparse_mm_search.h,sha256=DZ9rW2UjarA0MGw7QppitCmDYSvXe26P4kyVZMklFZA,1095 +torch/include/ATen/ops/_cslt_sparse_mm_search_cuda_dispatch.h,sha256=gQuEdVD9eboR2wHVeFDNOPTozg8_nxzh2tO5eR-qoRA,972 +torch/include/ATen/ops/_cslt_sparse_mm_search_native.h,sha256=EkghcOrgSDSb8vZuh2s9lMmEZXlFDPR2FI613Y-EzGc,724 +torch/include/ATen/ops/_cslt_sparse_mm_search_ops.h,sha256=9udfVH8vrex_07foI_hv6-h_SEcqhozACnTeYNNOoqE,1625 +torch/include/ATen/ops/_ctc_loss.h,sha256=H0JILEi39yfJBKNcKYm1LtrYNbakG9mflgz0_WRuBco,3957 +torch/include/ATen/ops/_ctc_loss_backward.h,sha256=brvC-nNYzfAedhgLAxVB82WLWowop6tI1bZyTsdk4Ns,3331 +torch/include/ATen/ops/_ctc_loss_backward_compositeexplicitautograd_dispatch.h,sha256=yrWR1h9y3U5tBD5_Uc3y-kdGdX-Ocdku9fo-o0EHHbU,1371 +torch/include/ATen/ops/_ctc_loss_backward_cpu_dispatch.h,sha256=dSUO_3KCjRWrKIR9ywaWd4HVFZzZOJubToAyJsAYrn8,1290 +torch/include/ATen/ops/_ctc_loss_backward_cuda_dispatch.h,sha256=tTZrTC-YhlnYDFgE6Q5vEyjc_zpMAt8stAbYKP-uN1Q,1292 +torch/include/ATen/ops/_ctc_loss_backward_native.h,sha256=n1ZA7ybZwmqN9Ltd0_sbD8g6jdXuzW_O5eef-wMvDkw,1670 +torch/include/ATen/ops/_ctc_loss_backward_ops.h,sha256=yVWl1LpaeI6taSrx2TaAy11rgP1trYcBjEbVd1deZSE,4436 +torch/include/ATen/ops/_ctc_loss_compositeexplicitautograd_dispatch.h,sha256=o4MQ7wOTCD0IP3S-JYXx2t7o1vEkbO5pnXku6ztodUo,1802 +torch/include/ATen/ops/_ctc_loss_cpu_dispatch.h,sha256=oWCWyO5QBh5XYSOo-WcefJhRwWvMKh_6hdglANvhyOc,1138 +torch/include/ATen/ops/_ctc_loss_cuda_dispatch.h,sha256=xxFjzSadRFrwWl4uWJCuz3ilBkTXgOkA6lwvkiW5zGg,1140 +torch/include/ATen/ops/_ctc_loss_meta_dispatch.h,sha256=VOdpGzmo0KmOHvNP2f9uXMqGdCLR0oqMPin4eYdAWE0,912 +torch/include/ATen/ops/_ctc_loss_native.h,sha256=NAhs4S9GAn6aroeeZofI1IXHmdnhMHkALPwC-TT8igc,1885 +torch/include/ATen/ops/_ctc_loss_ops.h,sha256=rnex3B__CvoS9vjrly5zD9jiGutsVLGFMnDxTr26ChU,5032 +torch/include/ATen/ops/_cudnn_ctc_loss.h,sha256=Kb6OU8qENGjOKv008wXC2gHx-h0rSHPJiajzh-uRHC8,2956 +torch/include/ATen/ops/_cudnn_ctc_loss_compositeexplicitautograd_dispatch.h,sha256=UZgTpU85FXOPg4G8MLoTrnBQTJbPM6ekiWkjhfdM6eU,1305 +torch/include/ATen/ops/_cudnn_ctc_loss_cuda_dispatch.h,sha256=3J_XMFKt2cqArQ3mTinaUM627OmNOZUeRsGUdb_RUNQ,1176 +torch/include/ATen/ops/_cudnn_ctc_loss_native.h,sha256=2MGrzTmwwMScJ4NGS8nnuTfP6XMvyHf9IOkust6BJ5A,1221 +torch/include/ATen/ops/_cudnn_ctc_loss_ops.h,sha256=Let-GhCiIOMR2168JUY0WET_PrOmBtrKoMcl6gjf2hU,4008 +torch/include/ATen/ops/_cudnn_init_dropout_state.h,sha256=6B8EILxC6NRlDvA9HVrS4t_OYroTIk2mCza9AfFcaIw,2269 +torch/include/ATen/ops/_cudnn_init_dropout_state_compositeexplicitautograd_dispatch.h,sha256=t0xxnO_EP0gGxQ5xO1ojymrw3R537JWoEobqDj1V0Eg,979 +torch/include/ATen/ops/_cudnn_init_dropout_state_cuda_dispatch.h,sha256=4LY6BYl7aFcRqPPbrvms5hN89GDeDw_tYHSoHrPUTic,1060 +torch/include/ATen/ops/_cudnn_init_dropout_state_native.h,sha256=pTWhYCE7aLglANp3cI1qhMz5_kYIjO4knMMN1EMGGjo,821 +torch/include/ATen/ops/_cudnn_init_dropout_state_ops.h,sha256=xcdOikaVcdiTEbpHpDcrjudrmfKmeB4QV3tEZELQr68,2344 +torch/include/ATen/ops/_cudnn_rnn.h,sha256=ztejv8-xmwcbDpr-yQBPUWv_LW22MPVQJhS7k9qeL4o,13411 +torch/include/ATen/ops/_cudnn_rnn_backward.h,sha256=FqdtHRIz_gY_qUkp68BLDdLRZA1OXpYsPJmoxVpbWlw,16526 +torch/include/ATen/ops/_cudnn_rnn_backward_compositeexplicitautograd_dispatch.h,sha256=bgqdmn9VP6WmrjjaFqFZSWUj1zhtqvsciLP4QGSsU7U,3708 +torch/include/ATen/ops/_cudnn_rnn_backward_cuda_dispatch.h,sha256=TEhJgjPdCq8yvwDPQ_Qcj9doQtcLx_MgOAIRPzTIli4,2149 +torch/include/ATen/ops/_cudnn_rnn_backward_native.h,sha256=2W0eYjL02yW-iTgClnwOkRQd0--31Dq7iEjb7NbHcSA,1915 +torch/include/ATen/ops/_cudnn_rnn_backward_ops.h,sha256=ajWmruIj9DnqiYNHb1VgZsOUmHRwWal9Dxpb8RySdxs,5977 +torch/include/ATen/ops/_cudnn_rnn_compositeexplicitautograd_dispatch.h,sha256=css1XRtLMzOF5B8kQkPtYuODD-MANtXkoqoK9iYfBiM,3192 +torch/include/ATen/ops/_cudnn_rnn_cuda_dispatch.h,sha256=rf7N620D_SK8IRRjAakus9TwMoU3D5YnZgkGs7skUrg,1701 +torch/include/ATen/ops/_cudnn_rnn_flatten_weight.h,sha256=_5KWlyhFF4wGg1sYAO5ANeuh3zvzinKA6EQdBMxywcs,7652 +torch/include/ATen/ops/_cudnn_rnn_flatten_weight_compositeexplicitautograd_dispatch.h,sha256=-xg6wQO2uGokldVfokv9BGHPg_B1iaicbX6INNjkPBk,1796 +torch/include/ATen/ops/_cudnn_rnn_flatten_weight_cuda_dispatch.h,sha256=AgCNDQ28AWAlYrC7CQZ1uPdZXZWaQBDqLPi12zCsJfs,1173 +torch/include/ATen/ops/_cudnn_rnn_flatten_weight_native.h,sha256=P0hdEU1hNb7Rea1CWF61JHej2oZ9d0VkexcxcTi0dpQ,949 +torch/include/ATen/ops/_cudnn_rnn_flatten_weight_ops.h,sha256=M70gGrEOJUP725aNnGKIoFotj9hKYoDegIXTQ3q0uFQ,2803 +torch/include/ATen/ops/_cudnn_rnn_native.h,sha256=m-Nir1dlLXt-vkjI8Q5Y_3V7GcmB8U9tp_tMRtn_AZY,1562 +torch/include/ATen/ops/_cudnn_rnn_ops.h,sha256=6PkbkjEG-9r2iJyDmb0oXD2wCalH0emRUvx_m0y30rA,4890 +torch/include/ATen/ops/_cufft_clear_plan_cache.h,sha256=3iLDAnkL94Lqco6ikAe40kqE7j9SyxJG462_8f5RwLc,728 +torch/include/ATen/ops/_cufft_clear_plan_cache_compositeimplicitautograd_dispatch.h,sha256=sZ8GgHOZvzohD5FEUW7tZ_sTZTME16cUiP-LNvd-hhM,803 +torch/include/ATen/ops/_cufft_clear_plan_cache_native.h,sha256=Wc9dDjWaN16p9Sb7ZFe9dmVSMFNzVXynkbKEl4njFtE,513 +torch/include/ATen/ops/_cufft_clear_plan_cache_ops.h,sha256=hezQSZYbh2NBqBuP3X3_GhxG862ubCIyTC05XWIbtGU,1011 +torch/include/ATen/ops/_cufft_get_plan_cache_max_size.h,sha256=hhD4aqqGFiiNswR13_Nr84rwuSoIBtEfxY0ZSVUO9fk,760 +torch/include/ATen/ops/_cufft_get_plan_cache_max_size_compositeimplicitautograd_dispatch.h,sha256=coAxmuuCH4XGvd_6_FwGz14XSworvIcYBW0ttMGmwNQ,813 +torch/include/ATen/ops/_cufft_get_plan_cache_max_size_native.h,sha256=oAeLburcrgwBJVMxD3BlZAlaIIAqhAXgZh1aaPFYhoA,523 +torch/include/ATen/ops/_cufft_get_plan_cache_max_size_ops.h,sha256=p5zHI1SVHhUh1SXnoxghyxHuDt64cmxtly2qjoFbo6Y,1042 +torch/include/ATen/ops/_cufft_get_plan_cache_size.h,sha256=RuVSSOU1rZBCq1wHsVo9WATz0AlXQ0vhKkbywVDoqvM,744 +torch/include/ATen/ops/_cufft_get_plan_cache_size_compositeimplicitautograd_dispatch.h,sha256=2O_JWB-QxCAwpRklIjX45FGsTbUObMViFB4VbHn-evc,809 +torch/include/ATen/ops/_cufft_get_plan_cache_size_native.h,sha256=DkmgPuIAmVBY4i7BUuVfPWameDdhUT0blozOPGkq4a8,519 +torch/include/ATen/ops/_cufft_get_plan_cache_size_ops.h,sha256=84_AigH00miZ7kdFnl2YIRgQrGOk3JcJAPBu7jpPpEI,1030 +torch/include/ATen/ops/_cufft_set_plan_cache_max_size.h,sha256=K9ycRzDcMeezCUlYX2vMPNpE-TZSgaYRwrhGsfX9R_k,798 +torch/include/ATen/ops/_cufft_set_plan_cache_max_size_compositeimplicitautograd_dispatch.h,sha256=b3uS5uK5v4c6jOP16dk7pbHokPf1w4ew2Hyipse-Sh0,828 +torch/include/ATen/ops/_cufft_set_plan_cache_max_size_native.h,sha256=sFD_qvolufeFys-Wt6YO9Dmjr5puUCo2Ft5lQREo9dQ,538 +torch/include/ATen/ops/_cufft_set_plan_cache_max_size_ops.h,sha256=dfME4lSg_8L0VmYUxRNXvX-Aw9HDmI6DJHqqjy04MiY,1091 +torch/include/ATen/ops/_cummax_helper.h,sha256=w11V8BcAz3Dmcw8bU0s3Z0tXdhJlsIyfQjPDTAL6yyU,792 +torch/include/ATen/ops/_cummax_helper_cpu_dispatch.h,sha256=4TE3lVbvykJfTixJqtbixqDAScdYJW5lJCaD4lvOa_E,801 +torch/include/ATen/ops/_cummax_helper_cuda_dispatch.h,sha256=yABm2pGiE23Pxrp_3sqt2hoFG8O4tXNjsVVdJaKrK9U,803 +torch/include/ATen/ops/_cummax_helper_native.h,sha256=O-H78SWPfUgUPs5TD9DnssMVFP4l72dhmxQmI8eYXZA,675 +torch/include/ATen/ops/_cummax_helper_ops.h,sha256=_CX6iwoNZVH_gjfr2C56klL1ihoFpZtHCU8sVJXj87w,1161 +torch/include/ATen/ops/_cummin_helper.h,sha256=SsrLW2uWi5Qx9cmc86zFq6NPMB-grfrQHt1aOuDwy98,792 +torch/include/ATen/ops/_cummin_helper_cpu_dispatch.h,sha256=8CDptiiSuCCTzKf8iH0m55sD3nTF_m3AAXwJuE6T8gM,801 +torch/include/ATen/ops/_cummin_helper_cuda_dispatch.h,sha256=IJ5aosznRWfztLFDOOVJPCg7YiRQJttziqI52c4R7Vo,803 +torch/include/ATen/ops/_cummin_helper_native.h,sha256=_ntUVDbm6cpv-XFlo9akMoclZO_Ls0ek2yBKehb1rMg,675 +torch/include/ATen/ops/_cummin_helper_ops.h,sha256=-DI8mhWSAy-310drciRPvADU7WhC2FiBjsQiUW_E9jU,1161 +torch/include/ATen/ops/_debug_has_internal_overlap.h,sha256=j6hCxNlu0lJ8Dcb2YoovfJY3uSi5qzZ5EPea3x0Sj2o,722 +torch/include/ATen/ops/_debug_has_internal_overlap_compositeimplicitautograd_dispatch.h,sha256=8lp3ZiiB_Q3FRTdbxZyaYyc003SiCraCw28Fi3LcrxA,805 +torch/include/ATen/ops/_debug_has_internal_overlap_native.h,sha256=TmMTcLdxow0WpTsc1jLDnIy5xB5gHZhPgVnCPUgdx70,515 +torch/include/ATen/ops/_debug_has_internal_overlap_ops.h,sha256=AwZL8KFYFI34-yZssY6AG7AnAkSuCrf4h6Md5Waekgs,1013 +torch/include/ATen/ops/_dimI.h,sha256=rx88wvbBSbuAp5c3YwczbyxgdfrOXMhHmNcVp4No-4A,505 +torch/include/ATen/ops/_dimI_native.h,sha256=zcbHWmVfEMALURiWxtyvZym080UXkzqJDWS_zr4qqc4,505 +torch/include/ATen/ops/_dimI_ops.h,sha256=ettNYYS_OGhk0YAdmUcJ9P0u6Zo7SkztR0hO2WD0kgU,947 +torch/include/ATen/ops/_dimV.h,sha256=yCumzlO69LETxEpVEkRrDAMUxuEYYQJEkfSa2stTG6Q,505 +torch/include/ATen/ops/_dimV_native.h,sha256=-LfQLBtX7FWF3mFjQFKQW9pFNazFQHGtT692HfIwjvE,504 +torch/include/ATen/ops/_dimV_ops.h,sha256=VnAM8-R5T4iB056AAJeCGlSItMWq8xc-xlNCVdfEELA,947 +torch/include/ATen/ops/_dim_arange.h,sha256=Nvhyq-LLpBfuE2Fy2J_so-O7AajmOBvAvAXCeEjaw1w,691 +torch/include/ATen/ops/_dim_arange_compositeimplicitautograd_dispatch.h,sha256=D1_G1LZIXaOY10Ytt81tpICevbTYbqUnn99ScJm4oQ4,805 +torch/include/ATen/ops/_dim_arange_native.h,sha256=u9JAfMjws3zS7x5EHwRIqkNB7EI-DGw4_tDAH7NZtgQ,515 +torch/include/ATen/ops/_dim_arange_ops.h,sha256=V-FWgVkBdBm9ipITXHuKWxiog4gT3gpkxW0FIRO-21w,1021 +torch/include/ATen/ops/_dirichlet_grad.h,sha256=xg3C1cCK30xeuFWunl1b-xlNLP8Q4r5LR2Rlf6_gIZw,1388 +torch/include/ATen/ops/_dirichlet_grad_compositeexplicitautograd_dispatch.h,sha256=J2Lw6TIc1q6mbeV9f14vle87_I7zINm_t4x5ev_RAYc,1007 +torch/include/ATen/ops/_dirichlet_grad_cpu_dispatch.h,sha256=cCVdLbAtbuZUQ4hDEGRP39SUMHhgcQJBxVHDamWusqw,801 +torch/include/ATen/ops/_dirichlet_grad_cuda_dispatch.h,sha256=hvM6bwy8zezkrXEghiJLdYuSA_TgPOX_mzhRU_ldxeQ,803 +torch/include/ATen/ops/_dirichlet_grad_native.h,sha256=8V4HR8Pz102baetFYhGWbw2MBtI8NAvmq6Fdixgzupg,814 +torch/include/ATen/ops/_dirichlet_grad_ops.h,sha256=vGd0DYyWoi2Q8-BEDY0xzLVXN8eVPZYk1HZRS5zAMfA,1943 +torch/include/ATen/ops/_efficient_attention_backward.h,sha256=dHLyk0UMVmqz_VIe_EtMkP1JUudDL3j0NtngcXBCFMY,6008 +torch/include/ATen/ops/_efficient_attention_backward_cuda_dispatch.h,sha256=kFN97yp1ATeDGjeyNRLoqnoNCHSE1UcBeSrV0m01nlY,2245 +torch/include/ATen/ops/_efficient_attention_backward_native.h,sha256=Ee0bzVjaExWpI3F_r6PpA1q1JqLAD_3Ykoa6VjnDP8g,1212 +torch/include/ATen/ops/_efficient_attention_backward_ops.h,sha256=Eq-EeWrUatPgwk3PQUU9qiqbOM1GMwt4_wiHzdNLHng,3171 +torch/include/ATen/ops/_efficient_attention_forward.h,sha256=gn8hmZ0iA_4Q9dsDOdjnNzZ-JHq7TRCNXAmev22EiLk,5429 +torch/include/ATen/ops/_efficient_attention_forward_cuda_dispatch.h,sha256=FtQbtY5LU7H6CL2YtWxg1HvI86_NbHj3xtF9PwDza-I,1989 +torch/include/ATen/ops/_efficient_attention_forward_native.h,sha256=CDYfRRuKyj1pwy2LIhP4QZXk8k4H43Ox9mytXB_cer0,1084 +torch/include/ATen/ops/_efficient_attention_forward_ops.h,sha256=w7ktsv75jsw43w2ZurVS__BraMi5dwfeiE0H5DDhvMk,2879 +torch/include/ATen/ops/_efficientzerotensor.h,sha256=varMKqkLKzoTlpBKBwvreY8UMVbiHZdbsuUyDfzB3Cc,6130 +torch/include/ATen/ops/_efficientzerotensor_compositeexplicitautograd_dispatch.h,sha256=Jsq941vZgJsSL4ZUDvB-5sJUiMszUI9k1Q__a15r0-4,1116 +torch/include/ATen/ops/_efficientzerotensor_cpu_dispatch.h,sha256=KMZygXI7znw7yWrw3AYs7mzTGKcg7HgWaENnpIfYI18,1324 +torch/include/ATen/ops/_efficientzerotensor_cuda_dispatch.h,sha256=Oei6Sayslmj0Z5549con22Gc8Qo2MVswfrWFSX0YWXk,1326 +torch/include/ATen/ops/_efficientzerotensor_meta_dispatch.h,sha256=bGLsy5Tstt_a4I_7WDO7AlDySs-H2uGJ7xP3wr2Bah0,1326 +torch/include/ATen/ops/_efficientzerotensor_native.h,sha256=6Mv-91MCYZ7wYglRtHlhuIYy33b0N2UmItJHKD12ONM,1233 +torch/include/ATen/ops/_efficientzerotensor_ops.h,sha256=asBlLkEh3WrsiOIGNPJY8bteY-YlfUjVDDKU_w9nE0k,2153 +torch/include/ATen/ops/_embedding_bag.h,sha256=u6jZaw9YpGGMSVyGrvS4epXuk7kkwEzFmo-eHkn91VI,3194 +torch/include/ATen/ops/_embedding_bag_backward.h,sha256=aV1q7XlDJEqBdp6wDtYoyXYmSDbHpFCc6rrlOVdH8GU,3574 +torch/include/ATen/ops/_embedding_bag_backward_cpu_dispatch.h,sha256=dCIaE3D-hUpyhBClc5tC6_RhzCw9R5ysdjBdk53NJJw,1453 +torch/include/ATen/ops/_embedding_bag_backward_cuda_dispatch.h,sha256=XFQAhjtGtXouBF3js9c7w4rOWr99HV8rNqGdYsr9jqA,1455 +torch/include/ATen/ops/_embedding_bag_backward_native.h,sha256=EUh9ZAv4YITRUlk6FEmYiho90vJKDUtiFEegXZbqUF0,830 +torch/include/ATen/ops/_embedding_bag_backward_ops.h,sha256=3X-MyufoEG8YIf5Xud-XWtxGDkPkXjkZ1Fh4UYf5-PY,2013 +torch/include/ATen/ops/_embedding_bag_compositeexplicitautograd_dispatch.h,sha256=sXQM-GONqfJrVdFQOQhQ0c_1B40JF6mlUDw6H8hzGeI,1581 +torch/include/ATen/ops/_embedding_bag_cpu_dispatch.h,sha256=9HsmBlp_fRkJxKAId4Rv0AQLTZ5-BX5K9H6QZX7P7EU,1037 +torch/include/ATen/ops/_embedding_bag_cuda_dispatch.h,sha256=zXURLiwgQtjeFKXavvALtOKGjAItrd1TcjJE2J_g0oQ,1039 +torch/include/ATen/ops/_embedding_bag_dense_backward.h,sha256=jYmtDZgn-7PhIgXNG8V4pqcaxRwjY7y-wTYVryt48Co,9360 +torch/include/ATen/ops/_embedding_bag_dense_backward_compositeexplicitautograd_dispatch.h,sha256=IiTRixmKVcmtBEV5qqymnG2DcH5rkZoYW6IsDY51zPc,2214 +torch/include/ATen/ops/_embedding_bag_dense_backward_cpu_dispatch.h,sha256=chqiYJpw9fBfeSFVUlge_FXaNGf2OpK-xeGdBhUe1bk,1383 +torch/include/ATen/ops/_embedding_bag_dense_backward_cuda_dispatch.h,sha256=J-2rDmXp6AZhbnXX6rus7rOHFO0X0GDDZPKGWQe6YxU,1385 +torch/include/ATen/ops/_embedding_bag_dense_backward_native.h,sha256=zeS66u0IBakfN5cOzeV16fe4aazyfQFrFelfIeaqQHA,1509 +torch/include/ATen/ops/_embedding_bag_dense_backward_ops.h,sha256=OnLNRNTheyjFAvZVh5jMVhnwO8zpazs_qrbkQgXcEQw,3427 +torch/include/ATen/ops/_embedding_bag_forward_only.h,sha256=xvmKny8aHr_QVaQmqa5wWksifymaoVvB_2jya306CVs,3324 +torch/include/ATen/ops/_embedding_bag_forward_only_compositeexplicitautograd_dispatch.h,sha256=H8G9STbraeYLRHjDVTlzyFguxbTwd6wtnsJbQLOdhgA,1607 +torch/include/ATen/ops/_embedding_bag_forward_only_cpu_dispatch.h,sha256=IXK6lcUfDgVr4iBJggbGeWhEOva2EKMgduo5UTHmvMA,1050 +torch/include/ATen/ops/_embedding_bag_forward_only_cuda_dispatch.h,sha256=ZjDrVdOsA-4mV1xGh8THy5WTsXZsuRJBbBsoGLCjCwk,1052 +torch/include/ATen/ops/_embedding_bag_forward_only_native.h,sha256=AfO3NY19_eKrhpU9iQrr3hFZ752GZWgzUoUOOhTbSzU,1599 +torch/include/ATen/ops/_embedding_bag_forward_only_ops.h,sha256=yNXf7Y7HLJyvi2cknpEx-G972Q_fPrGTGs6amHoSQu4,3703 +torch/include/ATen/ops/_embedding_bag_native.h,sha256=uYnr8DQyPEG9HGFc1BCvOpH0cBNzcSI1lyIK9QQFYOA,1560 +torch/include/ATen/ops/_embedding_bag_ops.h,sha256=IDHrK-NPdyPEyprGO3ZfPVrgZMl0xCGcHf51y69MEnE,3625 +torch/include/ATen/ops/_embedding_bag_per_sample_weights_backward.h,sha256=KKnraIFh3lcuJ_4vW1-cxN4I-Ab7_CumvYbTc9LTkAw,2315 +torch/include/ATen/ops/_embedding_bag_per_sample_weights_backward_compositeexplicitautograd_dispatch.h,sha256=46y_fCgO7CufPS7m6JpjS3dU77xiO3x2OT-_rNEHu5g,1264 +torch/include/ATen/ops/_embedding_bag_per_sample_weights_backward_cpu_dispatch.h,sha256=vQB8MnRiwSFdSKm8IxFkIKg1sTzwqJav1kNeKrn5298,931 +torch/include/ATen/ops/_embedding_bag_per_sample_weights_backward_cuda_dispatch.h,sha256=fXyYQ8V514WTtBNpFJPsfAZXrTHRlYUS1YzsFG-1D8U,933 +torch/include/ATen/ops/_embedding_bag_per_sample_weights_backward_native.h,sha256=lMguZ4UC1i9vlSvej3VU4mtyZcP7DKKRg8HR3dxhr04,1201 +torch/include/ATen/ops/_embedding_bag_per_sample_weights_backward_ops.h,sha256=VbvHcH37T3mEGqI2l0_yle3TKqd8ImdTMWKPZ6joCoo,2763 +torch/include/ATen/ops/_embedding_bag_sparse_backward.h,sha256=x1C6cZ8CqAvaeAgbZwhVZtBsDYOkjsQg6ndtz-tgaJE,3281 +torch/include/ATen/ops/_embedding_bag_sparse_backward_compositeimplicitautograd_dispatch.h,sha256=YQ9BeYv0rN7czAVUm_aitT5DQ_tXh_UjUOGCQo25zOw,1413 +torch/include/ATen/ops/_embedding_bag_sparse_backward_native.h,sha256=dDh8vM6hr0a3CqYYSjV_HhRB-D0rFdcJN0Gs5mONv7o,788 +torch/include/ATen/ops/_embedding_bag_sparse_backward_ops.h,sha256=Sxzbz4Nowbp4WgdADQ_70e3rNxeE5TIGZGE3q1x6-T4,1873 +torch/include/ATen/ops/_empty_affine_quantized.h,sha256=YvGNUWMbQzpCTkxntl0cXGDWNggaKdANrs18ggVRSVg,9309 +torch/include/ATen/ops/_empty_affine_quantized_compositeexplicitautograd_dispatch.h,sha256=ziPomIWxyT5xw8NzyZluQapVvcwwTg3xdrvf2qZFNaY,1528 +torch/include/ATen/ops/_empty_affine_quantized_cpu_dispatch.h,sha256=fbXfKPtdYpFJDaRgnXR0pPC9Z8CLWRLJDimLk6Nj0zg,1736 +torch/include/ATen/ops/_empty_affine_quantized_native.h,sha256=uzSrXR_iRveaEtKWyszVeO9eWjmh6hEM4t4si79frK8,1333 +torch/include/ATen/ops/_empty_affine_quantized_ops.h,sha256=182qL5GeW4HnSBqjwtA-qBOuqA-N9fcmcjZIwMPn0Tw,2767 +torch/include/ATen/ops/_empty_per_channel_affine_quantized.h,sha256=Wjf78IxlC8TWAqQV8cGClUAfOPuqVs8iQI6QIZwK2n4,10617 +torch/include/ATen/ops/_empty_per_channel_affine_quantized_compositeexplicitautograd_dispatch.h,sha256=UjoCaV_Sbsz47DyvPvbRFHMMIKcrTyEzsJ7h_woaMAA,1724 +torch/include/ATen/ops/_empty_per_channel_affine_quantized_cpu_dispatch.h,sha256=6zCDElUzYJLOI0M5kbuXCmgye_tB7QBCcn7r9WFUXbU,1932 +torch/include/ATen/ops/_empty_per_channel_affine_quantized_native.h,sha256=D_78nwueFpuXn3hrh2Abpb1fLLhigrtvJjkDyP3sunI,1478 +torch/include/ATen/ops/_empty_per_channel_affine_quantized_ops.h,sha256=FoMlZttR5zejyk8TZkT_AUyw3Ma3fRA_HAKM4o2JAvc,3083 +torch/include/ATen/ops/_euclidean_dist.h,sha256=YgQC4flyfpWLl372NWcMAFR_nt48xKZrcKB1243II9w,1229 +torch/include/ATen/ops/_euclidean_dist_compositeexplicitautograd_dispatch.h,sha256=VgJ96vyDrxZN1XUZxLPgQOs_5l0_g8rmAA3Y6GeZXIQ,1036 +torch/include/ATen/ops/_euclidean_dist_native.h,sha256=FS7Z22psFIRTa-eQ-Lx-uTwWqvbWf3eypWXm3AIGaXM,636 +torch/include/ATen/ops/_euclidean_dist_ops.h,sha256=mB-vLb8hPnGuYmArlb5S4avpFRQXFhiiMQWT-EKgies,1759 +torch/include/ATen/ops/_fake_quantize_learnable_per_channel_affine.h,sha256=-DvV1yfncGeqq_0KCOAKa_h1k4Fyvneub5q0FjhRwDU,2276 +torch/include/ATen/ops/_fake_quantize_learnable_per_channel_affine_backward.h,sha256=iInbKFENxoGrM8MvxbwV2vpPzp64bHA3k8UMeJm5_hI,1215 +torch/include/ATen/ops/_fake_quantize_learnable_per_channel_affine_backward_cpu_dispatch.h,sha256=FPwjopwMRZ5Mor2-LX2qF7tcqmhqw8rfizJH-T4xP6M,983 +torch/include/ATen/ops/_fake_quantize_learnable_per_channel_affine_backward_cuda_dispatch.h,sha256=nEp_tdqqyM4Dhe3GDOev0wkopNIGEY3gtXry0GfaLcA,985 +torch/include/ATen/ops/_fake_quantize_learnable_per_channel_affine_backward_native.h,sha256=3P3PUw34reJA4xbcyVU7IGoNbUpWxmBm8a_7n-PB-H0,737 +torch/include/ATen/ops/_fake_quantize_learnable_per_channel_affine_backward_ops.h,sha256=y6wj0lIrR21Erib_OATqhV3-BaJnVVk235xPHVOAjkA,1738 +torch/include/ATen/ops/_fake_quantize_learnable_per_channel_affine_compositeexplicitautograd_dispatch.h,sha256=t1YDBDsEQQSoQ1AccQYSUxgFF-Fr-F4ptpVSX1o1OTs,1227 +torch/include/ATen/ops/_fake_quantize_learnable_per_channel_affine_cpu_dispatch.h,sha256=IGoxYOEkoyND0zcPNTKoxi1OpN_tkx0zVRL8tVp2FN0,913 +torch/include/ATen/ops/_fake_quantize_learnable_per_channel_affine_cuda_dispatch.h,sha256=NbN7-ghjOZ0EJib_IXDPFEGB9laMpx2v2hpG6WAd320,915 +torch/include/ATen/ops/_fake_quantize_learnable_per_channel_affine_native.h,sha256=okCgF6jII9G2-M14l9KY58I1s7wq0eAyeXOncS-MS1c,912 +torch/include/ATen/ops/_fake_quantize_learnable_per_channel_affine_ops.h,sha256=3XDbNLyyS4g1NEb6bfbmnS4qxbOYjgmrcHkOw-NU3yo,2643 +torch/include/ATen/ops/_fake_quantize_learnable_per_tensor_affine.h,sha256=8lDlzzup5UMziggXtvC-00PjV2gsCE3wr3cqB0w9khs,2176 +torch/include/ATen/ops/_fake_quantize_learnable_per_tensor_affine_backward.h,sha256=kbSG6cPh1h_mln4TT29Bfq04n8uHBZqpaoPyf14lvEw,1181 +torch/include/ATen/ops/_fake_quantize_learnable_per_tensor_affine_backward_cpu_dispatch.h,sha256=f1-peSegO2axvPAOgjk07DzQNnUmrMf2E0ur1pk9JZQ,968 +torch/include/ATen/ops/_fake_quantize_learnable_per_tensor_affine_backward_cuda_dispatch.h,sha256=vRbsK3_bPuwHjafv2snWgrU8yCPVZkmao3RrTzbZCro,970 +torch/include/ATen/ops/_fake_quantize_learnable_per_tensor_affine_backward_native.h,sha256=vuiO2bQTKguafdDrYQpgWFNS7QVvlI49kxU1chLFzaQ,722 +torch/include/ATen/ops/_fake_quantize_learnable_per_tensor_affine_backward_ops.h,sha256=-QDapkV5zIGI2KmmapI0uC3FPn7lD5daOC_H-mrztDI,1688 +torch/include/ATen/ops/_fake_quantize_learnable_per_tensor_affine_compositeexplicitautograd_dispatch.h,sha256=dTCvFR7Bp7PDRGXBKh8Jcj_22Eu05KMUaQps65WIHW4,1197 +torch/include/ATen/ops/_fake_quantize_learnable_per_tensor_affine_cpu_dispatch.h,sha256=64WmAk9fXRmQWlLsfCgzdwvzleOuArR9dbk6zNfPHmw,898 +torch/include/ATen/ops/_fake_quantize_learnable_per_tensor_affine_cuda_dispatch.h,sha256=ic9rTCIneF0Madl0CR6tNVG_kuqAb41e_3RtlcW_XM8,900 +torch/include/ATen/ops/_fake_quantize_learnable_per_tensor_affine_native.h,sha256=SW9TeXWZHwGDm7_Mm9UFZOWzk1vHalPiBoIGdY10hc4,882 +torch/include/ATen/ops/_fake_quantize_learnable_per_tensor_affine_ops.h,sha256=UxjAFTniG6gRlscTp4JjXdmu62pXZVgWFx3uqu6OmRg,2543 +torch/include/ATen/ops/_fake_quantize_per_tensor_affine_cachemask_tensor_qparams.h,sha256=jFI9f7TGduYsLVYJDg9o1gCeXYbepdQb-B7JtaZQDlo,2627 +torch/include/ATen/ops/_fake_quantize_per_tensor_affine_cachemask_tensor_qparams_compositeexplicitautograd_dispatch.h,sha256=x7VXUMU1EePYrHbAr0v7NPx4FVivZsENxLvXoLSU4p0,1355 +torch/include/ATen/ops/_fake_quantize_per_tensor_affine_cachemask_tensor_qparams_cpu_dispatch.h,sha256=yKvNLyeA39e-i1pq3WsTGlj6ENKgBPgnMIcBURFicRA,953 +torch/include/ATen/ops/_fake_quantize_per_tensor_affine_cachemask_tensor_qparams_cuda_dispatch.h,sha256=sI7sJCe8CTUPpcgUdxVKpNJ9mO4MmoYDHcMQFcr-gA8,955 +torch/include/ATen/ops/_fake_quantize_per_tensor_affine_cachemask_tensor_qparams_native.h,sha256=ucl3FbVcZo3I4iHOk3svxtKa9a5ZQR7jTW2RTvvT2-Y,1018 +torch/include/ATen/ops/_fake_quantize_per_tensor_affine_cachemask_tensor_qparams_ops.h,sha256=DBxxbs8A0SlqOLB2fluxD0Qva5j_JCPDS65NrnV5KW0,3005 +torch/include/ATen/ops/_fft_c2c.h,sha256=3gRElYPdvb0N4NYvjETP3sVBeygfzMDS1LOZMD97Kzc,4521 +torch/include/ATen/ops/_fft_c2c_cpu_dispatch.h,sha256=wAmu1DWWu1j9szShrxWYL53xHNOHyRLBNGA44vOKy_U,1509 +torch/include/ATen/ops/_fft_c2c_cuda_dispatch.h,sha256=fjQPFTTZs2b6GYFt7InOmQpWlAgu4w4KPmT6Rkritp4,1511 +torch/include/ATen/ops/_fft_c2c_native.h,sha256=YAyFODmdfRpw4uZgNcvYbi6j95orgBX2bt5EIj3GI7I,970 +torch/include/ATen/ops/_fft_c2c_ops.h,sha256=4EwQ6mTg6mp1eR-cENVQribxnIOe4hejaRkeXaFVHXE,1989 +torch/include/ATen/ops/_fft_c2r.h,sha256=h8z5t3ETpfWdvwqK2uD8Q79qtRhMjny6KuKzeQ-Sw3A,4575 +torch/include/ATen/ops/_fft_c2r_cpu_dispatch.h,sha256=SbhvFpgjNgLZTLXT5tlEK5bN6EKNbcrH0Rk7G5CW1Ns,1563 +torch/include/ATen/ops/_fft_c2r_cuda_dispatch.h,sha256=tv0-83Z0ZREg6HU-rqmBLJrvloi3V4RnNSLp5yzO5Ug,1565 +torch/include/ATen/ops/_fft_c2r_native.h,sha256=mNom9fSFT4KlmLMEB9Z1KLxkdTfwe4Sz_-Cb8DGKHAs,1006 +torch/include/ATen/ops/_fft_c2r_ops.h,sha256=d9hibJ_qCuGG6TR1z1b5IiMbfuiC1WP6KrF6AR6d7-I,2041 +torch/include/ATen/ops/_fft_r2c.h,sha256=XTvrRiXEr9ynSn_O17ee9Z66mwKB799ieE1p0kVxqJg,1465 +torch/include/ATen/ops/_fft_r2c_cpu_dispatch.h,sha256=ct5lK1ri3Q14YGm8pWQn19SqBtrIZK_xpfX8N9x0ToE,1085 +torch/include/ATen/ops/_fft_r2c_cuda_dispatch.h,sha256=o0oMO1tk5sxpJsqPgchQsejOZjnF_KnMnELoayFbbiw,1087 +torch/include/ATen/ops/_fft_r2c_native.h,sha256=ICsPy-UCUPfqBcLdwfLL7zo6kVrpj8UmTgIm-w5Ap30,974 +torch/include/ATen/ops/_fft_r2c_ops.h,sha256=svYv9dwtCe9o09YOlQWgOz5S0FQkPxMZ62nVRa3OtJQ,1965 +torch/include/ATen/ops/_fill_mem_eff_dropout_mask.h,sha256=Gpj1tcqyrmz62ygFZFhk3L5MlBmXUv3ZhupB5yjhDmQ,843 +torch/include/ATen/ops/_fill_mem_eff_dropout_mask_cuda_dispatch.h,sha256=3ociCup4lwP685YF49dnAvCi5nkJGkNlMqMN48mxung,810 +torch/include/ATen/ops/_fill_mem_eff_dropout_mask_meta_dispatch.h,sha256=zMUpMfhwRsLqGmjc_4LZq-b_teCSFmAi0qy02cj9tQY,810 +torch/include/ATen/ops/_fill_mem_eff_dropout_mask_native.h,sha256=EHoO9hn96LF58BeZcdNEeiuc8Roprh5KSlliCfpaaKY,562 +torch/include/ATen/ops/_fill_mem_eff_dropout_mask_ops.h,sha256=G1EPbMx043A3E-AwuZ9n45DQU5QJrN6osrRltn3Owxg,1182 +torch/include/ATen/ops/_flash_attention_backward.h,sha256=GzjtADCuo8-2I64xAgm4HCbSEWOzEZ8WQhWSqKqRttk,5174 +torch/include/ATen/ops/_flash_attention_backward_cuda_dispatch.h,sha256=KH_8Hd6OTugVVvetzrX3qXxP1XFGpzt9SknNxnP7tq8,1907 +torch/include/ATen/ops/_flash_attention_backward_native.h,sha256=zbSqCAefN1V9EQjk7pWter5PJx7YfDUQKoYrhWWC64g,1039 +torch/include/ATen/ops/_flash_attention_backward_ops.h,sha256=IYWhmsfxmAgII392SNOjHGYupP2bN63E8xMUTv256AY,2664 +torch/include/ATen/ops/_flash_attention_forward.h,sha256=Uj2G6kSQoPhCW99JbX9VJQINmwSPZbmN-S6RYqhUXSk,5401 +torch/include/ATen/ops/_flash_attention_forward_cuda_dispatch.h,sha256=sUj0-HwAaSjZQXZ7Xn_hLJZSrIGaz_7q5abB2qwLZIc,1973 +torch/include/ATen/ops/_flash_attention_forward_native.h,sha256=szTMR0q2iri4tvbS6DSoKiJ6GPkP8w3HKZ1KZOmUuRM,1072 +torch/include/ATen/ops/_flash_attention_forward_ops.h,sha256=pFBrGrLba-CesPxfMp3xOX-KFyAKVlxJsnDCvEBRV4k,2824 +torch/include/ATen/ops/_foobar.h,sha256=UrDGK0n2o_L2r5eoLnGWtKkpaxqTOxy_MD96-v6nPSU,1383 +torch/include/ATen/ops/_foobar_compositeexplicitautograd_dispatch.h,sha256=ZvqcYw1re99EWIJpcwObLygnWF_KlgBDfmCjOGqXgEY,974 +torch/include/ATen/ops/_foobar_cpu_dispatch.h,sha256=2vxrpPWFIf4INqrI91L_-C4J_LLUtdWSVwDdLIzqONo,792 +torch/include/ATen/ops/_foobar_native.h,sha256=U3p8GXFYMFx_80Aq-gV9GLRtblRLvniCOgMEigXQk80,658 +torch/include/ATen/ops/_foobar_ops.h,sha256=L8VHZOmBDD0aWg6UZZ2cfVBN_j17OEDN3m6ft09dABA,1836 +torch/include/ATen/ops/_foreach_abs.h,sha256=lPfmKMi0_rUQo86PI1gT9TeO6wBos0n7ZLklQpBqtRA,1243 +torch/include/ATen/ops/_foreach_abs_compositeexplicitautograd_dispatch.h,sha256=kUQUxs6sZ2byArP_CvtApPbtDd5X-m8gB8N7cwW-yJY,1007 +torch/include/ATen/ops/_foreach_abs_cuda_dispatch.h,sha256=Qw1k-WuOgu4GKxK0XUVaEoiHVD4QbYeRZ7q1yVLJTn8,814 +torch/include/ATen/ops/_foreach_abs_native.h,sha256=p7_ydGAIf1ywyyeizCzynEkNbdFHyVqpSYVKDnqjrkI,809 +torch/include/ATen/ops/_foreach_abs_ops.h,sha256=eRKCp0NKen4RevAFooadsH6H6nxlHh9QGAbJm2br_Dk,2106 +torch/include/ATen/ops/_foreach_acos.h,sha256=NClbs8-v6rcTGoIflI78e0nBhmOtB8ZVn6C1homLEuM,1256 +torch/include/ATen/ops/_foreach_acos_compositeexplicitautograd_dispatch.h,sha256=5IbR8Wy4RrzRT_kNqO5ezC3dsUqjbKihB5UEI5HoAss,1011 +torch/include/ATen/ops/_foreach_acos_cuda_dispatch.h,sha256=c6xSwKxZMDZiUgHp5CuFqVmsfcgrtaK5oqZtf6EdWSs,816 +torch/include/ATen/ops/_foreach_acos_native.h,sha256=6P2f9syc_VRQZG3KA8Lm0GXVGpgwBRqjJv3UsLlBsNg,814 +torch/include/ATen/ops/_foreach_acos_ops.h,sha256=P1M09I7wrKVaz79em60NH9dMXa7uiF2k3pe70jKEUdM,2115 +torch/include/ATen/ops/_foreach_add.h,sha256=FCAgaTjj5yY10quU36tKlpTFpDAOkyvXkdu8qBe_9Jg,4910 +torch/include/ATen/ops/_foreach_add_compositeexplicitautograd_dispatch.h,sha256=oNbbzPZoBrCIsa6P_mCWF0ciMh2X8ijV656PFK7J4zU,2488 +torch/include/ATen/ops/_foreach_add_cuda_dispatch.h,sha256=xQ2MAkn5YomoIujllpgMFzewqVE67U4AIF5Vei8N5xk,1516 +torch/include/ATen/ops/_foreach_add_native.h,sha256=Asl5jLOdoUd36VA50XG2TRxA65eP9r19lOcfadxX-FA,2993 +torch/include/ATen/ops/_foreach_add_ops.h,sha256=ypu4xPwFsAdWtRojUE9IROTdyGGYVrM1R05M6UKa3vE,8962 +torch/include/ATen/ops/_foreach_addcdiv.h,sha256=EGtribgiIYea7qtuXs2Vgbjtz5CXaEidIFQNC0o7_TU,4939 +torch/include/ATen/ops/_foreach_addcdiv_compositeexplicitautograd_dispatch.h,sha256=ipb7N6Dow4atZS691BBA1QWt4rnIYwozoQvQ9SpIf_0,2539 +torch/include/ATen/ops/_foreach_addcdiv_cuda_dispatch.h,sha256=rrYVhC2_COK8aczDU_E_nMEFiXcJw-kffTEsQvUboLo,1554 +torch/include/ATen/ops/_foreach_addcdiv_native.h,sha256=1lzi64wPrGW4PAYk_lXvqGEzVNQ7eAKsA6lXUgk_hdM,2896 +torch/include/ATen/ops/_foreach_addcdiv_ops.h,sha256=YzDjTjzmkrhgavkwGyNRiZc1nazlTSPJ2M_9KfDbOMY,8095 +torch/include/ATen/ops/_foreach_addcmul.h,sha256=JvMaJLre2170JGmgM2ixXMdpQ4x6_1lkB5wuPkj_DA4,4939 +torch/include/ATen/ops/_foreach_addcmul_compositeexplicitautograd_dispatch.h,sha256=CRP-SmR5l2ZSdDq7qvDx1ejLqdtActICQX1Ls7jbnI4,2539 +torch/include/ATen/ops/_foreach_addcmul_cuda_dispatch.h,sha256=G8fJo09MXBjnvSfNd4LUucmROjBNf88fdiC3fn2fZT0,1554 +torch/include/ATen/ops/_foreach_addcmul_native.h,sha256=N4OG1S5dqRCeS9bkpGyL_RwGZgYNKoo5uVfq33jXpw0,2896 +torch/include/ATen/ops/_foreach_addcmul_ops.h,sha256=_O3DidY5IAT6qXtqFNSPkJCZ_K0mGWOgdJH7a6mqYYM,8095 +torch/include/ATen/ops/_foreach_asin.h,sha256=KLwPjWtKTF7MGGpESci3t_i1WA7kYRwea4eoB-kF_aw,1256 +torch/include/ATen/ops/_foreach_asin_compositeexplicitautograd_dispatch.h,sha256=lDJhe__vH80iW9Z4vMq3qpwfBJMze0_z_HQaeIwvSL8,1011 +torch/include/ATen/ops/_foreach_asin_cuda_dispatch.h,sha256=1rbb-HDxkr6m56GZgodXz9fQddUihJ_ygSwZe_hfH14,816 +torch/include/ATen/ops/_foreach_asin_native.h,sha256=6TRxRI75narXiE9A7MxIWGq07u7VEgeUt9IgT7fETDQ,814 +torch/include/ATen/ops/_foreach_asin_ops.h,sha256=1hbgrIx8fm25bxUDJyn-Zyui3ZHQ_oYAUqW-r0J2kRA,2115 +torch/include/ATen/ops/_foreach_atan.h,sha256=wIIKYcZbBMuHEnQLtD6aLXxo0v-nWIdaf6Gj6wBgCno,1256 +torch/include/ATen/ops/_foreach_atan_compositeexplicitautograd_dispatch.h,sha256=NMZhOmBaYHBQhJfPl1cfRdF1zmrzaOfY1kPRdxObXgY,1011 +torch/include/ATen/ops/_foreach_atan_cuda_dispatch.h,sha256=uZIksQAqJTNoIbO1YiFnOv2QPiwFN-QPhJXPuPa89t0,816 +torch/include/ATen/ops/_foreach_atan_native.h,sha256=2xJgms-3tFrfU1tQMwnE9CfjUm8eMOUAd6S_zz1HaoU,814 +torch/include/ATen/ops/_foreach_atan_ops.h,sha256=xB-n7kBILwGe_Gnq8jB9wGDY0uxM-MIJ78dpG1RjhsM,2115 +torch/include/ATen/ops/_foreach_ceil.h,sha256=UEIRcde8VF6AeKdX1GlOfguKzI0THbn2qjiBOtek4DQ,1256 +torch/include/ATen/ops/_foreach_ceil_compositeexplicitautograd_dispatch.h,sha256=kLN4VAvFkFZlpikwlYzZ44cT4pg81X7cW55HqBpdCkI,1011 +torch/include/ATen/ops/_foreach_ceil_cuda_dispatch.h,sha256=KBXQWJjHv7FOHQgr5yRNEv52estlmnxROa2DxV7IpfM,816 +torch/include/ATen/ops/_foreach_ceil_native.h,sha256=mx_ky4CdjLbfjLb4fRLUwYg1UWnNN_8K_O5Hccr6zjs,814 +torch/include/ATen/ops/_foreach_ceil_ops.h,sha256=KxskY8jpwKq8iNkB285burarXlEhbNbCcx6fVU61HeQ,2115 +torch/include/ATen/ops/_foreach_clamp_max.h,sha256=eB8K4UwFvTMB-Q-W6OUtWBd5Hvdq_Lb2FGeAiUISZWU,3739 +torch/include/ATen/ops/_foreach_clamp_max_compositeexplicitautograd_dispatch.h,sha256=D3ltR38bv3Qdzaa9h5KScxHGr3i64maJJlUVSl27Pac,1961 +torch/include/ATen/ops/_foreach_clamp_max_cuda_dispatch.h,sha256=bb54PiJWgh4tBRpYchjbc5K6mq_QWHGv6aXhI008bfI,1264 +torch/include/ATen/ops/_foreach_clamp_max_native.h,sha256=8p5-Xl6ymXVMDno0psBrmmmhH8BuItcynifEBMdK71Y,2247 +torch/include/ATen/ops/_foreach_clamp_max_ops.h,sha256=9q363n6kYvol3gNPFZr6JE60CCmzam2cFHaz_w9myOk,6610 +torch/include/ATen/ops/_foreach_clamp_min.h,sha256=aYPsdo8M1MoMMHqP4DIJW2UMseSm4zr8ay1_hRVfmY0,3739 +torch/include/ATen/ops/_foreach_clamp_min_compositeexplicitautograd_dispatch.h,sha256=d90ekybbmSO5uN3Z_bxl_FQ3ZXuUmHiqbgGjBY4YP_8,1961 +torch/include/ATen/ops/_foreach_clamp_min_cuda_dispatch.h,sha256=0jzIfY2kxZ8gwwSGi2dscH67PlfDWPHRvvVuC7dbEeg,1264 +torch/include/ATen/ops/_foreach_clamp_min_native.h,sha256=FfZ1dx3MYvzSA4sibjLPVubbKq6wUdhHsBCK_OESq2Y,2247 +torch/include/ATen/ops/_foreach_clamp_min_ops.h,sha256=qCVEum74n2-BzpIscZ3P8aOQqZAFJq-tonrxX462G7k,6610 +torch/include/ATen/ops/_foreach_copy.h,sha256=Kcb_pOKU6JctbvNPwa3L6SmC5Ynkf_CfLOTEy5N0nLc,1671 +torch/include/ATen/ops/_foreach_copy_compositeexplicitautograd_dispatch.h,sha256=77JimkSD3Lw_6jluP_XTPeoFbw4U-62T1BeLCRTwz-M,1185 +torch/include/ATen/ops/_foreach_copy_cuda_dispatch.h,sha256=Qo8EXEJnuiQnPfP132gaPv-uzpFGNxIkr-rXwpXWSLY,788 +torch/include/ATen/ops/_foreach_copy_native.h,sha256=nz60aGkT4h4PYb-ANx2VFxc-lEDpVk2Msq-OunGiQUo,917 +torch/include/ATen/ops/_foreach_copy_ops.h,sha256=39N8h8_Ye98FduFtVk3H8wbViAC8y7pnEijMNmeZ7gA,2541 +torch/include/ATen/ops/_foreach_cos.h,sha256=rE_HVed0EXkjsfRO3B0SvSYY8UOD5NtvkDEOsCf8VlA,1243 +torch/include/ATen/ops/_foreach_cos_compositeexplicitautograd_dispatch.h,sha256=EesSBGZ9J6ZXRVEFe-KZq3fTFsVAvyBVAfB6zQXtps4,1007 +torch/include/ATen/ops/_foreach_cos_cuda_dispatch.h,sha256=gNtxCCqb0iewwINESO5Efo9c7SPGLKCec4gEULWXUgk,814 +torch/include/ATen/ops/_foreach_cos_native.h,sha256=k9Zs1fbw0-A10LMzYrK4LGEzm1FuZOxzPcCAWNaUDIY,809 +torch/include/ATen/ops/_foreach_cos_ops.h,sha256=b8QQIAAOCnBS_F1RlDO7sO-bzO-qXAakJkycNLt6WO4,2106 +torch/include/ATen/ops/_foreach_cosh.h,sha256=pBCxp3QOLSzr40BJLZGSEU1C62T1rMUnhRFmB2bexo0,1256 +torch/include/ATen/ops/_foreach_cosh_compositeexplicitautograd_dispatch.h,sha256=kiDQ_8bsEhC1qkvWOFU8P5PvQMuEkrbV3PRm8nug6-E,1011 +torch/include/ATen/ops/_foreach_cosh_cuda_dispatch.h,sha256=Hf7Yp6dIvJJ6nzn2mXeZy1kykUDv3OL93VFr8RZ7aZg,816 +torch/include/ATen/ops/_foreach_cosh_native.h,sha256=T3kvrrGRz5f0deEM2ndxiiC8viQXbyaD-72ozhHA-Jk,814 +torch/include/ATen/ops/_foreach_cosh_ops.h,sha256=K9eME8TO9LBSS3eKHgWChoNF96JZCtUu7qneCMIoxEY,2115 +torch/include/ATen/ops/_foreach_div.h,sha256=O-YyACToWwxCtyW-bTaKjy1vCBkUHWs3cKCJq1mMphk,4494 +torch/include/ATen/ops/_foreach_div_compositeexplicitautograd_dispatch.h,sha256=iZHT89tCm6wOUCeMyZTSZQRlEEw1fXMsFqBnAPXi-EI,2268 +torch/include/ATen/ops/_foreach_div_cuda_dispatch.h,sha256=nmqyqFjS1NkNv2Hvh1YCOoBlIQOBTIFDFSvM7detCvY,1404 +torch/include/ATen/ops/_foreach_div_native.h,sha256=8ts7dvh060lQzWLNeXc7WOGm5EFeLYukK71ECg-j0UQ,2717 +torch/include/ATen/ops/_foreach_div_ops.h,sha256=edBohTlN0jfcr_4o5Z8vjpwLGSxzom2w1UJWUid9xjQ,8422 +torch/include/ATen/ops/_foreach_erf.h,sha256=fFCa__Rc3ImfbZZzJ6ECNqufFPnuti1-HlYnLGk8DwY,1243 +torch/include/ATen/ops/_foreach_erf_compositeexplicitautograd_dispatch.h,sha256=bYC0QW45cTbfCqTkazXExSj16Bj9Lj9sHLv7mDBz53c,1007 +torch/include/ATen/ops/_foreach_erf_cuda_dispatch.h,sha256=cVZSWuvkd0f50B_QB72h20KFqsInm0Z_M2JHUrgUMnM,814 +torch/include/ATen/ops/_foreach_erf_native.h,sha256=1wiIy_qO8DAG3P5Wbwn8XcnrLznre3gAsiJCDlSH4Bw,809 +torch/include/ATen/ops/_foreach_erf_ops.h,sha256=V627y-XDtVHS587kYvNbfBFpe7mdFJGaRR9JCNipJns,2106 +torch/include/ATen/ops/_foreach_erfc.h,sha256=FQ7oe6efQxs2XDYsnnt3ABvFqxi80Rm3lVoPqWF1p-c,1256 +torch/include/ATen/ops/_foreach_erfc_compositeexplicitautograd_dispatch.h,sha256=cxtQ3AtMLbqcf_JQOCIvVvYHi6rHVs0Ui1N3gwG4Kj8,1011 +torch/include/ATen/ops/_foreach_erfc_cuda_dispatch.h,sha256=DAvgZ5guwOibB_-r4cqrl-JfuTetG3sPI_5RwdJry-Q,816 +torch/include/ATen/ops/_foreach_erfc_native.h,sha256=faLDz5BkrNTqgp63Y7Zb7HIRk06Vz_qg3anrQFsxe2c,814 +torch/include/ATen/ops/_foreach_erfc_ops.h,sha256=EVZmDPyQhDh3ArVGJFRRUzgA349QWjSR1Lc8GGUR59M,2115 +torch/include/ATen/ops/_foreach_exp.h,sha256=KzLnv4pn9lKz60wyoVDqjM8enizSPeATrxHazWHkJ8Y,1243 +torch/include/ATen/ops/_foreach_exp_compositeexplicitautograd_dispatch.h,sha256=-CFrlJZk3JMBrG2xQN3UI9Zuf4IkgNd9NEeL2CgiUps,1007 +torch/include/ATen/ops/_foreach_exp_cuda_dispatch.h,sha256=bsMJgt9zQMH47vTmaL73MkEasVOCt-RbS8l_jI16EpE,814 +torch/include/ATen/ops/_foreach_exp_native.h,sha256=t-p6w6g-XWk547jtjsq2uxXkpxNT6UwfctxcjzbQtlU,809 +torch/include/ATen/ops/_foreach_exp_ops.h,sha256=q0zkS2q8nBEsRltbQp8xPSE0eBNT-hACZ1LyCxVbJnI,2106 +torch/include/ATen/ops/_foreach_expm1.h,sha256=_bb_78dAuRRUP2T41W0EUe6GcX6dqFjJj_tYpnfqN1c,1269 +torch/include/ATen/ops/_foreach_expm1_compositeexplicitautograd_dispatch.h,sha256=LxqCa69jkOSwgQdlvOwqouNQvE-RWGCfrsUYPbbKb34,1015 +torch/include/ATen/ops/_foreach_expm1_cuda_dispatch.h,sha256=3gq10QvTUbRzKmJ0D4KBX9HxeZO9RAzXQqRuEsOHAaw,818 +torch/include/ATen/ops/_foreach_expm1_native.h,sha256=gAdg52efng0pNGNDKywd6CyAf07pB513ChnQLa-m518,819 +torch/include/ATen/ops/_foreach_expm1_ops.h,sha256=_bZinibArj8Clo-k0UB_pfeffVMVCgG3nVEEZUoIsiY,2124 +torch/include/ATen/ops/_foreach_floor.h,sha256=XaTEuNYyX9XW6C70GgwZdAPm9n3ukTG54vaglmijMY8,1269 +torch/include/ATen/ops/_foreach_floor_compositeexplicitautograd_dispatch.h,sha256=mqOT2T8YPpBBELfoe8IEM0mDLrkmmKrWAYuSrvkfEbk,1015 +torch/include/ATen/ops/_foreach_floor_cuda_dispatch.h,sha256=ZjZb4tRD7_br11ueHqNLSjXXQwtrZ03_OGJ8dc1O2yo,818 +torch/include/ATen/ops/_foreach_floor_native.h,sha256=nr-0ImR71xmpgD4t1hv-BEmX9qmcJpcn3gIvRk-BGmU,819 +torch/include/ATen/ops/_foreach_floor_ops.h,sha256=hwBx4213H-PS6bpO95h0H9oZF069Psmo-XIyFR9T0q8,2124 +torch/include/ATen/ops/_foreach_frac.h,sha256=yvzg4rmmFUUtuacdl6lrDLIdw8pCPbm5xQxGe8QK_ts,1256 +torch/include/ATen/ops/_foreach_frac_compositeexplicitautograd_dispatch.h,sha256=Rjni4tRWzSRUGXnX8mTRi64k3nb2aOpBUQjsdFyFiTc,1011 +torch/include/ATen/ops/_foreach_frac_cuda_dispatch.h,sha256=AGgSAWwi8Z_QFUA12ph0kFFEnWbH7gLF7MDvdYbF8NU,816 +torch/include/ATen/ops/_foreach_frac_native.h,sha256=UFASwYjQOIs3T0WjXKyTTeYwAIQ4sXDztqsihsNOzuk,814 +torch/include/ATen/ops/_foreach_frac_ops.h,sha256=NcGmMEZg1dIuPe7qOwFkvWYcfqq8a0vn1rn8Xs54g0k,2115 +torch/include/ATen/ops/_foreach_lerp.h,sha256=XdCs2hZofRubsQGjJQjUdZaVuAtLSaXjfGY-L0zGArw,4214 +torch/include/ATen/ops/_foreach_lerp_compositeexplicitautograd_dispatch.h,sha256=_qKlab0U2Nx9eRmwebuTva8E84enWR2JxNZAJBZsbCg,2205 +torch/include/ATen/ops/_foreach_lerp_cuda_dispatch.h,sha256=CzNnR8rKFQ3ImBV5ryjz4OuViQVz-I05w1ZwBVDgilc,1386 +torch/include/ATen/ops/_foreach_lerp_native.h,sha256=o-k7pq2bUi6AhwYSN3ofLXRJfs5loI72fOA7rWVpOFA,2500 +torch/include/ATen/ops/_foreach_lerp_ops.h,sha256=0osHzFhp-fb4_theWwajPjOIjRtzxwRnMUNfYFv6mgA,7249 +torch/include/ATen/ops/_foreach_lgamma.h,sha256=fU1DQkpR0u4uE1PYk0OxomL4FC_x30072taUQrGBKNg,1282 +torch/include/ATen/ops/_foreach_lgamma_compositeexplicitautograd_dispatch.h,sha256=NbIMZVJ5r4mc1Cv1Dhjv28Qer8UFpn4tXy599iglwnE,1019 +torch/include/ATen/ops/_foreach_lgamma_cuda_dispatch.h,sha256=7pSd1yHpgNjUoar-cRR_8pRJk9ClFUcxO3Wt7m6RQ_k,820 +torch/include/ATen/ops/_foreach_lgamma_native.h,sha256=C7m7YrBXiz-6dW9zq0G8ngVkkb1ZOe2W9rj5n9UMQHw,824 +torch/include/ATen/ops/_foreach_lgamma_ops.h,sha256=aZhnng8gmGj5HCA0EDiwrMeX2-RI9FVV_7rf9R71rJ8,2133 +torch/include/ATen/ops/_foreach_log.h,sha256=e6B1f-4qgnLOD0eMcWGR-1_FaFMVTj73zqdBcZUq0g0,1243 +torch/include/ATen/ops/_foreach_log10.h,sha256=wgRTnvyQ4SQLw_REjkhKAVtugvuKI5BDSXWIwzPlUIc,1269 +torch/include/ATen/ops/_foreach_log10_compositeexplicitautograd_dispatch.h,sha256=EWDe6AQsUHfhb6iEhc5-B8YLk0UFRMyiSfdnWX0HGQ0,1015 +torch/include/ATen/ops/_foreach_log10_cuda_dispatch.h,sha256=NOiiUghxbi3sWqWWAb7MD8vqtDjXq4F10N2XUpdrY18,818 +torch/include/ATen/ops/_foreach_log10_native.h,sha256=guiAGL80xiZ9660kHNtxM2aVMvpTU0E-7XttHJk7y54,819 +torch/include/ATen/ops/_foreach_log10_ops.h,sha256=52dNkkRcz3CpracdpSuFxlxx70aw6xwPm4R1l3j2Edw,2124 +torch/include/ATen/ops/_foreach_log1p.h,sha256=k1gdl140pNMVabvdDeYBu8M-o6Lzh8qYMjiOE_GIT7s,1269 +torch/include/ATen/ops/_foreach_log1p_compositeexplicitautograd_dispatch.h,sha256=ZD9y7iYgy7aSdFIwqJfxTssGo28jNVCnsKmmURJUCc4,1015 +torch/include/ATen/ops/_foreach_log1p_cuda_dispatch.h,sha256=NF4tg5UI1GYRIDxSCDm95cUc-64MUsp3d441wO0IOfI,818 +torch/include/ATen/ops/_foreach_log1p_native.h,sha256=jLpHWXKTtjIEsILMURhqZNLwghZKG94JCjwVYm9kA7g,819 +torch/include/ATen/ops/_foreach_log1p_ops.h,sha256=M19upw03tEc8Th9GjUX04HVKruwo3ITM0fEWrWo0Kas,2124 +torch/include/ATen/ops/_foreach_log2.h,sha256=XdkGl-JDKELFULIwooPIfpKNBqZLjr8hoxZm0FGSSPo,1256 +torch/include/ATen/ops/_foreach_log2_compositeexplicitautograd_dispatch.h,sha256=5_dJInJpGGaoxlHbjoUmDf7wuU70us9JbBWtRrtXno0,1011 +torch/include/ATen/ops/_foreach_log2_cuda_dispatch.h,sha256=27WrpW639myaTZN_hd9SGSg9Q_HEpx9Pz79cyw8i35E,816 +torch/include/ATen/ops/_foreach_log2_native.h,sha256=FCG2PukAKVgtZXpO3yGL3xxoumgho2jqmToLwu7alLM,814 +torch/include/ATen/ops/_foreach_log2_ops.h,sha256=cuVaRubrfKQknssqKPp7b3oBtehYavr8_EtOva2suE8,2115 +torch/include/ATen/ops/_foreach_log_compositeexplicitautograd_dispatch.h,sha256=fOFrYvrViaKj2oS5HlCeuzNJBBeOHXuzqcYM2UlNsUI,1007 +torch/include/ATen/ops/_foreach_log_cuda_dispatch.h,sha256=oSCrImDiiiblF7Xbs9CbrjotQ1c2qr525NnYGOh6VSU,814 +torch/include/ATen/ops/_foreach_log_native.h,sha256=3WSYsnMEllTOm_Z24H-fftsuGYT4oAWm6H7FOaYDX-Y,809 +torch/include/ATen/ops/_foreach_log_ops.h,sha256=m1ncxNLjyLNyDIxcfzOdmKp7UUH1uzj6MH6yLycXsMc,2106 +torch/include/ATen/ops/_foreach_max.h,sha256=dRupTTsrAaXyXi64NJoVtD9jtENIsd4JL0OSCIqDIzI,1090 +torch/include/ATen/ops/_foreach_max_compositeexplicitautograd_dispatch.h,sha256=SHVSKOtoLEnM-y2vIk33vk1rOS8C8K0S9gRFS27yTDc,955 +torch/include/ATen/ops/_foreach_max_cuda_dispatch.h,sha256=nYv-SMNAp5ARQ2LhVdyEoXvtTntsxkaGiUONt_8zU4E,762 +torch/include/ATen/ops/_foreach_max_native.h,sha256=Gq_eWZRF4I2gxprtvMkYL68TGxa3w8QNKX3S5age5TU,683 +torch/include/ATen/ops/_foreach_max_ops.h,sha256=UFmMwgk3WQkGy8XpUtMkD2s4oUIVQTGlAl3ZRVEM7fA,1602 +torch/include/ATen/ops/_foreach_maximum.h,sha256=v5_FAUBviAnq6Vv2kvIKrqYMwMMZQ60c2dL4JFWeQv8,3665 +torch/include/ATen/ops/_foreach_maximum_compositeexplicitautograd_dispatch.h,sha256=Nvy4ygRcPpWzu078dB9T-HODwyFKT_t8LWRCPobGt54,1937 +torch/include/ATen/ops/_foreach_maximum_cuda_dispatch.h,sha256=wxhhJirHBVH70J-BgsWwcYAzDnDqgOLNyYJuB1WXsas,1252 +torch/include/ATen/ops/_foreach_maximum_native.h,sha256=a38GzcyCrdlAZEHPon__x_Dxp3VsiJemBlsMy4Os5Ag,2241 +torch/include/ATen/ops/_foreach_maximum_ops.h,sha256=SJ_ZBDyG-AdKV3Tf560A7v0KiO5rYixKGkFtMUSj1u4,6556 +torch/include/ATen/ops/_foreach_minimum.h,sha256=3T1pzkupwAOMnXKcN8Nzmu0pfDcQXdjAMGdvZH4Ouqo,3665 +torch/include/ATen/ops/_foreach_minimum_compositeexplicitautograd_dispatch.h,sha256=KzGR1ojz_HSvmyt9sCoomzn2qhXbb8TMufm1vDvizRA,1937 +torch/include/ATen/ops/_foreach_minimum_cuda_dispatch.h,sha256=Chkx9ZSJ-VwnUGZAiCc0wXnZkbnR04A9cWFP2bA50WI,1252 +torch/include/ATen/ops/_foreach_minimum_native.h,sha256=Q3aXWMX2xeUw6kR7Tl2VcjVo2FVyzD95Ttjb65Y1P6w,2241 +torch/include/ATen/ops/_foreach_minimum_ops.h,sha256=zELn4zxe6W6--K69Qap4V4igaBAjz8SEpuHIwSqt9o0,6556 +torch/include/ATen/ops/_foreach_mul.h,sha256=0gViHy_q4RwUIFEwckcJ3gfA3G7nTO5ueLRxK5SUMS8,4494 +torch/include/ATen/ops/_foreach_mul_compositeexplicitautograd_dispatch.h,sha256=1Xswzd5bfpN8bwMQmUHeVFin_fKA006ZkUk4STHldfQ,2268 +torch/include/ATen/ops/_foreach_mul_cuda_dispatch.h,sha256=BXAM1dH0Rl8XJEPD1S-nL_4awvt-3FxWCDjLHNCviik,1404 +torch/include/ATen/ops/_foreach_mul_native.h,sha256=VXAFZjcfsYbvpF_al3VlziBSLnRle02WNXVhefQDmDs,2717 +torch/include/ATen/ops/_foreach_mul_ops.h,sha256=mytjp100zP5F9_LSXL9hCuuTKedt-NB5q75dfUkn8pU,8422 +torch/include/ATen/ops/_foreach_neg.h,sha256=w291MoJ02idPnmePyls29s4qoX2I35ZkGjvfYD-hBbA,1243 +torch/include/ATen/ops/_foreach_neg_compositeexplicitautograd_dispatch.h,sha256=2Sy5mp3IkHIMY2NTQQ2YFiOuzk45nU2W7kzPLtGoql4,1007 +torch/include/ATen/ops/_foreach_neg_cuda_dispatch.h,sha256=HctH5pmxuc1UXjVpnMRhXBeFDlQUtF3pphYvw9xQ1aU,814 +torch/include/ATen/ops/_foreach_neg_native.h,sha256=xBSgVhZqqOl54PoKgwMC_8OC0CRd5BXCnPs3K6jUlqc,809 +torch/include/ATen/ops/_foreach_neg_ops.h,sha256=NIhb48zE0b8idiBQJlu8eBiGg7ZSqSouZKEHlvAZSFY,2106 +torch/include/ATen/ops/_foreach_norm.h,sha256=7BOFdfkd9Pei_J6IwMKMCZydAQofh40zyiYjz_rYjdQ,1515 +torch/include/ATen/ops/_foreach_norm_compositeexplicitautograd_dispatch.h,sha256=hTjkR125W14oiWhJh9Tl1xXL-7Oj4rw2bTznqzNO8eU,1181 +torch/include/ATen/ops/_foreach_norm_cuda_dispatch.h,sha256=wUQZ3OlaemfAHu3kCrVBCdCZTb694KIYjApMKb7HfVU,843 +torch/include/ATen/ops/_foreach_norm_native.h,sha256=zA6dfaYdZzoZfaQg_HjH1fFVRkPbRoBw8GP0fkiNYuI,916 +torch/include/ATen/ops/_foreach_norm_ops.h,sha256=Y0ZU40NnZLKCDaOyAkIgivn8otUYFHdFPGaNIupf0eI,2083 +torch/include/ATen/ops/_foreach_pow.h,sha256=6XYehSaIrVXU0q9jLD4i9cdh9AJ5P3s7VMapvtyKJhU,3850 +torch/include/ATen/ops/_foreach_pow_compositeexplicitautograd_dispatch.h,sha256=nAKsdidSwfTZRJKNqHT9jY_kx5DNLh35VFQDvHdfPtQ,2014 +torch/include/ATen/ops/_foreach_pow_cuda_dispatch.h,sha256=NreTFaIk285z2it5SGPMqajmSERWJ8DZlfUtiLLj_JU,1341 +torch/include/ATen/ops/_foreach_pow_native.h,sha256=RQZ3d1NM93sjI_eOSuxkqmMtR_-cZmek8G3VPwa_p_U,2435 +torch/include/ATen/ops/_foreach_pow_ops.h,sha256=9lKW2R7dJaHaljoogPJzsCAG-C2sUA4s6UFJm0xjgxg,7210 +torch/include/ATen/ops/_foreach_reciprocal.h,sha256=2dMtvW14RYTD7k4Y0bpJJSaYgz2gmYKeEFnAnD8dVvg,1334 +torch/include/ATen/ops/_foreach_reciprocal_compositeexplicitautograd_dispatch.h,sha256=JRUmzZyHjW02x8wadcTfIUDCrHVK9YpDGgT5IxrMUM0,1035 +torch/include/ATen/ops/_foreach_reciprocal_cuda_dispatch.h,sha256=cQOV8YFm6wsc8YwVPjAR6CkxLKxgBIkIMNmANMt6I94,828 +torch/include/ATen/ops/_foreach_reciprocal_native.h,sha256=jZ9l4e_GSoGTbDcSFtA1pWYYdYbXcCky9f8l0LWBkXA,844 +torch/include/ATen/ops/_foreach_reciprocal_ops.h,sha256=6zYNU0UDiMhTQyY2ZXbeNsW2w_kMVCB8P6kAaIpktDw,2169 +torch/include/ATen/ops/_foreach_round.h,sha256=VaCpiFa_PROVGrJ5-cHmD07rfql2NPR4aNtT0279A-4,1269 +torch/include/ATen/ops/_foreach_round_compositeexplicitautograd_dispatch.h,sha256=KW7GcbOLfhsj3OUnEd3wcl73OG0XYJV-3LVzhxH211E,1015 +torch/include/ATen/ops/_foreach_round_cuda_dispatch.h,sha256=gaeMz4mkJ3U6Tlr-rL0RC12K7a6aylZ6CTuD0y2AHX8,818 +torch/include/ATen/ops/_foreach_round_native.h,sha256=GuRH1r268J2nfaiK0PIVTj3kHckZyCvfagNr9S5XFc8,819 +torch/include/ATen/ops/_foreach_round_ops.h,sha256=K71Hj-1I-hGr9NpJQX_yrDlsA0hGuIMH_zFpyFqPX5k,2124 +torch/include/ATen/ops/_foreach_rsqrt.h,sha256=SDk_mHTMRoEqyRihkh38erF3LAMoy19Ktq2vQyQCjxY,1269 +torch/include/ATen/ops/_foreach_rsqrt_compositeexplicitautograd_dispatch.h,sha256=N8VwhkRz2AaZ2AKXzweKqRm8Uo2jMoaWkzY2QJ-g9Yo,1015 +torch/include/ATen/ops/_foreach_rsqrt_cuda_dispatch.h,sha256=DqBSP049iEKAGd922vV1YENk3thr3DJAIS_UBCUvw4Y,818 +torch/include/ATen/ops/_foreach_rsqrt_native.h,sha256=JwSvqrCfJB-O8dvLtOp8BTQ9fj6fzffn5-t7bTf-3-E,819 +torch/include/ATen/ops/_foreach_rsqrt_ops.h,sha256=hKvoZAAwfaIQktTv4RmxZM6ojO6FUMikMo2MfC8OyTo,2124 +torch/include/ATen/ops/_foreach_sigmoid.h,sha256=oqyuzGRyJATKShOB2GJhQOK5-nwVsFhmM3_pyyE8r54,1295 +torch/include/ATen/ops/_foreach_sigmoid_compositeexplicitautograd_dispatch.h,sha256=s1Yp2Q6wBPWvda4wBqN675VqltTsVt6HAKU9guN4XYU,1023 +torch/include/ATen/ops/_foreach_sigmoid_cuda_dispatch.h,sha256=wgqbeS5koIiIT-gXkYloeR-_0gaitiXykenwDb8OPq4,822 +torch/include/ATen/ops/_foreach_sigmoid_native.h,sha256=P0AyMAZrkYwlFDXopHpa_NqKzRAT-d-dp03QSydkro4,829 +torch/include/ATen/ops/_foreach_sigmoid_ops.h,sha256=ehJK-UEXuXiX3nR2pUtbB8VbyNRg6jz62NbzS_vcpSY,2142 +torch/include/ATen/ops/_foreach_sign.h,sha256=HMrISHETcYdog3ZeoQZSGYkEy6wHwputTAfmZ4TcivU,1256 +torch/include/ATen/ops/_foreach_sign_compositeexplicitautograd_dispatch.h,sha256=3UZ6WwUV7o_9ZHM0QCd0COMFadKylc0eGrjkGbL7rnU,1011 +torch/include/ATen/ops/_foreach_sign_cuda_dispatch.h,sha256=AggdiGW-cPQkb9JH2uyL_O39_xtFuBB_ZIUuJr7KWgQ,816 +torch/include/ATen/ops/_foreach_sign_native.h,sha256=Urodq140kaPjSIQDg67HckFY9WZFHHeNOfW2uZiVDus,814 +torch/include/ATen/ops/_foreach_sign_ops.h,sha256=6h_bRZKOBR6J06GfCh4r9Xh3VYSR9g5L2qU8Eq9NjP0,2115 +torch/include/ATen/ops/_foreach_sin.h,sha256=1Dob9pdU8aEmyIYYOYc1ImfbUIsJfatrfmQKxyxGTPw,1243 +torch/include/ATen/ops/_foreach_sin_compositeexplicitautograd_dispatch.h,sha256=P1-dSOGwZ3CRODAIJwEN1O94eeDUGUMkD3S70oD73Hg,1007 +torch/include/ATen/ops/_foreach_sin_cuda_dispatch.h,sha256=AqpFP11MrT8CGfWo2NNPxpl-W49QcD9T1UZrMrFABUk,814 +torch/include/ATen/ops/_foreach_sin_native.h,sha256=1NDZV1MzsEzcQ_TCVz05CVJa8lCZ78aQnlCaGCyHOwk,809 +torch/include/ATen/ops/_foreach_sin_ops.h,sha256=VcdNrrVgsDL-Jm9Dm1URPtVSiOpJ_Oivd2CHNxlIRsM,2106 +torch/include/ATen/ops/_foreach_sinh.h,sha256=uZUf5ev-BEDs95b2iqIYgCwW-gyKYaEWhp5DBS0RNRg,1256 +torch/include/ATen/ops/_foreach_sinh_compositeexplicitautograd_dispatch.h,sha256=6EfthNm7bOD6kdOLNeKITLhVYibMMR28VvQlWd8QbsY,1011 +torch/include/ATen/ops/_foreach_sinh_cuda_dispatch.h,sha256=XY6uGBoGSdQ5hq0FBUJSlOl7ALUnVDDgLjDKlxBCXxg,816 +torch/include/ATen/ops/_foreach_sinh_native.h,sha256=NJHhs6Lu_Jte93XGt3epILl06MQwHxAlJMG1NsGH0GU,814 +torch/include/ATen/ops/_foreach_sinh_ops.h,sha256=EqQWLIdjhYxNNCCDjsK8ewyBfoQduTKeXRxzk_1r_Dk,2115 +torch/include/ATen/ops/_foreach_sqrt.h,sha256=559ob7ooM9tLEMzlXfSn2yE_O3h8dtMAXNEDt2_X_Qs,1256 +torch/include/ATen/ops/_foreach_sqrt_compositeexplicitautograd_dispatch.h,sha256=qEowmipvXI5jF9zF72fTfVvKUaabYy6nxuK1mRMrm1s,1011 +torch/include/ATen/ops/_foreach_sqrt_cuda_dispatch.h,sha256=ORc-a_xAEOVRhmozWEJpWVIm_8Wln70q6RlaqYzYsYE,816 +torch/include/ATen/ops/_foreach_sqrt_native.h,sha256=liJLH6AkOqoB_7pXeeOs5jL2JXSTjsfNc8cYwhANSZI,814 +torch/include/ATen/ops/_foreach_sqrt_ops.h,sha256=-3qERlEk3ssD5EXCo2KSIyJdOBfFJpUHwGukx8p5P_s,2115 +torch/include/ATen/ops/_foreach_sub.h,sha256=HUcM7ko2CSYKILJ27di7Jm1UFaFrEidrgTErk292c9A,3725 +torch/include/ATen/ops/_foreach_sub_compositeexplicitautograd_dispatch.h,sha256=k-yF9q3WBEArgv-WOUu91V_yhzgP4TyCdFL8nQWwYA8,1999 +torch/include/ATen/ops/_foreach_sub_cuda_dispatch.h,sha256=3hjoJAv71AU-UnugARYpeSGsIgE080NGg2uRL6hK2k8,1284 +torch/include/ATen/ops/_foreach_sub_native.h,sha256=KUz8OGZ720gIrma3fe4fGhhzXD2KapXH-PRfjf2pHxs,2295 +torch/include/ATen/ops/_foreach_sub_ops.h,sha256=aM0By91GtQO73d05uAYdAOFr3OIyFXANoYDuvwFJ6VI,6718 +torch/include/ATen/ops/_foreach_tan.h,sha256=Z_3uXL5U6Y7-QFQwyAzPHqfHso4ipgMLiL4qFnMXITw,1243 +torch/include/ATen/ops/_foreach_tan_compositeexplicitautograd_dispatch.h,sha256=ys4Tjft1OnkV1rxwn8lWcxL-rszulBPcOrqOkMvX1j0,1007 +torch/include/ATen/ops/_foreach_tan_cuda_dispatch.h,sha256=C5iap7ZTylMP6kQJgRxn_6MSgwIXYmBqr6TbhpQEOA0,814 +torch/include/ATen/ops/_foreach_tan_native.h,sha256=HvF0sPDb_cRk8v2yB_t6CKSkM-oHu0vPG7G8aPJ99AA,809 +torch/include/ATen/ops/_foreach_tan_ops.h,sha256=L7jeE7dZRJgF1mmTJ6xuc1S06Zm6QbpG0FfIyKMgfjk,2106 +torch/include/ATen/ops/_foreach_tanh.h,sha256=r0tzl4mRgZIiLzeOCB6FQ3i9Ol70RU4uyR2bqSY7NLk,1256 +torch/include/ATen/ops/_foreach_tanh_compositeexplicitautograd_dispatch.h,sha256=O3Lut_Mj9_1Eji67weSX5dhbrYoAsmSXL-DDO6fo1QY,1011 +torch/include/ATen/ops/_foreach_tanh_cuda_dispatch.h,sha256=p4SvB9KpzfQdi04N_8dIVfbTGbV-oq0kxcs410wwDzM,816 +torch/include/ATen/ops/_foreach_tanh_native.h,sha256=oRjlkUB691vSULbceQGLszKIr1zr5k7U7H0taT06_UE,814 +torch/include/ATen/ops/_foreach_tanh_ops.h,sha256=PEeHQbDHxAvF6jIO9skp_Y0VkA0RCrG5VGB-w0qomAk,2115 +torch/include/ATen/ops/_foreach_trunc.h,sha256=stO1MqQ-N3Ldtc86XVamtgisuz1e-CdvEjMdm3tmI8s,1269 +torch/include/ATen/ops/_foreach_trunc_compositeexplicitautograd_dispatch.h,sha256=eTTifPwWGxwndZBCyOkvmroPvmf9D8B9tgMnjGQezbQ,1015 +torch/include/ATen/ops/_foreach_trunc_cuda_dispatch.h,sha256=qdlmneZv1ZWK9K0FX7tWfcpeouLIZ9M10i8q0MmS7NU,818 +torch/include/ATen/ops/_foreach_trunc_native.h,sha256=B1OrnoBeOTU2sPpqQjpwjxSVEnvMbL4Ih9pAYVD7TxA,819 +torch/include/ATen/ops/_foreach_trunc_ops.h,sha256=VIORfx17_RFPOs-HcLPsmcGJ7vvtZp4V1LBQbcAVGcE,2124 +torch/include/ATen/ops/_foreach_zero.h,sha256=AZPblCrS6l3u5JVnXHLBRNfaL_A6Nk1rVQVLrCEmPIc,1265 +torch/include/ATen/ops/_foreach_zero_compositeexplicitautograd_dispatch.h,sha256=UF9weyuxoQVL4-kgdwGNcX1Pv3ByQymv1YNf0r0_qTo,1011 +torch/include/ATen/ops/_foreach_zero_cuda_dispatch.h,sha256=YHpBwZ-9EQ9yP2czG54_GkG982U6ZnkgL_b1plmTp1M,743 +torch/include/ATen/ops/_foreach_zero_native.h,sha256=q28acsY6Yk95sfoZloK0OeA9s9As5aMgnZiyhop5eNc,719 +torch/include/ATen/ops/_foreach_zero_ops.h,sha256=H54HbqJH_kCnkO5VkTulV8TF1olFUsA2Uw8IY7Za4HA,2124 +torch/include/ATen/ops/_functional_assert_async.h,sha256=1ImiJD_UsRSVLRA_iItRUVgN0QhCumh_gLqBv86BEJI,840 +torch/include/ATen/ops/_functional_assert_async_cpu_dispatch.h,sha256=XcOEnkFgwXNMgjtSGAplZggc0yX-xWi2WLQ2vcg7-ag,820 +torch/include/ATen/ops/_functional_assert_async_native.h,sha256=gEO_-bwEJgnLFYp5_fs3k7xuddrHz9Or_YybTUWNnbo,582 +torch/include/ATen/ops/_functional_assert_async_ops.h,sha256=cMjtgy82C_R9mYDRgER41KkUqnsL5ITFkAtFy_bECK4,1217 +torch/include/ATen/ops/_functional_assert_scalar.h,sha256=zsw_ShujTCZGH5i97azKZypzta7vk3XnaueTKeAyiuI,836 +torch/include/ATen/ops/_functional_assert_scalar_compositeexplicitautograd_dispatch.h,sha256=S9pcjZYz1uylj4i_BUT4pf5eJhiU-xxLytYKk9Mjpt0,865 +torch/include/ATen/ops/_functional_assert_scalar_native.h,sha256=XfNS3eeCFH4R_rlpDQ-wLo7NrdWw3EJuZGffl16hikM,575 +torch/include/ATen/ops/_functional_assert_scalar_ops.h,sha256=0kErGn5-iwm_cMy1Nsm-Ia4CqHWW6xp1lJrRtspZW40,1209 +torch/include/ATen/ops/_functional_sym_constrain_range.h,sha256=p634kctPM3srtCHmhhXNoC6nHthYpIMe1sR3aZ-B2IE,893 +torch/include/ATen/ops/_functional_sym_constrain_range_compositeexplicitautograd_dispatch.h,sha256=VTwwdbcDZlYNCofbM8iffaBMBEdBw38v-bgdtF0ZPxI,902 +torch/include/ATen/ops/_functional_sym_constrain_range_for_size.h,sha256=TO3buJastWXGWM-axQ0GzGhs5B1AfDuCQLqIXWkBSqo,929 +torch/include/ATen/ops/_functional_sym_constrain_range_for_size_compositeexplicitautograd_dispatch.h,sha256=iKONRy4zJMJDJ7hfAY6CViyelxPm7LjV6g6Z04RLt8E,911 +torch/include/ATen/ops/_functional_sym_constrain_range_for_size_native.h,sha256=Kt08LIbUQDn3TS7-hYqs64x85mLZjLuSmB7NNHAyqug,621 +torch/include/ATen/ops/_functional_sym_constrain_range_for_size_ops.h,sha256=JppObivS7LL2QmGsQPrD1-n3OZb-S06BeVkvo5kcVJo,1354 +torch/include/ATen/ops/_functional_sym_constrain_range_native.h,sha256=zyCi5hSZrdU4seqbMoI-Cy89y6st_S6VSVGscMediVk,612 +torch/include/ATen/ops/_functional_sym_constrain_range_ops.h,sha256=aWpz7677as2fZNUYKwpWpmLH7uDkZZHXoCmnDObSkOY,1327 +torch/include/ATen/ops/_fused_adagrad.h,sha256=uhQnXcLIQzK-0NVnem3jAB8x9nTFy8tQJGfK-aR2Re8,3607 +torch/include/ATen/ops/_fused_adagrad_compositeexplicitautograd_dispatch.h,sha256=knz_X9OUDfyw51gay1qKDhh0P9DpnkbGM8BCkPbKcNs,1809 +torch/include/ATen/ops/_fused_adagrad_cpu_dispatch.h,sha256=uNWdnca3dH0go9F0Jukg93tMQbIcPvtbQ8eBW7f29Ps,996 +torch/include/ATen/ops/_fused_adagrad_native.h,sha256=wm5awqSvOaLsIJx7lPwj7Mlsxy5LVmBzT7xTQ3mDkWg,1506 +torch/include/ATen/ops/_fused_adagrad_ops.h,sha256=fdjkZemOh6jjx2AaAuEiLzCCdJjmtru5zrvToVVSt3k,5020 +torch/include/ATen/ops/_fused_adam.h,sha256=Ht7_KaG-zCvyd9cNnuClc684A2DfKSVqvdUOTX-TP34,8443 +torch/include/ATen/ops/_fused_adam_compositeexplicitautograd_dispatch.h,sha256=OuTafQtEHRCuLyMK2EYIRYLt61TCy26_MkCUCfMcgZc,3454 +torch/include/ATen/ops/_fused_adam_cpu_dispatch.h,sha256=95vdYZC3w1jowkmiGQcldzP98XYi2Qzs9dqz8Kyvyn4,1476 +torch/include/ATen/ops/_fused_adam_cuda_dispatch.h,sha256=ubmBz_gGn8qzkjW2GIjTqHQskoHAYewO0EMxMKrLga0,1478 +torch/include/ATen/ops/_fused_adam_native.h,sha256=1pwS02iWP-GdCUoAZeK2Eubg49r9pBePAaH2kE0ppTc,3960 +torch/include/ATen/ops/_fused_adam_ops.h,sha256=2_NQBsDSRekn3EHV7Y2tJkUcI3UeIj0vU0njJFgeC24,11654 +torch/include/ATen/ops/_fused_adamw.h,sha256=fi87LPlfJwO0QgJDmXETq8pOf0xDQGbyS74N8hCCmlU,8468 +torch/include/ATen/ops/_fused_adamw_compositeexplicitautograd_dispatch.h,sha256=jNDuD0COT-mPn52fAWt15UeHNTERM809rpXXuYm9Xxo,3460 +torch/include/ATen/ops/_fused_adamw_cpu_dispatch.h,sha256=wgtpXZzJebG8MWQD5-1t1wMtR9yqgTSaPpjXdCBhfoI,1478 +torch/include/ATen/ops/_fused_adamw_cuda_dispatch.h,sha256=-hKZQDzwIeTP6GHUShk2BDuLfwrPb5DCG9HxbSth3eQ,1480 +torch/include/ATen/ops/_fused_adamw_native.h,sha256=Wjp1yulx8WuVz10VQY-eq-oy9x9jQnaESTckPUseTtM,3968 +torch/include/ATen/ops/_fused_adamw_ops.h,sha256=CqJjoYiCfXymURO6pk8zSoegzFQU1fd1AM02BYz4nnw,11672 +torch/include/ATen/ops/_fused_dropout.h,sha256=XJYHBvPpNlp-aszQsuaCZ82BNxycSnJcU9lQwqdNp9E,1666 +torch/include/ATen/ops/_fused_dropout_compositeexplicitautograd_dispatch.h,sha256=OXw4if2z6gH9aP9MLCkajgs8q02nc6SJqFzgPOo9_DQ,1120 +torch/include/ATen/ops/_fused_dropout_cuda_dispatch.h,sha256=dcq1kvcvNWMVVO9i_i3cf2gcppHMIYq0gVpkZXHDawM,845 +torch/include/ATen/ops/_fused_dropout_native.h,sha256=nbL6WICYuVT4UAR2jFUvRub5RFVwL81Y--l8wLZj1gc,787 +torch/include/ATen/ops/_fused_dropout_ops.h,sha256=sBDI_aakOWPtqqn8hpJtFaksaU_2XjRW61exV1j6DRo,2223 +torch/include/ATen/ops/_fused_moving_avg_obs_fq_helper.h,sha256=8jGwIeixKE_95FZoORSvGiK9xQFU4K5iQrmhrMk3OGc,4796 +torch/include/ATen/ops/_fused_moving_avg_obs_fq_helper_compositeexplicitautograd_dispatch.h,sha256=sojV5y8wBMGDJ9Mi1d2gLYjVF1xaKDndvwu6lr8AMrs,2110 +torch/include/ATen/ops/_fused_moving_avg_obs_fq_helper_cpu_dispatch.h,sha256=cF6Exaux5zJ4uPNwVD8rZWDOqUHuQI5WWNsEymcuFMI,1094 +torch/include/ATen/ops/_fused_moving_avg_obs_fq_helper_cuda_dispatch.h,sha256=FhQXuOBUOqq6heHKsCNWfELF7caP-fPwqPXGT2kQlJw,1096 +torch/include/ATen/ops/_fused_moving_avg_obs_fq_helper_native.h,sha256=DCzzw6Clf3hWhNEf43Yin5nyXMLpWYp96z0HHP8mCRo,2188 +torch/include/ATen/ops/_fused_moving_avg_obs_fq_helper_ops.h,sha256=uRbAdkaHZxOK5BTmFtlG0KGsAPnGPaUCaDRhf11LTps,5901 +torch/include/ATen/ops/_fused_sdp_choice.h,sha256=mF4sfBj1lfPJgNBfq2TYEmioePikQyhmPYcWfDLOvFA,1100 +torch/include/ATen/ops/_fused_sdp_choice_cpu_dispatch.h,sha256=OBd6TKq8zL11rdu6w2f2eXgE9-dEA_HFxIKLP6bKnCs,965 +torch/include/ATen/ops/_fused_sdp_choice_cuda_dispatch.h,sha256=17PyZ9oV0upkZ-HAboj9cwcwAkrpf9XEU1DBT5zkV38,967 +torch/include/ATen/ops/_fused_sdp_choice_meta_dispatch.h,sha256=RNtdl1BjQS4GD8muvoomkD-p-CIpoJaQGd2qbLiiUWM,967 +torch/include/ATen/ops/_fused_sdp_choice_native.h,sha256=6CkTccYqe-QxHj-wphAnPVjGiHq7KZxaPa4y6eV555Y,1287 +torch/include/ATen/ops/_fused_sdp_choice_ops.h,sha256=sozp2T12q-OmSbyB1j8Lr6W7JEv79gKNpSe5XJh664s,1604 +torch/include/ATen/ops/_fused_sgd.h,sha256=1ZBBUltJUI2e6ga-6XA4q8yjXcqyeWv2CWRApu2YPcI,7266 +torch/include/ATen/ops/_fused_sgd_compositeexplicitautograd_dispatch.h,sha256=ga4g_ElEXnl2IIbf4zvnqIwXA8gslJEmoe6RFRejsiI,2984 +torch/include/ATen/ops/_fused_sgd_cpu_dispatch.h,sha256=0HRW0lAeFVwWaDudr92ffngXuaZPpI5psIzUtGqrUOw,1354 +torch/include/ATen/ops/_fused_sgd_cuda_dispatch.h,sha256=6niBeqpBH_Wvb7dy4-gg4B_6IEo67NefpJYzn2qKMPU,1356 +torch/include/ATen/ops/_fused_sgd_native.h,sha256=-vRY4TfPs1bNpx1m7MnVR7e6JfGOe81Vfo4iJXpbW4c,3368 +torch/include/ATen/ops/_fused_sgd_ops.h,sha256=vKemKF6LcSL44BvC6QlethUeV-htkexBVoSSppXfY3k,9938 +torch/include/ATen/ops/_fw_primal.h,sha256=8MvYsXUGX0j3ANtUjRWpmDeHAUUHIZbhttFAx08Iwgg,510 +torch/include/ATen/ops/_fw_primal_compositeexplicitautograd_dispatch.h,sha256=U15a4UjV2C8F1-m7rSgERz6STC2Bi6TH858Is9fIm6I,806 +torch/include/ATen/ops/_fw_primal_copy.h,sha256=JAa0y_3dJ9QA8IV77Cpo15_tZOaPQGmMTojnfIuxEPw,1232 +torch/include/ATen/ops/_fw_primal_copy_compositeexplicitautograd_dispatch.h,sha256=DMYG2QFD3s8d1bROTQVlZRmPjVm_PITUuvxVEvKqzsA,939 +torch/include/ATen/ops/_fw_primal_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=8eiUpOMUqtZEwVIIKy0-be5CTDWYFQffTOxe9jtXoWE,837 +torch/include/ATen/ops/_fw_primal_copy_native.h,sha256=bTPX09GVC5w7yndjoOUbkJ6s_Q9lElmERGvrdgjWWnU,624 +torch/include/ATen/ops/_fw_primal_copy_ops.h,sha256=3JNkYul6KiyIoXMVzrlzze_jJNnQMl_pWUjCtmXbJlE,1717 +torch/include/ATen/ops/_fw_primal_native.h,sha256=GFcuGq-Xeb7SqKQvBONGUdOeXpTjm4OU2GhdTqRi94U,516 +torch/include/ATen/ops/_fw_primal_ops.h,sha256=7bafWc8h4ip7WoGxY_LhQ7WX2gN7o2Gz2Pg64Vbh_Ng,1030 +torch/include/ATen/ops/_gather_sparse_backward.h,sha256=L4-bHQoajuBuu84adIrXIHysmKlJSF-YNPfJypLKqR0,830 +torch/include/ATen/ops/_gather_sparse_backward_compositeimplicitautograd_dispatch.h,sha256=cOCHmD3fKQmGe0rfTd6HgxUibRJRzwoR45Cyjf-d2TY,868 +torch/include/ATen/ops/_gather_sparse_backward_native.h,sha256=5lk8H8Bsc8rD5wvcZFJD2IR-D3STJJp3PPGiCJlzlRY,578 +torch/include/ATen/ops/_gather_sparse_backward_ops.h,sha256=a27ZpCm9YeSXq1IFnSQevPDVm2jIah1KbR__jvys8xc,1226 +torch/include/ATen/ops/_grid_sampler_2d_cpu_fallback.h,sha256=YAa9Y-o_JDpyUHym2IHlkbd-B9tyQkPGwtrMo2L6sr8,1957 +torch/include/ATen/ops/_grid_sampler_2d_cpu_fallback_backward.h,sha256=52P3QJriUr8QgL1fk4CQ1bze4h6HA03xjIrAxRrJ_78,1100 +torch/include/ATen/ops/_grid_sampler_2d_cpu_fallback_backward_compositeimplicitautograd_dispatch.h,sha256=ouZ5BLvv-Grk9nbOSSqxdB2bKreyIHaBFjxR6XIlQUw,972 +torch/include/ATen/ops/_grid_sampler_2d_cpu_fallback_backward_native.h,sha256=sQ2aYpqJOCnFH53m_ZGGBn90Oe1_aLBrtYC3YIeKT7o,682 +torch/include/ATen/ops/_grid_sampler_2d_cpu_fallback_backward_ops.h,sha256=XlMt73OQEROl4Y6VmQQ0malT_JN4SpP_zn9F5TPvvWo,1559 +torch/include/ATen/ops/_grid_sampler_2d_cpu_fallback_compositeexplicitautograd_dispatch.h,sha256=Im-2cqDU4PM9DAhey_wbA4pUbaoOIOdapt88Y1GI-nA,1303 +torch/include/ATen/ops/_grid_sampler_2d_cpu_fallback_native.h,sha256=DXkAQan6aPNFiJIi-Uso9p2tXVU-5xLWpILDjvhVM50,814 +torch/include/ATen/ops/_grid_sampler_2d_cpu_fallback_ops.h,sha256=Enih19sdZJj64QdVPV9jK9WKy4g0YqDSBcIwS87PWxs,2325 +torch/include/ATen/ops/_has_compatible_shallow_copy_type.h,sha256=3om-YzC8cZeFht_KSTIB6pht41z_Clx9QodnrSiIPR0,788 +torch/include/ATen/ops/_has_compatible_shallow_copy_type_compositeimplicitautograd_dispatch.h,sha256=Zb5VxsNh8lEajv3iIcX5ytSq5bIcSQsZYA54crUWe3A,833 +torch/include/ATen/ops/_has_compatible_shallow_copy_type_native.h,sha256=QHNulqTasP3HMo5XYq8-7Q86fpfXAksRF1bLLHkGBqQ,543 +torch/include/ATen/ops/_has_compatible_shallow_copy_type_ops.h,sha256=QUaz5c9HzNyFng8j_FfjBipRS9UfTDyq3dSk1L0X6y4,1106 +torch/include/ATen/ops/_has_same_storage_numel.h,sha256=yn_LcktYWEBumHN8Hu8XusZiWTetwfBfgh2c7qGVyus,751 +torch/include/ATen/ops/_has_same_storage_numel_compositeexplicitautograd_dispatch.h,sha256=LqI7D2WilCCkBCUNW1XQmnB1-5HANFwZS5_W-Mq39mE,824 +torch/include/ATen/ops/_has_same_storage_numel_native.h,sha256=J-M_NS7Py8org39yXxwnC1YgJK0VXfe4hHYSZa42ES4,534 +torch/include/ATen/ops/_has_same_storage_numel_ops.h,sha256=xMlp9rIc1n669K7k44KR5YmB6pnEc_hzvXhANycuGG0,1079 +torch/include/ATen/ops/_histogramdd_bin_edges.h,sha256=wBZRLWn93i4HfHGZvN50hK8mYguWF4g9i8uFPm3htiA,1934 +torch/include/ATen/ops/_histogramdd_bin_edges_compositeexplicitautograd_dispatch.h,sha256=jgn0L5RZTaHdYxo_YKcDM_bZd857N8Znhi9JlHPOI-U,1185 +torch/include/ATen/ops/_histogramdd_bin_edges_cpu_dispatch.h,sha256=m4IJ7wghOaibnOSPhYcLM_Bl5zQkxUOvwXsL_rb_a0E,923 +torch/include/ATen/ops/_histogramdd_bin_edges_native.h,sha256=CJjooTV4xTMDzorciUo2G6S_2zWjPEgTVozlIIIj_84,890 +torch/include/ATen/ops/_histogramdd_bin_edges_ops.h,sha256=sx9WhgCM8XooZDw_Kiho0vUqmkKnvA4cibWtS9oVOJw,2531 +torch/include/ATen/ops/_histogramdd_from_bin_cts.h,sha256=KYepAEtMDr-qPoYFjU570SV1GjiiET8qRdxVFglij34,1971 +torch/include/ATen/ops/_histogramdd_from_bin_cts_compositeexplicitautograd_dispatch.h,sha256=nRyIOgFIkQDPpL07AUddUbEDwVpDELexyZ0hqscSLzI,1203 +torch/include/ATen/ops/_histogramdd_from_bin_cts_cpu_dispatch.h,sha256=c0CE6iIGIA9xbnuspucNnWJ6VRgP46DoDwH6O2S1uhs,911 +torch/include/ATen/ops/_histogramdd_from_bin_cts_native.h,sha256=yl8a_Z3cdn6sk1GgiXUM-ax19KnsZLUufvgdkeMvDos,875 +torch/include/ATen/ops/_histogramdd_from_bin_cts_ops.h,sha256=XDjA5TfOYSl_R2DjhvJG7WDrkfQhNENTsnB0HkPahuQ,2526 +torch/include/ATen/ops/_histogramdd_from_bin_tensors.h,sha256=ya4sHOhzyPgBEQmzjfm6oCxOjn2QmrHKc1DKDO0j-7M,1768 +torch/include/ATen/ops/_histogramdd_from_bin_tensors_compositeexplicitautograd_dispatch.h,sha256=2_XhzkbnAoRSlKkmU4HiYSXyOLzcSw1MosJxt1jTqDo,1104 +torch/include/ATen/ops/_histogramdd_from_bin_tensors_cpu_dispatch.h,sha256=QY15kNr3TU9Vhkg_SmU3c5OP7zE6pm5ZHDPHDp1iZbQ,854 +torch/include/ATen/ops/_histogramdd_from_bin_tensors_native.h,sha256=CA64RhXkMcSnHfcvd6VvHy0dUSZTdk7pnWIKYROLWh8,772 +torch/include/ATen/ops/_histogramdd_from_bin_tensors_ops.h,sha256=-uG22puP8_MkoJN7RWzY9QpDAHF8abR69Ti5gZMjGCA,2250 +torch/include/ATen/ops/_index_put_impl.h,sha256=9DRM5bagD6YVAlSWC35DTlvHBS_EP7E2oLNFwQvJakY,2247 +torch/include/ATen/ops/_index_put_impl_compositeexplicitautograd_dispatch.h,sha256=5UaQHJrxfXSEVj3A4-kbBDfuXJgrsKppymXCfgMmC5U,1336 +torch/include/ATen/ops/_index_put_impl_cpu_dispatch.h,sha256=A2lYjLLxOPh7n87ALWHuh3l6WQwMxoKwTdgJ5krW9mk,874 +torch/include/ATen/ops/_index_put_impl_cuda_dispatch.h,sha256=huEZP0FOP-dXv6pPMrL58DQPZnz6ibqm5zN-174A_aQ,876 +torch/include/ATen/ops/_index_put_impl_meta_dispatch.h,sha256=febd4VaNy2O_2rXFgruJn_ji-nOOdGxzNkLQFYjfPJU,876 +torch/include/ATen/ops/_index_put_impl_native.h,sha256=eZki7U7Wn1FkXqPahA32e-4RNGMfuJyA5d-66a6eYoE,1419 +torch/include/ATen/ops/_index_put_impl_ops.h,sha256=1beQIey405hByxZmZj5HlZWqXF28cdgV1qX8hq5gt78,3300 +torch/include/ATen/ops/_indices.h,sha256=iqNeFNbbk9Pd2KF2-WBZV80ls0ODOvyzjfhc69589mQ,508 +torch/include/ATen/ops/_indices_copy.h,sha256=KDWkGD9GG0bZBb4ERytZx4Xqfu8KoWjst-Hq7DobXoI,1113 +torch/include/ATen/ops/_indices_copy_compositeexplicitautograd_dispatch.h,sha256=C_zZJTkxIylmkavZ_Cz11Qq6XmMi1PlM0I1GhW2B6fI,905 +torch/include/ATen/ops/_indices_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=FsnX0M1CWVUnVLTY9Fuoj9L7TVh341fBfZMq1KjPEuI,820 +torch/include/ATen/ops/_indices_copy_native.h,sha256=_EQdNhn3AOuE56KMClEhSviYxWRgi0h50vzyhMiUrDU,590 +torch/include/ATen/ops/_indices_copy_ops.h,sha256=ZOZYfJAY7plm9jwsCpszcIXxrbfSN4MVOTJziL7fl1I,1605 +torch/include/ATen/ops/_indices_native.h,sha256=ZT5L_lJB-QoLR4S4SCN20G5ffmPwaEkwZ-JRlVpbEXU,506 +torch/include/ATen/ops/_indices_ops.h,sha256=QoC3CvBhkEKEUKgPGYUNB6lN7U7Z0jkzJYej4vL8T3Q,974 +torch/include/ATen/ops/_int_mm.h,sha256=SN-oHYCYYhkg8mBT8uhxqvwiOOWg4e3XEJvK5nonvoI,1185 +torch/include/ATen/ops/_int_mm_cpu_dispatch.h,sha256=QmdZRZyqQ8XGV9qpI9V_H1qx_ixhIcnW3wNv3vCf8Po,980 +torch/include/ATen/ops/_int_mm_cuda_dispatch.h,sha256=zOT1118JHuvRKVw_JakKskYbMrb7fiQpvouHtilfARU,982 +torch/include/ATen/ops/_int_mm_native.h,sha256=pkJIi1USVovxVlyLT0MRJHnlPaz4tXU4ntx9xObooEs,832 +torch/include/ATen/ops/_int_mm_ops.h,sha256=yUYL73sIEKlDeWuJjHF8cXh2Al-ZDTaUYvs1j7pFNEA,1735 +torch/include/ATen/ops/_is_all_true.h,sha256=JO2cpzHboUCbpmKc9gpl69aZj8UPzgIP_p5kBWPXvQo,668 +torch/include/ATen/ops/_is_all_true_compositeexplicitautograd_dispatch.h,sha256=aCE9KJrr00D0RlxAJcNuAUYTYuvTO5IMwDdDldsylnk,793 +torch/include/ATen/ops/_is_all_true_native.h,sha256=lxE5FdL5mqa8HmhOwIdTGXJIZZDtryHIyA528Xj5HPQ,503 +torch/include/ATen/ops/_is_all_true_ops.h,sha256=PZj01xa1BHlTrzgZIwoxO8epDR8ZuxjXxdGdNpOP_9c,980 +torch/include/ATen/ops/_is_any_true.h,sha256=7zroE075E8Fq0narowYaoir7W_XI_yAYVuNx0e7-FnM,668 +torch/include/ATen/ops/_is_any_true_compositeexplicitautograd_dispatch.h,sha256=2wXAEQoUCgreYJS3nDA1BK-d7GvpyAZRqktw8YJETew,793 +torch/include/ATen/ops/_is_any_true_native.h,sha256=t95xS9X-BLG_8YuPtx99z3XB6BrS46CDHiEQR3BaAjw,503 +torch/include/ATen/ops/_is_any_true_ops.h,sha256=ggFOoqgHptzIpKFh1EzX7e8zN9kp3ONBl3VEpMoXMOs,980 +torch/include/ATen/ops/_is_zerotensor.h,sha256=xxIUC_2fq436hdcQhzuAfeOHkMh_ghMhgKDEH7abysk,679 +torch/include/ATen/ops/_is_zerotensor_compositeimplicitautograd_dispatch.h,sha256=D2KamppiqN0bbwgHcRJQzkC4tkcuGB8VFrNqayrW4fw,789 +torch/include/ATen/ops/_is_zerotensor_native.h,sha256=n3uZEIL_uPRnVA2cB1-dZUfg2jyOnAdsDtJ_6IT7o3Q,499 +torch/include/ATen/ops/_is_zerotensor_ops.h,sha256=vc0ygucVVYinzR_B_fDJHRQuMluWvVe27afOimvXXpY,966 +torch/include/ATen/ops/_jagged_to_padded_dense_forward.h,sha256=WfiNE4ukotro8dhNeJVEMicl9skjWB2tqqx7ZH6Iqq0,2144 +torch/include/ATen/ops/_jagged_to_padded_dense_forward_cpu_dispatch.h,sha256=OU3S0YQdoi4vV_FrKrMA5Xazt3n_F2nUU7yVCg1C8XQ,1021 +torch/include/ATen/ops/_jagged_to_padded_dense_forward_cuda_dispatch.h,sha256=lmSdt_82SmY_QhLlldJIP8nC2bMgMlOSHBWVAk2D0ak,1023 +torch/include/ATen/ops/_jagged_to_padded_dense_forward_native.h,sha256=XAXbOlq_npj8ZyJpH2qCjgZrOcRMtdOID37uzd7up20,775 +torch/include/ATen/ops/_jagged_to_padded_dense_forward_ops.h,sha256=Gigh94wh8i6uAmCSn5rWAqJzGPCh-T4l105zn0q2ol8,1311 +torch/include/ATen/ops/_lazy_clone.h,sha256=nplLaHvkrA1wNF9h7QHm_tYK5mjf06D0ApK3iaY6_ag,664 +torch/include/ATen/ops/_lazy_clone_compositeexplicitautograd_dispatch.h,sha256=hwre64cEkpmMqNa5nu4LqjyrrhF3_88VLt2tl79Hivg,792 +torch/include/ATen/ops/_lazy_clone_native.h,sha256=MgU-xpT-DCtIMJ2Hoz8JEDFCIzn-GhfvE26lY5G84kU,502 +torch/include/ATen/ops/_lazy_clone_ops.h,sha256=dfr1-DUC74mP3yxErX0poRWz6Rspx2WBt3pxTcTZ9zg,977 +torch/include/ATen/ops/_linalg_check_errors.h,sha256=gxoWiiu4q_c9l6l7PEYSInmrt5O19T6XYgejdZaPUDA,787 +torch/include/ATen/ops/_linalg_check_errors_compositeexplicitautograd_dispatch.h,sha256=8WTZZE8eaHXLe_eVhm20bNWgCdlnJ2V3PdQw9_iKyQQ,838 +torch/include/ATen/ops/_linalg_check_errors_native.h,sha256=XLabFA9FYS2vrFWt47cL7xbauUoqczdi1Kkx5z83CAM,548 +torch/include/ATen/ops/_linalg_check_errors_ops.h,sha256=5W0kstMvrKtT1a3_eC7kcaDLnLUf0bauf3hUOFnc4oA,1125 +torch/include/ATen/ops/_linalg_det.h,sha256=KfsaPYKPWW9p7I60_nlmRu9wxRXLIyDL8xWWv83jPJc,1501 +torch/include/ATen/ops/_linalg_det_compositeexplicitautogradnonfunctional_dispatch.h,sha256=v778MbcSI9fJ1rZO7gvdVaah9StaViZn7QToWqjC0-U,851 +torch/include/ATen/ops/_linalg_det_cpu_dispatch.h,sha256=eP3n9q2P6D08uREBJNXI1CqTEzGZTaLuJ-xehnQ8NTA,1106 +torch/include/ATen/ops/_linalg_det_cuda_dispatch.h,sha256=MnGDd4QfcA1Z0E9XSBXUQQEbfFUH7q3JAxuPGDgOC8o,1108 +torch/include/ATen/ops/_linalg_det_meta.h,sha256=8EGL4OwxV5YliJqcOjIIDa95KM5Y3DZVCQTejpsnzzg,604 +torch/include/ATen/ops/_linalg_det_meta_dispatch.h,sha256=DnQrAY-bMP7NF1xQcMW8X17juQk59gOfxASxssVtTB4,1108 +torch/include/ATen/ops/_linalg_det_native.h,sha256=Ep964GcQsF0vhp4wt_rtE-1Cm-M0QlPwrA94Z0dDywQ,684 +torch/include/ATen/ops/_linalg_det_ops.h,sha256=VMlKN2Fuv-y8OudaFHNoWOpJpasn5L6P4eT79AtZHSE,2037 +torch/include/ATen/ops/_linalg_eigh.h,sha256=2AcG4Aw6Y4zBBb7IRa9Ar_oAo7VnrVvfG9ckNPSXvD4,1771 +torch/include/ATen/ops/_linalg_eigh_compositeexplicitautogradnonfunctional_dispatch.h,sha256=eupA2xz1hkoBJslG7cT6OYNpdnBM5quRdcx1t5ca2hA,889 +torch/include/ATen/ops/_linalg_eigh_cpu_dispatch.h,sha256=qmt7dQ0gGEti2xStpK3dPHbp_VqDmQlWf_eOXfXMlRo,1195 +torch/include/ATen/ops/_linalg_eigh_cuda_dispatch.h,sha256=8H28c4AW5ejYjrKGMG0gKqRtPfGZHuIl8YSjQL7ohmM,1197 +torch/include/ATen/ops/_linalg_eigh_meta.h,sha256=Uympy8ZyyKwJH8ZO3kxQ1ZZrNtHIZnh_mqbAn2eTVfg,644 +torch/include/ATen/ops/_linalg_eigh_meta_dispatch.h,sha256=K1o1NXh8Yhs5Dd2yH09NAjaBCDd62Bi5pystei-a_Gk,1197 +torch/include/ATen/ops/_linalg_eigh_native.h,sha256=lCycNGcrL5cdwbw_GBzSvtxh_3lZDWLutLAvuZBMAiI,714 +torch/include/ATen/ops/_linalg_eigh_ops.h,sha256=2OpggJa61iJH9kCJQ9T55ziEAEbR199YFpITuJlckV0,2230 +torch/include/ATen/ops/_linalg_eigvals.h,sha256=KEtbvs5BjfQw7HTlPzQjWCFSfzUXrey1Orj-WrTs-tA,680 +torch/include/ATen/ops/_linalg_eigvals_cpu_dispatch.h,sha256=IWjrc2wi0gESuEoVmmeMd1J3kRMbicsQtw-wLSDI2cQ,752 +torch/include/ATen/ops/_linalg_eigvals_cuda_dispatch.h,sha256=umLEsRoynUZX3laByW6P2AP-uBSbnSb_6DkHRl3GH10,754 +torch/include/ATen/ops/_linalg_eigvals_native.h,sha256=5bx6_FOhr1QsF9405ks7iKmYutw43TS7zLR_7sSOfmM,506 +torch/include/ATen/ops/_linalg_eigvals_ops.h,sha256=-OOoWF0tTFquV6lc4OP4QzK2Aa-UsoWRJNIKPzhGHIE,989 +torch/include/ATen/ops/_linalg_slogdet.h,sha256=Dpzd_s34i8QyBH8T6XQKbE8p6gA8AGY8XXO_kj3jWq0,1728 +torch/include/ATen/ops/_linalg_slogdet_compositeexplicitautogradnonfunctional_dispatch.h,sha256=q0C9mr-pNMim0-Mvfz4f2SkxA_5V-PJ0HmTcXPi_9G0,866 +torch/include/ATen/ops/_linalg_slogdet_cpu_dispatch.h,sha256=YsJlXeAje2rmUvR4Hx6MDOdY6qSlv8wRNjZR9ohJGNs,1199 +torch/include/ATen/ops/_linalg_slogdet_cuda_dispatch.h,sha256=Cm_bhXNM2EI2myTQbHLvu8g5_45e_oMDNUTE-ln6JK8,1201 +torch/include/ATen/ops/_linalg_slogdet_meta.h,sha256=r-gyvxi1OFOPk5CFQ57WqdQVSMHGH4hYdKioBP7I77I,608 +torch/include/ATen/ops/_linalg_slogdet_meta_dispatch.h,sha256=ZfyQH3zE-u8imhmL-DZ3avLf8dxj6sJAY_VlxlOzu6A,1201 +torch/include/ATen/ops/_linalg_slogdet_native.h,sha256=nAgHq4VHF3k9WucdQUai96mrTrFwszEkSGpXBqDIGjs,724 +torch/include/ATen/ops/_linalg_slogdet_ops.h,sha256=bdYUXddu0pd_KFJ-YgjVroKihiqzdtXzwKSc_KBBSlw,2241 +torch/include/ATen/ops/_linalg_solve_ex.h,sha256=G1EJ0dkgpkolSEzGn2OfxbTNZo5eIDGEsLKZztgei3s,2122 +torch/include/ATen/ops/_linalg_solve_ex_compositeexplicitautogradnonfunctional_dispatch.h,sha256=2zggqmMan2eWDFVIfA-t-DhpwmHvXaoswndkYOobQvM,930 +torch/include/ATen/ops/_linalg_solve_ex_cpu_dispatch.h,sha256=sIHBcAThiUEg7gP6zBL906C3ZH4PrfFqj_2y6uerEFM,1374 +torch/include/ATen/ops/_linalg_solve_ex_cuda_dispatch.h,sha256=E56xnub2pMUzqn0YIC5vsrUN_5xK4mUeu8lALUYnx_Q,1376 +torch/include/ATen/ops/_linalg_solve_ex_meta.h,sha256=6MbvZ563utFHmBHrL6hGCasUDO2IWMMw6fnQDt7Oi6o,661 +torch/include/ATen/ops/_linalg_solve_ex_meta_dispatch.h,sha256=e9qZJm34llyzPzE8WqMQoot6jcN0-TAu_IZlcmELX0g,1376 +torch/include/ATen/ops/_linalg_solve_ex_native.h,sha256=5n4eV9uW7-75G3JBel7JV4F3LzIHsUr-MMBo1B_a6hg,776 +torch/include/ATen/ops/_linalg_solve_ex_ops.h,sha256=0Vuxvi-udXN7LwIYa7YpeFoph92I2wftFuOhMRrSmdE,2615 +torch/include/ATen/ops/_linalg_svd.h,sha256=YpcEpQZnYyJNPFaE5h3Kp29JiVNX8G-QgbywvT3Xy40,1986 +torch/include/ATen/ops/_linalg_svd_compositeexplicitautogradnonfunctional_dispatch.h,sha256=4_ZAwwu7mPLS_zJ5LdBbCYvCeyeK-QraITkTL6777iY,956 +torch/include/ATen/ops/_linalg_svd_cpu_dispatch.h,sha256=DiPd97pLm-K0a_ygi60-FiFH6W1wAvK86_ivkOwzfMA,1375 +torch/include/ATen/ops/_linalg_svd_cuda_dispatch.h,sha256=7PsyA0TndGbtuIw7vCkzPfre3WiuYjypM30tYq_ugrk,1377 +torch/include/ATen/ops/_linalg_svd_meta.h,sha256=iAj6duSutnL-6GtBUGLOM9zmaAR6CXlCrHdzsfp3Y6w,683 +torch/include/ATen/ops/_linalg_svd_meta_dispatch.h,sha256=ljdqyymNKy6arYccnKL9LW_uqKS6bXP3LqU3daPKqxg,1377 +torch/include/ATen/ops/_linalg_svd_native.h,sha256=wBSRG5pdYFljpQSAfEw-6P2Pz0k_VP4i9jYTwg-a8r8,753 +torch/include/ATen/ops/_linalg_svd_ops.h,sha256=Dp2o6NYztGDN_Va4QxOYbygkT7eOkLCtZm788W4BL5Y,2517 +torch/include/ATen/ops/_local_scalar_dense.h,sha256=0cNLGeE6GTvsaFxc8lHiPwyuAQUVXIcMm4w6fg3kM6Q,696 +torch/include/ATen/ops/_local_scalar_dense_cpu_dispatch.h,sha256=vtYVIkSmsvtrIJTj-9uthBqhfovb75bEJsfDuUcsGyo,756 +torch/include/ATen/ops/_local_scalar_dense_cuda_dispatch.h,sha256=1P_Rh6Yu2rQQO9FniII8OV1JlsGJUT_XI6l7PHgg6TM,758 +torch/include/ATen/ops/_local_scalar_dense_native.h,sha256=PZ1UjyGsg8YL7IT4ifKfVstgz2YxpRyrpijJ8bDbNcQ,587 +torch/include/ATen/ops/_local_scalar_dense_ops.h,sha256=c8-BZwyGNeAPo78-78WruaGpa9vzHDE0fQvou11fNAU,1001 +torch/include/ATen/ops/_log_softmax.h,sha256=HAxYtzvb36v7oy32by_wfAEiycbLOIpZ0XwRovrJtYw,1349 +torch/include/ATen/ops/_log_softmax_backward_data.h,sha256=Me-0dKHLu_6-PxwGl_EeRm1P_vqJxfpqlNnWTTmFvrs,1732 +torch/include/ATen/ops/_log_softmax_backward_data_compositeexplicitautogradnonfunctional_dispatch.h,sha256=rxA__a7TuQ_qKnqKrxFLks6wM7zu8YmO3qqybQXmxKQ,908 +torch/include/ATen/ops/_log_softmax_backward_data_cpu_dispatch.h,sha256=xbe2Jylv1AKiKxr60b-G0eMNWCkva2Y-5xu-M5x9gPY,1187 +torch/include/ATen/ops/_log_softmax_backward_data_cuda_dispatch.h,sha256=TBG3vuXKBWFSDnMQzfkkUrM2-9TtiB8lnOWVH6ADiaQ,1189 +torch/include/ATen/ops/_log_softmax_backward_data_meta.h,sha256=UDw3sF10rSC6FKZfsfgjWjAPpRqcYtcqwzBcH5AjmDM,697 +torch/include/ATen/ops/_log_softmax_backward_data_meta_dispatch.h,sha256=hU-pB16_WO_o1EJq_sZXfm9qlIkW88B0zRVtEhhUkWs,1189 +torch/include/ATen/ops/_log_softmax_backward_data_native.h,sha256=i73Svb1S1etIUDA0GrgcM0uSmgzkO1sUp2Lrl7hjmcw,1010 +torch/include/ATen/ops/_log_softmax_backward_data_ops.h,sha256=qayOhzvBH9fh9AJOJYZjZXzQ_bpNDc3MjZOgxNRQlSc,2183 +torch/include/ATen/ops/_log_softmax_compositeexplicitautogradnonfunctional_dispatch.h,sha256=s9ssEgID_tKKPZcxhTXSJ88zxoojQRbkg0Y1j8LTQrE,852 +torch/include/ATen/ops/_log_softmax_cpu_dispatch.h,sha256=M5MXCl5wxJgbTZOEWlc3FEFGRirInK81K562PtsaBIo,1019 +torch/include/ATen/ops/_log_softmax_cuda_dispatch.h,sha256=6dS8HcSBm-iA9-t_PkFg0ICQEbleChWtvz9cQPMITPg,1021 +torch/include/ATen/ops/_log_softmax_meta.h,sha256=jJ9U8LLT0Bgxp_t3SlDzMsksNdtcS3UYcKGf6pPujUo,641 +torch/include/ATen/ops/_log_softmax_meta_dispatch.h,sha256=OO-sdSJK6Zc-6G9uXAOofpx_wysKeE1JYgTTdwF129o,1021 +torch/include/ATen/ops/_log_softmax_native.h,sha256=Qs49vcEMUNuvbxOjsscGU7AJrLxRuLIW802Iy3WgXtA,866 +torch/include/ATen/ops/_log_softmax_ops.h,sha256=MkLlrgb-DwZbC-W48egRI-CPh4dlfFWROQPNwlnaVfI,1819 +torch/include/ATen/ops/_logcumsumexp.h,sha256=Ao-5xUCntg4XX44uemUMc6vFAJIR30gE5SjFO-6zzNc,1194 +torch/include/ATen/ops/_logcumsumexp_cpu_dispatch.h,sha256=TuIP17NHGjgPYyI3g3cwVSj9y0FVLZdhi_pdUup4Aqs,962 +torch/include/ATen/ops/_logcumsumexp_cuda_dispatch.h,sha256=Q7PEnQ84AEGuMIa2EWxzhDtasN2xWzeq1eNc3fGi7-g,964 +torch/include/ATen/ops/_logcumsumexp_native.h,sha256=nhA1Nve3HbU5k7zyPgAYKlDnPQurOeqpxVB9_zOlRx0,808 +torch/include/ATen/ops/_logcumsumexp_ops.h,sha256=1xoPh0ifAKbuQhuQ8EZCSwl462w0SOSL9NK5jwbWeLg,1693 +torch/include/ATen/ops/_lstm_mps.h,sha256=cJ_PEdwmyr4nRP2RmcEqgkP2_FqKCri7BMZE3i1bbqQ,2960 +torch/include/ATen/ops/_lstm_mps_compositeexplicitautograd_dispatch.h,sha256=lvgku05CmwOteLBKp5C4agsKmFYtq51Fl-UshGojuGI,1539 +torch/include/ATen/ops/_lstm_mps_native.h,sha256=G3ZWR1-7pRCnahhsFKzdvcnDkhIgCbWoxVbAbLvKWR8,845 +torch/include/ATen/ops/_lstm_mps_ops.h,sha256=yvwEQccZI4ZYvbhcO0kWtny0CpMlonK20XrbFCYD_Go,3465 +torch/include/ATen/ops/_lu_with_info.h,sha256=AvOIp819YJ8SGjGlvRQyfco9JFW_VnwOxiYZjIWn4QM,844 +torch/include/ATen/ops/_lu_with_info_compositeimplicitautograd_dispatch.h,sha256=Kw5vnvIqc3pxCcSaf96VWcZVAW_RHvh7Za7xskd8QsI,871 +torch/include/ATen/ops/_lu_with_info_native.h,sha256=fDeDbK4ZXs_2m_hXQEIBHtQxpGFk_Nmp_BYvMLGlFbk,581 +torch/include/ATen/ops/_lu_with_info_ops.h,sha256=x6AdkXHR3eLVkB7tVyJKbfIQNcObH1N1mlvFREy8MTY,1239 +torch/include/ATen/ops/_make_dep_token.h,sha256=krxiLMtkBj1uY2zRIedUVbptvAZCvT-hotXorcScC74,1554 +torch/include/ATen/ops/_make_dep_token_cpu_dispatch.h,sha256=KVekXkpOiJ9o7I8mtF9OT_lUf-Q6u5YUQM3ys-t0VZk,1054 +torch/include/ATen/ops/_make_dep_token_native.h,sha256=qlDEAg2NFIY-Kr8xRgRT6clnBPX5KbXKAX8x7L8Q7rA,706 +torch/include/ATen/ops/_make_dep_token_ops.h,sha256=JRQUrlg0kKp-oDC3XZfrbRauRlfmWPpxAeX1b-Vr9a4,1569 +torch/include/ATen/ops/_make_dual.h,sha256=JEvNztvAIzDmIw88OUNIxdjDX0ETsblmR8uw1PENArk,758 +torch/include/ATen/ops/_make_dual_compositeexplicitautograd_dispatch.h,sha256=JDSpA_RnBmOZ1x9q-TJigJbSqy0qLMIkjk5QVkHRSCA,836 +torch/include/ATen/ops/_make_dual_copy.h,sha256=JBZ3A7BAm1x9VqZNKXb1-DBmyY8NmtvUtgQQuB9l3kQ,1409 +torch/include/ATen/ops/_make_dual_copy_compositeexplicitautograd_dispatch.h,sha256=O2XneTBuzyWuKedlTYiG3kl9tsCde5_lhNAqu3rqGjk,999 +torch/include/ATen/ops/_make_dual_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=NDQkqqw29plG1pZkyEtos4_9PgWACJvxR8vQ6gPSr6s,867 +torch/include/ATen/ops/_make_dual_copy_native.h,sha256=IjzW0Zk3_M-bpGKIFNLyDbH31zS-RIEoDCOimY-ad8c,684 +torch/include/ATen/ops/_make_dual_copy_ops.h,sha256=PKAZ852Ywyecn8CvmC_9QH9IBMC_ifTgepkHq9VbCAE,1913 +torch/include/ATen/ops/_make_dual_native.h,sha256=yRc1eJ-kvgiqt1wiZE7SXkTLD_G8RLknWk7wU8wu-qg,546 +torch/include/ATen/ops/_make_dual_ops.h,sha256=N7onX-e5Q6Lqc9awRMQdm0KxDvFz0eQ7au-a37Yh0Fo,1128 +torch/include/ATen/ops/_make_per_channel_quantized_tensor.h,sha256=tMKHgibSS3JHim6ssYTjaXaWE3BRefubBpVdFgioq4Y,1740 +torch/include/ATen/ops/_make_per_channel_quantized_tensor_compositeexplicitautograd_dispatch.h,sha256=ah3xUy0cqI7NsoZdk4rGVkIB9csBx0rZXIZPwg7bsos,1089 +torch/include/ATen/ops/_make_per_channel_quantized_tensor_cpu_dispatch.h,sha256=t9cMO48VhxL9HpbtirD1p4D5URaK-IIOTx2DFT8oXGA,842 +torch/include/ATen/ops/_make_per_channel_quantized_tensor_cuda_dispatch.h,sha256=UMJBcPUfHNJSp6ZwJ618_s9pB1GJjpjSrlCYzYRNxwc,844 +torch/include/ATen/ops/_make_per_channel_quantized_tensor_native.h,sha256=8O1wSwMdl2tPY76qBOvpYyYiQxtjkgUMkWGjUYMqX10,935 +torch/include/ATen/ops/_make_per_channel_quantized_tensor_ops.h,sha256=71gQqFJWblfgF6bY8_1hqzue4Ue3k0aIsbaz8gvbtwQ,2199 +torch/include/ATen/ops/_make_per_tensor_quantized_tensor.h,sha256=5p3dw-LJ_wdGzpLrIMeyNVPrcv-6ayejK9WzhYXkbuw,1559 +torch/include/ATen/ops/_make_per_tensor_quantized_tensor_compositeexplicitautograd_dispatch.h,sha256=YZAeixFucRyu7vS8OqmGOpbzER8mAyZ9EdDLt6bydE0,1013 +torch/include/ATen/ops/_make_per_tensor_quantized_tensor_cpu_dispatch.h,sha256=ijfzgJc0a15cNxJBY5_quTbd67nuqocabIKqvGYwo3U,804 +torch/include/ATen/ops/_make_per_tensor_quantized_tensor_cuda_dispatch.h,sha256=zc0TzOts9K4Q1vzgj07300_tzRYzV2t18CPIsjl_qQw,806 +torch/include/ATen/ops/_make_per_tensor_quantized_tensor_native.h,sha256=hkHlwL-b9WZU75xt1C8SevJ3XO9XwKowKSKd4ARAfUU,821 +torch/include/ATen/ops/_make_per_tensor_quantized_tensor_ops.h,sha256=1XpdlqDnayDb6CUsp18WUmu9ZNiIp3i1qqtwjR-g7Lc,1953 +torch/include/ATen/ops/_masked_scale.h,sha256=4pH4jkVmLOrwV4BiTyRek0bO95SvGNQxB6DkPdJKbA0,1347 +torch/include/ATen/ops/_masked_scale_compositeexplicitautograd_dispatch.h,sha256=eQr0qC-oQ24nBF0hUr7b1jhYa8R1CjBnel_-7y2Hnps,983 +torch/include/ATen/ops/_masked_scale_cuda_dispatch.h,sha256=7j-6_7Kd8TdDECKH4Ui1Q-I6lGtLsLydA2B1W0Oq864,791 +torch/include/ATen/ops/_masked_scale_native.h,sha256=cqoVEydkpP8D7K0bY3q11owBth9xbQWWoGo1YIMicdw,672 +torch/include/ATen/ops/_masked_scale_ops.h,sha256=x55-TZiLLetauFc2wgKepK8bTjVNc_2jmmEVlelzn5c,1869 +torch/include/ATen/ops/_masked_softmax.h,sha256=GwfSdKpdL5bdCwqV7kTav3R715GIxv7Xx9Rc6yoaaJw,1679 +torch/include/ATen/ops/_masked_softmax_backward.h,sha256=YG5LJIP8eKS9H6YIvwm-3SuhuCCXBjL56FplydwCVhQ,1748 +torch/include/ATen/ops/_masked_softmax_backward_compositeexplicitautograd_dispatch.h,sha256=qxfBnBqoJjGVh5zzmYogK1vbL8ffh9TRHXEvJ5UYaGs,1120 +torch/include/ATen/ops/_masked_softmax_backward_cpu_dispatch.h,sha256=meOF9rozMD8O09zBAubvyKhqnQI7atJs44q2EWHSKIo,865 +torch/include/ATen/ops/_masked_softmax_backward_cuda_dispatch.h,sha256=iSoFBJlMkIVe7zaMyZlixh5rzZfHF4DgSoGVhLUjJeI,867 +torch/include/ATen/ops/_masked_softmax_backward_native.h,sha256=nEZXTsE4iC1A1PHXCUxufaymySyHsyHvYjitFGkyAP0,989 +torch/include/ATen/ops/_masked_softmax_backward_ops.h,sha256=zU_AgG8VqfxAwBnsZgkkrd7uWMQ67LC3FH2QpzCvbcc,2259 +torch/include/ATen/ops/_masked_softmax_compositeexplicitautograd_dispatch.h,sha256=jMjAqcC_5vHXOYO2VIV64cHluSUSursjur8OUfB6ZhA,1121 +torch/include/ATen/ops/_masked_softmax_cpu_dispatch.h,sha256=krlJzwLB81M2k6DcKF9m4a_OhVgsq2iutGdyfA7OEBI,873 +torch/include/ATen/ops/_masked_softmax_cuda_dispatch.h,sha256=uMe9To1YuLiqhVkHUySk4YJ1RApcFvDs3yFLn-QouqY,875 +torch/include/ATen/ops/_masked_softmax_native.h,sha256=8LBllapMOAg07a9MLxT_BnZXryS3t_WfqeI4GQe1UcI,998 +torch/include/ATen/ops/_masked_softmax_ops.h,sha256=m-Ycpmc6ay86oMq2NLNQANssvXahhRpO6UjQWZMMIKo,2223 +torch/include/ATen/ops/_mixed_dtypes_linear.h,sha256=pdqQwX0cgGQKuSYyDONwwIxIqfgvo4-gC8UCPem_Lcw,968 +torch/include/ATen/ops/_mixed_dtypes_linear_cuda_dispatch.h,sha256=zYONspGM-NfHtZPLcpOt8-3K36pEBZn4aW99ymJKEKc,919 +torch/include/ATen/ops/_mixed_dtypes_linear_native.h,sha256=fTP4CoBaCuNvdo8LMwlmxYuXyCfAjReuzQ2yqa33tzo,671 +torch/include/ATen/ops/_mixed_dtypes_linear_ops.h,sha256=IXtWWruGYdQ0N2jySgEnYw9a0mnvV1EOcmwqUOnD23c,1474 +torch/include/ATen/ops/_mkldnn_reshape.h,sha256=Nyf3PwPcmqcHi48Qk61SxbZBz4YNGbVgQrQHmRhQ8PU,1262 +torch/include/ATen/ops/_mkldnn_reshape_compositeexplicitautograd_dispatch.h,sha256=52DACsy1eGQHHje7h8DnhX20VrqUAScp--c28SQPMZQ,955 +torch/include/ATen/ops/_mkldnn_reshape_native.h,sha256=abWpNx-5LZdSlyFHp9Rex6UbRtoTYcGFRpRZMe1bMGM,639 +torch/include/ATen/ops/_mkldnn_reshape_ops.h,sha256=GLpFUUD8KSI5oitNDqHWIC1SqnywL5A-lpDuTG-H6Dw,1769 +torch/include/ATen/ops/_mkldnn_transpose.h,sha256=TGVm6w1F8GxbO7fCdknTiKiYAyoVPEEcI67nxnJ0RWk,1573 +torch/include/ATen/ops/_mkldnn_transpose_compositeexplicitautograd_dispatch.h,sha256=WbToP4XWkjksIjcFAmyyOt72b4VMLalbvs4GZ_nZ-EY,969 +torch/include/ATen/ops/_mkldnn_transpose_meta_dispatch.h,sha256=FTFUY6y2pMqRr6vVYAR9t5naV9mVQjFcIKIRcFovlFE,781 +torch/include/ATen/ops/_mkldnn_transpose_native.h,sha256=weiDSnoAshFxoaUgJKDTcmLmyWPzSVpo1yJ6U-PY8U0,743 +torch/include/ATen/ops/_mkldnn_transpose_ops.h,sha256=2ioIYpZooj9C_KZ1g-jUaOZCtp6Ak9hELu-vNwb9mxQ,2454 +torch/include/ATen/ops/_mps_convolution.h,sha256=JuOiEEfECS3kg99rxiEi_8RDtO0b9qJ9IHYX0jTgXOg,6923 +torch/include/ATen/ops/_mps_convolution_compositeexplicitautograd_dispatch.h,sha256=94IVZyvJ6z354Z3YnNLjiBOw_WshmuDLslUsDfLeO7U,1776 +torch/include/ATen/ops/_mps_convolution_native.h,sha256=CMmyf09p8wG2tN95LLHti0U1IYLOpOApV5xGpgNnzUM,714 +torch/include/ATen/ops/_mps_convolution_ops.h,sha256=UUHxJLOkZH7JyLVqLDJarW3DEXIJmqQwV_FdE5wXcsE,2789 +torch/include/ATen/ops/_mps_convolution_transpose.h,sha256=awVL2yuwEyuSy7ZmmFRqxTe5wa7aRFWzxulgK5L7j6o,7479 +torch/include/ATen/ops/_mps_convolution_transpose_compositeexplicitautograd_dispatch.h,sha256=ikv_w0YLq_nkYMpBQFCPGpTzskZqiDguhfDCAYrhnyw,1784 +torch/include/ATen/ops/_mps_convolution_transpose_native.h,sha256=0drNEbABVN7U-sRzjw6of9yH5x5_gk6UAFF_j1YPosM,718 +torch/include/ATen/ops/_mps_convolution_transpose_ops.h,sha256=MXi0LV0kod-qrkPUfOA25Xju4dkXF75nQvkUUvw8EQg,2815 +torch/include/ATen/ops/_native_batch_norm_legit.h,sha256=zH35noRYQBiJCC93qMNxVxtA85vP582AefROMGl44Y4,5410 +torch/include/ATen/ops/_native_batch_norm_legit_compositeexplicitautograd_dispatch.h,sha256=nBYr2bDPYmTf-jKM9d33aagdqClGBgm0XDLucowx66Y,1070 +torch/include/ATen/ops/_native_batch_norm_legit_cpu_dispatch.h,sha256=aaYU-GDibNrJ6Tc_gnsmfjFWg34EeQVDaH3KNbZ9sPs,2601 +torch/include/ATen/ops/_native_batch_norm_legit_cuda_dispatch.h,sha256=44Dp-XTMzNV8ihKRanQm0eni36N0UpYm0H3lZeHw7wk,2603 +torch/include/ATen/ops/_native_batch_norm_legit_native.h,sha256=JaRqkSsI1_AssTNhqaVl4TXPCAHVRqQEzCdzkmYnl9M,3782 +torch/include/ATen/ops/_native_batch_norm_legit_no_training.h,sha256=6WFlh82ji1HLPIAIvXN5Z7H8hhk12apho6nhSCURRzU,2714 +torch/include/ATen/ops/_native_batch_norm_legit_no_training_compositeexplicitautograd_dispatch.h,sha256=pBxUy9hfCX9P2cCrVBaSSv7_O_ABOfhnIN4WcRqE_Yk,1773 +torch/include/ATen/ops/_native_batch_norm_legit_no_training_native.h,sha256=EYsfShJgUlniBkulSNhpSvhRwhsBtUViGNk2ZazP-6Q,1106 +torch/include/ATen/ops/_native_batch_norm_legit_no_training_ops.h,sha256=_HYpaHUHw1mynjj0lTBoWNtsx0Q7JitlcW9IJ1pGvq0,3338 +torch/include/ATen/ops/_native_batch_norm_legit_ops.h,sha256=cN7Y02MHf6i_wm9vzS35Q7IqbFjZCkzFi4tDiEzz4u4,7407 +torch/include/ATen/ops/_native_multi_head_attention.h,sha256=jZCVN6bEt0PPWNBUBS19PZSKU_ecV3MWyZJZB3zK3gQ,3605 +torch/include/ATen/ops/_native_multi_head_attention_compositeexplicitautograd_dispatch.h,sha256=L67zUaBQ4HhsL-Nim4yRD7sydXF9QhoUJiyYF0d7Lyw,1725 +torch/include/ATen/ops/_native_multi_head_attention_cpu_dispatch.h,sha256=PiABSMIgV_9KrbB66HXPK7MsQ12_Pp0Gd13IAZExBiE,1152 +torch/include/ATen/ops/_native_multi_head_attention_cuda_dispatch.h,sha256=oS49Oq8rplvcq7vbP8l-jTLWFY8fk66Df1rRihWgaGk,1154 +torch/include/ATen/ops/_native_multi_head_attention_native.h,sha256=6kDSe4jh_aVD96lzO7dFvbevgQiavCPnVMOK3q_9gjE,1859 +torch/include/ATen/ops/_native_multi_head_attention_ops.h,sha256=GrEbgo2wbrdvskvA8A-Kqhkc95yRmkdOVUIX-uQsFao,4161 +torch/include/ATen/ops/_neg_view.h,sha256=-3prwPwc0_Tkb6N7IbdD8HkYopq-XVsS_bwMN_B-YGY,662 +torch/include/ATen/ops/_neg_view_compositeexplicitautograd_dispatch.h,sha256=kwty3z4v1SjdpIRnMtWPYDzp2gzDyVSc4UzRIMQdfH8,790 +torch/include/ATen/ops/_neg_view_copy.h,sha256=c0YNutO3jXlVbqs-wiOcePsZOGRCHUjnmpQbO4YehiU,1123 +torch/include/ATen/ops/_neg_view_copy_compositeexplicitautograd_dispatch.h,sha256=jomBXUVPb0z8GAhWSc4nArDdJd0_eFC3U07YrLOmcvk,907 +torch/include/ATen/ops/_neg_view_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=UznGlAPSw9lMzzStVW5qZV7LFry7EWFlzd6G7b7MTtU,821 +torch/include/ATen/ops/_neg_view_copy_native.h,sha256=g0xIWtb2HwA5WrRTAF5naf5QFLTpjTX4iF01i8h_FDM,592 +torch/include/ATen/ops/_neg_view_copy_ops.h,sha256=eI414J6Sk-yNKFbYKFmCijl01331MLjxaaZ2_3xu804,1611 +torch/include/ATen/ops/_neg_view_native.h,sha256=GBnnFNJ2QbKx35YopGMcKtjW1QLETmRRSVZVkDxNoWw,500 +torch/include/ATen/ops/_neg_view_ops.h,sha256=2EHuJGhSmiW1ZnhI4OqaYJ0YN1CBrgMYnqQjfRJE3t0,977 +torch/include/ATen/ops/_nested_compute_contiguous_strides_offsets.h,sha256=WcNgBdiSLiTswpir95Yhj90vaRoECKdKUTiaEZrrBbU,844 +torch/include/ATen/ops/_nested_compute_contiguous_strides_offsets_cpu_dispatch.h,sha256=_KySeSgwsNNZQ_ypjYrbZBqWnMZVLkCH6WUKT5r0arU,811 +torch/include/ATen/ops/_nested_compute_contiguous_strides_offsets_cuda_dispatch.h,sha256=m5s8hp4hACTYALs91d3e1MYtvSOAqb52xZC8hsXpHQU,813 +torch/include/ATen/ops/_nested_compute_contiguous_strides_offsets_native.h,sha256=6J9qHh0AGCm3ZAEZpm-VMZzchH9bQXJjnrmJlI1LIXU,565 +torch/include/ATen/ops/_nested_compute_contiguous_strides_offsets_ops.h,sha256=wDjPl4l03usc3Zu2wDkkB1tk-ICSuhnESdhZvRUCRX0,1176 +torch/include/ATen/ops/_nested_from_padded.h,sha256=1i4Nw-a3nUSj1hxR2kSS8AVDZRPneMkoXFS8BazeRuc,1752 +torch/include/ATen/ops/_nested_from_padded_and_nested_example.h,sha256=uQWOTcr9nu6EOughC82mQLyf71bPQKlJSVDIPnIutrI,1567 +torch/include/ATen/ops/_nested_from_padded_and_nested_example_compositeexplicitautograd_dispatch.h,sha256=TpWNmI32Ar7n24cDyYicXAW_3jVB0vk-BTQU1awmSgQ,1021 +torch/include/ATen/ops/_nested_from_padded_and_nested_example_native.h,sha256=ojBfPDfnVh0cjIqUTGeJ1qc33VpZTdezDcB1I3YZe5Y,711 +torch/include/ATen/ops/_nested_from_padded_and_nested_example_ops.h,sha256=6QQLIQgps5X_2PZrr8wSTazstTS6DhJnCDKaYinMAwk,1969 +torch/include/ATen/ops/_nested_from_padded_compositeexplicitautograd_dispatch.h,sha256=L6PTErALdoo1Qvyik4NpxMCEYHkzwriLBeHRmjwgeqQ,1069 +torch/include/ATen/ops/_nested_from_padded_cpu_dispatch.h,sha256=EgSFaqhSNQCH37Y5pCtAcmiYINKN8Erxfd1BT-ThWCE,835 +torch/include/ATen/ops/_nested_from_padded_cuda_dispatch.h,sha256=ys3d4Y0dOvzbl-j5nevsAutDFsd1Z7WHxuIyO8pbmUU,837 +torch/include/ATen/ops/_nested_from_padded_native.h,sha256=9WKF_b7TJN4UEJDdhA3NAtFMzXwt86LFnNoHYR4aLF0,912 +torch/include/ATen/ops/_nested_from_padded_ops.h,sha256=rlZDK_Rs-Aryi9WDKEPPagF_9bMvUGS2ukxdFsHA4Ig,2119 +torch/include/ATen/ops/_nested_from_padded_tensor.h,sha256=8FF2tQ6ny2qR7Z9l7ZiXqWvETWaioKPNRABTZyTjPkA,2961 +torch/include/ATen/ops/_nested_from_padded_tensor_native.h,sha256=9XaUGLJyiIUXnjau4tp-HFMbdt34qeE71RClgADHWpo,442 +torch/include/ATen/ops/_nested_from_padded_tensor_ops.h,sha256=juTK2u9SOC7MfH_q0FNF0Ib-O3LeBizt9ShxlywuUio,1711 +torch/include/ATen/ops/_nested_get_jagged_dummy.h,sha256=9Y_9VjiLUXe0J_cPpiH4CL9GCJF_vBecvqHOuAS4urU,713 +torch/include/ATen/ops/_nested_get_jagged_dummy_native.h,sha256=9XaUGLJyiIUXnjau4tp-HFMbdt34qeE71RClgADHWpo,442 +torch/include/ATen/ops/_nested_get_jagged_dummy_ops.h,sha256=nhgXOaqHZslx6NqNF4rU-GARsxxGkypnr8lfZKKPZ9Q,1013 +torch/include/ATen/ops/_nested_get_lengths.h,sha256=DVfC3UmZPYtvQ8IUQ2kz3xbNpukTwlt2GB7kuj-RUz0,696 +torch/include/ATen/ops/_nested_get_lengths_native.h,sha256=9XaUGLJyiIUXnjau4tp-HFMbdt34qeE71RClgADHWpo,442 +torch/include/ATen/ops/_nested_get_lengths_ops.h,sha256=ifIn55nLNNYHqA2a7F-BQlYXSaMIjeh8FMHRU6rVVFs,1001 +torch/include/ATen/ops/_nested_get_max_seqlen.h,sha256=isbUyy5nGCB3KVqEkAFe3QlFivDQNQ4vIbhXu6lLjUY,708 +torch/include/ATen/ops/_nested_get_max_seqlen_native.h,sha256=9XaUGLJyiIUXnjau4tp-HFMbdt34qeE71RClgADHWpo,442 +torch/include/ATen/ops/_nested_get_max_seqlen_ops.h,sha256=uoTrPr9ZpmERoeHzNtxN7cfN7fvbOJIHGo1sf1DvO_I,1010 +torch/include/ATen/ops/_nested_get_min_seqlen.h,sha256=cXwbNNMVKOOqTUVW8_bJFG9TMp7Bd1RVJrkbkMXRcyk,708 +torch/include/ATen/ops/_nested_get_min_seqlen_native.h,sha256=9XaUGLJyiIUXnjau4tp-HFMbdt34qeE71RClgADHWpo,442 +torch/include/ATen/ops/_nested_get_min_seqlen_ops.h,sha256=nEL9DRAVPPP1E3gTpt2WRBH--1M19KcYmOJq26mNoX0,1010 +torch/include/ATen/ops/_nested_get_offsets.h,sha256=eCgvt_N-Vlv15iRywrC7zxaxBFhywhw7jaWMmumuXfM,696 +torch/include/ATen/ops/_nested_get_offsets_native.h,sha256=9XaUGLJyiIUXnjau4tp-HFMbdt34qeE71RClgADHWpo,442 +torch/include/ATen/ops/_nested_get_offsets_ops.h,sha256=lEX2-bywYrGYkOm84jSq4N4XAhRdUmiCWZCq6PAPRG4,1001 +torch/include/ATen/ops/_nested_get_ragged_idx.h,sha256=xD6f2A2WSrG8QLxlT5j-4MVyCoUQ5_Hn0e1cPnOjmTU,702 +torch/include/ATen/ops/_nested_get_ragged_idx_native.h,sha256=9XaUGLJyiIUXnjau4tp-HFMbdt34qeE71RClgADHWpo,442 +torch/include/ATen/ops/_nested_get_ragged_idx_ops.h,sha256=T-nkEAvYCy3s0c7851D1N0kKlIfiE1aSQrgfXtPfP9U,998 +torch/include/ATen/ops/_nested_get_values.h,sha256=fv0AxW081Fchncyd8m2Whs4ZUE-c6jZjjxlv9Zf9pHk,698 +torch/include/ATen/ops/_nested_get_values_copy.h,sha256=j1TmyElLDOJifobfgsm9vSVs03FdHdxXXE722Q5haa8,1213 +torch/include/ATen/ops/_nested_get_values_copy_compositeexplicitautograd_dispatch.h,sha256=Ah0MA6M3t5eXBD6YJl5L1dOuQGukr49IJ5uyd7y6X84,925 +torch/include/ATen/ops/_nested_get_values_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=h7LRDig_84xdSHi0yIlxDxa4AfZ9gP2APHrVE-3We_8,830 +torch/include/ATen/ops/_nested_get_values_copy_native.h,sha256=0PUZgrtQbREfOfJJhsdmmtudZiUj7M_ZXOvvAmPsUz4,610 +torch/include/ATen/ops/_nested_get_values_copy_ops.h,sha256=pTIkofX0A65coU8uNF_rJdSPG2PKdvJTPLRnhiymZL0,1665 +torch/include/ATen/ops/_nested_get_values_native.h,sha256=9XaUGLJyiIUXnjau4tp-HFMbdt34qeE71RClgADHWpo,442 +torch/include/ATen/ops/_nested_get_values_ops.h,sha256=WM2SAvKHsEzSDHze7amsFn3VJSnoU3nQ7ohoMis1zBQ,1004 +torch/include/ATen/ops/_nested_select_backward.h,sha256=rt5WSz4h5yZ8eCvGlsk7ywCU8tPeKFer0VoZVtPo_B0,1816 +torch/include/ATen/ops/_nested_select_backward_native.h,sha256=YG2ozKZ-XpskFHhrsAzpHhjf19v3-MNTXKnlw-TgNRs,585 +torch/include/ATen/ops/_nested_select_backward_ops.h,sha256=AlsH8VzleGL9xQz-Cek7qVpjfGrwOfkzkZriWusHPig,1226 +torch/include/ATen/ops/_nested_sum_backward.h,sha256=YZfu1PvGEnClqr7Q88XtCrkbCvjBdzDN9lhWRLy9-4Y,840 +torch/include/ATen/ops/_nested_sum_backward_native.h,sha256=I9ect803gsDWd1ih8b6MIOOcCbv8A43PZ0QWhRk28xQ,589 +torch/include/ATen/ops/_nested_sum_backward_ops.h,sha256=WilD0OQlrBc7sw5YCydhBlOyjqc5Bi4gcBUtCLk_z3k,1237 +torch/include/ATen/ops/_nested_tensor_from_mask.h,sha256=Eq2WYUjGeFvsrxf9maEbsZD6mGjd4gNPeC0zZCwqPt8,1491 +torch/include/ATen/ops/_nested_tensor_from_mask_compositeexplicitautograd_dispatch.h,sha256=GTYv9FWLIa_bH-gr6eKmIvEsMbeuNVD5n4qZzQOoIas,1010 +torch/include/ATen/ops/_nested_tensor_from_mask_cpu_dispatch.h,sha256=2wwMOpHhk91psWlWp1ZhsGgOoQKaQBxyg1s374f6uPc,805 +torch/include/ATen/ops/_nested_tensor_from_mask_cuda_dispatch.h,sha256=jdXhCShdWJPv5qzeVhEgvQo2Fj6NEKp4OdqnlcSzf9M,807 +torch/include/ATen/ops/_nested_tensor_from_mask_left_aligned.h,sha256=IGgmdEo3wmVVdP3WfpAydOEF1O3abVmkzgr6gVhpo24,795 +torch/include/ATen/ops/_nested_tensor_from_mask_left_aligned_cpu_dispatch.h,sha256=F_uhE05AXvkSYmjXvRnuEBRtfshPS_4pkWii7ABV888,790 +torch/include/ATen/ops/_nested_tensor_from_mask_left_aligned_cuda_dispatch.h,sha256=MaS0Cmc0Hl4SU3klyyn2ZcnWFr-FEnQpzWp0jiXrYfA,792 +torch/include/ATen/ops/_nested_tensor_from_mask_left_aligned_native.h,sha256=VEZRRxSLy-oLkpMKNUT8Ofz5kkulZCAdE0W4RXzU4AA,556 +torch/include/ATen/ops/_nested_tensor_from_mask_left_aligned_ops.h,sha256=GXzohAvv-E0zmXXDu_IBUulEL3pmoQM4nPNwGWI8XmI,1109 +torch/include/ATen/ops/_nested_tensor_from_mask_native.h,sha256=B1j2zhZ2SL8xUJPvVhayU4YHQn8ripe5NBoFAWtL08U,707 +torch/include/ATen/ops/_nested_tensor_from_mask_ops.h,sha256=XqURIrnRkYnVr_Ghix9kaQGwTyNH-v7hki-fRZmEtcM,1943 +torch/include/ATen/ops/_nested_tensor_from_tensor_list.h,sha256=iVKJ7KvXI8lIDfFhkVj-2hu53-b6wehSY2-Z5i2r0Bc,2214 +torch/include/ATen/ops/_nested_tensor_from_tensor_list_compositeexplicitautograd_dispatch.h,sha256=fnKTYBS3WFN-CZxQ5C_4SvdQiuI7d7tBGiOCxAAvHQA,1564 +torch/include/ATen/ops/_nested_tensor_from_tensor_list_native.h,sha256=yG19vs7Mg_SJJjTZfjCF9vvI1PPzBNm7IZ6q7RlpsQU,968 +torch/include/ATen/ops/_nested_tensor_from_tensor_list_ops.h,sha256=MYAhohils8UNN9zAlDhS2YtP1quJyHjIiALicAUmwN4,2679 +torch/include/ATen/ops/_nested_tensor_size.h,sha256=b78zCFcuSgWhib2tWm9aT2X6_POn7VMoJLSC9SrMA8Q,994 +torch/include/ATen/ops/_nested_tensor_size_compositeexplicitautograd_dispatch.h,sha256=zAky5LEOIM8_ddtNiIb1IYm2eSqGssMpXpnqa64f8uM,917 +torch/include/ATen/ops/_nested_tensor_size_native.h,sha256=eYnnU8n6W12nxfFwtWQWLtiiGCjVYl1xMv0w3cjRmzM,602 +torch/include/ATen/ops/_nested_tensor_size_ops.h,sha256=hXo0RrmqRRhH4mBIEKFzagApz8qMLl3DjzEgzQAM8jo,1641 +torch/include/ATen/ops/_nested_tensor_softmax_with_shape.h,sha256=3tFwNCfhT_ESmndEi6yN4zcZ5egc5tXY_2Sb6mZ0mtc,799 +torch/include/ATen/ops/_nested_tensor_softmax_with_shape_native.h,sha256=MwRIEnF3v8c3tveGnzMGKiqPR8h6bFXZlWtGv-0NRuk,653 +torch/include/ATen/ops/_nested_tensor_softmax_with_shape_ops.h,sha256=uk1jiDwSOCMq334It5ybnTHLVcKIc6YLXxHHbDD7e0Q,1129 +torch/include/ATen/ops/_nested_tensor_storage_offsets.h,sha256=I4cCZZbYllBh4F4l0Pp4Rl7b0E4ODfdQ9o_jljTgaLM,1071 +torch/include/ATen/ops/_nested_tensor_storage_offsets_compositeexplicitautograd_dispatch.h,sha256=pRkrZ_2iA6la4hC7XYnvOxMA5rnt-esVIbV5JheEAss,939 +torch/include/ATen/ops/_nested_tensor_storage_offsets_native.h,sha256=Z5MbixSw-iIaKc5W6cn1aljgE32XxNM0NhLHPgXwem4,624 +torch/include/ATen/ops/_nested_tensor_storage_offsets_ops.h,sha256=MDqaCFR-jwYwr2F2x4ZV-c8FxjlV1LMn7UbntbRwI24,1707 +torch/include/ATen/ops/_nested_tensor_strides.h,sha256=NrU0fPHwslnUZDIzVTLyPys-FpU-AF1EBo0qNaUNOrk,1015 +torch/include/ATen/ops/_nested_tensor_strides_compositeexplicitautograd_dispatch.h,sha256=VhDGwHqNFsFii5TMkiMGBLd-kvKNyZiz3BR8EQb16Jg,923 +torch/include/ATen/ops/_nested_tensor_strides_native.h,sha256=pRbmArmSeYDd2ErTMFOaAmavWw4ZRMqpDRnEobxpiTA,608 +torch/include/ATen/ops/_nested_tensor_strides_ops.h,sha256=nYfvY82LAmrpmvlsluaGrhuNlR4ZYz22eaq6qZIrE2k,1659 +torch/include/ATen/ops/_nested_view_from_buffer.h,sha256=o85A7zd9lFDzgea3Y3uL_zT8_bRuwLlpnovYePCMbwc,914 +torch/include/ATen/ops/_nested_view_from_buffer_copy.h,sha256=zEnmpOiCzwp2Ep5OsF_VwgzU2tE-VKlnBi80ML7J-5s,1849 +torch/include/ATen/ops/_nested_view_from_buffer_copy_compositeexplicitautograd_dispatch.h,sha256=7P0dBD3FwwTx5LucTcSVoa23CSgQHehoq9BCj6pPtIw,1127 +torch/include/ATen/ops/_nested_view_from_buffer_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=n-8omkz2w9bH36RBWA4kokhIw8790TojPjQ930766-I,931 +torch/include/ATen/ops/_nested_view_from_buffer_copy_native.h,sha256=1p6Aq6j5e-ad1Yz5jtZGuC4gKfKUyyypp-b_b7-oc8Q,812 +torch/include/ATen/ops/_nested_view_from_buffer_copy_ops.h,sha256=B9uoPbftjI_BpgXamI4W0UuOEVvvPsWxxrtSeVBfdMs,2319 +torch/include/ATen/ops/_nested_view_from_buffer_cpu_dispatch.h,sha256=0NUXMROIUdFslWBe3M6UnjDUYCi-tMiAx9NXLj3N4kU,856 +torch/include/ATen/ops/_nested_view_from_buffer_cuda_dispatch.h,sha256=uE2XseRvdPjBW4voY11JjzXXb0ZmUfPRKhN5alDiCFg,858 +torch/include/ATen/ops/_nested_view_from_buffer_native.h,sha256=eJYs9OvTt7AZOadfuFg9-6zdQ_YpuNC7fpWm25F69VY,610 +torch/include/ATen/ops/_nested_view_from_buffer_ops.h,sha256=zusNp_qME1FPBOcm6120l5EUzf1vzMug44aT7sArXCg,1331 +torch/include/ATen/ops/_nested_view_from_jagged.h,sha256=2CiVgt7XeWmMSLMkJp-eOnJpMNzaDZj7K4YXAf95Tl0,1129 +torch/include/ATen/ops/_nested_view_from_jagged_copy.h,sha256=uWOn4ZL5CqMzlBJicv6S0SMcHa9E-PFpQ_7QHOFd5Vc,2483 +torch/include/ATen/ops/_nested_view_from_jagged_copy_compositeexplicitautograd_dispatch.h,sha256=7y7jfZg5Aif9ggKphUbdMznhCLEFAf4huhtqkr7V1sQ,1378 +torch/include/ATen/ops/_nested_view_from_jagged_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=QQF886-UE_pd8JFsgJBrXoXTB5tVGdoYj_nM0F0S4Gc,1062 +torch/include/ATen/ops/_nested_view_from_jagged_copy_native.h,sha256=__K3F0o-cZN8RvsRQGieOzz8646kuV3_DxdavQn0Qas,1063 +torch/include/ATen/ops/_nested_view_from_jagged_copy_ops.h,sha256=qsoGtsGpg5L3-72XPmZlI2SYgz_tOxNIje8VsSAKZNQ,3121 +torch/include/ATen/ops/_nested_view_from_jagged_native.h,sha256=9XaUGLJyiIUXnjau4tp-HFMbdt34qeE71RClgADHWpo,442 +torch/include/ATen/ops/_nested_view_from_jagged_ops.h,sha256=8XjwxY8zt6jebxVYHQTR8b0CX7_hwpWcvk39ZbtBlaU,1732 +torch/include/ATen/ops/_new_zeros_with_same_feature_meta.h,sha256=QpwnxlIwpqp2nyteVaEhjototq464P2hGMKC68E4tZ0,1692 +torch/include/ATen/ops/_new_zeros_with_same_feature_meta_compositeexplicitautograd_dispatch.h,sha256=w48MZqpdLHxHE3m4HrWEpUiFYXgL5u7M8xavt-tGpF0,1196 +torch/include/ATen/ops/_new_zeros_with_same_feature_meta_native.h,sha256=SkYTijaNSUMoZ42RkTb38YXFtdM3Y9zJ6Omy_ghq38g,742 +torch/include/ATen/ops/_new_zeros_with_same_feature_meta_ops.h,sha256=aw5rCMQfRjyjnnLagTDHuQehssoAxBhEbmsTVVK3Cjo,2088 +torch/include/ATen/ops/_nnpack_available.h,sha256=PESzVszyKkO91Vogg6OP08t8Ayt06PIv5609h8Qnl8o,642 +torch/include/ATen/ops/_nnpack_available_compositeimplicitautograd_dispatch.h,sha256=-hAoHXu2LcKSiLhc8MAzkGePQof-VJGMRCmJUtwDLOw,769 +torch/include/ATen/ops/_nnpack_available_native.h,sha256=gnpoBb1pa5X3s8ZFxvHxdYfQXqyxkL657YoWWGmCVBk,479 +torch/include/ATen/ops/_nnpack_available_ops.h,sha256=ummVxviJSwPo-hhTtoj8GrebaFQQKSynA21tAnq5NBg,898 +torch/include/ATen/ops/_nnpack_spatial_convolution.h,sha256=W6P-Xz17YhGVDpKm6Q6l5SuhuRLNLoQkLET1ktJ3ciw,6258 +torch/include/ATen/ops/_nnpack_spatial_convolution_compositeexplicitautograd_dispatch.h,sha256=brCLSVWQdrCxBN5IK_QCc_leLyEDu33iv-J_oXuJALo,2079 +torch/include/ATen/ops/_nnpack_spatial_convolution_native.h,sha256=HwM3dkMWe3hyopU5eYr5q8g6GmE4Ior8Ty7dbaKfHwE,873 +torch/include/ATen/ops/_nnpack_spatial_convolution_ops.h,sha256=UUI6JNkYpNcgCVlOlWJa8lJOmA6BSHIZDgwjoRz3YiM,2533 +torch/include/ATen/ops/_nnz.h,sha256=qTF4rTBLTEJlW4njsJNebjkhYK4I5VhT5tnc0nV4NC0,504 +torch/include/ATen/ops/_nnz_native.h,sha256=J1ecwoI91zlwsuqXCwbdL9fYkUNjkaeLGFCmy2O-9bQ,560 +torch/include/ATen/ops/_nnz_ops.h,sha256=DrNfvg--vJdAiQVuFnTiKFkyE4alypwFA6vd2EFE5Uo,944 +torch/include/ATen/ops/_pack_padded_sequence.h,sha256=ILFTvrosB1r7IAqgKGPqk8YXcyG4TmDoHqEjHUXHj4w,1715 +torch/include/ATen/ops/_pack_padded_sequence_backward.h,sha256=XwA_JrBQvVE6NbIRfn1xMYLe73S1h9Jz32Jp8U4QONA,2101 +torch/include/ATen/ops/_pack_padded_sequence_backward_compositeimplicitautograd_dispatch.h,sha256=W7BKEOD5cnClc-hqg8rYVERmb0wxGksKpg3XHxt2Tr8,1057 +torch/include/ATen/ops/_pack_padded_sequence_backward_native.h,sha256=w1YbLGEiSuW4ecHNPAXMz3zbJ9n8XSqD0I3XKfh4jrk,610 +torch/include/ATen/ops/_pack_padded_sequence_backward_ops.h,sha256=80jt2ammIPpAj3IEo2dIdIwsWAo7yYPtAnuI2HjohYQ,1304 +torch/include/ATen/ops/_pack_padded_sequence_compositeexplicitautograd_dispatch.h,sha256=Y0TyoGkG8CXE5YLp-Bxl6CglStsbzEc-BHmFLz7Ebb0,1251 +torch/include/ATen/ops/_pack_padded_sequence_native.h,sha256=hL8iC38E8i5D0ps6vQxvbkFG2Vjf7vlf32T537qyt50,772 +torch/include/ATen/ops/_pack_padded_sequence_ops.h,sha256=MaT5CUjvynXhi4buqsm8eVUbZlAAC_AFfvrgsmHhef0,2215 +torch/include/ATen/ops/_pad_circular.h,sha256=732DLDpvSWjl_vJrr2Vb5s_QghwwOpwEj6vRbyhhr6o,1464 +torch/include/ATen/ops/_pad_circular_compositeimplicitautograd_dispatch.h,sha256=k-f9CvpcGUxJUgI6fkxSGHZXzp41qbmGGCwCtnifSAw,909 +torch/include/ATen/ops/_pad_circular_native.h,sha256=KMUW_vXU4g1v167fKYsXQSPNrpjQaYOIRPlHwZ8CP-I,536 +torch/include/ATen/ops/_pad_circular_ops.h,sha256=GPfLMlUk9yTURKR9tAE0mWiqWSWpPNRDONN2rPvjZhA,1068 +torch/include/ATen/ops/_pad_enum.h,sha256=0xjeG8ImfKdR0uXfFLxSjNwJHJ2gHWC3j9sSi_fWKzw,1770 +torch/include/ATen/ops/_pad_enum_compositeimplicitautograd_dispatch.h,sha256=RmPVhQAft9uvT_51KaNDXJ7dfGnBctSHZDgzJ53FWU4,1021 +torch/include/ATen/ops/_pad_enum_native.h,sha256=O-AFKfGkSZp_NtcITusdLpN5ihF0ynperS9h_C2rAq0,592 +torch/include/ATen/ops/_pad_enum_ops.h,sha256=O7_iwLcZMI-0mSYciq-rMRiSV64MTuksCzQNz2wJd5Q,1209 +torch/include/ATen/ops/_pad_packed_sequence.h,sha256=MMpxA01SQvA-qaSRbb3h7eAEL5XpxAjP5nK-XsXoouQ,974 +torch/include/ATen/ops/_pad_packed_sequence_compositeimplicitautograd_dispatch.h,sha256=-x15aDEUSDsKNic06sm7ax5A6w_wkxDCWGRVVTLACeU,932 +torch/include/ATen/ops/_pad_packed_sequence_native.h,sha256=BTb4SjEcVd814dzIKmGJoxeNULwKgnIz--ZHI35UIMI,642 +torch/include/ATen/ops/_pad_packed_sequence_ops.h,sha256=Wc74Eh2sC7x-rurr8G1CcwVvKFGaKOvzHHJW_KslrMM,1434 +torch/include/ATen/ops/_padded_dense_to_jagged_forward.h,sha256=GEZXQeDUKcE2XYZ92W-5kSzqu5Mgotf76gPvLCHxJis,2082 +torch/include/ATen/ops/_padded_dense_to_jagged_forward_cpu_dispatch.h,sha256=kseyP-HEGUZi8FSdhvx959VF_cIjA6UVyPfspE_J2GE,1007 +torch/include/ATen/ops/_padded_dense_to_jagged_forward_cuda_dispatch.h,sha256=eFrYteYgGIKP0sm7Bdh_GYb9AD0q9ZrPgSdrWpz4Fk4,1009 +torch/include/ATen/ops/_padded_dense_to_jagged_forward_native.h,sha256=kfqVDrO7uTpC4H8ALFxFRL9c87gQOQ12B0tduPtMq5s,765 +torch/include/ATen/ops/_padded_dense_to_jagged_forward_ops.h,sha256=y-hLDc6LpDXCla2mpcU8pjC-HuIVbEVB3Ctv7Ln9ke4,1250 +torch/include/ATen/ops/_pdist_backward.h,sha256=zPVVRg1us77mDhHHc_Kf_DrPFhzrdqwtECHSDp14A2E,1472 +torch/include/ATen/ops/_pdist_backward_compositeexplicitautograd_dispatch.h,sha256=Rx68wcd0cihxuR5Tbvj0FnhNDgnL4VG_MdmqHLSE0a8,1031 +torch/include/ATen/ops/_pdist_backward_cpu_dispatch.h,sha256=aSrJYWlXT8sPLTZCm45a4YznNV1rT1rvRdLtoZZwHSs,813 +torch/include/ATen/ops/_pdist_backward_cuda_dispatch.h,sha256=TPSS8X59ZR6Ql7AQtUbosUi9uahxJqgAuFDgpFHgLrA,815 +torch/include/ATen/ops/_pdist_backward_native.h,sha256=HqwQGpVGaKZy-0iOCLKItaDXnBfJVhMRRLATb_yctrQ,716 +torch/include/ATen/ops/_pdist_backward_ops.h,sha256=FkUMzmYS1Z8-NNbh2CCBD2-d7vwAOKeab4Sk3A-qhpw,2029 +torch/include/ATen/ops/_pdist_forward.h,sha256=3f58HadB95AVXcR2YiJ0y8t9gn6ZXZ-MFUHWtolfNLo,1199 +torch/include/ATen/ops/_pdist_forward_compositeexplicitautograd_dispatch.h,sha256=7mtKy9zLyWWhHDsZRq9E2vA_wns4XddsFNG3vnlMekI,929 +torch/include/ATen/ops/_pdist_forward_cpu_dispatch.h,sha256=4mgpq8f0gv7FWB0-RA2QZpP2f4_myagPbjjqU8NO9iI,763 +torch/include/ATen/ops/_pdist_forward_cuda_dispatch.h,sha256=LV00vy5cNuGRoPcrsgdpSWXcY1zZgYUaALS8Dv7cqd4,765 +torch/include/ATen/ops/_pdist_forward_native.h,sha256=bbXNQvCdrrR2WUlgkRAzVM18kr4q_AejSvAG3rKKnEs,614 +torch/include/ATen/ops/_pdist_forward_ops.h,sha256=quseo6_vbx8mYNkN0bFTnIkbos8TU7TRbDzDC_Roym4,1689 +torch/include/ATen/ops/_pin_memory.h,sha256=nKXNNzxcx1ojjMB_aTyuo6LKwNIlpB3UmmN-JVC-fns,1318 +torch/include/ATen/ops/_pin_memory_compositeexplicitautograd_dispatch.h,sha256=WisrWATsiQuFcOKc8PWPRZQP6vmDkYNaKa733esAe30,1099 +torch/include/ATen/ops/_pin_memory_native.h,sha256=PjAGwRt17fRYHuhQZO6Wv71T-XNIdg6G0wVtzoPjLr0,1042 +torch/include/ATen/ops/_pin_memory_ops.h,sha256=iXojylY5sBEyNalRbKDcalwXbAQYeCIIYT0f5h7_2Ss,1837 +torch/include/ATen/ops/_prelu_kernel.h,sha256=P-_HpWhH-v34VP2n2Nt7n79SixZFKsTh5hcj6qbIBG0,722 +torch/include/ATen/ops/_prelu_kernel_backward.h,sha256=ouUA1QI8jYGMKNFwqEimFwvxEID7Fy2vW1T_bQX8QXE,858 +torch/include/ATen/ops/_prelu_kernel_backward_cpu_dispatch.h,sha256=kkDnEHpZw6vjOO-mN6XFKNO8yZfQbqpPjPAq3s05zPE,843 +torch/include/ATen/ops/_prelu_kernel_backward_cuda_dispatch.h,sha256=SCiDIsqxYqIKIGgn6YFJKP4VgUmm-KKt9JtX4r_2JPE,845 +torch/include/ATen/ops/_prelu_kernel_backward_native.h,sha256=AGrZXl7Z5psWjqzkhevzN35ahxCWlFrFx25wiUnRwRM,751 +torch/include/ATen/ops/_prelu_kernel_backward_ops.h,sha256=BVMRE0ddohMKWLAb1n1b93GGI_2bxyeFboYB4OQ1Tvo,1288 +torch/include/ATen/ops/_prelu_kernel_cpu_dispatch.h,sha256=fC9VdD_iDGW5qHj3jWTo0E3OxmMIV3CVAoG4AyJzHgw,777 +torch/include/ATen/ops/_prelu_kernel_cuda_dispatch.h,sha256=pzivuUH5mrlIs7gJmunIV127MT3YEAHzczBdXQokh0k,779 +torch/include/ATen/ops/_prelu_kernel_native.h,sha256=r-sSmL7ZbZn2zgnz5jdcqxBGi7STrBEz9bM66ejsfL0,722 +torch/include/ATen/ops/_prelu_kernel_ops.h,sha256=FGliVn7dPJcsntuCB6S2yBeiNWJeYUq6MsrItnRHbrs,1072 +torch/include/ATen/ops/_print.h,sha256=Z_lMstPp4_oqxFJQzBsRR_n8Y8eyBTCcLf5kWGz8I6s,620 +torch/include/ATen/ops/_print_compositeexplicitautograd_dispatch.h,sha256=Erl727TeuofFlNQJEobPzsb338CMG-fXyRLv3z2Sfv8,776 +torch/include/ATen/ops/_print_native.h,sha256=aV7cgzETeESG_jBetosMJ3Kp6CqFkYbW8kpZ-7_1Xlw,486 +torch/include/ATen/ops/_print_ops.h,sha256=aHL89TzmLyuW6jd1xidHoNwUXvXgc6VR_70DpRAkcb8,922 +torch/include/ATen/ops/_propagate_xla_data.h,sha256=BcIfkvTb9bLuB-pY0PSL7ykePJwLM09dvJqXfxdcl8c,739 +torch/include/ATen/ops/_propagate_xla_data_compositeimplicitautograd_dispatch.h,sha256=kUw7uN_68vvdB8atz1afqOJNVEk1QzKMkx1uMCv2BLA,822 +torch/include/ATen/ops/_propagate_xla_data_native.h,sha256=k8QtZfxGIiRKZ-WnAs3rt5HC4V6B6vHkDjFt_JqqVaU,532 +torch/include/ATen/ops/_propagate_xla_data_ops.h,sha256=LzfcefZLw9eV8b48lL6UoLHKg-ia0dGGBadUA2wZhmY,1071 +torch/include/ATen/ops/_remove_batch_dim.h,sha256=jzPXSO6NNmJxyplGBSiYlN5QkGabdXJbb00jPbWtOzQ,1730 +torch/include/ATen/ops/_remove_batch_dim_compositeimplicitautograd_dispatch.h,sha256=K7UcLGh1eVKkuIvnz6fCtAqj1XxjRcq4VVgWRQdR54Y,979 +torch/include/ATen/ops/_remove_batch_dim_native.h,sha256=0x3okb-N2W97KHs03mFZxdpWXugCMm6mXLCLb3QWT98,560 +torch/include/ATen/ops/_remove_batch_dim_ops.h,sha256=U0NeOQm9aNdYo3GXnUROKnrD8ItOD23VRIx0JHiqzXo,1181 +torch/include/ATen/ops/_reshape_alias.h,sha256=h_X5X5eGkT98x36QbB5PlGPDD-x3iqrcIikMrmxlgqE,1719 +torch/include/ATen/ops/_reshape_alias_copy.h,sha256=k4PmBN6Q-gp7MpM0MVUyNTguRflapcDY9UHTkupMAto,4628 +torch/include/ATen/ops/_reshape_alias_copy_compositeexplicitautograd_dispatch.h,sha256=vNI69_B2eR7Oe8yDtYfYAKsChdgG4q8yLHfjXRlCU2Q,1316 +torch/include/ATen/ops/_reshape_alias_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=fwzGKdcHoLrnjJnIECr-j2kyf6hVvoMvsoqLR1RepmI,1001 +torch/include/ATen/ops/_reshape_alias_copy_native.h,sha256=jLnc31Hz5tuinTy28oYUKws2vRROXeC4-1EMi6l_lag,724 +torch/include/ATen/ops/_reshape_alias_copy_ops.h,sha256=IHdlOFxQVyAI2yau9ldHnVe6RyZbvfFwr8bb3BGEt1w,2005 +torch/include/ATen/ops/_reshape_alias_cpu_dispatch.h,sha256=mKzqpEDSFxZLs1x1bJEmmWll1BQiDpbcEZfkPN_hAtY,921 +torch/include/ATen/ops/_reshape_alias_cuda_dispatch.h,sha256=Vsg72Jkq4zRfNcpix0mQxc4NIpfHXcEL5CZSbhS5Ru4,923 +torch/include/ATen/ops/_reshape_alias_meta_dispatch.h,sha256=WSeJDs-frwtyUVaiAHQB8mJtFbGahd0ItCa28DBghUM,923 +torch/include/ATen/ops/_reshape_alias_native.h,sha256=HbjigftLL3augUmS_le8RymoEnLttuBhxYiEA2ykgw0,551 +torch/include/ATen/ops/_reshape_alias_ops.h,sha256=suLyBL7jTCCPgmzD3Bf286SAmTrjTwpt0xDpJAQuurc,1174 +torch/include/ATen/ops/_reshape_copy.h,sha256=fiIGk1bPTgG_VRgq4Nc8ZhsPYTf8R8JOej2ClSyVycA,1474 +torch/include/ATen/ops/_reshape_copy_compositeexplicitautograd_dispatch.h,sha256=ZJGNiETAL35Cf9FshnX5SbCYfG3Ck1yoS6LVnbxRFZc,911 +torch/include/ATen/ops/_reshape_copy_native.h,sha256=b1gLWt3alf3Nkj9df6tKOmtluBaKYQwRINZ3avg9KFI,537 +torch/include/ATen/ops/_reshape_copy_ops.h,sha256=Ml8L6qFr8AwWX8vOa3yIxY5GXqbB223b7O-1pb2HJMY,1071 +torch/include/ATen/ops/_reshape_from_tensor.h,sha256=SkV-kvSTE694Ltel8w_DJyRSYkEtASYaaoKz04f1EOE,747 +torch/include/ATen/ops/_reshape_from_tensor_compositeimplicitautograd_dispatch.h,sha256=BV31h48eui0j0BYziFWQ_VddhPrQp6bW4ymv3BFQr2A,827 +torch/include/ATen/ops/_reshape_from_tensor_native.h,sha256=KJn0c9YuIByZ-YuhKU0YN_dO2tNMHUHCScUx0hoS9Fc,537 +torch/include/ATen/ops/_reshape_from_tensor_ops.h,sha256=z-L7MRqorz4RqrTZ7pnYlcB81rJu9GHXqY4ehrlfJI8,1090 +torch/include/ATen/ops/_resize_output.h,sha256=AcAcZ8sXoWgO6Z09701xXh8b-NbwRqPZFn_-PYsXXLE,5486 +torch/include/ATen/ops/_resize_output_compositeexplicitautograd_dispatch.h,sha256=VVlWSsdMnefbMdFKXvQMRPYMurb5gf9rbb97KQEzyzU,1535 +torch/include/ATen/ops/_resize_output_meta_dispatch.h,sha256=hhTH-tI_iT3ca-v4U6ZO__ghCT1ZhJrR0VBrvv04SeY,927 +torch/include/ATen/ops/_resize_output_native.h,sha256=72dyThSiLzRJ3gyRl_gKXb-VsawpPoGjqXpA42ac2VQ,821 +torch/include/ATen/ops/_resize_output_ops.h,sha256=h-WBs05bFYCuQnOBfST_C-IlBGRKI3PxzDaS4Yjdukc,2676 +torch/include/ATen/ops/_rowwise_prune.h,sha256=UFatmchbWYqAfgsFB_WuybHt_LElOkSD6b_tuui8iT8,865 +torch/include/ATen/ops/_rowwise_prune_compositeimplicitautograd_dispatch.h,sha256=Moz7ruAeD0EJVaj3FhYcNQ--wnJx9Hzy9Ivsb52tZlk,888 +torch/include/ATen/ops/_rowwise_prune_native.h,sha256=Kr-MTYtUyuii3eGm8WZShij4Gn8eewh3C-rSflWTvbE,598 +torch/include/ATen/ops/_rowwise_prune_ops.h,sha256=xwqVCr57oNh3ZdlWL2JQMfpkv9jxOR1RiBKeN7pVXfU,1295 +torch/include/ATen/ops/_safe_softmax.h,sha256=SvxWSdwBBfPRykxl9Nu3KegbtOTOzsKAaoK8qu0G8M8,784 +torch/include/ATen/ops/_safe_softmax_compositeexplicitautograd_dispatch.h,sha256=Pj7O9CgqoF1HlAJIcmvMso7IhWgpamw9B3lq5Ue2xwU,861 +torch/include/ATen/ops/_safe_softmax_native.h,sha256=kkXObJCU5i407ly672OZliUNukKtHqmpCafNBucmwQo,571 +torch/include/ATen/ops/_safe_softmax_ops.h,sha256=VcH8n1XFMsdgWh6z8PMVCDE_3NYOSD6iN0l44p5iNN0,1162 +torch/include/ATen/ops/_sample_dirichlet.h,sha256=_F4trrty0vTh9oAFHCHFBciHvKpHSJ2R3H4nHAjiDXM,1423 +torch/include/ATen/ops/_sample_dirichlet_compositeexplicitautograd_dispatch.h,sha256=6ifmJa0DngGLzH-zkaf-GQTmM0yB9Uf9rgkdPloqnyA,1012 +torch/include/ATen/ops/_sample_dirichlet_cpu_dispatch.h,sha256=z7rbqtkKVRVknLozf6g_E9gz-9b52_2kSzFxF4NW0hs,811 +torch/include/ATen/ops/_sample_dirichlet_cuda_dispatch.h,sha256=93RYromj5OUdivMuOe6O0Eu1070PEmcYAo423BOkoMA,813 +torch/include/ATen/ops/_sample_dirichlet_native.h,sha256=xdcFbT8VmJdJqfK6ykW78H10B-4kBnjywRUNPxL8Psk,819 +torch/include/ATen/ops/_sample_dirichlet_ops.h,sha256=qfYRuntAAV1sfWpdRpfslZva6TwKGdPFmohVc-6rN_4,1915 +torch/include/ATen/ops/_saturate_weight_to_fp16.h,sha256=BcdJeSssdzk8pq5tiV9je9Gr6g_DJ4S4HuCiiN5f5jw,722 +torch/include/ATen/ops/_saturate_weight_to_fp16_compositeimplicitautograd_dispatch.h,sha256=MmbKOuZfY6ilKxAAkMm2XEstqA83H5G20TQKA5sEaAY,807 +torch/include/ATen/ops/_saturate_weight_to_fp16_native.h,sha256=3JFX4DFfW385UFvoleejUPdmYkMCy2NCqqTtTi9B_Xw,517 +torch/include/ATen/ops/_saturate_weight_to_fp16_ops.h,sha256=VX8CSlBoqRERIJ6AIHhU1bJHad62_EywZ9F-1qWPb50,1022 +torch/include/ATen/ops/_scaled_dot_product_attention_math.h,sha256=nPysWO6F87cWwVUtia6jcIpBQA4fc1nfDQLqF20bzfM,1303 +torch/include/ATen/ops/_scaled_dot_product_attention_math_compositeimplicitautograd_dispatch.h,sha256=LbATTrR1-jPQj0TUgPuyoJRmCOjq0RTumAveDFA-1NE,1107 +torch/include/ATen/ops/_scaled_dot_product_attention_math_for_mps.h,sha256=OdkqGhHlAQfeZiJ1i9LhyyQsf0NmcCGeSl2t12Cz32A,1277 +torch/include/ATen/ops/_scaled_dot_product_attention_math_for_mps_native.h,sha256=9XaUGLJyiIUXnjau4tp-HFMbdt34qeE71RClgADHWpo,442 +torch/include/ATen/ops/_scaled_dot_product_attention_math_for_mps_ops.h,sha256=nGbBtUTdOS7AtMY2kZuiwqUl0vYnVbg_yw0LRuMNX4o,1877 +torch/include/ATen/ops/_scaled_dot_product_attention_math_native.h,sha256=is8xIpwwCtxbVHZDcpIeLGTZCGlCDhxEF3H1NeRwUsA,817 +torch/include/ATen/ops/_scaled_dot_product_attention_math_ops.h,sha256=CgteNTYjjwfRUajMHfCX-z329706eRjQeYDIeUwi78Y,1916 +torch/include/ATen/ops/_scaled_dot_product_cudnn_attention.h,sha256=eEbYGKAgyfCTAR2aXF-9cAc1ajvpqjoG6KZEHN21DQ4,1522 +torch/include/ATen/ops/_scaled_dot_product_cudnn_attention_backward.h,sha256=L3CWnFgYm-y8xb-QT9Qa0m63NkGN6bz6k1rTTKmQPks,4487 +torch/include/ATen/ops/_scaled_dot_product_cudnn_attention_backward_cuda_dispatch.h,sha256=tGC5GC5ZUcbd81fHeUIRlnJSqE-Z83vsz50rzqQ6M_8,1763 +torch/include/ATen/ops/_scaled_dot_product_cudnn_attention_backward_native.h,sha256=9rslWI_wykxaniPN-gPPiOwwyYZOSmdEqf62-bfx5O4,976 +torch/include/ATen/ops/_scaled_dot_product_cudnn_attention_backward_ops.h,sha256=uSb53QtL_ANbzTEZy4q2A9YYt0HMUxOlmCR7PiwfTVQ,2506 +torch/include/ATen/ops/_scaled_dot_product_cudnn_attention_cuda_dispatch.h,sha256=IiRI-V6jodFdH8_xhU1TNJSQAXQ0EFDdCwII3A0ND_s,1121 +torch/include/ATen/ops/_scaled_dot_product_cudnn_attention_native.h,sha256=68L7q6RJdMXbw4PAPVuvAZ4tXd54HtfBKcDOjf5hU38,878 +torch/include/ATen/ops/_scaled_dot_product_cudnn_attention_ops.h,sha256=96doTR_wDiStCMOY996ttsPmcdl60XLJZZj08UEECgY,2236 +torch/include/ATen/ops/_scaled_dot_product_efficient_attention.h,sha256=DXxnKZASDWawRgQfcW7ITLK8gNDx7bJQcvoRkmSZNWE,1315 +torch/include/ATen/ops/_scaled_dot_product_efficient_attention_backward.h,sha256=XYxUwJ4X9y87EQ2PX5mSuSIaX2gWdWfTzz5iKgly9v8,1586 +torch/include/ATen/ops/_scaled_dot_product_efficient_attention_backward_cuda_dispatch.h,sha256=2cj2a8Tey4dDG4ov1EbD8anwBxl7XJqkVkfa7yRMAw0,1189 +torch/include/ATen/ops/_scaled_dot_product_efficient_attention_backward_native.h,sha256=9xzstRyhiXv1KroUH0t_vGSPvKiEYi_dSKqhKXQcKzo,946 +torch/include/ATen/ops/_scaled_dot_product_efficient_attention_backward_ops.h,sha256=O05zWnZIJsYMwhFP3A1_ToOaNMhQg4rrcAWmqgiU2aw,2365 +torch/include/ATen/ops/_scaled_dot_product_efficient_attention_cuda_dispatch.h,sha256=Omb4r-tGGjo59De3RHo9tae09aIGcZLks-CSudMfXEs,1038 +torch/include/ATen/ops/_scaled_dot_product_efficient_attention_native.h,sha256=jNsUH1GvbgCTkj3zkeOvue7ghr3fr4K4P08AjFe6Fs0,1161 +torch/include/ATen/ops/_scaled_dot_product_efficient_attention_ops.h,sha256=XgQUIfCh1RygURS0AUYhbTVZyYErkUg0QitsOCn1-VI,1906 +torch/include/ATen/ops/_scaled_dot_product_flash_attention.h,sha256=C2BrzGre7Fsaey2-jxKdw6Xar1UJEvjBmpRHKrixBdw,1375 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_backward.h,sha256=kvXYefx7tmTOfcMpG1iuqqb7Ti564R5IM2CSN5qJlxo,4349 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_backward_cuda_dispatch.h,sha256=V7ThMWXuAfSzgxM8GyNS5KjAjbqrhX64sOnv0O_6YbY,1703 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_backward_native.h,sha256=zU8hrrbCtD6UAqS0n_5X3AlUJXqLg2Lru2JNImFC9F4,1452 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_backward_ops.h,sha256=gbfLMt4zQLT0gKDmZWcNXrBASuQ_2L2ecT8-pPevSio,2439 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_cuda_dispatch.h,sha256=1x3OXJQY16yDy6_JNzozPHgqxc7iFMf3C5pm8Tn4EgM,1049 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_for_cpu.h,sha256=q6r4ktGBNH8l4GsUtEHDRryT-GQLe5NLJ2p1qDxPA88,1204 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_for_cpu_backward.h,sha256=8LbYtUUSJ6JhE0f4xYb1JfIOYI2PcmxfgMhdB5PR0q8,1409 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_for_cpu_backward_cpu_dispatch.h,sha256=Bv1PL73gdqxC-r1xGDBlPVc_ZjNbPufiX4xKd6613Ho,1089 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_for_cpu_backward_native.h,sha256=ue2stwZ9lLAf9VOYq0XKcjV7VpIGow29OqhHPWBGsvw,839 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_for_cpu_backward_ops.h,sha256=Fbq-jCOHUUBrPaqdA2gj9RGh8RLI5rzWCqef_YvUd10,2078 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_for_cpu_cpu_dispatch.h,sha256=J6gL-4PmyIJNILE6r9wWpxGYi4z6aoGRQoKDKTjj_Hg,996 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_for_cpu_native.h,sha256=UkgNfLUnxapqusgMBU93PrsG7b9DWgdxX215zuiGB0c,746 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_for_cpu_ops.h,sha256=SvsbmPR05145qvgkgBC-xt5zYJE62cTYwRY9Dk0q0mk,1733 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_native.h,sha256=3wEjiE3u6JLlLofbndWCImGycja8eFcrctKjttWksrQ,1183 +torch/include/ATen/ops/_scaled_dot_product_flash_attention_ops.h,sha256=HFXpPL1VHFw1OMrliNZx0DwEyuI8NzuobvfsvYRjyMs,2005 +torch/include/ATen/ops/_scaled_dot_product_fused_attention_overrideable.h,sha256=F8yr0bUfZK76nPzMeU_qtiAHNsaszQvWmG06lGcFp_Q,1512 +torch/include/ATen/ops/_scaled_dot_product_fused_attention_overrideable_backward.h,sha256=jTFebNSfzMJhQIgazhot-m-iZRBdGjm34tYA9yph9Pk,5052 +torch/include/ATen/ops/_scaled_dot_product_fused_attention_overrideable_backward_compositeexplicitautograd_dispatch.h,sha256=v66LYhSYRUPhn6kSVOkzWoMCs1resaWYdFkhlL5SdQA,1929 +torch/include/ATen/ops/_scaled_dot_product_fused_attention_overrideable_backward_native.h,sha256=le7vafWMcMvwGZ-q59cxnrrnnzFh7ekWljJEw9c9d9o,1033 +torch/include/ATen/ops/_scaled_dot_product_fused_attention_overrideable_backward_ops.h,sha256=otIJkKX5ki5grnaLU-Hx_47S2Ji45LIewISEPW9aXeY,2755 +torch/include/ATen/ops/_scaled_dot_product_fused_attention_overrideable_compositeexplicitautograd_dispatch.h,sha256=1Rs530VKaS5wzEa8dx8yo6z7VCmZxy0UWYBdljufmN4,1154 +torch/include/ATen/ops/_scaled_dot_product_fused_attention_overrideable_native.h,sha256=iYiuv2cJV6XR_RA8_zD7YFrNUx1Q1gkNyZT5b243p5U,864 +torch/include/ATen/ops/_scaled_dot_product_fused_attention_overrideable_ops.h,sha256=6SiO0kRuYrWtLuwXHn-u1tsN40rwAAxp7zjz_kXb8Cg,2199 +torch/include/ATen/ops/_scaled_mm.h,sha256=GfYRYmFDVyS8oi8DM60ZEAM55YiSq_driPBdUx95gwE,2499 +torch/include/ATen/ops/_scaled_mm_cuda_dispatch.h,sha256=IgDPdqtExJK9xOLlwwMe6izPIciBYVBbk_YdwqdXVyo,1681 +torch/include/ATen/ops/_scaled_mm_native.h,sha256=nS-uwpaFdKEQcZ3n1ZGkXm3Z_iyKlRk6lMJs6G67rfg,1095 +torch/include/ATen/ops/_scaled_mm_ops.h,sha256=3UB4XaAZ4zsoki05OSPGBKki0MMLyWvv9Gmoa1yYRME,3173 +torch/include/ATen/ops/_segment_reduce_backward.h,sha256=0xWOJ91Kwacv1ubwvuuytZikRM3XRclTkBFqekiDqU4,2469 +torch/include/ATen/ops/_segment_reduce_backward_compositeexplicitautograd_dispatch.h,sha256=jeDWnjyEoP4Nv56S1gCXjrvWHkuPPqPWRk-Egc1f-s8,1402 +torch/include/ATen/ops/_segment_reduce_backward_cpu_dispatch.h,sha256=u-PKVj2FBi6iSG0J173XQvZFyC5TmSM3ktv9u_2b-Ww,1010 +torch/include/ATen/ops/_segment_reduce_backward_cuda_dispatch.h,sha256=y9qOrPBOgDJ7VLoQpI47PI89WyHaRHcWVsUZKGcRcHg,1012 +torch/include/ATen/ops/_segment_reduce_backward_native.h,sha256=amJKgZrLLCjUPP2FKA-oI_a3oUVH7BmmU3cBgnBRkN4,1094 +torch/include/ATen/ops/_segment_reduce_backward_ops.h,sha256=OkkP31xuzt1eq-6kem7FgW2sTFxagc3hQVRk4DQ0YR0,3170 +torch/include/ATen/ops/_shape_as_tensor.h,sha256=QnU8V8mueXvoMCW19OrX_UA86GkfHN1gm09y8RWPgNA,684 +torch/include/ATen/ops/_shape_as_tensor_compositeimplicitautograd_dispatch.h,sha256=SHmmx0AvrhR0cB8nIO64XTr4nUrIk7hu1viGpS1wsjM,797 +torch/include/ATen/ops/_shape_as_tensor_native.h,sha256=En6lvt8WvF8SLVqwSaP5_qew8i95vAB10ipoD1pplF8,507 +torch/include/ATen/ops/_shape_as_tensor_ops.h,sha256=0x7xLsjCz7PGlPMAx-XqCveGsyLw2buNru8DHZq4yPc,992 +torch/include/ATen/ops/_slow_conv2d_backward.h,sha256=ZMoHe5DYExKG-Qhet7SXs2viU2xNv7029yVZd7tjn6s,14642 +torch/include/ATen/ops/_slow_conv2d_backward_compositeexplicitautograd_dispatch.h,sha256=JP30koPAUJE0vMOaltTnLMDZ6iidstd9cR7ejgwyt3g,2148 +torch/include/ATen/ops/_slow_conv2d_backward_cpu_dispatch.h,sha256=ESxrgpYGN-huwn6aSCAAQ7LPeYktOKCRxq973vBJszw,2613 +torch/include/ATen/ops/_slow_conv2d_backward_cuda_dispatch.h,sha256=Zh7CLYTb5cWUgEgHRjjsFDhQ_Tznkw4szS1F3xDKN_0,2615 +torch/include/ATen/ops/_slow_conv2d_backward_native.h,sha256=y4pNwRcjtsQ9BVH9fSf7gV82I4tD1GwNZ2Wvu3EV0HQ,2041 +torch/include/ATen/ops/_slow_conv2d_backward_ops.h,sha256=Xz9ezVmq3WV0A2XkxWpP0ZTeZK5c2UlDF2rWRiNPEGU,4888 +torch/include/ATen/ops/_slow_conv2d_forward.h,sha256=ma1L7HRnqshh9AHbuwvatpbBOl0EQhhFXrNsYAubac4,6849 +torch/include/ATen/ops/_slow_conv2d_forward_cpu_dispatch.h,sha256=qpfOzmpdMILXsqqzJnjWaDI9ZGO5iFzXnMt_0AAr7TE,2151 +torch/include/ATen/ops/_slow_conv2d_forward_cuda_dispatch.h,sha256=Y5OiVujbGYryMXA_TdwTe_qP21Q1xMN9xNpDXhvgv0w,2153 +torch/include/ATen/ops/_slow_conv2d_forward_native.h,sha256=paZOLXIM91ZCjhbMDxq81YUY2SB0ozm1H97E4k0FUhQ,1374 +torch/include/ATen/ops/_slow_conv2d_forward_ops.h,sha256=R23yd6y0Rt-HDQMZIgkL6qsHL2uBauexVx_QkNzAhz4,2719 +torch/include/ATen/ops/_sobol_engine_draw.h,sha256=QUbf_W0n6n7CnczzoSxG_-wSWBzj4VW-GnatLKJdpDI,980 +torch/include/ATen/ops/_sobol_engine_draw_compositeimplicitautograd_dispatch.h,sha256=DKIHmbl2glZiL5IaEXtaXsljRoxUkCLpkHjLKYVV0FA,948 +torch/include/ATen/ops/_sobol_engine_draw_native.h,sha256=jQgA7vLCiEw_5NYW3XNFp2V1d2Q2kk29bheQEqHmXvw,658 +torch/include/ATen/ops/_sobol_engine_draw_ops.h,sha256=3E61hkCL6MSeAIhirZFzdJKbS9ZF4oESVzOBdl-bC1k,1491 +torch/include/ATen/ops/_sobol_engine_ff.h,sha256=HWQR5c0kXVAHninZZnh5TyeMRUNnFrmbkoMWvvIsIKs,876 +torch/include/ATen/ops/_sobol_engine_ff_compositeimplicitautograd_dispatch.h,sha256=U7ppA4nbFqIwcwAubPmBr5f5dYh9Q9YeNprRJ0MAWUQ,878 +torch/include/ATen/ops/_sobol_engine_ff_native.h,sha256=KHvsphxPM7PmE4uQRoFURLOCbwQ1485bXp02yMOcFoE,588 +torch/include/ATen/ops/_sobol_engine_ff_ops.h,sha256=kqn6JuxR5RVYupF2iFgUHs8B6hg2mJ6QUbGAvdHKvfI,1266 +torch/include/ATen/ops/_sobol_engine_initialize_state.h,sha256=n5KZs2p9YfbkTh4pHLvxREQ-n5TM3xiyOJZaHS7uJmY,792 +torch/include/ATen/ops/_sobol_engine_initialize_state_compositeimplicitautograd_dispatch.h,sha256=7zIvRDxQ_YOFwx0LbRrllhQnRGt78_2ASFTEIcApH-Q,827 +torch/include/ATen/ops/_sobol_engine_initialize_state_native.h,sha256=IXvFjYonJb6t3HrhHVp_7NW-a9ox0NMvCRG8u1Rz5Z4,537 +torch/include/ATen/ops/_sobol_engine_initialize_state_ops.h,sha256=5Nf4RdZMWWWHHOEKAIgfH9hlkXSVHtPZdW_Gs3EovHA,1095 +torch/include/ATen/ops/_sobol_engine_scramble.h,sha256=oiFz249zMcI1mO93oJxqqkbIHW3gJrurF_FqDSAOpVc,801 +torch/include/ATen/ops/_sobol_engine_scramble_compositeimplicitautograd_dispatch.h,sha256=ytWb3gPPUWeGbgf4Jt1YS40Y2MkYMKwhKCJKWC0SyLw,843 +torch/include/ATen/ops/_sobol_engine_scramble_native.h,sha256=J6oQB16hezBM-7-eT48vlVzCQkhCvpy3KDgFVlqkg8s,553 +torch/include/ATen/ops/_sobol_engine_scramble_ops.h,sha256=DuH-VicA9KQZE77zyrpTVU06McpycrfrLB0WjdnDjZ4,1151 +torch/include/ATen/ops/_softmax.h,sha256=eKyeKFlSOgFNFzdMt667qd5e7v2TjShvErJIrW2Rsyo,1309 +torch/include/ATen/ops/_softmax_backward_data.h,sha256=lyX9C6--nvtE1rQ5OYpuiIVhjSYao6UIG7_i7JcLCRI,1734 +torch/include/ATen/ops/_softmax_backward_data_compositeexplicitautogradnonfunctional_dispatch.h,sha256=DcIWdq8zP4BOeUgfl9kyXWRwy1HAu0TBteopMnM1-4U,904 +torch/include/ATen/ops/_softmax_backward_data_cpu_dispatch.h,sha256=Y9p462K6fInP2Oo41a3lnb4nw_z17MUnl1cqDvLiy-0,1189 +torch/include/ATen/ops/_softmax_backward_data_cuda_dispatch.h,sha256=Hj7vXrQ7uQWQvuPiSmH7bcrR6tjPCxwPWXsEJ9vw0og,1191 +torch/include/ATen/ops/_softmax_backward_data_meta.h,sha256=HzrhLWkae482eLp3Y_Fdjxj1SAxmBIbqmL5R529pcNs,693 +torch/include/ATen/ops/_softmax_backward_data_meta_dispatch.h,sha256=HUv-N_vf-qW3F2Xix-57d69xz0y-Jfro1StAqb_0skA,1191 +torch/include/ATen/ops/_softmax_backward_data_native.h,sha256=cdl06hJLnXbx5qgoLpFjcPTc0hjJCrHKLFFobLkYHpQ,1151 +torch/include/ATen/ops/_softmax_backward_data_ops.h,sha256=yFh8VeauW2RQCUEql361KDIHqTHZubsYvPT4_VpnXcg,2180 +torch/include/ATen/ops/_softmax_compositeexplicitautogradnonfunctional_dispatch.h,sha256=UBgHl5QlASCQJKNOT56OUnTYRx4mMUIasBTbkKcvNbU,848 +torch/include/ATen/ops/_softmax_cpu_dispatch.h,sha256=Uxe0BPRjKjzBFD1QglomMz_cYDzdKpe_HP-5geD4PpQ,1007 +torch/include/ATen/ops/_softmax_cuda_dispatch.h,sha256=qyTKzsEcx1T7nZT-1fjIZmOXDkgC0VetHXPFYJ7C5gg,1009 +torch/include/ATen/ops/_softmax_meta.h,sha256=cJfHIblqafZb9G-jL4wyQd1L1YkfZz-x5u_BvyjGUYQ,637 +torch/include/ATen/ops/_softmax_meta_dispatch.h,sha256=MXPuYDKHkMUOqamc-iEFVjNGUdpl8t9sE_p8XpJXUyo,1009 +torch/include/ATen/ops/_softmax_native.h,sha256=QL6qvLsH2ixczx6z1BYiQn-Kn4jGYC29kri38-yi40g,1038 +torch/include/ATen/ops/_softmax_ops.h,sha256=DEWzV_y2e_pYOal1-DPq6XRG2XE7LPcy2TPAiqeqYJ0,1795 +torch/include/ATen/ops/_sparse_addmm.h,sha256=vxf_uRa1_DZfMXqAQOYogx49cq-GS6KOlVWld0cVgJA,1673 +torch/include/ATen/ops/_sparse_addmm_compositeexplicitautograd_dispatch.h,sha256=6PzdHz2DwFOmfogm-GAlcsRbvMECA9EpgKSJoJ1wLfM,1278 +torch/include/ATen/ops/_sparse_addmm_native.h,sha256=QY9OhnCFAs1uZz-d4zTsF6-SyimQv_Q9X63AiYArXjI,796 +torch/include/ATen/ops/_sparse_addmm_ops.h,sha256=iHK0Fo8VXlqMiwM4dZHAO9TicfegcgvIyEW9LzWIHy0,2286 +torch/include/ATen/ops/_sparse_broadcast_to.h,sha256=2BEuRWlZd0agVZKPdjDkbzet-A28O0YPFr47in7IFiI,746 +torch/include/ATen/ops/_sparse_broadcast_to_copy.h,sha256=qBcLTjyIyCLqhtitd6wDhZy6RgrUf_cgSA-aRL_Zgxw,1353 +torch/include/ATen/ops/_sparse_broadcast_to_copy_compositeexplicitautograd_dispatch.h,sha256=f_M6rCizOWlkbPYyXTSfoZ8U1WANuULM5vxzxB3_Md4,973 +torch/include/ATen/ops/_sparse_broadcast_to_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=NB1u35yrFNKOOxzQBgUhQFvicSAQL7TFhDFA-ytNnbc,854 +torch/include/ATen/ops/_sparse_broadcast_to_copy_native.h,sha256=2iofrY97Cw6HaJfs5D8L-7K0xFrTzY3W-JTXN9JDnbo,658 +torch/include/ATen/ops/_sparse_broadcast_to_copy_ops.h,sha256=pEIXOcH2gZzMgZCY7S8H19pODSfbWtJ3HdNDImUrNGc,1823 +torch/include/ATen/ops/_sparse_broadcast_to_native.h,sha256=KHtF7pHQuRZkR_iolKX5j6xjXObAiNR9jcx5M_fKDx4,532 +torch/include/ATen/ops/_sparse_broadcast_to_ops.h,sha256=1KyK_v7MS3u2JHYmjqbLGe6OZq6JOdIRmDWyu4xU-Sk,1083 +torch/include/ATen/ops/_sparse_bsc_tensor_unsafe.h,sha256=y1hBSzOQMFespaLjCnBexVqD5gzbQJ72_oHjPqRf-Pk,1791 +torch/include/ATen/ops/_sparse_bsc_tensor_unsafe_compositeimplicitautograd_dispatch.h,sha256=fD_Nza5BlGXqi7Z_BrTlaLp0_9zLr2hkPK8Smw6q17Y,1233 +torch/include/ATen/ops/_sparse_bsc_tensor_unsafe_native.h,sha256=FySVPp81Mu8XTdnBNuU5vnVF1n-q_1VqsV1__pQuCyE,762 +torch/include/ATen/ops/_sparse_bsc_tensor_unsafe_ops.h,sha256=x1tW7HK2HpZlvp8zzkOXMvFxeUXdMoI5rCRVKz7-TUo,1805 +torch/include/ATen/ops/_sparse_bsr_tensor_unsafe.h,sha256=o18sVYSyREnshDNXA1ttoREtsVILMBdybOtJElYZNz4,1791 +torch/include/ATen/ops/_sparse_bsr_tensor_unsafe_compositeimplicitautograd_dispatch.h,sha256=HxjT_h_gvXQWD-MKHzujhd_5XD2YJANhH_anytd9H-A,1233 +torch/include/ATen/ops/_sparse_bsr_tensor_unsafe_native.h,sha256=nxAFBEhqu8OdsPjvnPcaF0PSAoCU7LZE_I05q_kbYm8,762 +torch/include/ATen/ops/_sparse_bsr_tensor_unsafe_ops.h,sha256=lQQMZP37X4t6kJkVhWepkccNrB2syKe5FoAZETVjID4,1805 +torch/include/ATen/ops/_sparse_compressed_tensor_unsafe.h,sha256=bvKOVBC5y4lR0ORx-leOcTuLXbosjZV1L-seeKPcbbI,5640 +torch/include/ATen/ops/_sparse_compressed_tensor_unsafe_compositeimplicitautograd_dispatch.h,sha256=0HzNHTwLfPlQGFsoL4ZGgjtJNCB59ifJdxBPLI28B90,1816 +torch/include/ATen/ops/_sparse_compressed_tensor_unsafe_native.h,sha256=7dR4gKCS-MmBOkFAWP1hWuALQLnC7lLmUjf56hUoVIQ,788 +torch/include/ATen/ops/_sparse_compressed_tensor_unsafe_ops.h,sha256=QtahoCFFnS1K4Zt8CVqNUrC6Lzx5rXDvfYb6RAws_Sw,1865 +torch/include/ATen/ops/_sparse_compressed_tensor_with_dims.h,sha256=qmCRvfefsShYBsHjQEeDRF6al4_hfm9l0gRGKjllDAo,1878 +torch/include/ATen/ops/_sparse_compressed_tensor_with_dims_compositeexplicitautograd_dispatch.h,sha256=D9Gpz4XiimvB4tCmw9vtDZmn4epr3rn2-YXdCT8NHWY,1240 +torch/include/ATen/ops/_sparse_compressed_tensor_with_dims_native.h,sha256=iAq27nEqpRZKUuTxyLz_5cCJxs99cl8B-E9kpFHoemw,766 +torch/include/ATen/ops/_sparse_compressed_tensor_with_dims_ops.h,sha256=4YlnbHuWj09kNHfsTWZe8cIpt_77G0jd8mVItM6HmFA,1826 +torch/include/ATen/ops/_sparse_coo_tensor_unsafe.h,sha256=t6g0_E9WoTea9sptRy9mpwi2AcqLPFKBVOpTZ_ZhHwM,5353 +torch/include/ATen/ops/_sparse_coo_tensor_unsafe_compositeimplicitautograd_dispatch.h,sha256=slzuA49lwAUZR3aFBMkxhFm3H30xvmJn7jtAY_A2-nU,1782 +torch/include/ATen/ops/_sparse_coo_tensor_unsafe_native.h,sha256=UwTUpEBhW04qvaDXW7D7xbMe3D75ggknjguadciyDcI,787 +torch/include/ATen/ops/_sparse_coo_tensor_unsafe_ops.h,sha256=_FDoH5OVALD4ZZBHIjbcvUM9x918pxDnwEOTOTJKSxU,1821 +torch/include/ATen/ops/_sparse_coo_tensor_with_dims.h,sha256=ZCkMBdQuWDTMdL5yqoEKtQT3ScyTYJgXQovSfnK1tZw,2340 +torch/include/ATen/ops/_sparse_coo_tensor_with_dims_and_tensors.h,sha256=uM0RpiyelmwdXOYFnxdydKenNDN_og0IIPcQaUEWTnI,10702 +torch/include/ATen/ops/_sparse_coo_tensor_with_dims_and_tensors_compositeexplicitautograd_dispatch.h,sha256=kqUx9Mokxf3MuWIwyTFu9CAGGyfSGdEXRds5ySu6i14,1746 +torch/include/ATen/ops/_sparse_coo_tensor_with_dims_and_tensors_meta_dispatch.h,sha256=S2Sui2S8_gctxhVq9SRMsufge-dfHlgVZoIJzBnr_Nc,1950 +torch/include/ATen/ops/_sparse_coo_tensor_with_dims_and_tensors_native.h,sha256=jxXhl0OnEQrQja4gABkrcqs4vDNQaHltN3Yw3AT-RYc,1083 +torch/include/ATen/ops/_sparse_coo_tensor_with_dims_and_tensors_ops.h,sha256=0JWXtL90qKlDNqdj_3NCyoxsfvyeSv3rCTEIEMDea0g,3130 +torch/include/ATen/ops/_sparse_coo_tensor_with_dims_compositeexplicitautograd_dispatch.h,sha256=7YsWN-jjumSdzlFUNPITBvSviz11Lil5tv9g3wyygSk,1007 +torch/include/ATen/ops/_sparse_coo_tensor_with_dims_meta_dispatch.h,sha256=dUVuLZRFOtLZom7AUfnAS7NOPa6K20wPuBMbvxakmW0,1088 +torch/include/ATen/ops/_sparse_coo_tensor_with_dims_native.h,sha256=qRnBb6OWd58w5S3f0In5XTk0vFOBZwu9yCVj0xSb9zQ,841 +torch/include/ATen/ops/_sparse_coo_tensor_with_dims_ops.h,sha256=fUxpGiRdDeyc30p5v8qN20M_Qz1nfXVcXky3d7nOXuc,2426 +torch/include/ATen/ops/_sparse_csc_tensor_unsafe.h,sha256=URukyoUFzdkySvCEr27jbdBPHFkwbODejKRdsXkmfNk,1791 +torch/include/ATen/ops/_sparse_csc_tensor_unsafe_compositeimplicitautograd_dispatch.h,sha256=DdQz0B0arJZunyDFUDKXh9pG4NK7c8e4OC-j1GN1F4E,1233 +torch/include/ATen/ops/_sparse_csc_tensor_unsafe_native.h,sha256=KiTE44AZiv-tknGaPIeaNDBDTQ_j-vzew25-0AwLi1Y,762 +torch/include/ATen/ops/_sparse_csc_tensor_unsafe_ops.h,sha256=mCCZp7rMwQTPrdMOTBcb8pFx0EWGrGnFwlcskFtjrmY,1805 +torch/include/ATen/ops/_sparse_csr_prod.h,sha256=VHWtZjsgYfiDrbtwog_yu_oyn71FiBvaa_NyBTGf4AM,1701 +torch/include/ATen/ops/_sparse_csr_prod_compositeexplicitautograd_dispatch.h,sha256=vSlLeVPMmlhcQJRsszzRQrEGpopV3smAj4LmdgXtnrY,1080 +torch/include/ATen/ops/_sparse_csr_prod_native.h,sha256=3JRdXNW94ecdiwOWxfnwbWnuLZ8CMdbuWwpFmtFal6w,944 +torch/include/ATen/ops/_sparse_csr_prod_ops.h,sha256=L32qeQox7wuLyMiAn42EkzNJMF_MEODcnaWNW-xrGuk,2205 +torch/include/ATen/ops/_sparse_csr_sum.h,sha256=c1oVUdHIE97kvBt9H1Aueaz2nbRiLvKIgg7suX0yczk,1691 +torch/include/ATen/ops/_sparse_csr_sum_compositeexplicitautograd_dispatch.h,sha256=pDVz0c4VPnuTYtuj28nLuMV3Ml9xKuvydOS8l2w--aw,1078 +torch/include/ATen/ops/_sparse_csr_sum_native.h,sha256=kCkeBBJKRPRa_-RKreeEL5SsUhX_pD_zx2zXptlLal4,941 +torch/include/ATen/ops/_sparse_csr_sum_ops.h,sha256=vwSar-GBC2VFJwlsYl6_gf8yg8BA9AF9ANXgtqTc_44,2199 +torch/include/ATen/ops/_sparse_csr_tensor_unsafe.h,sha256=u5TDk_r2qh0ZhFl5UKysKlraVTD64u2USI9tLCNOIQI,1791 +torch/include/ATen/ops/_sparse_csr_tensor_unsafe_compositeimplicitautograd_dispatch.h,sha256=iwU_a6nWlWL1vg5gYv9Fjx2gYSR3bWc_QtzyqZphPuA,1233 +torch/include/ATen/ops/_sparse_csr_tensor_unsafe_native.h,sha256=9ljK6DGheT4tLsAa7lfxfCmTbyQuHcPnLzx-52GQqVk,762 +torch/include/ATen/ops/_sparse_csr_tensor_unsafe_ops.h,sha256=n3lYuAqxoEaGV_W13WvGlC_6HVAD5ycvw4mZUzxwZo8,1805 +torch/include/ATen/ops/_sparse_log_softmax.h,sha256=3HD4PYdWbvn7el0xKbJbQEUEIOqPloooe-k6AUYfI5g,2036 +torch/include/ATen/ops/_sparse_log_softmax_backward_data.h,sha256=utS69r65kDRgrUGYs5gwg0N_swA0w4OOTA9XycLQbsg,1739 +torch/include/ATen/ops/_sparse_log_softmax_backward_data_compositeexplicitautograd_dispatch.h,sha256=HvR-ncFNFxswEX1x8a6Q6MVWWWll9YiQ-C9E2TE_Jx4,1089 +torch/include/ATen/ops/_sparse_log_softmax_backward_data_native.h,sha256=chj0zZlRmOFtL5Yny2fVqDx1r8U7lGim3aBpoeItVPs,925 +torch/include/ATen/ops/_sparse_log_softmax_backward_data_ops.h,sha256=57XLLgHypuz2GUj_qVWS0fjOodBvAlwDFVRqFrmNN5o,2199 +torch/include/ATen/ops/_sparse_log_softmax_compositeexplicitautograd_dispatch.h,sha256=Q5jQzsaEdxSgIjQAliPy-6yraZDqEo8vDJBMm5r4MrU,983 +torch/include/ATen/ops/_sparse_log_softmax_compositeimplicitautograd_dispatch.h,sha256=nK926vQS1wkEze7XCsuIYnKnKLPrIPkxhkWMXAN3ros,1006 +torch/include/ATen/ops/_sparse_log_softmax_native.h,sha256=FmD_ue5Tub4ITILWVYlEe33XMzDlwYqegmZckr2a_jk,1050 +torch/include/ATen/ops/_sparse_log_softmax_ops.h,sha256=tk_zio9EkhFOTFzblpmMOknINR311CPDFEaig6ZFnxQ,3372 +torch/include/ATen/ops/_sparse_mask_projection.h,sha256=jFLQY3ofU8mAdmZG8lPxqaovUNmtfDp2Ug3Z9bCqXCc,1268 +torch/include/ATen/ops/_sparse_mask_projection_compositeexplicitautograd_dispatch.h,sha256=r2_yQRB_oOghptPr3LQb0lPU0sXHBFkWwxslrMtqFqo,1031 +torch/include/ATen/ops/_sparse_mask_projection_native.h,sha256=N_hL4hO00j-g70Hnev_wmq3wnmO-exE2hIx7f05EEj8,715 +torch/include/ATen/ops/_sparse_mask_projection_ops.h,sha256=WBuhO5hflqszSl-YN9MzvISgNLe3lvk2E3XWzONQ0Wo,2005 +torch/include/ATen/ops/_sparse_mm.h,sha256=DDuuo-CmFWcs2J6DRQu00nyxf9YfWePNqehAoND8qcY,977 +torch/include/ATen/ops/_sparse_mm_compositeimplicitautograd_dispatch.h,sha256=dw3egYh8dhms2-7F4yWWayzPxh__lAiXBYpa7z9Zi_M,931 +torch/include/ATen/ops/_sparse_mm_native.h,sha256=d3V6xm7lHAJkmdqWX_xPIWJ0THmO30EP6qvy-Ep45GI,641 +torch/include/ATen/ops/_sparse_mm_ops.h,sha256=-Eej840SgQyy-1zkjAd5iXDt-7kBG2JL68h5N6PcJ10,1781 +torch/include/ATen/ops/_sparse_mm_reduce_impl.h,sha256=MuyBZ9s_gfjPnha4Hu-YrzbFrwrA3L8iuTL6bNMTMjI,835 +torch/include/ATen/ops/_sparse_mm_reduce_impl_backward.h,sha256=zOyHb7o_GBoxZemrVbefYtY_ACdRRpNWOcmYGsrMY4U,1051 +torch/include/ATen/ops/_sparse_mm_reduce_impl_backward_native.h,sha256=xjTmSV36qXzud8hBvl-5Nph0fVbbp5tTFsxLD2nev30,705 +torch/include/ATen/ops/_sparse_mm_reduce_impl_backward_ops.h,sha256=99q5X-NNgfBZJI0VpSNT7cER1GFGEdOmPMOfL7xr8yI,1589 +torch/include/ATen/ops/_sparse_mm_reduce_impl_native.h,sha256=KbbOSs_RA9nF0UUsVVEaXY-h9Li4LQtW_T_3iNAKijk,604 +torch/include/ATen/ops/_sparse_mm_reduce_impl_ops.h,sha256=koUal_xTxnKVxBWZOZOauhNrpQY7oQDXdgXWdCqoHpw,1261 +torch/include/ATen/ops/_sparse_semi_structured_addmm.h,sha256=OpuqQyge1z-lnoBr-bV6CttnJvvppzxfPieTre1y2Lo,1085 +torch/include/ATen/ops/_sparse_semi_structured_addmm_cuda_dispatch.h,sha256=BI2xROQrCCcBtc1wfBWxP7qcaCxxrgHafiqVFgIPoDU,962 +torch/include/ATen/ops/_sparse_semi_structured_addmm_native.h,sha256=TiQty0WBpGPxMgpKAWQmuGtZUiLMeE3dtROxchiZcnM,714 +torch/include/ATen/ops/_sparse_semi_structured_addmm_ops.h,sha256=ObnvenpHHhHG3ok-njJZON637XlAdXQThVxppN2AqS8,1621 +torch/include/ATen/ops/_sparse_semi_structured_apply.h,sha256=WnrhMY7Y646InIRShNXVh7UpPR7PdQaUs5B_xWsSf9A,842 +torch/include/ATen/ops/_sparse_semi_structured_apply_cuda_dispatch.h,sha256=8kYwnBAL12xaXpHkJgKqxG7g0lcsCrSGlqHTlC7Y80M,827 +torch/include/ATen/ops/_sparse_semi_structured_apply_dense.h,sha256=4OjrnOUZQY_SfXi8cJYN6eJQppFR61Lhsz8CwKdcFgA,831 +torch/include/ATen/ops/_sparse_semi_structured_apply_dense_cuda_dispatch.h,sha256=RUV5HDeYk2gXocOnqJe_gwuBoROrxt7s7uguzm1fyfg,808 +torch/include/ATen/ops/_sparse_semi_structured_apply_dense_native.h,sha256=LMGDvGk6EH5cjL-zXfZ7UmgHz083EphUEHGMpAFaFvQ,560 +torch/include/ATen/ops/_sparse_semi_structured_apply_dense_ops.h,sha256=yJN5pPeplttAwQB_qM6EHw-I_Dyg70WHpxWpGTVI_as,1159 +torch/include/ATen/ops/_sparse_semi_structured_apply_native.h,sha256=S9ViNOrM1mbIyjNOaT25ZnsJk8eaWkAarym0E3QcKuQ,579 +torch/include/ATen/ops/_sparse_semi_structured_apply_ops.h,sha256=8sTwnCnpfD5KRLmlcV-oewM_XJ3wzylvk7y4rDb1vy4,1226 +torch/include/ATen/ops/_sparse_semi_structured_linear.h,sha256=r1I2sXDK_8IshDCm1BQI4zQU412L9vO5qmsdISzbMbs,1102 +torch/include/ATen/ops/_sparse_semi_structured_linear_cuda_dispatch.h,sha256=amPkDOHCJ-GHCt_9eGZhBVNgH3w8KdgYQYNptdrXU14,986 +torch/include/ATen/ops/_sparse_semi_structured_linear_native.h,sha256=USG3qpBgqlq39WsRjJnmB_zzF13gBO5AimrZH52bJHU,738 +torch/include/ATen/ops/_sparse_semi_structured_linear_ops.h,sha256=K_vk6TstCVrv6hUeyc9Jw0bXmpbfWHxXQ5DQtDWp7Gs,1648 +torch/include/ATen/ops/_sparse_semi_structured_mm.h,sha256=47k8_Eyoo-DEZyxh93CHhzPQbED_c2wg32GlIE5miW8,927 +torch/include/ATen/ops/_sparse_semi_structured_mm_cuda_dispatch.h,sha256=WXy13Roq_AG2IajteOWOJX8LjcLOyZFH2dHg8SnwtzA,878 +torch/include/ATen/ops/_sparse_semi_structured_mm_native.h,sha256=sIcvXxwx2CoFtb-r2eg0fVQCXBb59HL8wVhcbCNBoL0,630 +torch/include/ATen/ops/_sparse_semi_structured_mm_ops.h,sha256=S_yFHewsU3c_6LJlIzYUEzhGLFiE6PcvprBMCDa3w9c,1353 +torch/include/ATen/ops/_sparse_semi_structured_tile.h,sha256=SCwsB6AmVWetA-1XKwEdgX7RUYHM-Drv0X6V1JECDrY,946 +torch/include/ATen/ops/_sparse_semi_structured_tile_cuda_dispatch.h,sha256=5oI682P0DPsCqmbvGPFiGzZAZUp8nqjBCidohXj97M4,880 +torch/include/ATen/ops/_sparse_semi_structured_tile_native.h,sha256=-SFQTsn14Z2nJxBNAhjm88NXzQQhbT8UGEfGD3s0Cxg,632 +torch/include/ATen/ops/_sparse_semi_structured_tile_ops.h,sha256=c64z_wJNFtRmdsuQtoz3DJExQ-sGFZIji8U8S_25tN4,1398 +torch/include/ATen/ops/_sparse_softmax.h,sha256=ByaF4sKwdeYqKDJbveA56nIPcSQW5DFpGOV0JnN1Bac,1972 +torch/include/ATen/ops/_sparse_softmax_backward_data.h,sha256=WTNe_vfS_acL1gLqeg014kBe_zq9S8VtK2rWTYle-qA,1699 +torch/include/ATen/ops/_sparse_softmax_backward_data_compositeexplicitautograd_dispatch.h,sha256=tJtTxLguHX-vITr7GcElLGeGPZf9bwkERmpTM8vxbWM,1081 +torch/include/ATen/ops/_sparse_softmax_backward_data_native.h,sha256=Ab0RkrIw_VyXqygdVXl7jr8LIbRKLM7NLwv0RqfkzIo,913 +torch/include/ATen/ops/_sparse_softmax_backward_data_ops.h,sha256=6li9uX-J2FbRGGH4bpkNYKNhUX5D_UB3BlAc1WnA18I,2175 +torch/include/ATen/ops/_sparse_softmax_compositeexplicitautograd_dispatch.h,sha256=6zvPrdFF3Ek3xC7d_C0sTFBLzg_NLByXAlMTfZA-HAk,975 +torch/include/ATen/ops/_sparse_softmax_compositeimplicitautograd_dispatch.h,sha256=cRr9x6RL-HiwoH5ZaQEvTbri19nAGKwrKC5I6nTvKNI,998 +torch/include/ATen/ops/_sparse_softmax_native.h,sha256=pJZA9DkcgrjKWJiWXRdS-JkZqXwIxhz49Us_abbo6aU,1030 +torch/include/ATen/ops/_sparse_softmax_ops.h,sha256=h6VwPw4RfNzf-dtfROAvVHhLRK5qXdOYFvhoOwItAlw,3324 +torch/include/ATen/ops/_sparse_sparse_matmul.h,sha256=lRdOLwIbHUnzKZK7TVHmPhy3o2T3dC5BLZtZE3gTpoY,1334 +torch/include/ATen/ops/_sparse_sparse_matmul_compositeexplicitautograd_dispatch.h,sha256=B8dQcFiWfvp_VT0BWj9Jr1IRiPeQ9tltYwGMu2THDRY,973 +torch/include/ATen/ops/_sparse_sparse_matmul_native.h,sha256=OIwtvwtFuKGiEXFH0xZwsSx8W2huaSAv0Wfcvzlwmzg,761 +torch/include/ATen/ops/_sparse_sparse_matmul_ops.h,sha256=M-VaXR0wNfvKElA7fEiZ8WKZzgE1C0qBRqbVbLI11nE,1825 +torch/include/ATen/ops/_sparse_sum.h,sha256=mXs2cq0PvN_3FMpRlgbauBgn6gtjjw3zxQhhMsgsjCM,1866 +torch/include/ATen/ops/_sparse_sum_backward.h,sha256=Df75zB4XS2__xtMSNu6GJYtRJWu9Jpo0JwECv7jWy1c,1426 +torch/include/ATen/ops/_sparse_sum_backward_compositeexplicitautograd_dispatch.h,sha256=abvZ-TD3riT971nlXuoYLVXuG3SIc0f5yAUakhl2368,1011 +torch/include/ATen/ops/_sparse_sum_backward_native.h,sha256=HX8Ny2sHBHdVinRQTuB8OnRzJDLZHOsTDD4lBOLzNqw,820 +torch/include/ATen/ops/_sparse_sum_backward_ops.h,sha256=PdQDbJYzWK8SEqFxLCIg6Lqk8TWhx-lOXsPuOT2BDTk,1953 +torch/include/ATen/ops/_sparse_sum_compositeexplicitautograd_dispatch.h,sha256=05D-cMTs5xT7JGUwhtB3KZOtNRMSV7uvXhIMtuGTOgc,1024 +torch/include/ATen/ops/_sparse_sum_compositeimplicitautograd_dispatch.h,sha256=JiAGRiZ-83JjLZkL1tdTdrpTDvAjDOn2P0VzxwyoYKM,977 +torch/include/ATen/ops/_sparse_sum_native.h,sha256=bwrn50bgnA1sa5qlFbMybSUzMds2cJbvTaFuSdoASFc,877 +torch/include/ATen/ops/_sparse_sum_ops.h,sha256=m9yn30UNhhfSiBLq8p_3HvUSoLbVSONrjsm5eMi0l4E,3615 +torch/include/ATen/ops/_spdiags.h,sha256=OCS07GnNQV4bSKOf1BoMkbmthYGNUMo5dBThovXFgRM,1621 +torch/include/ATen/ops/_spdiags_compositeexplicitautograd_dispatch.h,sha256=rbseLJ5kCyYEdHgry09i9ZPM5W5QGnFiATF4WOby5Eg,1094 +torch/include/ATen/ops/_spdiags_cpu_dispatch.h,sha256=8XTp063BgbUE--CkDfYRESUt9iaTxmiiK_uqYomOG6Q,852 +torch/include/ATen/ops/_spdiags_native.h,sha256=8adqKjUCAKX_x8UJ7_DAGUuFu9aIvCZnzQgJOPLOsvs,778 +torch/include/ATen/ops/_spdiags_ops.h,sha256=r1YBdGbwaN-MXhPAowa2zALb9mFPk9o-w_S1YcLvvzQ,2185 +torch/include/ATen/ops/_spsolve.h,sha256=atFFYcSRKZHiCo0jCpbCWPmSq1CWEPGJAhdMrKdY1So,719 +torch/include/ATen/ops/_spsolve_native.h,sha256=gQbMW0mLmPwkijsvf2J4xbjUZlRHQyaEiEOEDZt8HaI,550 +torch/include/ATen/ops/_spsolve_ops.h,sha256=vWly5Z0SEW4E9v5zBcbrdkykBqLoPTWJFBWeosNG4wg,1080 +torch/include/ATen/ops/_stack.h,sha256=z6TwMfz2iLelKuYnz01n4zkk1c4QGMcNVY0arIQxZ-g,1155 +torch/include/ATen/ops/_stack_compositeexplicitautograd_dispatch.h,sha256=akeMUmb7XjXuv2ywqLjpGQ09LaQcZG_V9ahK674Qas8,986 +torch/include/ATen/ops/_stack_cpu_dispatch.h,sha256=wLS5eXTdh5JE6d2f3A4JekqG-HHjyc5gnd-cECVJh6k,942 +torch/include/ATen/ops/_stack_native.h,sha256=1nYYxmRvQaS4R3gQYs7cgeIj1Sg286g7ragzObJ4g6Y,770 +torch/include/ATen/ops/_stack_ops.h,sha256=6ZK5uCQEYb7eNujJTP0cMLlswVwxM7oexAnKjm93wDw,1653 +torch/include/ATen/ops/_standard_gamma.h,sha256=lehQSvzPSCMGB43F53vy9sVi780ZHYFCM6WBOjQn710,1403 +torch/include/ATen/ops/_standard_gamma_compositeexplicitautograd_dispatch.h,sha256=cwS65LOPPY3V9Sj5jdZxomHzhydy0DxOGYm84aL1hfg,1008 +torch/include/ATen/ops/_standard_gamma_cpu_dispatch.h,sha256=fT6vdOOPs1hR70IcZ9_m29kniUcVxheQbDdRbRYYOCE,809 +torch/include/ATen/ops/_standard_gamma_cuda_dispatch.h,sha256=sr-WOQ4Va_jmXzAkniiAt2DOud6kYJ2LJzoXd_kuuIo,811 +torch/include/ATen/ops/_standard_gamma_grad.h,sha256=8f62OScsqIcGwGogmncndB3jN0g7ANH3PTRAV96ldQI,1333 +torch/include/ATen/ops/_standard_gamma_grad_compositeexplicitautograd_dispatch.h,sha256=ay3mewn6Kn5PNl_OOJ0xTC-7yCU0kMANPwImQTJaHr0,973 +torch/include/ATen/ops/_standard_gamma_grad_cpu_dispatch.h,sha256=kdHScbqofZMJQFMumnj-dixJ3vLxGoa5H54nipk8M5k,784 +torch/include/ATen/ops/_standard_gamma_grad_cuda_dispatch.h,sha256=jUwz2rKzW5LAhL9pdtHdp3Vv8B_LLFT3IAw7Da_QX0A,786 +torch/include/ATen/ops/_standard_gamma_grad_native.h,sha256=kI9-wBLsomSLd66m99_rJPf-v6qI5lix8T4LzgFSJEE,763 +torch/include/ATen/ops/_standard_gamma_grad_ops.h,sha256=1-8UvmOFcBRGlFaBVFmdRQLsw70pJldGiBEx6NI4UEE,1825 +torch/include/ATen/ops/_standard_gamma_native.h,sha256=eR8-bdhH9zW_cvyMEF0HHYdUXN41R5yOnbpGeqUpCds,809 +torch/include/ATen/ops/_standard_gamma_ops.h,sha256=YF3C-n_50v_ougKrJFlH9pzvWtXSBZqIXY_0iXzoL6A,1903 +torch/include/ATen/ops/_test_ambiguous_defaults.h,sha256=FKMijH_G1LZR1v2mynI9HOmKzo6w5gOy0sqFtl5zHkI,1031 +torch/include/ATen/ops/_test_ambiguous_defaults_compositeimplicitautograd_dispatch.h,sha256=lbV5ApVqzNPaIyx4qi-6EWTj8q_Lp4PH4QmyirmXEYU,937 +torch/include/ATen/ops/_test_ambiguous_defaults_native.h,sha256=w6Qb4W84CdYK1H-ZYG2OX2clLT382FuEN5fNqXi6nHk,653 +torch/include/ATen/ops/_test_ambiguous_defaults_ops.h,sha256=iFYYMdE37Mm6KWLhEYEXJ7Yo6wYoDgsfb7DRgbLkWro,1788 +torch/include/ATen/ops/_test_autograd_multiple_dispatch.h,sha256=t80aWxtGeJJY_DAuYeD7ZU4bAC7wNnebjPwNHBPLpJ0,1632 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_compositeexplicitautograd_dispatch.h,sha256=Hb2TALfqnG3nCz8g3XPzkDzrf668hgiDGfp5-Pc4IXI,1024 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_compositeimplicitautograd_dispatch.h,sha256=aTgITMF1Ic7Ogwoe_utobgRVmNO_18eK3EktVmGlCq4,821 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_native.h,sha256=hDqaxkESQaM25oGoGgjC1KWFa4rYluj-ToE6pkne6i0,750 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_ops.h,sha256=wWGd7FXBz28UaceMxFZz2cRIjA6MC_60TfBJ2aSon_s,2435 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_view.h,sha256=Ko1SKU70h9qjblrTmUV2Z1ZmyjsZOlGfiwFHpH7Fzyk,774 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_view_compositeexplicitautograd_dispatch.h,sha256=T8Jkg49OOHPewIPkqBs9L8y0jYWIutTwdfi7b5mp9W8,818 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_view_copy.h,sha256=kK-TWU0xw5R9bou5spgVS_ONm70Jh4CH9ABtIW3zjS8,1403 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_view_copy_compositeexplicitautograd_dispatch.h,sha256=38_VAi0T86Zbsl1T8guRKLarDCZ-90_r9LMSHhVvq5M,963 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_view_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=GswrOWUgk30YjcVvpBUWw5XUnLS7DSHcV1DLnLiTPOU,849 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_view_copy_native.h,sha256=hx4rcTHE2PNALQXnJgSy3zKXcnFlWz3Lh9rkX5jrp8Y,648 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_view_copy_ops.h,sha256=ZEHvB-Zn7bUiXkPXIcT7WFF1NNf9oZpWtJ0oUeV8mWM,1779 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_view_native.h,sha256=Us9PMaAB-Fb-W4Gab9ZHr3oDMwOd67ZZ6_GBFBlsvNg,528 +torch/include/ATen/ops/_test_autograd_multiple_dispatch_view_ops.h,sha256=yh8AHCbnMAe7tPYKSM99hbsjei7n6LNBO3Vo2iLgCVc,1061 +torch/include/ATen/ops/_test_check_tensor.h,sha256=y6a0jJmWdfUjIEPsXZD9qIL4LgXLkNaiHClv6r57qhk,692 +torch/include/ATen/ops/_test_check_tensor_compositeimplicitautograd_dispatch.h,sha256=EzWc3pxBc9xwMIyUitmXI6BRX9Eu072YuO7y8_sefd8,799 +torch/include/ATen/ops/_test_check_tensor_native.h,sha256=4zalP-_JXKh753gq-RH3MvUbWwFOfTZw40qZGf0XiRI,509 +torch/include/ATen/ops/_test_check_tensor_ops.h,sha256=3a4QpXknm1q7km6zGFXr3LcrPuvHEMxtJ_E5ESSArNQ,998 +torch/include/ATen/ops/_test_functorch_fallback.h,sha256=doW57D0iMhNJSm4Fj2UZwe2HZlkZTU-9FJBuTBC-MI4,1364 +torch/include/ATen/ops/_test_functorch_fallback_compositeexplicitautograd_dispatch.h,sha256=6XmxuB_l0ER5t5Z8GGur5rrW4Kmh3m18Ob5b3kCHBr4,979 +torch/include/ATen/ops/_test_functorch_fallback_cpu_dispatch.h,sha256=h3Me7F1VwAp6qpEzH7gNmG4ULN9HiP-Lxr4_anHnvVY,787 +torch/include/ATen/ops/_test_functorch_fallback_native.h,sha256=7qocT_jdUM72U9o5cs6mZenGaZCWTgcuqfaiA6-kl-k,664 +torch/include/ATen/ops/_test_functorch_fallback_ops.h,sha256=BKmkMQ8NIZJswQoIUxlfA8NK4odydn1J5MwCNpxncS4,1843 +torch/include/ATen/ops/_test_optional_filled_intlist.h,sha256=Qudtor5CR8b4eJfM8kS2S5TVKVFQGod6TXxn-flCBbk,1468 +torch/include/ATen/ops/_test_optional_filled_intlist_compositeexplicitautograd_dispatch.h,sha256=-m8oALEcvSTu6AT6Q76XXTHwWcP7gr0UVj-g52cTGaE,1007 +torch/include/ATen/ops/_test_optional_filled_intlist_cpu_dispatch.h,sha256=Ikfwc8hgdp28yJwWI9EsWTpzvArgXAo9THeGGLx3N-U,801 +torch/include/ATen/ops/_test_optional_filled_intlist_native.h,sha256=j3dPNQBtnpRXjUNcFuDzpm55hmRUXxjoBaKer9WyFv4,685 +torch/include/ATen/ops/_test_optional_filled_intlist_ops.h,sha256=CouEnDBpnnAvQRgJaVO0vn6OriTe19g525g8A1Y3TIM,1929 +torch/include/ATen/ops/_test_optional_floatlist.h,sha256=6Z45QJlrkm1hnCKM_lpmbmmWM-ix3r9IDL7Kk4MG5iw,1463 +torch/include/ATen/ops/_test_optional_floatlist_compositeexplicitautograd_dispatch.h,sha256=UXJSzTZVOKi4VL5z-YQtOcFgsVBDOjuXZQnkeQqIgEE,1025 +torch/include/ATen/ops/_test_optional_floatlist_cpu_dispatch.h,sha256=UTn4xAEjR4iPOK5FITWQcztwgsq_VO8qE_LHxAb_ibc,810 +torch/include/ATen/ops/_test_optional_floatlist_native.h,sha256=F361sKixryFkT6naYs9GzJaSSYrlSGTcg-DQFTpE4YE,710 +torch/include/ATen/ops/_test_optional_floatlist_ops.h,sha256=JLRkj4lWyRsDhsdVFemQ8-fR5kgZVCKHbFCF3B1hvOs,1985 +torch/include/ATen/ops/_test_optional_intlist.h,sha256=bnxKFUVUqWuWXK0EEwaTdM757CFqz00z9ZkYcbDNRs0,1395 +torch/include/ATen/ops/_test_optional_intlist_compositeexplicitautograd_dispatch.h,sha256=KwRih7XmNG6qQRT5ev8SkOSa36xFiEn2PC3bn1IxSBw,993 +torch/include/ATen/ops/_test_optional_intlist_cpu_dispatch.h,sha256=_559kE083pRrstKGSUSYCE6hAY0jLsD5LUellOSpZq0,794 +torch/include/ATen/ops/_test_optional_intlist_native.h,sha256=2bsMJz8IwoHpKsvC60tiQCfKS6miOuKfturuO_tDZjo,678 +torch/include/ATen/ops/_test_optional_intlist_ops.h,sha256=t81icbKPMX3xi-mXrMpz5HLmnjgstjtvqL9WiiLUDj8,1885 +torch/include/ATen/ops/_test_parallel_materialize.h,sha256=f0LdaO-58Co3C3-oMbpjWEArGLXa1kcU2KQzVNAEjO0,836 +torch/include/ATen/ops/_test_parallel_materialize_compositeexplicitautograd_dispatch.h,sha256=TCzeh1rtzCO4DPc9VO8TvY9a_yP4ylqYsARFZT4VunY,852 +torch/include/ATen/ops/_test_parallel_materialize_native.h,sha256=HofiSlfBCroxghgXTrCXEICKwx-Iask2PKfgZX0NahQ,562 +torch/include/ATen/ops/_test_parallel_materialize_ops.h,sha256=3fCneNy4X2EarCJzP3GjF2vH6z9qnSLVKThDSQlTmpY,1156 +torch/include/ATen/ops/_test_serialization_subcmul.h,sha256=7L5CLdi7cm0vA_F5150OeIbgzPcvj2C1eFrhTC-5rXg,826 +torch/include/ATen/ops/_test_serialization_subcmul_compositeimplicitautograd_dispatch.h,sha256=az34ikhVLSaY_Y4X_1mptmSxCxHIliSmsaS1DTKM80c,862 +torch/include/ATen/ops/_test_serialization_subcmul_native.h,sha256=tpPDSsMyA20KJVgp_7Nuy4mw8xugihSERzTSq3vRnFw,572 +torch/include/ATen/ops/_test_serialization_subcmul_ops.h,sha256=pugPy-okdUlkycMV6e3tn3QvRRZSbgWAfCqmvkuokms,1199 +torch/include/ATen/ops/_test_string_default.h,sha256=swMMKabLWey6UliKfZEOY47pxoQI1e0JUgezRynDrVo,795 +torch/include/ATen/ops/_test_string_default_compositeimplicitautograd_dispatch.h,sha256=9rCIEdNBzF6tYB1odbpUyd5LY9KCR6IlfduI9l64IBE,858 +torch/include/ATen/ops/_test_string_default_native.h,sha256=FutEvcEeI-lsSgxExibJKpt99RG37I-D889bX7mlWoA,568 +torch/include/ATen/ops/_test_string_default_ops.h,sha256=atjaVOfC-TO2CiVh4ioTNeR5ipfY8QV8kUAASSBxQSE,1163 +torch/include/ATen/ops/_test_warn_in_autograd.h,sha256=F8iQ_ykPvAGFcEx-jcRIM-gGJYQ_fgI2r3-ob2NUylg,1203 +torch/include/ATen/ops/_test_warn_in_autograd_compositeexplicitautograd_dispatch.h,sha256=dro6vjGea8plVW8GWU5uMvOsXZfwZ9odz2wlCwtMtXs,994 +torch/include/ATen/ops/_test_warn_in_autograd_native.h,sha256=YTU6mOoCVzIEIULm4YecfG0clKPJwduZrbkdOxON9y8,608 +torch/include/ATen/ops/_test_warn_in_autograd_ops.h,sha256=IpgzBBzUTR4VEEjqGEOhe1cvFyNbxTn-b2YwG26BFd4,1659 +torch/include/ATen/ops/_thnn_differentiable_gru_cell_backward.h,sha256=s5QUjThTdR-yLvmIig4OPGca7Hmvt_MGBqms0PYegkE,1207 +torch/include/ATen/ops/_thnn_differentiable_gru_cell_backward_compositeimplicitautograd_dispatch.h,sha256=H4I9K2i5__CpLeYFPqXcv5UZm6DB-ptu8pTul6ugQj8,1065 +torch/include/ATen/ops/_thnn_differentiable_gru_cell_backward_native.h,sha256=51K1r13Jx4U20r4GDHHoh_Z-OXSDg2Spz3IAudvG7hg,775 +torch/include/ATen/ops/_thnn_differentiable_gru_cell_backward_ops.h,sha256=8X6FLJoeeSUxEFA6O0WyOR_aDuCIDiBwVQHQcxsJ3ms,1872 +torch/include/ATen/ops/_thnn_differentiable_lstm_cell_backward.h,sha256=QxmXEXjrUQqIRZIossFOQR-f_TCCxV3muN3HismCUOw,1338 +torch/include/ATen/ops/_thnn_differentiable_lstm_cell_backward_compositeimplicitautograd_dispatch.h,sha256=zfXwqdEUB81oiv66dGsJoJKYX6hRTLmvPrXm4wrZRjI,1151 +torch/include/ATen/ops/_thnn_differentiable_lstm_cell_backward_native.h,sha256=2w47Qwn9kVCPd-LSHLh7MJHaDFlWTe7gGxewWgryErA,861 +torch/include/ATen/ops/_thnn_differentiable_lstm_cell_backward_ops.h,sha256=fNioeUGJ0kNam-_svK1fJVHuKQjV2AvaRQeq8JDqMOc,2148 +torch/include/ATen/ops/_thnn_fused_gru_cell.h,sha256=l0uj8L9CY9Z0tSKjkkZmdIeYQb1hfHnGH3jn7_-dVvY,2302 +torch/include/ATen/ops/_thnn_fused_gru_cell_backward.h,sha256=MjZ2_ifXxsE51jiK-BPSWgQuzxRNbtQenHJh96x19RA,2263 +torch/include/ATen/ops/_thnn_fused_gru_cell_backward_compositeexplicitautograd_dispatch.h,sha256=fJBvcFNCA3qr5PfCOnGQdT7DOKL6JbVctsxBreIl4uc,1319 +torch/include/ATen/ops/_thnn_fused_gru_cell_backward_cuda_dispatch.h,sha256=bYhE5wQHGtazUaGXXpqVFIOrLb6_5uoNQyFkD5jTNO8,874 +torch/include/ATen/ops/_thnn_fused_gru_cell_backward_native.h,sha256=j9U4-1XiyGPZrhMmRKxgXA1-_o34uPdHKBDcMSBTOwQ,924 +torch/include/ATen/ops/_thnn_fused_gru_cell_backward_ops.h,sha256=uJKd6q3Nu8DyVrH323oUqQdL0_GsHlf0XV8YWw_Fl1Y,2752 +torch/include/ATen/ops/_thnn_fused_gru_cell_compositeexplicitautograd_dispatch.h,sha256=5Khrk2Oca8jVaY0lznTX6kJE-uITIqrashbZIipxcH8,1339 +torch/include/ATen/ops/_thnn_fused_gru_cell_cuda_dispatch.h,sha256=jgR0K4lywIwb7Cq3wOdai4gTZirlSNug1TY-i9IViso,950 +torch/include/ATen/ops/_thnn_fused_gru_cell_native.h,sha256=Kc0wm7m1sDuJAsYIbrU8NAZ6c3BTZXJaZHtySM9U-tA,1007 +torch/include/ATen/ops/_thnn_fused_gru_cell_ops.h,sha256=9krKIkOcOPspyc_h71hP5JeRWKUQDHTK0WFbcyW83Ew,2947 +torch/include/ATen/ops/_thnn_fused_lstm_cell.h,sha256=tBddk5v12KxAqKeGirN0AVRdUVZ7uOhJ6TxmRw3KUhQ,2465 +torch/include/ATen/ops/_thnn_fused_lstm_cell_backward.h,sha256=MkLwDq5QOqsaBVOhVDvo2lMDsKq6w8b_WKvKdM7MhQ8,1105 +torch/include/ATen/ops/_thnn_fused_lstm_cell_backward_compositeimplicitautograd_dispatch.h,sha256=c6f0Q-ZINzU0e5HsYA0qOoAhXBLF4ldXyva_UMGzT7g,1025 +torch/include/ATen/ops/_thnn_fused_lstm_cell_backward_impl.h,sha256=l9qXKMz4vGP9qkZ5M9nwynxbX8DpXCysJuxwqBSNU7U,2512 +torch/include/ATen/ops/_thnn_fused_lstm_cell_backward_impl_compositeexplicitautograd_dispatch.h,sha256=b7uvMDZHVnsxjRPoQ2HN-MDE7m5vdNnVzNCTF8KzUAA,1419 +torch/include/ATen/ops/_thnn_fused_lstm_cell_backward_impl_cuda_dispatch.h,sha256=n3MGgXNzMCraUNoEctsLa1A85ClzIkVdZqx-9YUdKRU,966 +torch/include/ATen/ops/_thnn_fused_lstm_cell_backward_impl_native.h,sha256=lXvwojDcjgkIEDPtkJT_tKgCyPjjI1qsLRUtop_VnWA,1066 +torch/include/ATen/ops/_thnn_fused_lstm_cell_backward_impl_ops.h,sha256=FE_0kr8k_CKY4cxJllrc0G3cAea1KUB0ZMMk62D5Qng,3166 +torch/include/ATen/ops/_thnn_fused_lstm_cell_backward_native.h,sha256=bI1ulvaqC1aLCgod5LTON9yYZK0vcG5xMwNIu7N9q_4,735 +torch/include/ATen/ops/_thnn_fused_lstm_cell_backward_ops.h,sha256=OEpfnLu1iCY83E3wx2ZkPql45IWCqB18kNKw7Gkj1jU,1750 +torch/include/ATen/ops/_thnn_fused_lstm_cell_compositeexplicitautograd_dispatch.h,sha256=FJi3nn95HK8Y8cvZfaonXO8Ggsd_84uZeU1tAZYdJxs,1405 +torch/include/ATen/ops/_thnn_fused_lstm_cell_cuda_dispatch.h,sha256=fdkSN6fspT1qOX8wdvedlZqhmA0OgIH3owZKLPMiHTk,962 +torch/include/ATen/ops/_thnn_fused_lstm_cell_native.h,sha256=-H4k4MsoA36c0kPF7yoofI1KYCcNLGTsMsOWGxxUtDI,1052 +torch/include/ATen/ops/_thnn_fused_lstm_cell_ops.h,sha256=ETMKeigQ0lwenRE3DvD2hpFgur049i0P7Vp1o8cW_yM,3114 +torch/include/ATen/ops/_to_copy.h,sha256=LbWYR97azUVN4yq_q-c6sz0fAr4MbyFUONj3xslwzDA,2459 +torch/include/ATen/ops/_to_copy_compositeexplicitautograd_dispatch.h,sha256=dLoqngAuFwlog8GsmzFYpp66ricfZaZtIVutFLppamU,1498 +torch/include/ATen/ops/_to_copy_native.h,sha256=yd335QfOXU6PKHnSUuk7dmxnY17x5WG-vxZUqibiGA8,1204 +torch/include/ATen/ops/_to_copy_ops.h,sha256=9XP7iSTw8BEsr8DsdB-RStOwTDhJLsC_0X_VHVCfWhk,2543 +torch/include/ATen/ops/_to_cpu.h,sha256=0SUEdO6gZd0Br6ASAM9SZm6K3M4vyYCOdVpWC8TcXP8,672 +torch/include/ATen/ops/_to_cpu_compositeimplicitautograd_dispatch.h,sha256=Sg8jtKVY9SC9POO5xeord6t98meHMwGPM7V4PAS2FVo,802 +torch/include/ATen/ops/_to_cpu_native.h,sha256=EamW0i0j-8VAh4ixsPRfZHKcvwWdobz7aBYJmn6La34,512 +torch/include/ATen/ops/_to_cpu_ops.h,sha256=ElDRqSGCy1jQX3MD4aTtKNIC3ZVVVy8bPl8DsdIb-CU,1011 +torch/include/ATen/ops/_to_dense.h,sha256=wA0R71J2exP1ftGnUeQJAcktOGwJZs8vhs-0-Qq9JjA,1238 +torch/include/ATen/ops/_to_dense_compositeexplicitautograd_dispatch.h,sha256=M6mWyTL2ckHTIFtBUjgG4VXKP-iKfqqdV8i18JjqqwU,1075 +torch/include/ATen/ops/_to_dense_native.h,sha256=2F4NBLR6MEOAPi9LGmjofRgcv9_OjbmdctNwJ3Lz6yM,1113 +torch/include/ATen/ops/_to_dense_ops.h,sha256=Oy5bVstzpJRhHtzdEwn4y8Zl_dZRXW0uoSVFIuATm4w,2085 +torch/include/ATen/ops/_to_sparse.h,sha256=nEMrXWxx2C7gwcenlgU8KPMVC_dVrk_B6f4moeoMfxA,1945 +torch/include/ATen/ops/_to_sparse_bsc.h,sha256=W16leAUlnsnjUB2eJlO5Ozh-c2SJsEzLQYQG8zin1FE,1222 +torch/include/ATen/ops/_to_sparse_bsc_compositeexplicitautograd_dispatch.h,sha256=NCYyJn0lb-gGLJibLeKeYw-lpqVKa5k2bxwuhtYB6VQ,1048 +torch/include/ATen/ops/_to_sparse_bsc_cpu_dispatch.h,sha256=p7eClLUtsPcE3vhRoteFnVw2XFJO5CX-SHCzapksgvo,829 +torch/include/ATen/ops/_to_sparse_bsc_cuda_dispatch.h,sha256=FnhpPy73W97JjjmCtZcj9D7IZtVhozlPD09pV3MqGl8,831 +torch/include/ATen/ops/_to_sparse_bsc_native.h,sha256=LAwrHhPv8HwdijUnUZh4eW9_UuMgGISVbVRNjuetDEs,1040 +torch/include/ATen/ops/_to_sparse_bsc_ops.h,sha256=_dv0597raD7nBmZURV-WuTk500dss7zcv2fManpW5H8,2027 +torch/include/ATen/ops/_to_sparse_bsr.h,sha256=NhsB8RlbD6-zPhTMdIY2yADZehXJ7GnDOD-beq5RYVM,1222 +torch/include/ATen/ops/_to_sparse_bsr_compositeexplicitautograd_dispatch.h,sha256=fd1vnI7iZyESkd9pbPhIGWMuoWsiGahnv71Jm344W5Q,1048 +torch/include/ATen/ops/_to_sparse_bsr_cpu_dispatch.h,sha256=g4It0_TuIl8oTYDDDosaoKvOx9HcC0JvZVpUSHchl4k,829 +torch/include/ATen/ops/_to_sparse_bsr_cuda_dispatch.h,sha256=b2KGgb5WddSP9ZoOz0eBMQnS6vZtUtnJT4OGsVjsLNg,831 +torch/include/ATen/ops/_to_sparse_bsr_native.h,sha256=pbRO2G59KoL1Th4VyVQRDU5z2xLYodU1g5FSEossuGg,1040 +torch/include/ATen/ops/_to_sparse_bsr_ops.h,sha256=Xkc624YgHcyK5waw7VAChsL0xxkH4t9j0m2FZBUpuWw,2027 +torch/include/ATen/ops/_to_sparse_compositeexplicitautograd_dispatch.h,sha256=6phNq8YNczJnM4gSscTxyi1Sq-j1DlcXKCfs7let8UY,1365 +torch/include/ATen/ops/_to_sparse_cpu_dispatch.h,sha256=Ru_XGpXYwYMAOV--JjPOWldWl7nhNYyHi5csRZyqjq8,978 +torch/include/ATen/ops/_to_sparse_csc.h,sha256=SnvaLq1YPUobZIvXa4-O2Dm9DVMUxQROLboqa5k4vwU,1110 +torch/include/ATen/ops/_to_sparse_csc_compositeexplicitautograd_dispatch.h,sha256=QMWV2TSHDJMPRzhyzrLndceSYS-yai0d8yJCoGaA6G8,994 +torch/include/ATen/ops/_to_sparse_csc_cpu_dispatch.h,sha256=10KPrtMvHJ7ub9p7ZNv7bKKNLKRONfHegVbtH_8_wbk,802 +torch/include/ATen/ops/_to_sparse_csc_cuda_dispatch.h,sha256=SQndfY0h-oBBSIS8zyUsyaOgQnYr5j9ZIkK0B1mz-6U,804 +torch/include/ATen/ops/_to_sparse_csc_native.h,sha256=HqTuFUgeRQlikDaBeEq8XeUESyrPUDscmhW0mbx1XxA,932 +torch/include/ATen/ops/_to_sparse_csc_ops.h,sha256=FWNR6lGcRlPj7fvMRJlN6hnhn90UvtDGWUpV4GRxXAs,1849 +torch/include/ATen/ops/_to_sparse_csr.h,sha256=hxmbqxCo2jnmhbv503hRAAZGkraqYEIsY7bRLjRhYxE,1110 +torch/include/ATen/ops/_to_sparse_csr_compositeexplicitautograd_dispatch.h,sha256=YOierIH8MIkMctmhk2hadw6_tGOjrG_C7_EDVa1X0PU,994 +torch/include/ATen/ops/_to_sparse_csr_cpu_dispatch.h,sha256=Ifqj8CJSckAq-aoT3kUZ6ZVgFojDol27-vWAOH3K-M0,802 +torch/include/ATen/ops/_to_sparse_csr_cuda_dispatch.h,sha256=4Q6gNqasS8M5ivktppDmtDOumCNDIehylvh__oUHcJU,804 +torch/include/ATen/ops/_to_sparse_csr_native.h,sha256=FL9PzFEhMEkXILiXOD_CpIjLhAn-K9vznzRNlh2B7us,932 +torch/include/ATen/ops/_to_sparse_csr_ops.h,sha256=m_5e6AA2S5HWAuQYwO05m9k2hXtWKkt79yFezDN0uXQ,1849 +torch/include/ATen/ops/_to_sparse_cuda_dispatch.h,sha256=5nOarLydXet7aS7P-aYCeHOuE6iM0SfMLlbzAvK5FDA,980 +torch/include/ATen/ops/_to_sparse_native.h,sha256=y29qFQdxNDURsgb_wbNFO7tFcWRMJk5oam0eFK_Nac0,1680 +torch/include/ATen/ops/_to_sparse_ops.h,sha256=bYpD16KgbGl4cofu2D7oiJL6H8sVu8D6Kplv3iThuac,3641 +torch/include/ATen/ops/_to_sparse_semi_structured.h,sha256=BTSuSCTT12_-ELKfdMaYYqyk37ScPZFHcblBbXRx9jU,762 +torch/include/ATen/ops/_to_sparse_semi_structured_cuda_dispatch.h,sha256=1Az6SOH3y7WqmkTv2_5yyWBbCLqHiITnx_rbj1RIoAM,791 +torch/include/ATen/ops/_to_sparse_semi_structured_native.h,sha256=KWxV-GPZD9-TKA9Q7Eu7V9FrOT818lWyBPmc2wmgQsE,543 +torch/include/ATen/ops/_to_sparse_semi_structured_ops.h,sha256=F2p-uCysGgUYCEm1BkVLXU8nLSOtQrDCMN9OvWkjzgA,1110 +torch/include/ATen/ops/_transform_bias_rescale_qkv.h,sha256=Jx4_Ig28H2pyHGbp1IQHCclp3wQbYrCk69p_bQCXQTc,1907 +torch/include/ATen/ops/_transform_bias_rescale_qkv_compositeexplicitautograd_dispatch.h,sha256=UzUwfsVshmfY49A0yrLb_PyxX4JDIfT6-TQ6ynBijQQ,1185 +torch/include/ATen/ops/_transform_bias_rescale_qkv_cpu_dispatch.h,sha256=39AtC41Bj562tF-g_1VDUeUNQEhrS29meuQif1yHRRQ,847 +torch/include/ATen/ops/_transform_bias_rescale_qkv_cuda_dispatch.h,sha256=DdwCIs51az6hROxfQPA7qyebVMF8dcmfwlrEaULKGu0,849 +torch/include/ATen/ops/_transform_bias_rescale_qkv_native.h,sha256=YPE3zoY8eZVptlWaUff-PwGAUB9_fo5coj-ek9mFB80,993 +torch/include/ATen/ops/_transform_bias_rescale_qkv_ops.h,sha256=PSmYTZgXJ1JXru209uEJsaBH0UxozM06lbCcULVv3g8,2410 +torch/include/ATen/ops/_transformer_encoder_layer_fwd.h,sha256=j3mfyRDme4qOwK1hrV5413FuXzoPZ0zro7QuYyH2CnM,4649 +torch/include/ATen/ops/_transformer_encoder_layer_fwd_compositeexplicitautograd_dispatch.h,sha256=5moQKYmfvEkMir7wUYu7PnIE2tQVGxuHtDN-Hy80zhM,2039 +torch/include/ATen/ops/_transformer_encoder_layer_fwd_cpu_dispatch.h,sha256=fWo4HSzh3I8y0TBeL1kFW8ecc2CZxFWDux4VX-W3j00,1326 +torch/include/ATen/ops/_transformer_encoder_layer_fwd_cuda_dispatch.h,sha256=v6M9AuO3IkgMm5C4q3aiF5eiv4hrdPLl_xHPYJ_cEYc,1328 +torch/include/ATen/ops/_transformer_encoder_layer_fwd_native.h,sha256=vC4lN7LiW18DZRBb4Dp4hzjYBTA6OuAmz47WnZWC2Ig,1727 +torch/include/ATen/ops/_transformer_encoder_layer_fwd_ops.h,sha256=lITalq46QRuad35uvq1ZN3O8LggNSArveFvZhwzhc7I,5253 +torch/include/ATen/ops/_trilinear.h,sha256=SY3OPbVmVdadnIU2jdc6YIbTILXwbB543izSqgIAPQs,2026 +torch/include/ATen/ops/_trilinear_compositeexplicitautograd_dispatch.h,sha256=UmNMMZD6vqDdSTjZUl397uM3Uqys-Khi10CoRwlQkqs,1227 +torch/include/ATen/ops/_trilinear_compositeexplicitautogradnonfunctional_dispatch.h,sha256=DyaiUYdDOH-0YVUjSyMHC0Ueb5VQQn4VSDQvnsnv9lo,982 +torch/include/ATen/ops/_trilinear_native.h,sha256=c19OowMiGl7OvgToWN7weIv3TtgxUbs9WgCNYUvki-U,912 +torch/include/ATen/ops/_trilinear_ops.h,sha256=vTUTyLsUkRpgKhM4Lv_XRu1QgWFsaXKx0WqSoptMwME,2667 +torch/include/ATen/ops/_triton_multi_head_attention.h,sha256=qe8B4iMpYU9YT69yFkontCny2grHL3qVbW3GXOWfYdY,2730 +torch/include/ATen/ops/_triton_multi_head_attention_compositeexplicitautograd_dispatch.h,sha256=0Lt3J0WoWIY1JakBGVzfmmii0WeJxELRI826VxJIrS0,1442 +torch/include/ATen/ops/_triton_multi_head_attention_cuda_dispatch.h,sha256=v0OrPTxXuChk_-sMCNm-ARBg9dbLo1jnHabmHrai4yk,1022 +torch/include/ATen/ops/_triton_multi_head_attention_native.h,sha256=D7P6jmSYw0orcKbPccWmrFJggpK1ul6yIy1N3Tzjuh0,1126 +torch/include/ATen/ops/_triton_multi_head_attention_ops.h,sha256=yooGEJ7NBsuMYQEHER03ctTZg-zkRv25FAIzj6g7FTg,3351 +torch/include/ATen/ops/_triton_scaled_dot_attention.h,sha256=fkqO8PcUQ9Fh2SqcYUVbu4cw0ZQtsy6AyHhuYUWg0IE,1604 +torch/include/ATen/ops/_triton_scaled_dot_attention_compositeexplicitautograd_dispatch.h,sha256=n06-EObUehPQ834BapksP87gPTPlKRvYRPkuNTYg_us,1057 +torch/include/ATen/ops/_triton_scaled_dot_attention_cuda_dispatch.h,sha256=4d-htzM832LknvpiA1X7HP1NGnQNVfgaNqAJKz5HmyA,830 +torch/include/ATen/ops/_triton_scaled_dot_attention_native.h,sha256=5X4pK02C9A2-MXENC5ZvquSUxv50PTunyIbpXyIdfHc,741 +torch/include/ATen/ops/_triton_scaled_dot_attention_ops.h,sha256=h4OOew9jtIi-Gdzyqw7b2xR_HpM0QJSmKpSm3RX1YB0,2103 +torch/include/ATen/ops/_unique.h,sha256=8gMN6ZeojWv2bo_9KgN8ZpULRe2erARGq6V4GSkzktM,1591 +torch/include/ATen/ops/_unique2.h,sha256=XKgPMD3mH5eQXmI3fiIPPN30157pfdLjuNq7KV1BJ8U,1949 +torch/include/ATen/ops/_unique2_compositeexplicitautograd_dispatch.h,sha256=AroKAfcwbLUkYA2qjklhriygVUd5BJp-VjejUgaD3cM,1178 +torch/include/ATen/ops/_unique2_cpu_dispatch.h,sha256=ts6KdUdiLnrvIxPGX1xPW0yeITyRqprcpNvqZaMB9Xs,852 +torch/include/ATen/ops/_unique2_cuda_dispatch.h,sha256=aJZLmPCYTAyIFXZmD29NrIXrjF880WFnuvVtWAuKing,854 +torch/include/ATen/ops/_unique2_native.h,sha256=PkOFvhepEVcqBXr7JB9lurnGA1vmso17g2JA9XAgjbE,993 +torch/include/ATen/ops/_unique2_ops.h,sha256=mTvV0tPFWpk48vmz7KogQQp5G9t4k8gH28pChLmH8js,2382 +torch/include/ATen/ops/_unique_compositeexplicitautograd_dispatch.h,sha256=_JRPYpFxBc6j7q_5VCSz2P7bglFQyGZPkQraoYYxN4Q,1066 +torch/include/ATen/ops/_unique_cpu_dispatch.h,sha256=7OWiY_UpVTSj-xdmBM4F_g3WkzLRd_daHn58mtmi9qs,814 +torch/include/ATen/ops/_unique_cuda_dispatch.h,sha256=vDfELk22kGYkt92LbLXVrrST06Rsn_xr6dWlgTNZOhc,816 +torch/include/ATen/ops/_unique_native.h,sha256=iVg-gs3T7NRZKbsRGzHoYy72B7I5BpFmrbhgVUSy1rI,864 +torch/include/ATen/ops/_unique_ops.h,sha256=dQahXb2S-NLP59M8wl3Mn-8AuFrynrKeSsu6SXET77A,2071 +torch/include/ATen/ops/_unpack_dual.h,sha256=dhcJYAUNcRGmZIh1pJG5eBHKkO5AHxjSUwDgtuBcg_o,757 +torch/include/ATen/ops/_unpack_dual_compositeimplicitautograd_dispatch.h,sha256=RKXGNtC-RsikFuqnh7_cGtglpY-bg9JLheICm9VU7Pc,833 +torch/include/ATen/ops/_unpack_dual_native.h,sha256=mXrX79PjuuQVqmT0hkVdu0MGGNEUBD6Yq4ebGuLKvC4,543 +torch/include/ATen/ops/_unpack_dual_ops.h,sha256=q6X4Xks92ep4-zaw2FbTLqWE7YStkUjfsjUE_ub97Hk,1136 +torch/include/ATen/ops/_unsafe_index.h,sha256=04nsCyXpz_efYbDlWcPKRmHTrQ36fae3fqGeuzOV9HA,770 +torch/include/ATen/ops/_unsafe_index_compositeexplicitautograd_dispatch.h,sha256=Kz2G-HoT85SCMjtWgyojxfwSAcdGXCldMugsb1vVTMY,850 +torch/include/ATen/ops/_unsafe_index_native.h,sha256=RqpQjnCLOj1U9pwYP-9b9BKRbzITpURYPzo-uxhHAP0,560 +torch/include/ATen/ops/_unsafe_index_ops.h,sha256=AaYaUqLbF8gwt-h9sOL19u4UMChd1BG0Nw5bllCV_pY,1182 +torch/include/ATen/ops/_unsafe_index_put.h,sha256=MR1Gt-_zyFYV0yP933q5Bo69kzuACzWz0b5DkR_WQtQ,880 +torch/include/ATen/ops/_unsafe_index_put_compositeexplicitautograd_dispatch.h,sha256=ZX0E9bKlsacF7k_Jh1K2bsoEAPBZ48CP-UIOiVRpMj4,904 +torch/include/ATen/ops/_unsafe_index_put_native.h,sha256=XuP1tWoCRw0yIYR4j6edBg4uZbMWX6K-GuWZO-TAH5c,614 +torch/include/ATen/ops/_unsafe_index_put_ops.h,sha256=c0BkE3lSjRwiUhPeQBMJFn1oVwnmxmnUyWFSDYRTNCk,1326 +torch/include/ATen/ops/_unsafe_masked_index.h,sha256=2ymXvBMFXaOVuRBhQuoq5N-QTq_90-fuAiQqwIKcrow,872 +torch/include/ATen/ops/_unsafe_masked_index_compositeexplicitautograd_dispatch.h,sha256=shuCLfRHW4Mi4rig-Xj0vCmjLZVgAUYOHmfPZVVmnD0,907 +torch/include/ATen/ops/_unsafe_masked_index_native.h,sha256=rbfC-kljGSX7olzDmVvKPQF8tXTkFNTsO_R9YlNRaEY,617 +torch/include/ATen/ops/_unsafe_masked_index_ops.h,sha256=Jzpo693l1akZ1keXASPt70dA7eon_Dfg73JX9ubObLE,1349 +torch/include/ATen/ops/_unsafe_masked_index_put_accumulate.h,sha256=hLKuY818YiyaipNQhruJ5o_oAlKNa_C21oWt_7GvBRY,938 +torch/include/ATen/ops/_unsafe_masked_index_put_accumulate_compositeexplicitautograd_dispatch.h,sha256=ePiAsHodug4gOPFOuI6ON3FjhcdTT4oFPh8bS8KNH_0,924 +torch/include/ATen/ops/_unsafe_masked_index_put_accumulate_native.h,sha256=VD6x-ElxoO00tGA-Up-B19TJQSxCyGTv6RVxmqQQGQI,634 +torch/include/ATen/ops/_unsafe_masked_index_put_accumulate_ops.h,sha256=mIieOVGsZYi0--zBLkPMqoYPaAWGLccHdeq6NXXsjHc,1400 +torch/include/ATen/ops/_unsafe_view.h,sha256=fRX2rjZjcH30fVzFP-28a7I33U5s_I4GLOwJb8V5cE8,3745 +torch/include/ATen/ops/_unsafe_view_compositeexplicitautograd_dispatch.h,sha256=3UMMTbQX6t-AK6eykVhlwl960F72Dw51ySq-hE30WPM,1361 +torch/include/ATen/ops/_unsafe_view_native.h,sha256=-3Hp_6lAljzZFQd2jW8GImYUWknL1dWXOX_fPfjvhzc,643 +torch/include/ATen/ops/_unsafe_view_ops.h,sha256=e9cIuo8CqDG0wDsbAeyVW-YjxtAnJWIizowtkdsFI50,1775 +torch/include/ATen/ops/_upsample_bicubic2d_aa.h,sha256=mYbjUtkB8zDrDXDx1RroNRSaNQwwIuL4Rj11bXhPOkg,8192 +torch/include/ATen/ops/_upsample_bicubic2d_aa_backward.h,sha256=dN1Yfx0WeGUWDHwhEE81NRtc3OX4hSGwcMvRZyq2IMQ,7876 +torch/include/ATen/ops/_upsample_bicubic2d_aa_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=qbQRDFBIhCXcnOFYALCU7aqjlvF9ekziCUGUkVdhheU,1297 +torch/include/ATen/ops/_upsample_bicubic2d_aa_backward_cpu_dispatch.h,sha256=yhP50ZrowNaONuzAP9bs1iVXQzeSmxjQRdmGybu60hY,2371 +torch/include/ATen/ops/_upsample_bicubic2d_aa_backward_cuda_dispatch.h,sha256=5TeZXqB0cT5RB_FMFsARwy_5rC0dNtdTP0bPmtIlkJU,2373 +torch/include/ATen/ops/_upsample_bicubic2d_aa_backward_meta.h,sha256=i4mMAs5Kcqtu5kCX0xdI62cjh6TkJ3krKuINupr4b_c,791 +torch/include/ATen/ops/_upsample_bicubic2d_aa_backward_meta_dispatch.h,sha256=rNANyxY5uUSc6SgkreeFvtNDwpAFdY7UFjrG11d1H9o,2373 +torch/include/ATen/ops/_upsample_bicubic2d_aa_backward_native.h,sha256=JGFAK8y2BdCmXtGjW0hGwnGIq2BiygYnGmOicyDNx7M,1239 +torch/include/ATen/ops/_upsample_bicubic2d_aa_backward_ops.h,sha256=bPvfJxpcr2E5xuyUgFG8WBYYsfyP3hBCyjuxPY9FAHY,2823 +torch/include/ATen/ops/_upsample_bicubic2d_aa_compositeexplicitautogradnonfunctional_dispatch.h,sha256=CRn1wdP0YYS8mlR3knEqtoyBYKVsbWCN3phyQS6Y8Eo,1205 +torch/include/ATen/ops/_upsample_bicubic2d_aa_compositeimplicitautograd_dispatch.h,sha256=0ZhSzHHimqipnw0kbnoHpEqvfYVE38MwnERVnYUf-yI,1106 +torch/include/ATen/ops/_upsample_bicubic2d_aa_cpu_dispatch.h,sha256=kIKqJPGrFeulhZBIvjygGza7446h6CVYDymyBjlQA7Q,2067 +torch/include/ATen/ops/_upsample_bicubic2d_aa_cuda_dispatch.h,sha256=bQX9rz98xpvTtp8EGhnbp3s6iaJ-VsvEmBPPTcLrFns,2069 +torch/include/ATen/ops/_upsample_bicubic2d_aa_meta.h,sha256=1O3Z1YDdMcltbIfBCnQrIxn4nLO8eFwBlQhHHvnPSpk,741 +torch/include/ATen/ops/_upsample_bicubic2d_aa_meta_dispatch.h,sha256=9gZl58wQnTyj5KXooiGqH-9B_YqaRFpOqRjBhSoVAU0,2069 +torch/include/ATen/ops/_upsample_bicubic2d_aa_native.h,sha256=PdvdLgkn78PESXgxrlig29Bg34UlDW9ZZwSRqYlqzqQ,1280 +torch/include/ATen/ops/_upsample_bicubic2d_aa_ops.h,sha256=uryZi1JsBcE6eZCXtdoZeBmMagSD5MxZcjky9ixlKU0,3410 +torch/include/ATen/ops/_upsample_bilinear2d_aa.h,sha256=YYrQZuJ-j5fMfMXLR9dapvN2wK8dYakLPcqDTHc1tq8,8233 +torch/include/ATen/ops/_upsample_bilinear2d_aa_backward.h,sha256=PnOif3gMNHqJYSFDALBJ5I1Dq1GrzcrkYrH1pSJYAmM,7907 +torch/include/ATen/ops/_upsample_bilinear2d_aa_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=IAMUREq1WELcn8LEjOCDqGdAo9ZwQEwcqWarubv4sFE,1299 +torch/include/ATen/ops/_upsample_bilinear2d_aa_backward_cpu_dispatch.h,sha256=SvebdTlN4PFe0AJr8v3gvtYJvulvQ3Us2Qu6_Ox2AXQ,2377 +torch/include/ATen/ops/_upsample_bilinear2d_aa_backward_cuda_dispatch.h,sha256=P2NVk6I7gAYyrDM8SpyLr5LTZB_qjENthNyT1QnA5I0,2379 +torch/include/ATen/ops/_upsample_bilinear2d_aa_backward_meta.h,sha256=UilsSzjP07oNsukr2iCInZcfg3p6UFfFlmNeU0_yt-o,792 +torch/include/ATen/ops/_upsample_bilinear2d_aa_backward_meta_dispatch.h,sha256=Akror947iiwADOJcjN-o8keOxY2wRHQ30yIVjWGTTM4,2379 +torch/include/ATen/ops/_upsample_bilinear2d_aa_backward_native.h,sha256=UnQ6LYycfk8jUFINKh1K6Z4w8HtTS4zTxFkrqm6k6Q0,1244 +torch/include/ATen/ops/_upsample_bilinear2d_aa_backward_ops.h,sha256=pNeGXMGkHz_yuI3yCfwURRgZygwb7lZVRu8pjm2olBk,2829 +torch/include/ATen/ops/_upsample_bilinear2d_aa_compositeexplicitautogradnonfunctional_dispatch.h,sha256=dcdk3-sPjLP-BQ4EkganxZAeokKfiHSs_lqHbnMzO7k,1207 +torch/include/ATen/ops/_upsample_bilinear2d_aa_compositeimplicitautograd_dispatch.h,sha256=xkU0zRQ5fqdy_8zJJcGXsXsYstDS3grT_NW63nAKdKQ,1108 +torch/include/ATen/ops/_upsample_bilinear2d_aa_cpu_dispatch.h,sha256=VQT0Vi3FiBK2QNLUMLrsK7ncCik-h7VcNP-Q9NuRxjw,2073 +torch/include/ATen/ops/_upsample_bilinear2d_aa_cuda_dispatch.h,sha256=JD3FnPPh_18dMJWOkHoMkbHxoNWLchkLtKFCkhY3EF0,2075 +torch/include/ATen/ops/_upsample_bilinear2d_aa_meta.h,sha256=KTeZzjPJt1CethVV3_yOUracC6_qSAbnsZAkoBqjU-A,742 +torch/include/ATen/ops/_upsample_bilinear2d_aa_meta_dispatch.h,sha256=01m_n5waYHpEE3VZuOgX9RZZ3NqNH4gJxEx_pEl2PLg,2075 +torch/include/ATen/ops/_upsample_bilinear2d_aa_native.h,sha256=fwmuglcgVqTB-tWmZmBDRp_L4yePObhFBDPK3zvtf2k,1286 +torch/include/ATen/ops/_upsample_bilinear2d_aa_ops.h,sha256=c-N2I-IduOdgxXHbZgXv2CBWOViLDfUi1JvCH6zMlOc,3419 +torch/include/ATen/ops/_upsample_nearest_exact1d.h,sha256=w1uukWkAuyg3WAXtnzIwTVAyUm2K6RK1hcRKIxiZptU,6755 +torch/include/ATen/ops/_upsample_nearest_exact1d_backward.h,sha256=WOMs5YTn_gMgrb6VXdptKTiYYwMf_LnyakPRE5-VJkA,6589 +torch/include/ATen/ops/_upsample_nearest_exact1d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=GU8KAX7OtZ0GAHqRvG2WedRxHq5TNtjsOtTBB7wXqFw,1161 +torch/include/ATen/ops/_upsample_nearest_exact1d_backward_cpu_dispatch.h,sha256=u0H6-iZu1yraRxu34IMKKFPSH5TCEuJBzem4dsLTWfI,1993 +torch/include/ATen/ops/_upsample_nearest_exact1d_backward_cuda_dispatch.h,sha256=thuH9LMiLTuJDhrIw9jCEYllyjpT6v7CaR7XuFXyaQ8,1995 +torch/include/ATen/ops/_upsample_nearest_exact1d_backward_meta.h,sha256=QRFC-qwIP9sNlPzhYShFP8_wOwJWzG0GgBeqNdgPhrk,738 +torch/include/ATen/ops/_upsample_nearest_exact1d_backward_meta_dispatch.h,sha256=zQoSE6VCFJRbRqoqpFU6n_bOHXTDgcB0IVH2tD5-3Z4,1995 +torch/include/ATen/ops/_upsample_nearest_exact1d_backward_native.h,sha256=K-Enfv3RSAkgMX_bWFQl2gughNicjo8XkUZ_0l011wA,1142 +torch/include/ATen/ops/_upsample_nearest_exact1d_backward_ops.h,sha256=K1w1Pcv_vM0nV9o5dXqwU13MlViYDG2PyRZYNVBo45c,2467 +torch/include/ATen/ops/_upsample_nearest_exact1d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=hT1U8NgX1i-VjWiATXmcIbQJRqXRbnYvgDoxfjtcusU,1069 +torch/include/ATen/ops/_upsample_nearest_exact1d_compositeimplicitautograd_dispatch.h,sha256=F40VoYkzqpBjMcVhi7YUj2RyJe9Pt-OISNOtqqkZuwA,1072 +torch/include/ATen/ops/_upsample_nearest_exact1d_cpu_dispatch.h,sha256=TCG_yF7e8dfRTKgEBYPCiMCwZvWhKqVD1gmPOaQLV7E,1689 +torch/include/ATen/ops/_upsample_nearest_exact1d_cuda_dispatch.h,sha256=ZaF6cB2r2XVJN1LdhXsj4PwdGfN5EhBOZp6Ssb8TmsA,1691 +torch/include/ATen/ops/_upsample_nearest_exact1d_meta.h,sha256=W0qyugx9FKxjkGll_A9Dua80ekXGxd58tzHryYIzoMA,688 +torch/include/ATen/ops/_upsample_nearest_exact1d_meta_dispatch.h,sha256=qHVUbJ7vPipbz-K7gGyNC6ZMy1Gx9CvjzHTux5cSqXE,1691 +torch/include/ATen/ops/_upsample_nearest_exact1d_native.h,sha256=NS3YvdHQi48Tlu_dz0km9NlSbbyyGQDjvPnAJcybQ88,1166 +torch/include/ATen/ops/_upsample_nearest_exact1d_ops.h,sha256=xJLqup3It4RrlnIE3mYzUoL--xtZfQDP65BmSTtuPxM,2997 +torch/include/ATen/ops/_upsample_nearest_exact2d.h,sha256=8Olacy0rI5ANhSPFpGjOQRlgOUMMKmVHsI7iCq0kDQo,7595 +torch/include/ATen/ops/_upsample_nearest_exact2d_backward.h,sha256=hRG4Ho33EduWJbSK_jarxB_cJ523z385Zp9g84lXhoU,7429 +torch/include/ATen/ops/_upsample_nearest_exact2d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=oAsMerpmWRr3gLTb4FdrAgVxQdjyh2zzIcgYFykwag4,1263 +torch/include/ATen/ops/_upsample_nearest_exact2d_backward_cpu_dispatch.h,sha256=6P86CMUI_EHu9Agq8sahaTEQQXUTWJJnXvdmOdDmSIk,2269 +torch/include/ATen/ops/_upsample_nearest_exact2d_backward_cuda_dispatch.h,sha256=e0uvdvqf7LxQGLRRPburzWgPKgZYfWkWwv3BqOTZXW4,2271 +torch/include/ATen/ops/_upsample_nearest_exact2d_backward_meta.h,sha256=JbUP9GlCYPxN5eloxpmX2KzdzRXKMMQK1OpAZQzR_TM,774 +torch/include/ATen/ops/_upsample_nearest_exact2d_backward_meta_dispatch.h,sha256=d7_4ndCA2lb5UvPdDyII-phL7n1H4xSgWgNgFkbIGHc,2271 +torch/include/ATen/ops/_upsample_nearest_exact2d_backward_native.h,sha256=ZaL1Cdbm6MhnGHOVVPVOukmX9CkxVpvY1cFamIVEOoQ,1214 +torch/include/ATen/ops/_upsample_nearest_exact2d_backward_ops.h,sha256=WtZ9WSZotOns0hv0v13icg9uSI6BtaNoL5AyQa6vB5o,2709 +torch/include/ATen/ops/_upsample_nearest_exact2d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=YICzuyhokGatftpOpaL7QQM66_a-JTjYkGQz11Vpe_E,1171 +torch/include/ATen/ops/_upsample_nearest_exact2d_compositeimplicitautograd_dispatch.h,sha256=qSbcpR88NIC5wcdbCh1yeD-rFMRfooPSRM0vTopjypo,1072 +torch/include/ATen/ops/_upsample_nearest_exact2d_cpu_dispatch.h,sha256=KKJr7yKSv2cM5FEBWPGu9auu95ow-fAYFjHjaSrKvhc,1965 +torch/include/ATen/ops/_upsample_nearest_exact2d_cuda_dispatch.h,sha256=O_mRXymhI3nxYFbp4-TH0uuHEpKQPRrUT5laBKgo1Gc,1967 +torch/include/ATen/ops/_upsample_nearest_exact2d_meta.h,sha256=dz62CgqJMSC5e0TjWq4Ykdy0hELu7fExX09G27qO2Cw,724 +torch/include/ATen/ops/_upsample_nearest_exact2d_meta_dispatch.h,sha256=aY6UtywWszjubOshcLMABgNbe2uJCT7qT3erwQpxUIE,1967 +torch/include/ATen/ops/_upsample_nearest_exact2d_native.h,sha256=pQNSTKmkBj_oL66jbQlXn5bWHTQmEeuTOMTZBsxYWmg,1453 +torch/include/ATen/ops/_upsample_nearest_exact2d_ops.h,sha256=kDC0dWDfeSwLGAyXfSqba-HcrGkWv9YHHJNP47oFeKo,3239 +torch/include/ATen/ops/_upsample_nearest_exact3d.h,sha256=TjlZn6aKdQMM7ODTt3pqWwQcXqot8VaiNJrHdJFbaco,8375 +torch/include/ATen/ops/_upsample_nearest_exact3d_backward.h,sha256=a82HwCA8utoD09o51ZRMbKrH17sXSxx6jRgHX2I1or8,8209 +torch/include/ATen/ops/_upsample_nearest_exact3d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=PJmtFESVUcWIsULwMUWBXk1jfytVzrdhPa9YbGwmjrc,1361 +torch/include/ATen/ops/_upsample_nearest_exact3d_backward_cpu_dispatch.h,sha256=KpvHQdUZWzKTXvowOthxStSXnwXgX5Pj6pA2HFT1DYc,2533 +torch/include/ATen/ops/_upsample_nearest_exact3d_backward_cuda_dispatch.h,sha256=rOca5fZz6AjRKHLbXQYFXhJpW38eF74rUrNzuPIXvuE,2535 +torch/include/ATen/ops/_upsample_nearest_exact3d_backward_meta.h,sha256=WetdVIzsTkJ83BktRFCxWvU9Hq4LriMnLFwYRKxfhAM,808 +torch/include/ATen/ops/_upsample_nearest_exact3d_backward_meta_dispatch.h,sha256=jVG0PBcmUcz_6ijaVY7ZUe76AzfHRQI4Q4pgkIPM9SU,2535 +torch/include/ATen/ops/_upsample_nearest_exact3d_backward_native.h,sha256=0jzB1zFQz3Q5b4HxehGRwGcfCaR2oD560O2ZQKsnmac,1282 +torch/include/ATen/ops/_upsample_nearest_exact3d_backward_ops.h,sha256=OM2G5BdLrXqbn0azdGD8Ixwd7quXQXhoZn6nEbtqpXE,2939 +torch/include/ATen/ops/_upsample_nearest_exact3d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=eadGuYYpcRtt12ar5MYVfFngzog_07F4MPlDF9u-g5w,1269 +torch/include/ATen/ops/_upsample_nearest_exact3d_compositeimplicitautograd_dispatch.h,sha256=e3rIBti5QMqyZIKLtt00UxB-_cPoCXL9Odg8yBxrOJ4,1072 +torch/include/ATen/ops/_upsample_nearest_exact3d_cpu_dispatch.h,sha256=Uelwg7W0Pkj_8wFnF1EXoCGmPYfMlpR2wkrmEXnI-Ko,2229 +torch/include/ATen/ops/_upsample_nearest_exact3d_cuda_dispatch.h,sha256=qlIYrwXVBcflGrxF7arO_QTgzNJYr1rXgV5ibJ6i1ow,2231 +torch/include/ATen/ops/_upsample_nearest_exact3d_meta.h,sha256=wpO11wF9EE0RfQnXO69KcPC2yTe5_CO4-yA9Qt5-Gis,758 +torch/include/ATen/ops/_upsample_nearest_exact3d_meta_dispatch.h,sha256=pw0QsXZZLLh35RnSUqXsJFivvijwVY50n5yAdbAr97Q,2231 +torch/include/ATen/ops/_upsample_nearest_exact3d_native.h,sha256=jKpVJ-f1iROXW5uJ4pDRZ_iCvS6PwXQiJ0tGdL8qIr0,1570 +torch/include/ATen/ops/_upsample_nearest_exact3d_ops.h,sha256=5M4L6mRREVviDToYL5HDeZa0HAb7I46MxxvyzY1yoR0,3469 +torch/include/ATen/ops/_use_cudnn_ctc_loss.h,sha256=a0shnybk17DwH9VRajNrbz4OVORiNnBqZFDUdaiiMZg,1357 +torch/include/ATen/ops/_use_cudnn_ctc_loss_cuda_dispatch.h,sha256=Hv06OHwxf_a-jfJgXbdg5nezPy3cUwS7tDTG6MxNuLE,1042 +torch/include/ATen/ops/_use_cudnn_ctc_loss_native.h,sha256=1_dldeHBqCii6oI-8hpanozWpaJr9xfQCerPTM_sSK8,801 +torch/include/ATen/ops/_use_cudnn_ctc_loss_ops.h,sha256=qmxlGbNrcYOQDE-OZffwV47EeghuTB74pIPQVejsynY,2271 +torch/include/ATen/ops/_use_cudnn_rnn_flatten_weight.h,sha256=IlkdXGN3kZx9JHAQ9d6Pqu6PYG6KPOx0itGp8q_GSJs,690 +torch/include/ATen/ops/_use_cudnn_rnn_flatten_weight_compositeimplicitautograd_dispatch.h,sha256=gXw5dbBBXj2CfFu_I0rKKMUqlDkzBmwFiQaQ2qUTTbI,781 +torch/include/ATen/ops/_use_cudnn_rnn_flatten_weight_native.h,sha256=YZUzvNm76Bj0fd8ZBxwlzjEbXor8N_dORBxzbKp06Lc,491 +torch/include/ATen/ops/_use_cudnn_rnn_flatten_weight_ops.h,sha256=38vEzqGv6GbEGLEdPMw0AZc20mLSPfBbhlxPlojWmeQ,934 +torch/include/ATen/ops/_validate_compressed_sparse_indices.h,sha256=NLBQm3BAxHvYCbbeq0VT1gdnzpCMI6lZ1uCG66yLRIA,960 +torch/include/ATen/ops/_validate_compressed_sparse_indices_cpu_dispatch.h,sha256=P3kWDsfvOzYN9ekghjDdtmxe1KpxPrxC_kmh5-bOdYQ,860 +torch/include/ATen/ops/_validate_compressed_sparse_indices_cuda_dispatch.h,sha256=NKqyaI29P79JvFdcgTBh1xE_raWC1IOaP16GZnxgO-Y,862 +torch/include/ATen/ops/_validate_compressed_sparse_indices_native.h,sha256=5uK9tQQ0Pa__Rgspht2eOomIyOokHpqzOrWPMXmXhtM,795 +torch/include/ATen/ops/_validate_compressed_sparse_indices_ops.h,sha256=Klst4B7ViOPZxsCptvbwxvYar_bs21gpa6A-Ju3GCos,1338 +torch/include/ATen/ops/_validate_sparse_bsc_tensor_args.h,sha256=yraE1Y5A1okxojF49-WoPp_JabKZzENUqkGoLWgkv1M,917 +torch/include/ATen/ops/_validate_sparse_bsc_tensor_args_compositeimplicitautograd_dispatch.h,sha256=6OrjOHem7lXL_PRy9Z7rA4sMBRVR5Wyl_F5kmogVf6E,896 +torch/include/ATen/ops/_validate_sparse_bsc_tensor_args_native.h,sha256=xnxdL9xieP9ZsJHI8bUAobI_qfoKADs-SaaIgPpz2nQ,606 +torch/include/ATen/ops/_validate_sparse_bsc_tensor_args_ops.h,sha256=VCWpljpoCKSul6h_Czsrz5A38sHfNU1fKZfwpFHNpVU,1308 +torch/include/ATen/ops/_validate_sparse_bsr_tensor_args.h,sha256=t0p63m_20xvg3pMBEvHJ6QkoFXkC8TZEAvjPziD6UTA,917 +torch/include/ATen/ops/_validate_sparse_bsr_tensor_args_compositeimplicitautograd_dispatch.h,sha256=y4aXR7UAJE2v0T55rbpPYQ_2A01itmXBBW98OHELrWg,896 +torch/include/ATen/ops/_validate_sparse_bsr_tensor_args_native.h,sha256=pui35hGAlx2OpONVX0aX2rqpCoHmWIUjKfD51NoUWHg,606 +torch/include/ATen/ops/_validate_sparse_bsr_tensor_args_ops.h,sha256=8CTxhmrqY4NYgZHz6KEjEc4cLt22hcVXMnt-oP7iCcE,1308 +torch/include/ATen/ops/_validate_sparse_compressed_tensor_args.h,sha256=f3ntv6DQh1fGrjjIOUElKBlleSZW5U7MptHwRpFN3VY,1011 +torch/include/ATen/ops/_validate_sparse_compressed_tensor_args_compositeimplicitautograd_dispatch.h,sha256=8VXL54zmWmahS5TgdblVEE4G1TSZ55kBkucqDc0vXBc,930 +torch/include/ATen/ops/_validate_sparse_compressed_tensor_args_native.h,sha256=4mAH3NqxeJGulQLHQc9PIUUy9w7-F9u952RyL1YZupI,640 +torch/include/ATen/ops/_validate_sparse_compressed_tensor_args_ops.h,sha256=aMUaNyFYzl5EPw4Q-yPlwEHqXikhpXRlUZR0eOuJqek,1418 +torch/include/ATen/ops/_validate_sparse_coo_tensor_args.h,sha256=5dI0VTTYonxXHLjWfI30JMGqpkP1U0UmlTJRcAf6IC0,927 +torch/include/ATen/ops/_validate_sparse_coo_tensor_args_compositeimplicitautograd_dispatch.h,sha256=yKN7blSkcmwjyncBJpOasO9HeKVWyOgO7LR_pMGdLBk,910 +torch/include/ATen/ops/_validate_sparse_coo_tensor_args_native.h,sha256=Oj7aH7cgapDwAfPFwhnPSVatxQimh4SKMQCkLJSAhQ0,620 +torch/include/ATen/ops/_validate_sparse_coo_tensor_args_ops.h,sha256=uK0DHUFYTGNdN-qIJrl28_qkYAVdKYR9DiXEkGsk9Es,1309 +torch/include/ATen/ops/_validate_sparse_csc_tensor_args.h,sha256=v11RqVX-tzIoiSvWOm4J2DVY2r5rHmNCDsFohpEFmJM,917 +torch/include/ATen/ops/_validate_sparse_csc_tensor_args_compositeimplicitautograd_dispatch.h,sha256=UvTMIN_oDT7BLNizsnld5x3mlYUsRiRLgod2RYmwYUQ,896 +torch/include/ATen/ops/_validate_sparse_csc_tensor_args_native.h,sha256=2qDUSXQedcE04K9SkfFqv9AD_x3ZtStmJWlbi6OhYxw,606 +torch/include/ATen/ops/_validate_sparse_csc_tensor_args_ops.h,sha256=srC8Kl6C0CuUP6g7myMiB7red4y4wa4uQKZJQtliO3c,1308 +torch/include/ATen/ops/_validate_sparse_csr_tensor_args.h,sha256=3I6uEn9MpqGjkJNsWGytEhzW8xmpH32IY_CIj-H2jKk,917 +torch/include/ATen/ops/_validate_sparse_csr_tensor_args_compositeimplicitautograd_dispatch.h,sha256=b1vSqYjNaso732pgiJ-MUMP1S3B3ciwpKYRio1jnXyI,896 +torch/include/ATen/ops/_validate_sparse_csr_tensor_args_native.h,sha256=IwJVotqkjA3T4cILeCu3fuKUQ9rFBSlEvmoTI6ZXTXM,606 +torch/include/ATen/ops/_validate_sparse_csr_tensor_args_ops.h,sha256=cJqT4By4QDV8BQ_dG9rOXsb16VHA8z8j-pBoc8g39Pg,1308 +torch/include/ATen/ops/_values.h,sha256=JlHrtuTX5PIGA3Yjk1IROD8AjNfrC_B1P6KmCRTc4WE,507 +torch/include/ATen/ops/_values_copy.h,sha256=_0HVEgYIZWscdrB6sLOyb9thPhbW5MhtaPxyVLrOzuA,1103 +torch/include/ATen/ops/_values_copy_compositeexplicitautograd_dispatch.h,sha256=VHV0T6wGo7v66wBqo4uMUX6U4RlS7FfgCxto5RfDqwc,903 +torch/include/ATen/ops/_values_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Gz8Mah9aL7JerxBoMM-qIANHLbqPV6eb0CLF7Ek0hKA,819 +torch/include/ATen/ops/_values_copy_native.h,sha256=cD3AMkiSXJTke2uTgHaJNgx2SwlzPzA9mvcsXxrU8jI,588 +torch/include/ATen/ops/_values_copy_ops.h,sha256=hw9rk6Bu5ITebeyKKeqZP1BQDQbkLlAswaV24ZAXggY,1599 +torch/include/ATen/ops/_values_native.h,sha256=UtZmgRUUxT1ITmQuqyvxGi-9PWfzyQf26yXveBoYRTo,505 +torch/include/ATen/ops/_values_ops.h,sha256=FB1ORA1yWvCsZ_pdlR2cjnfls6Te7ttfIzTSypgefkM,971 +torch/include/ATen/ops/_version.h,sha256=5XkS1zz3TFDAcG8g_LOXQZO9KduCeOZagj97zb2PYTc,508 +torch/include/ATen/ops/_version_compositeimplicitautograd_dispatch.h,sha256=6it7nPoV3u_gPapMm4KFQGnsuiJrZ5NdBireBr5lzCY,786 +torch/include/ATen/ops/_version_native.h,sha256=xORcktpAQxxoE-ynCKXrShVQwOq1pRXzbf57FRgoXVM,496 +torch/include/ATen/ops/_version_ops.h,sha256=mPLo16yWEexvKdGfabhB9nazfNJy-8b1yNuoubkt8uA,956 +torch/include/ATen/ops/_weight_int4pack_mm.h,sha256=zlNeeRgakrdYLlVrhgfac8mIkqcybt974GbO1kPIPOI,862 +torch/include/ATen/ops/_weight_int4pack_mm_cuda_dispatch.h,sha256=8JA9J6eXRis1NpLq6N-wc5AajBoRrCZwLJzV06HbiGA,838 +torch/include/ATen/ops/_weight_int4pack_mm_for_cpu.h,sha256=d90WOYWQovbnnIGmW-8gEl5TQIR7vwD6wxfdchock7U,894 +torch/include/ATen/ops/_weight_int4pack_mm_for_cpu_cpu_dispatch.h,sha256=OLfqOnwTNnlbiWfTcNKjce0wpDJki8bq3Hz1dCOM9Ao,844 +torch/include/ATen/ops/_weight_int4pack_mm_for_cpu_native.h,sha256=3_eZ5stOgrpy5VqA3l2YtivocKH_E6FEg0QO6G3Sjm0,594 +torch/include/ATen/ops/_weight_int4pack_mm_for_cpu_ops.h,sha256=hOo4jtpbwG3EIb8DQx-lmBBPB_2_A91ykPozqmH9rYM,1286 +torch/include/ATen/ops/_weight_int4pack_mm_native.h,sha256=e0JvOErEK-pWsJiG91cdJiN-kZ2Ls3__RGfzWDB51k0,595 +torch/include/ATen/ops/_weight_int4pack_mm_ops.h,sha256=HZqaxCCIZbOOW-xt_P7FT37k0DVm2B7pH4zDrJyy8yE,1262 +torch/include/ATen/ops/_weight_int8pack_mm.h,sha256=b_M96n5JD6q28kWHIKALzq6Y277N8lX1R0pb-SNS1Ps,790 +torch/include/ATen/ops/_weight_int8pack_mm_cpu_dispatch.h,sha256=tCbxxp_AbP_py5tGir8fAq1GGnZx00vxrvPArP8le-U,808 +torch/include/ATen/ops/_weight_int8pack_mm_native.h,sha256=kAj0qcxfC2GlApLn5T-CsBQpt8vxWmsmq6FbLftd5Vg,566 +torch/include/ATen/ops/_weight_int8pack_mm_ops.h,sha256=dh7oFvcjIXml46Pso1119RhDEu_Vt6DDqgt3Jg4RUsU,1173 +torch/include/ATen/ops/_weight_norm.h,sha256=mKZv7eRWYuvDHlBSSgErqtgJQNK26Yk0H_XB-GgKSnQ,725 +torch/include/ATen/ops/_weight_norm_compositeimplicitautograd_dispatch.h,sha256=WbL_kFUUHk9KUGK9XR0wQmQ20BmriNsSTyDkqONyKHw,827 +torch/include/ATen/ops/_weight_norm_differentiable_backward.h,sha256=04dE7sGHA_CVWkB0flcdaZDKW7hQixG-16DLatoIIMM,1003 +torch/include/ATen/ops/_weight_norm_differentiable_backward_compositeimplicitautograd_dispatch.h,sha256=ICA7ZnUFUoquJklf6ZhoXGGToVMykCxEyqt9jc7S1GI,945 +torch/include/ATen/ops/_weight_norm_differentiable_backward_native.h,sha256=siZA_oYB5QcRFM3JxVN99GbDTtf6ubuN775WFHsv1Ow,655 +torch/include/ATen/ops/_weight_norm_differentiable_backward_ops.h,sha256=AZiMh0fYxM4sDkv2MGDNT7wLYmv0mM8i3UuB3Rj5r1w,1475 +torch/include/ATen/ops/_weight_norm_interface.h,sha256=w_0-oWELDiOMBeURzX1XULWqO-MAoCPMx6VJX1fpBag,1579 +torch/include/ATen/ops/_weight_norm_interface_backward.h,sha256=YbV-U97_yGtE8rtoYVlXfEwYHPSQvGW1L8XiitVZXtM,2112 +torch/include/ATen/ops/_weight_norm_interface_backward_compositeexplicitautograd_dispatch.h,sha256=nJdseLLYMTbb5hUkLn096lc3NyUWrw15Q5GSRECVZfE,1241 +torch/include/ATen/ops/_weight_norm_interface_backward_cpu_dispatch.h,sha256=N2S37Vbi8XA2hiBNkF8Uoz3kozaDqE9R-8njjI5FGVU,896 +torch/include/ATen/ops/_weight_norm_interface_backward_cuda_dispatch.h,sha256=wh4rsRNuYMs-aAcwh5faT1AG0fZwPSMzy3rTCw5RAGU,898 +torch/include/ATen/ops/_weight_norm_interface_backward_native.h,sha256=GPUfsa-GANxojRwIjFgO8gLA95LGEl6DAJ4x5Jj5jpw,1099 +torch/include/ATen/ops/_weight_norm_interface_backward_ops.h,sha256=azw7k-voE-Ukn6xlXI1gIFoTzILL8eL3-z4YuUHro5Q,2641 +torch/include/ATen/ops/_weight_norm_interface_compositeexplicitautograd_dispatch.h,sha256=u2fG0iAoUEjLEhJ54yJMgpjks0xwKBFFIBgXtdE0Yuc,1083 +torch/include/ATen/ops/_weight_norm_interface_cpu_dispatch.h,sha256=VD2g_J8_r_O4uuh1nn61jIztSaGva2KJuDLxTDeQeRI,818 +torch/include/ATen/ops/_weight_norm_interface_cuda_dispatch.h,sha256=_4w9TlAr25bwiXE-CIuXj0Eo1UtCcH5YeKHUEAu9Qx0,820 +torch/include/ATen/ops/_weight_norm_interface_native.h,sha256=WWL0myaWDZoXFSHUrtrW3nbe8IpYpLN7OH5tWS2FqY0,863 +torch/include/ATen/ops/_weight_norm_interface_ops.h,sha256=Kj0M3JADePUYw_KIFJTexsE9-v2WVLfQ2JX1yCoM9io,2133 +torch/include/ATen/ops/_weight_norm_native.h,sha256=zJOcrgW90HZ4YU9hUqtz7rEW9f90dBihb8B8LvGXsa0,537 +torch/include/ATen/ops/_weight_norm_ops.h,sha256=kg41UqA45T_StrVUwa22bNe-LeS4x76Dpmc25o8WJ0M,1091 +torch/include/ATen/ops/_wrapped_linear_prepack.h,sha256=4UoQFqz-gAq3PwT2uW-_zkYJZjLYEueNlLT41GdNEIk,913 +torch/include/ATen/ops/_wrapped_linear_prepack_compositeimplicitautograd_dispatch.h,sha256=WTxSknJuocCp5l_PMnKg8gKFPzI36QydmasXU2w-PI8,902 +torch/include/ATen/ops/_wrapped_linear_prepack_native.h,sha256=gIRUrNDp7jw-POKGEWc9ZQcVMMdaW4yB3Xat7r2Tn8Q,612 +torch/include/ATen/ops/_wrapped_linear_prepack_ops.h,sha256=nJb2fypbzmO7IdP6izPo36byz-GlTfes5wkix816f7o,1331 +torch/include/ATen/ops/_wrapped_quantized_linear_prepacked.h,sha256=rt28ABPSK4eqoq1X6OhEkRUG6VJafRRY4ZslP9CYOKQ,1181 +torch/include/ATen/ops/_wrapped_quantized_linear_prepacked_compositeimplicitautograd_dispatch.h,sha256=DEbqIag0qrWHXMp0pRFTa0BKSWiMxVGbRYQbm66i97Y,1012 +torch/include/ATen/ops/_wrapped_quantized_linear_prepacked_native.h,sha256=HFeDV0OvAk122Z9pEFgYR9kgAhHqYuv5he9jzOTSHn4,722 +torch/include/ATen/ops/_wrapped_quantized_linear_prepacked_ops.h,sha256=Gnl1ccfH4S_2OVgA6mMh8kNUqoH-OADXqXMxXZVBlSI,1682 +torch/include/ATen/ops/abs.h,sha256=V3FRUJDzMH8fybBwLim4AhkSA4x3mIr_JhM5m0vsHa4,1151 +torch/include/ATen/ops/abs_compositeexplicitautograd_dispatch.h,sha256=zfiGci0gSyW0Z_NWYgyNO69etSIJgXjr_NXORxo1WgI,833 +torch/include/ATen/ops/abs_cpu_dispatch.h,sha256=DvRv9U95xiZLtQXv835s-Q7xz-Ipp9h1QOqLama5G1w,841 +torch/include/ATen/ops/abs_cuda_dispatch.h,sha256=qbJaZeWTxZnhxqQSkjyEdmN4XwJ9GGEqUGmYobTMBQM,843 +torch/include/ATen/ops/abs_native.h,sha256=OMoD7TI-v0-XdT6ffedJJQ9yRpbIY4ZcB35AEtMo21M,1154 +torch/include/ATen/ops/abs_ops.h,sha256=iZIHAXJJk1G3h-6v5r-vo8y5Eu0IZrPMiXL_AJ6YT9g,2046 +torch/include/ATen/ops/absolute.h,sha256=g7f51gRv6CS5m-3dFwpVTAM_QG5GOaqqczTM6pzzwKI,1063 +torch/include/ATen/ops/absolute_compositeimplicitautograd_dispatch.h,sha256=9ITB3u38WT9bhmNAoN7-diWPsY6OrhNBd8roo0PLwVE,1006 +torch/include/ATen/ops/absolute_native.h,sha256=GJ9ji6y285YL9lfMdbW8ddwu7zjiQLod1yIzeaF29aw,634 +torch/include/ATen/ops/absolute_ops.h,sha256=U-2z2BX4PnmEmgennPvT3HdnGDOt6-A4Z-FXvSACJ-A,2091 +torch/include/ATen/ops/acos.h,sha256=_76gdxFe3Yph5feuuFTVroXxmnGOcUbCucob9bg-I8Q,1164 +torch/include/ATen/ops/acos_compositeexplicitautogradnonfunctional_dispatch.h,sha256=4gjkkjZDaoF32DObypEV0oC2wjmw6Vp1xcbjfyTEzJs,861 +torch/include/ATen/ops/acos_cpu_dispatch.h,sha256=eHMvbnS_MyF2_JVYH63myih7un_YxodeWqf6Q8qCTII,946 +torch/include/ATen/ops/acos_cuda_dispatch.h,sha256=coA-iEYuPgrMK88KGZqJ15fFOxe2T6-xCUjSX5_8EsQ,948 +torch/include/ATen/ops/acos_meta.h,sha256=j0T9EY4OxOLO1Eos1KFxFe3QB7qv1Cg-0TViAzexrG8,600 +torch/include/ATen/ops/acos_meta_dispatch.h,sha256=hZHZkFmaULDlhHh_MIHJO3Ikoac82e9MLlV7dA2GIXo,948 +torch/include/ATen/ops/acos_native.h,sha256=ZcgdccycruF5-_g-CIHk6ME_hMGljpMj6xf7_9id584,613 +torch/include/ATen/ops/acos_ops.h,sha256=s96YYtk3alxL5vMZ_PkQrpdd670Wy9BmW6Or19f7USw,2055 +torch/include/ATen/ops/acosh.h,sha256=kU0FwXZKA2Q7lWAM9WDWFdWP1rUZ4UIUtyrR9pzRhXM,1177 +torch/include/ATen/ops/acosh_compositeexplicitautogradnonfunctional_dispatch.h,sha256=oMgL0_iUvoWj3JRTXjWRxrlBxU2qcMbyCsJzFgZ5hns,863 +torch/include/ATen/ops/acosh_cpu_dispatch.h,sha256=EukLZ7hwut7vEKNw0hd9_0ocBRTD5kFtw_aby85DtC8,950 +torch/include/ATen/ops/acosh_cuda_dispatch.h,sha256=WzcPjSduo996_4SmNbqbsHLMBi6U_xCLUC648MqYWmM,952 +torch/include/ATen/ops/acosh_meta.h,sha256=spFv9QBM6fYut5icM9vQDNxlb359_bXGEzfucZhSnjc,601 +torch/include/ATen/ops/acosh_meta_dispatch.h,sha256=8_ZhijK-SyEQmDxs1ng8xfV8uX57tLXUhlolLYbHKo0,952 +torch/include/ATen/ops/acosh_native.h,sha256=1zP9sV3i3gykTy02ml7g5wJbGzov8gCpfKTmYhtpm-g,616 +torch/include/ATen/ops/acosh_ops.h,sha256=F46MiJzLSZ75SwfHAyvZCTJ1cGWzCTWYJtB1cU9gb8w,2064 +torch/include/ATen/ops/adaptive_avg_pool1d.h,sha256=nPid-NDxA9arFqwGeyzEOdaUzObiiEmBIDlYHNlXFL4,1359 +torch/include/ATen/ops/adaptive_avg_pool1d_compositeexplicitautograd_dispatch.h,sha256=Gc0WlsEsmC9HAkqRmT_1trJPbTUBfm5ogcuiZaMFDVk,975 +torch/include/ATen/ops/adaptive_avg_pool1d_compositeimplicitautograd_dispatch.h,sha256=hBl8GNIFQXOy9Yaq51uNoiHfpFDZP5LLr978NH_4zcc,829 +torch/include/ATen/ops/adaptive_avg_pool1d_native.h,sha256=0MlXFX4Hp-kqEStf9UjvpcGkNRLAaOY2nqQRm474PVs,660 +torch/include/ATen/ops/adaptive_avg_pool1d_ops.h,sha256=tkQUD0pEqcwvP5UM7ytTDLZ1_FknjGApX3nBx2rLm40,1831 +torch/include/ATen/ops/adaptive_avg_pool2d.h,sha256=G3AOu-3QtKvdHcuBTJgas1iEuA4NWZmMykqiD6_2vY8,4178 +torch/include/ATen/ops/adaptive_avg_pool2d_compositeimplicitautograd_dispatch.h,sha256=vmx2vM8mQ_qe0-tEVy23IftHIzWstanKcquIG0fh_qE,937 +torch/include/ATen/ops/adaptive_avg_pool2d_cpu_dispatch.h,sha256=LmQJ5Q27CYs6InIjOFaMmbdlnkLfKH8zGtSE9d6IFEk,1196 +torch/include/ATen/ops/adaptive_avg_pool2d_cuda_dispatch.h,sha256=eynEnu65UUWEB_om1Ez_kzlGb_Y19OoVd41BIwmdYGQ,1198 +torch/include/ATen/ops/adaptive_avg_pool2d_native.h,sha256=Mw6I2RXoHIDyr3HntVe3cEe7Ax5zy_V3U7F0jgKpIGg,934 +torch/include/ATen/ops/adaptive_avg_pool2d_ops.h,sha256=wm4kNfkj7VcYymy6_rbRVUDzTplN33IK64rNGODFjO4,1861 +torch/include/ATen/ops/adaptive_avg_pool3d.h,sha256=l9BU1sViyMQf97tQEajGYURMG7dIf8CpO-QKYhXHnic,4178 +torch/include/ATen/ops/adaptive_avg_pool3d_backward.h,sha256=C-0SbI0nZ_QURLLDEAqkex_Hshe1qjHaMr0oLCF5NgA,1257 +torch/include/ATen/ops/adaptive_avg_pool3d_backward_cpu_dispatch.h,sha256=cYys0Ypk61evA7wztvRfH6hS3dyyinBo991_q13ihHI,969 +torch/include/ATen/ops/adaptive_avg_pool3d_backward_cuda_dispatch.h,sha256=BIhrAR2kADjsgCwW0TsPhdEa5ZHz_nXLvBZ9iGhg8dI,971 +torch/include/ATen/ops/adaptive_avg_pool3d_backward_native.h,sha256=6acAUQ6I9c1HOBtK6Rk7uK4yJ0x9l0cJo880HOY1i6o,731 +torch/include/ATen/ops/adaptive_avg_pool3d_backward_ops.h,sha256=4Mq77R6rGqb7Nmz-zApvdNn_YMxiIbZTlR9S8hk_N5U,1264 +torch/include/ATen/ops/adaptive_avg_pool3d_compositeimplicitautograd_dispatch.h,sha256=aNH7q4mxEfm7fHfn5XlhLv_r9YWpCIaiAxJCOP9mUt8,937 +torch/include/ATen/ops/adaptive_avg_pool3d_cpu_dispatch.h,sha256=gaZGrG9MFfDMjkMu7J5s3dcoCfSr4Bh6qQ_gJ9UBd6U,1196 +torch/include/ATen/ops/adaptive_avg_pool3d_cuda_dispatch.h,sha256=935YZkm8kBuNU4pW3QnfQM6HebIq76YhXbEBOlJ9H1M,1198 +torch/include/ATen/ops/adaptive_avg_pool3d_native.h,sha256=GaRLL8y4Jv5wW4IuAQcmBKiSrUtL3I4mTUy4fQQDv6E,936 +torch/include/ATen/ops/adaptive_avg_pool3d_ops.h,sha256=1v2vKro72pcbVyw0rvXQorGOZ6rglq-Xrp8aadySnKU,1861 +torch/include/ATen/ops/adaptive_max_pool1d.h,sha256=3DtuR02a8NPlpNpTvS9tutahRwZ0l2soAgzFoT3FSRA,793 +torch/include/ATen/ops/adaptive_max_pool1d_compositeimplicitautograd_dispatch.h,sha256=WWjtiBYyJqGnW7BeVQARfMQUZ2ROoap0m_HUojrCmwU,854 +torch/include/ATen/ops/adaptive_max_pool1d_native.h,sha256=KUFbIF7-xkmkVDsu1QXKOTMUX5kxOGOPqA2gmlB4u_8,564 +torch/include/ATen/ops/adaptive_max_pool1d_ops.h,sha256=LAr1d472XeET0KAvBnpjTKEHdTHZkiEXXGPxRr9fG6E,1181 +torch/include/ATen/ops/adaptive_max_pool2d.h,sha256=cSIHSG94k1eaUWQSJEdvzSMRAMzWYANkoV7MTzSMFzw,1578 +torch/include/ATen/ops/adaptive_max_pool2d_backward.h,sha256=Bg0z66aFPMu_5U8waeF66XJzKYIdWkaxup4I5JmjHwA,1687 +torch/include/ATen/ops/adaptive_max_pool2d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=MYvc8odjKrlKnxWXLrY7QwP0mktQsv1wezjkLwVgDFE,895 +torch/include/ATen/ops/adaptive_max_pool2d_backward_cpu_dispatch.h,sha256=69c9Z4cBoUeC0P7YcVX6tgrrS9TFbDnIRhvu2MaP-t4,1162 +torch/include/ATen/ops/adaptive_max_pool2d_backward_cuda_dispatch.h,sha256=_z0nEVSyRr4y9s7kTbH2G6q_1sKepKusHJ_1hddcJLo,1164 +torch/include/ATen/ops/adaptive_max_pool2d_backward_meta.h,sha256=eaA5hWrKGEV2CYiOtCoHK4bRKdgj494Q_DGdXjstLYY,684 +torch/include/ATen/ops/adaptive_max_pool2d_backward_meta_dispatch.h,sha256=QxbM-cXRLqZA7jtLiuhn4XumRdz6WOVB-6c--Fuf15Y,1164 +torch/include/ATen/ops/adaptive_max_pool2d_backward_native.h,sha256=lpbVvVXw9nAuPqcQT9789wX3BXubg6tDmDstcGgIf44,1016 +torch/include/ATen/ops/adaptive_max_pool2d_backward_ops.h,sha256=IMB44y2QeSMYyvCvP3StVRfr06z5xHcA7tcP1EHoO1I,2129 +torch/include/ATen/ops/adaptive_max_pool2d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=oU8dUuV2gJJqHV17BLmvRyYmp5phvBeJnyS342oyU4s,880 +torch/include/ATen/ops/adaptive_max_pool2d_cpu_dispatch.h,sha256=tWTFGmuZQFcWAAsjc81XecLvRdGDelO3arBuX18yO44,1151 +torch/include/ATen/ops/adaptive_max_pool2d_cuda_dispatch.h,sha256=CzE1nwvd2-xraXySgFiYfNosga5Ep_I_R-0fCw6vlpQ,1153 +torch/include/ATen/ops/adaptive_max_pool2d_meta.h,sha256=0Z8KJ6YIQV_VXm6sqqn-SFswdvY5RlwhQKT2rQfuFOk,644 +torch/include/ATen/ops/adaptive_max_pool2d_meta_dispatch.h,sha256=ii-RPUkmqF1JGV-XM6EQqIR8mAiUaxQwvZXXo9cf0vo,1153 +torch/include/ATen/ops/adaptive_max_pool2d_native.h,sha256=SB2mFefVM0yJaHTIAVZUSH00oIvZFsPmrX0J26I9VZY,951 +torch/include/ATen/ops/adaptive_max_pool2d_ops.h,sha256=psxKOkjvrlnzdPKzWb2p9mv8A65_W7QsAq4e9-_kRto,2089 +torch/include/ATen/ops/adaptive_max_pool3d.h,sha256=-M4YCbnys_Fkyt5wekl1ifV-8v4vC1iVNKe9TYdmhDo,1578 +torch/include/ATen/ops/adaptive_max_pool3d_backward.h,sha256=LJJX6XAlvUHKCGQhg2YyvShcOb5OiDn1p1ScLj9Nx8E,1687 +torch/include/ATen/ops/adaptive_max_pool3d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=mqiio8OOBoCtaBCQiJocef72YiCmncANEktGRcemZLQ,895 +torch/include/ATen/ops/adaptive_max_pool3d_backward_cpu_dispatch.h,sha256=3wja2RgND1PCIh7B70UZLOw506U3w1YsW1z_LeHJH2c,1162 +torch/include/ATen/ops/adaptive_max_pool3d_backward_cuda_dispatch.h,sha256=yOmlB5uMx2GuM1Jf18_CCE6ml0WnjMMn5h9aIlurLA8,1164 +torch/include/ATen/ops/adaptive_max_pool3d_backward_meta.h,sha256=9BOIoyq6JGV9Qv6iTRDpxmw6W3TAt7qR1Pbmhn4Ur5o,684 +torch/include/ATen/ops/adaptive_max_pool3d_backward_meta_dispatch.h,sha256=V2rVN6CIkg9Su41RB21nnStPE3LVsoJ_I6XluDtEKkI,1164 +torch/include/ATen/ops/adaptive_max_pool3d_backward_native.h,sha256=l6OBMY30EG61THmHs4p0bhY83ioyZFw4Rx7MGh7XAb0,1016 +torch/include/ATen/ops/adaptive_max_pool3d_backward_ops.h,sha256=rMlenMah3pNvJIx5qtiLurr5MZB8mK65kg-aFfRWrK8,2129 +torch/include/ATen/ops/adaptive_max_pool3d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=86JEJl0HPiS_vZY72z1CmLe3vW5oydQtCBI0phyS5pw,880 +torch/include/ATen/ops/adaptive_max_pool3d_cpu_dispatch.h,sha256=9Y0J81hdZFnW2-S8WSy3L5Bj4lsc2tt2GIbbeuKXoVk,1151 +torch/include/ATen/ops/adaptive_max_pool3d_cuda_dispatch.h,sha256=lHczTvUaVyAr_a1FSDitQo9wYC4NXpt8WNWoKmFFLMk,1153 +torch/include/ATen/ops/adaptive_max_pool3d_meta.h,sha256=b_GvgEG1Z7UhopmdmeSrqPmsBe7dUG4oCJUgHhXerEM,644 +torch/include/ATen/ops/adaptive_max_pool3d_meta_dispatch.h,sha256=mkFo9EWMAHSIZXaqOguTWZ43PCRHOLHO_KpawVWT8NU,1153 +torch/include/ATen/ops/adaptive_max_pool3d_native.h,sha256=rl-Rn6819u60kI6Fb-_5su8BCunooRG32G-NZkU5z4k,951 +torch/include/ATen/ops/adaptive_max_pool3d_ops.h,sha256=wS_HhIoipvaCbhtcbyO5oTu_HeM9UiDhoCeuFeYCwz8,2089 +torch/include/ATen/ops/add.h,sha256=ETwM1612tspJ6hKncEjC8NAQu9aAZXJfgIj19XO8PzA,2168 +torch/include/ATen/ops/add_compositeexplicitautograd_dispatch.h,sha256=TntbCILJ0FcpUfob-PBJPd4QePLvLifpIt2hVZh-S-k,1200 +torch/include/ATen/ops/add_compositeexplicitautogradnonfunctional_dispatch.h,sha256=u9JmtrPVtvyNO1AOKf8ooe89vSTBCMYU2GyfOIzaMnI,967 +torch/include/ATen/ops/add_cpu_dispatch.h,sha256=fxizkKhw58936ek-VZ-gp2syRyYwtOxjW8dfVM5pcnc,1156 +torch/include/ATen/ops/add_cuda_dispatch.h,sha256=bxs1-Q16HaJ--w1Sy81N4zYhkMy1DGG-99fKPZIqi9U,1158 +torch/include/ATen/ops/add_meta.h,sha256=SMoxP2H7Ootz4xUF_BO-70WBKjARrwfW5s-ZcITlbfY,658 +torch/include/ATen/ops/add_meta_dispatch.h,sha256=yPuzknZnlePcWAEabZ0n_LoNfJr8q0KZOFDN6_v9qYY,1158 +torch/include/ATen/ops/add_native.h,sha256=gU54nk274yH0a-Z0RVAw2SyBEV4L4bQnoA8JEaDvERc,2981 +torch/include/ATen/ops/add_ops.h,sha256=OXBoyiu6_0gPGeZcyrSTybGD4CkYVO6u-8hYFuy97lU,4792 +torch/include/ATen/ops/addbmm.h,sha256=akzzOOJigEP3ZycAU2RRk6Yj5gS3Oq0p98kgAZ89Qdo,1639 +torch/include/ATen/ops/addbmm_cpu_dispatch.h,sha256=Mu_xmnT5eicVZu-zNpnzepAn_cyD6zkVeVFXl6hqVyI,1386 +torch/include/ATen/ops/addbmm_cuda_dispatch.h,sha256=9lKtvq6j_U-ABd8ZKbclHjZOPGK1qbpoNMaoD-B7wFY,1388 +torch/include/ATen/ops/addbmm_meta_dispatch.h,sha256=UfOr8Q26hQLBx45GgxkO3FT7XVA_5l1-D6tCj5fd27Q,851 +torch/include/ATen/ops/addbmm_native.h,sha256=fThPgWaHu9u_brIIyd0EOXmgm1ED45T7oUJXbBjV8Uw,951 +torch/include/ATen/ops/addbmm_ops.h,sha256=qLqlYiCLwOClEDP92YC1zZNYBnzxYMpPN94QrQiVcsA,3132 +torch/include/ATen/ops/addcdiv.h,sha256=reYUxZj7jtjKVUtWzdvDWfZ3c70jnybPYCJ0_E1Ne4Q,1525 +torch/include/ATen/ops/addcdiv_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Pm2z781OLhCy4ru4ShW_smFfq2mVECwr6tg75D1rFwk,1035 +torch/include/ATen/ops/addcdiv_cpu_dispatch.h,sha256=huG7nADQXtXyh3VYR819CegNI01ZKE_BGzsis-XENa0,1292 +torch/include/ATen/ops/addcdiv_cuda_dispatch.h,sha256=b9v-f_7ufvOm6ZAdfrd_MlEZ26_m6U0L-wANqsiq82A,1294 +torch/include/ATen/ops/addcdiv_meta.h,sha256=JSwdxD4TLPje20hDV2z0IZXaU606MWM1xgStmJ0JYwE,685 +torch/include/ATen/ops/addcdiv_meta_dispatch.h,sha256=rj-Husw2NZzw4CHlrHADZRwMoEM-oLVpKGJkFWlFeIw,1294 +torch/include/ATen/ops/addcdiv_native.h,sha256=3WXVchyP1ushDQpf8sFSbIX1SQGsdpxs7GaA6wHVy_k,704 +torch/include/ATen/ops/addcdiv_ops.h,sha256=VXPal8HQtqoa2Pss43LLQD2e6RIsoLUBGxlMZA2X4iQ,2904 +torch/include/ATen/ops/addcmul.h,sha256=7eHLhmzxB-wcNU4U1xKDataOFNSfxfhedEOj3c-k8j0,1525 +torch/include/ATen/ops/addcmul_compositeexplicitautogradnonfunctional_dispatch.h,sha256=AkW1m4qljSBBaAi4hqAB8OeN9vMuL2AxqdWpbE3cU7s,1035 +torch/include/ATen/ops/addcmul_cpu_dispatch.h,sha256=z1hZE422OZoaJKTErhy8Pq9ioJ12Axeq-RqHUD87KeI,1292 +torch/include/ATen/ops/addcmul_cuda_dispatch.h,sha256=VsuYivBBT1L7sbXhQgsUp1cr9K_Reuk_wvzdEDTsFlI,1294 +torch/include/ATen/ops/addcmul_meta.h,sha256=ow9cq-FIAPi8thkPVM7g4vFUHnAb3gmYCAhIhrrmMJI,685 +torch/include/ATen/ops/addcmul_meta_dispatch.h,sha256=LLrFuqPoNvHWA7z6N_Glihljx1pfkkwt3gt69X5cu5Y,1294 +torch/include/ATen/ops/addcmul_native.h,sha256=ASlEfOaVyld6M1oPbFAsjrKhp5fRpeVy0QZiPJmKa_8,704 +torch/include/ATen/ops/addcmul_ops.h,sha256=hABVFsu21eaVROcDB9NsAvog8RJMpTA6WpR-LaMRI2c,2904 +torch/include/ATen/ops/addmm.h,sha256=c4zGzZH_9OLxolEPV1s5dk3ByTt7zQTEXrvIxa9f9VI,1593 +torch/include/ATen/ops/addmm_compositeexplicitautogradnonfunctional_dispatch.h,sha256=rdvT2t_NHJ52JCSe_DoQNwGBBaDDuKMd01r0uY83Jhw,1073 +torch/include/ATen/ops/addmm_cpu_dispatch.h,sha256=5l9nCMKlKaDyKqtAc3G7hD6sdGqSNhMZNmMYiCcjDNc,1366 +torch/include/ATen/ops/addmm_cuda_dispatch.h,sha256=yZCOH6z2FvzSzv6VqCJO6CtQVqYtgqfumTKg-xSaCuk,1368 +torch/include/ATen/ops/addmm_meta.h,sha256=P12eH02nuPXw1RR_hbM0a4u1HmYyBY9nbkWnQu3KgIA,702 +torch/include/ATen/ops/addmm_meta_dispatch.h,sha256=tn3pSfkLn7dDzzhUIVpD6CBd_xibh_YCJ-_cQDedcnI,1368 +torch/include/ATen/ops/addmm_native.h,sha256=1VzmPwxoJfZq_jjIyH6V9HD77wJuVlTVtcehbkdwbgM,2652 +torch/include/ATen/ops/addmm_ops.h,sha256=FMsnjj_2W260aKzNjb8g3jbI7ySdAN7KRHq2BRBRS3M,3087 +torch/include/ATen/ops/addmv.h,sha256=ebPHEUj9vsefNe9mNMjh662vBdP5Jkb7GkouGxFhq0o,1903 +torch/include/ATen/ops/addmv_compositeexplicitautogradnonfunctional_dispatch.h,sha256=g3VQHZ40XizUCSg0TdN8YGOfK8E_2xpvGJZzV5Yd24s,1069 +torch/include/ATen/ops/addmv_cpu_dispatch.h,sha256=f7-JW6x7d5nmgsmoVnQkmaiYqStgdLazu_u3Zc1NpfQ,1358 +torch/include/ATen/ops/addmv_cuda_dispatch.h,sha256=P-c9G5FS47FYqx8lrUJ15x4jSCTF8XW8q8sVyugsdpw,1360 +torch/include/ATen/ops/addmv_meta.h,sha256=7h8nA3GRbt-w4RIlh8_cGyx_1Zj3pPXBn_NhzOows3c,700 +torch/include/ATen/ops/addmv_meta_dispatch.h,sha256=N_wgkNgBmKvVxFdZt_6pP09P90jAqaTxj-78G-YC9_A,1360 +torch/include/ATen/ops/addmv_native.h,sha256=E1fLpEmLD_ToO_UNQIIuPtuptBK7SnUrL-Zk9raU488,1360 +torch/include/ATen/ops/addmv_ops.h,sha256=Tr_sb1ets_qp5T6Zne5EpPfxNWMN9_TDYgaIhRjeRFA,3069 +torch/include/ATen/ops/addr.h,sha256=y_-iMSWoGvv5J3_gpb552G5fWjOTwa-Qq_NLSDQWbB4,1583 +torch/include/ATen/ops/addr_compositeexplicitautograd_dispatch.h,sha256=Pu3Q4q9WKUHWhv49gw7odUfi8tIdhts4L0_V2pJnyzQ,1406 +torch/include/ATen/ops/addr_cpu_dispatch.h,sha256=Ad2wCQk2lGhduInrg8SfK-iI4k1uY62R0FtqwAsgWaY,1207 +torch/include/ATen/ops/addr_cuda_dispatch.h,sha256=_h7SOKKDvFjPU6imqBROBX9ti1V_832g1aWyfHVb-GM,1209 +torch/include/ATen/ops/addr_native.h,sha256=fdcLW-qIwTAAB37Ip0wmjnuT_A8AY7eZ455Ftgc4R9E,1279 +torch/include/ATen/ops/addr_ops.h,sha256=JebU8DhRGyXGsyhjjYcS9fWGlNQP1VYLrq_aFBcnpq4,3078 +torch/include/ATen/ops/adjoint.h,sha256=e2jnWi2jaEEBvCYk5pyMFBBxNNipDpgkkodit1KR9-A,654 +torch/include/ATen/ops/adjoint_compositeimplicitautograd_dispatch.h,sha256=FPY3WClLDGQ6IroX8yVlxBui1KOhBXOossPthMf1kwU,788 +torch/include/ATen/ops/adjoint_native.h,sha256=2Q5wVALoXbPYRJdV09GjsehKAEC4qWba7_bxnJCz7Rk,498 +torch/include/ATen/ops/adjoint_ops.h,sha256=u4-Z-R-kYE6ZiBuPA-KnnpubbdVepFEnXWj3wSRKqh8,971 +torch/include/ATen/ops/affine_grid_generator.h,sha256=l-oUIYr5J-wFcrrMNTIfMF-wtrgUnEgwgSGL5JRu3R8,4594 +torch/include/ATen/ops/affine_grid_generator_backward.h,sha256=Vb-BN4OqCWggku32ff9PxFG394TKEBaF3Xs3qW_4U_c,1841 +torch/include/ATen/ops/affine_grid_generator_backward_compositeimplicitautograd_dispatch.h,sha256=IHIvxW8yQI7z57xB-43dbjfRGT1WpU_UeFgsBgeFdc8,985 +torch/include/ATen/ops/affine_grid_generator_backward_native.h,sha256=sJW4FN28mjYez9l_aurrO95pp9onli1UN1tN74_l7v4,563 +torch/include/ATen/ops/affine_grid_generator_backward_ops.h,sha256=izsVLFnNutlhWjNWqZUnNjwiNbLAatzubFSBo_EXnrY,1188 +torch/include/ATen/ops/affine_grid_generator_compositeexplicitautograd_dispatch.h,sha256=kdEp4zMDwPc8Qv2O__xANsDdeUbWCsNdtmEq0sSWjas,1541 +torch/include/ATen/ops/affine_grid_generator_native.h,sha256=1e7EQejq8jVgVYq4One5ecgvV8O169k-ZLPs9HuYwmo,703 +torch/include/ATen/ops/affine_grid_generator_ops.h,sha256=P7JqVjHh5zognUC1fdIo0P407k84jd3OBcOOHa28SnI,1967 +torch/include/ATen/ops/alias.h,sha256=LoW_sujJ2PoePCm_YzW6qe1Erc_9OSj4Wc0Pcjc5rk8,646 +torch/include/ATen/ops/alias_compositeexplicitautograd_dispatch.h,sha256=YGYejf7wcZFLObDvfTta4CRehSr8uh7PhlBhQXS9kfQ,786 +torch/include/ATen/ops/alias_copy.h,sha256=CUN8qWsOICZMT0VZC0-WAUEyuOOK7-wP4T4uJh97fwY,1083 +torch/include/ATen/ops/alias_copy_compositeexplicitautograd_dispatch.h,sha256=VogW3NiMpavSHQTn9loWTpYTHkMLNyy4qwLjJA9Pp6k,899 +torch/include/ATen/ops/alias_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=njuEY_U5G3uOwrKZ2CwqHxhKPNVGayLQG-QpQRT4lBw,817 +torch/include/ATen/ops/alias_copy_native.h,sha256=DeU3yDd4iEGD7eIEidVyOAs3bkr2JAt2LUq7JvFgImg,584 +torch/include/ATen/ops/alias_copy_ops.h,sha256=V56OUDl0_UADI4yRTzwHmhVqRn-nuNV9Js7QOpCKKfY,1587 +torch/include/ATen/ops/alias_native.h,sha256=dtZAnfLJvJylpwcsZK4C5173VjxExDmfHJHo7fArGsU,557 +torch/include/ATen/ops/alias_ops.h,sha256=iJeaDk19ubHMspaoK4_AZFLk-GzOFGrkidXxuaM0LMM,965 +torch/include/ATen/ops/align_as.h,sha256=wmkjjaUGc-PbYiv3SEbKrvSbxtQTd9VXyW4FN_Lzbf4,508 +torch/include/ATen/ops/align_as_compositeimplicitautograd_dispatch.h,sha256=tlpoGNBPlPpa1z07qgFZNtmUF47c7tGnTP9wD6ohxk8,815 +torch/include/ATen/ops/align_as_native.h,sha256=zQpQcIn3Ssx5vumwiIpLE7NFbm8wnICRniWxo4O18rw,525 +torch/include/ATen/ops/align_as_ops.h,sha256=rLWQzc-0-eeGt8ByYDRc-Z7CygV8H8YR17sFCIbl3I4,1054 +torch/include/ATen/ops/align_tensors.h,sha256=GK4Eph0_duAcjSUw_Op4lPZFfGrrIhJz9TnJDEw-IOM,696 +torch/include/ATen/ops/align_tensors_compositeimplicitautograd_dispatch.h,sha256=c7cr0qF2bAQ4xPVMUKa8J3ZbGuX1G8HukyF8aTwjiCA,808 +torch/include/ATen/ops/align_tensors_native.h,sha256=qgDupCqjpecqzUGPPCkxCAzI3OP_7-qzi7gtLAdIXRc,518 +torch/include/ATen/ops/align_tensors_ops.h,sha256=p0MfcJcKISNRCAhm-ugmf8NHS2dhbg9EMEpbZpmciTg,1029 +torch/include/ATen/ops/align_to.h,sha256=ZMLUxNQFYn1kaGdwAxmPpvUB5z9n2HWcAD-HQ6XvAQ8,508 +torch/include/ATen/ops/align_to_compositeimplicitautograd_dispatch.h,sha256=0dY_bHaC5d_0xfIsZfbhADzLlrxSeE5iC29ZAfSuuVA,914 +torch/include/ATen/ops/align_to_native.h,sha256=b6LerdFjHOSGmRyc-kyvg8YrJBqsQ2Zrq7rbJyLlqqw,624 +torch/include/ATen/ops/align_to_ops.h,sha256=pCbJuf6nfv2Htz8aRme5hfJIzqe80sNxu3XWFFh0pno,1766 +torch/include/ATen/ops/all.h,sha256=sHMTVO5efLGD--j8p6zmfrnFzlktZUTGUR8gXyLfbDU,3413 +torch/include/ATen/ops/all_compositeexplicitautograd_dispatch.h,sha256=L-7SdLRArZIrL1j9l3xshgOjoFDV9JHrzmCtepw89ZA,1078 +torch/include/ATen/ops/all_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ib4UaDwcgDcjRDjVZ87gTYBWIg2vq-mJMeW2VqqXvQ0,996 +torch/include/ATen/ops/all_compositeimplicitautograd_dispatch.h,sha256=__Vecm_Je74i6QpwabblslaWCguVS1dY7mN-WQsJELI,1042 +torch/include/ATen/ops/all_cpu_dispatch.h,sha256=QmFEKXW9KQJKxaFhTNTU1E8okhEtBpx4fG7ORTx5Zzs,1537 +torch/include/ATen/ops/all_cuda_dispatch.h,sha256=Gybmy4ChVeEa8JXvrwOoEVohM4ClkXfZuiceD8u7ja8,1539 +torch/include/ATen/ops/all_meta.h,sha256=Ha8a55WuGIRh8aA0g39NQIyBvoerbeYZ8ndyNs8c4KY,918 +torch/include/ATen/ops/all_meta_dispatch.h,sha256=T0R4CY0VUlScdS_LZ0IiHk-NKBClrQp3UUZeSHFFx0g,1539 +torch/include/ATen/ops/all_native.h,sha256=_70z4NJRunPthhH4U2kGyh2N2jsMMBRs2ytZ5qh9gMI,1529 +torch/include/ATen/ops/all_ops.h,sha256=mZdG0AjyoHBfms60zaPD6x-GaHISx4IAbbE4gwEFpZY,5658 +torch/include/ATen/ops/allclose.h,sha256=gNKaszKUe-i21VFG0EL5AgTijSPwqeRux3RItOBp9J8,832 +torch/include/ATen/ops/allclose_compositeexplicitautograd_dispatch.h,sha256=R-JiN6b_MRzVICJAkkht9QVDdAbg_lnFZG5AthSxGyk,869 +torch/include/ATen/ops/allclose_native.h,sha256=0PPUiEle20Ee4WEBNLvklKgFQibDu1iJXuPjFCGJmr0,579 +torch/include/ATen/ops/allclose_ops.h,sha256=zjV_7pN5ZU167XC0vYSfRJFTWqH_Jh_ZF1OLmrj5ZGE,1198 +torch/include/ATen/ops/alpha_dropout.h,sha256=Hz5xNIgo2MPzK0C1e-CTgvfCm7pA0lwanLIAYIFYnnE,949 +torch/include/ATen/ops/alpha_dropout_compositeimplicitautograd_dispatch.h,sha256=x73XS5LPGg-TIKupbPTG2stRbYffVSyeVO7MudlXQ60,898 +torch/include/ATen/ops/alpha_dropout_native.h,sha256=CiQlQQ1-RdbgKmSSdZkxMq6stlsXIyYfCWvmj3l1lG4,608 +torch/include/ATen/ops/alpha_dropout_ops.h,sha256=_QUNcyU-VGky4ojnFFvKUf7lthKqufj56_HeSdo18V0,1675 +torch/include/ATen/ops/amax.h,sha256=T9UIABZtOlUfEkzVi5i0RSEx3OyjwUQTcwX3SytTMLs,1293 +torch/include/ATen/ops/amax_compositeexplicitautogradnonfunctional_dispatch.h,sha256=cUvEsfROV2xAZC_gORt9KWpohJglhmKm3Q1TjUoQAhE,855 +torch/include/ATen/ops/amax_cpu_dispatch.h,sha256=L3Io7YJekxVzTPs1lkYyVKB90eC1009aCbhKdnevlE8,1019 +torch/include/ATen/ops/amax_cuda_dispatch.h,sha256=8GkNJySA75oZrJeKt515gv4fgi1w1tHRirUcLFQWOog,1021 +torch/include/ATen/ops/amax_meta.h,sha256=1hsho2CCGGz7w7Jgw9sW_tOgu_ZWhxEPUphfIh8RHlQ,635 +torch/include/ATen/ops/amax_meta_dispatch.h,sha256=4_jLAJMOqORNjlvqC0gQa2-yMwGZtct-xU9s4WVTb0Q,1021 +torch/include/ATen/ops/amax_native.h,sha256=052N_Y555X0ZFEfd2NZE4ZslhEBLy5pUGvqS4i_WGXs,648 +torch/include/ATen/ops/amax_ops.h,sha256=dW50TcmBMxSe0ug7G13Y98yvqm9E00-RYQdJnzkMWWk,1807 +torch/include/ATen/ops/amin.h,sha256=N7wqyHT3KNjewNFD8pCWvcpVy0VfH9jUUofklZq2WYE,1293 +torch/include/ATen/ops/amin_compositeexplicitautogradnonfunctional_dispatch.h,sha256=En0nxcY3kr0CbwyBqqvwwf7Ja4m-WyfDWHVEPzAijbY,855 +torch/include/ATen/ops/amin_cpu_dispatch.h,sha256=nXJ1hXPcRwHcmRec3C5oCcffrKOvE_fJYSdGpqr4_X8,1019 +torch/include/ATen/ops/amin_cuda_dispatch.h,sha256=YVBsfmOkpdZVH8SD0P6j-5xMKaV-ONQNT5-k9HkS45k,1021 +torch/include/ATen/ops/amin_meta.h,sha256=Mg1rkvzBo5ErR8iJ9EJsFj1P69Ntu24NKy2QUZO6ru8,635 +torch/include/ATen/ops/amin_meta_dispatch.h,sha256=3lirtjqNm-8r01-B_pVfxah04CH-qMapkxXfQZLZTOk,1021 +torch/include/ATen/ops/amin_native.h,sha256=Tc11u4hOTPAD3znpQjHFFXgREYu25ufivR8tEu02V54,648 +torch/include/ATen/ops/amin_ops.h,sha256=evDhZB-1lfqJ1A2cHdc6RJR2jIJf__WIeS1VhE8-Eig,1807 +torch/include/ATen/ops/aminmax.h,sha256=nk4Ig5T-eKTYdzOC6trl88Ab1I27PQ_FMehMyTq1o0Q,1596 +torch/include/ATen/ops/aminmax_compositeexplicitautogradnonfunctional_dispatch.h,sha256=EYbaxTx9itW8_PDWgePYhv4dPfl7GngGu3zSADR_J2w,904 +torch/include/ATen/ops/aminmax_cpu_dispatch.h,sha256=K9mt-A8l2ObTFMI-Dldi3Bz_7cmmG4UWOoelg3opgwI,1194 +torch/include/ATen/ops/aminmax_cuda_dispatch.h,sha256=AQTOXfoE4yivE-5VnLX4_Nder2G3ZJPk5-FAiLC8tFA,1196 +torch/include/ATen/ops/aminmax_meta.h,sha256=yB7T8U95VKURMXLBG3os-CevS8kUtrvrqtZHZHzsA9Q,647 +torch/include/ATen/ops/aminmax_meta_dispatch.h,sha256=7W-jtU6YFz9fn5CaihbEnqU4d4Rglau8D1QEobHFvKo,1196 +torch/include/ATen/ops/aminmax_native.h,sha256=Ti-YhjzfSSPI20smu0F9Qth2HfrowIx1aD0lwTH4pgo,690 +torch/include/ATen/ops/aminmax_ops.h,sha256=wdYAS85vcGPmZRod4hLp3GciZyM8v_ntID97BD8wKGM,2144 +torch/include/ATen/ops/and.h,sha256=LardpM2qrZLYCkoRMeDOlKoyr2oJpH-jR7Yk0f7bQ90,909 +torch/include/ATen/ops/and_compositeimplicitautograd_dispatch.h,sha256=kVXrgnVXq2EJgvFX7mi6dWxUFjvNQMPuabcp3rtJ3t4,1054 +torch/include/ATen/ops/and_native.h,sha256=vXcJ8Nbe1IRrCQYPsVS3iE0GiEcRQ3EEIt_3F2_TJU8,764 +torch/include/ATen/ops/and_ops.h,sha256=DqXCFH_MxOe3mKEqBlDMMga6ihulMrv_mt6_8c3Jxx8,2929 +torch/include/ATen/ops/angle.h,sha256=e7CErvvcFqb2RGFafbs5C_6C3WqRvYyDAbgCxwkn_nU,1033 +torch/include/ATen/ops/angle_cpu_dispatch.h,sha256=A_fIWZOt5ofFVODIuDBaxjxDhpn58DdhEJe8kjCVt28,899 +torch/include/ATen/ops/angle_cuda_dispatch.h,sha256=Ond7AUHfyyxLp5iFuYchqpFsGviyAV7wkl282ZI68Ho,901 +torch/include/ATen/ops/angle_native.h,sha256=GAQS-T3QelINzJhTt-HUzF2uDFjQLvQM5hY1x1fkRec,728 +torch/include/ATen/ops/angle_ops.h,sha256=FF95yKZzzNijsB0sOlmh_LMr9SDUNZ5NxReq9B7RcLE,1557 +torch/include/ATen/ops/any.h,sha256=XtyrfmgmCaYE2bxzpxhiZ9xOJ9MCGmtqPFtk_TI4uX0,3413 +torch/include/ATen/ops/any_compositeexplicitautograd_dispatch.h,sha256=lPZ7HZfnQLtrezhR2v7X0i0p-AA5IwkDyVEy5SkX8dY,1078 +torch/include/ATen/ops/any_compositeexplicitautogradnonfunctional_dispatch.h,sha256=roXNPoebVBtV0hkZ4qjT0W1mfr_YzjwRFmlKM7qEHOU,996 +torch/include/ATen/ops/any_compositeimplicitautograd_dispatch.h,sha256=A42OgdYZM-nD3TNoLsGX5celIOPMHBBDBoXRIKn9xwY,1042 +torch/include/ATen/ops/any_cpu_dispatch.h,sha256=_8jbX3Cl8ZHMsM5pWObDRFfxTLSDrhg1u6uier7xoFQ,1537 +torch/include/ATen/ops/any_cuda_dispatch.h,sha256=UnG8m19gUKe55HibKBs5c-nU7altx5fIxmedznGO138,1539 +torch/include/ATen/ops/any_meta.h,sha256=VYy94mcnKDOfd0eRxsCQkPtKoitvO50kfy2WNYIvAg0,918 +torch/include/ATen/ops/any_meta_dispatch.h,sha256=LS3hfDPVYVmJv1ibAN7MjN35dGgEri6tdcHldC-wnPo,1539 +torch/include/ATen/ops/any_native.h,sha256=X0V_YGlMNHhcWgjoQ74nSkHlhcVq6REqj0Vx3KoCzCw,1490 +torch/include/ATen/ops/any_ops.h,sha256=edjxNIoSzkGDVQphbXC9s6dEERuax9N7fUitErTaXKY,5658 +torch/include/ATen/ops/arange.h,sha256=jt5hVWQhE4uLHzIqYbqTglUxQjw0b6MBxIR2UNdzcsY,4218 +torch/include/ATen/ops/arange_compositeexplicitautograd_dispatch.h,sha256=qsXrPQwBdm-60ISMPdOQ08Ot9hcUq049uTKpH7Cb7V0,1892 +torch/include/ATen/ops/arange_cpu_dispatch.h,sha256=ucekjPPT4IDc9V0tD8jSSvJrb7_E01QaohaKLvGg5vc,947 +torch/include/ATen/ops/arange_cuda_dispatch.h,sha256=jb52TldaBy4p2th9HtW_yXi3FBkkfm_a2HisU_EqSSs,949 +torch/include/ATen/ops/arange_meta_dispatch.h,sha256=KKlCqxWYanA54fiDiT-Lcic5uEb304obAkEr-rcpGv0,949 +torch/include/ATen/ops/arange_native.h,sha256=OWRB1APQRxTD7_FBaygtrek7agG9nJaTnrVR9M6LvdY,1495 +torch/include/ATen/ops/arange_ops.h,sha256=pcXXbtNzbDDue7AOWca9cCle77J1YbG-EnlLsm_AwSY,5154 +torch/include/ATen/ops/arccos.h,sha256=aWQM-j5DdnbRbwo1_ozwcnvEqHHmOq8JRieCodV2Oc4,1190 +torch/include/ATen/ops/arccos_compositeimplicitautograd_dispatch.h,sha256=7q2DPNsL2g5O7fY031Emmm4IK4rKHke5z_gy5mwladA,998 +torch/include/ATen/ops/arccos_native.h,sha256=hIeswCCStWoYWI2E9kL387mCFcs6itqJ2LvvoMPJzT4,628 +torch/include/ATen/ops/arccos_ops.h,sha256=G-pjxbDC9ahqrZLOLEm412nG7zmALhUbSPwQPXc6bVs,2073 +torch/include/ATen/ops/arccosh.h,sha256=q5wrJP4QbUAIcuwNHYO2QepY6MRLjqsfJ-ukMF7T-sE,1203 +torch/include/ATen/ops/arccosh_compositeimplicitautograd_dispatch.h,sha256=EYaIHZ-8Fu1cO0yyS6UzZI926zUItJn4FxNBm-U8cgk,1002 +torch/include/ATen/ops/arccosh_native.h,sha256=Cva0FSKM4gB6PtCQyyvuEYPwXcVPl1zDtAls1EZnLzw,631 +torch/include/ATen/ops/arccosh_ops.h,sha256=TlCpCAaCeMCx5GI3rQktcQ5jNClWC8Svgb624SymicM,2082 +torch/include/ATen/ops/arcsin.h,sha256=T0EdXK6BFounU-HimdWG1LATVoS6mg0g9rAHmAI7aUc,1190 +torch/include/ATen/ops/arcsin_compositeimplicitautograd_dispatch.h,sha256=4DCjrlvi6TkOqy8s_tCgf3jD86dq458sCVi2dSGVt-0,998 +torch/include/ATen/ops/arcsin_native.h,sha256=PSB77b6ZnUfxeBMM8zQ-ac8Nfddf5d_q6_gEWvUC9R0,628 +torch/include/ATen/ops/arcsin_ops.h,sha256=UmvYz84uRckEtOZa8NMbebjIsrE5Mb7hKhbCl-njGS4,2073 +torch/include/ATen/ops/arcsinh.h,sha256=ZYOfRfydRi71-22ixeiwp9vBCZYvR95K9-J5JTbQnXk,1203 +torch/include/ATen/ops/arcsinh_compositeimplicitautograd_dispatch.h,sha256=FRw_r449rpR-WM4JAn46LmszZOvasGaB-MWGr04rYCM,1002 +torch/include/ATen/ops/arcsinh_native.h,sha256=KuR6ZcvSC0FSPY_Tnvr5J0YCCpQFkJFRf6rgzKwjeYU,631 +torch/include/ATen/ops/arcsinh_ops.h,sha256=dmDY64_2Np2SsW62ij0W5py9ucLwFrnC8cBrkI6KRWw,2082 +torch/include/ATen/ops/arctan.h,sha256=UD_ug72ICSojZPsih03longTc-w9mU2NMixMLvi3e0c,1190 +torch/include/ATen/ops/arctan2.h,sha256=Abit_Gspg_Ah-2sUkcIJ9g1ZsvCxY-sEaNHWNemiKvM,1194 +torch/include/ATen/ops/arctan2_compositeimplicitautograd_dispatch.h,sha256=HuWEeJ1xBvhfxnhGooqoznT_FP8OCUv8P3oalFXfLDY,1106 +torch/include/ATen/ops/arctan2_native.h,sha256=BsLR6ywZj_AXCnjnJT5hwmc5rCiBoZR_RURamLq4K1Y,709 +torch/include/ATen/ops/arctan2_ops.h,sha256=H2NLMvIo_syAHUo5lgIeb78NFp6iQL_pBUV0xP9pI_s,2340 +torch/include/ATen/ops/arctan_compositeimplicitautograd_dispatch.h,sha256=2IppZI3w9gjusdVB1A-I8OSVMlnkG6uR-B1rWWdFoLE,998 +torch/include/ATen/ops/arctan_native.h,sha256=OtpQKK_pKNoPg30I1HdOk8MpIdI7Q3_H81lvGLXxv94,628 +torch/include/ATen/ops/arctan_ops.h,sha256=g3NeVFYdwg66zDyb7gBg-2qr1SZzpfRIcTEm-SMzt4s,2073 +torch/include/ATen/ops/arctanh.h,sha256=eCGbV_AxJJCS_9FrS8L5tHUHO5MDuF9U2iauzVmNzmk,1203 +torch/include/ATen/ops/arctanh_compositeimplicitautograd_dispatch.h,sha256=CLHwky_TT5hLXZwUjmgpa2GN4S-_rX4R0llLKm7o_-I,1002 +torch/include/ATen/ops/arctanh_native.h,sha256=4X4f71Y68S_Oz6LSro-ypM2g3faAG9Ip9i6Sy7NTTBo,631 +torch/include/ATen/ops/arctanh_ops.h,sha256=MROh0Gikh7d99ngtpLCMbT8I4wWFGxNTgLQfPBVAmQI,2082 +torch/include/ATen/ops/argmax.h,sha256=t28c4ff39mnPNJVC-YU-GUMzJ-Zoj3_RX0UYw50PqSM,1364 +torch/include/ATen/ops/argmax_compositeexplicitautogradnonfunctional_dispatch.h,sha256=iEiWw0Q9lTOnRqkwgbQeCJwu7XoE0MC6ACjCa57Ob6k,878 +torch/include/ATen/ops/argmax_cpu_dispatch.h,sha256=eDs03MEmIxhiNKSkhxKSMguX5P1YcSX03yGT8DoapgQ,1076 +torch/include/ATen/ops/argmax_cuda_dispatch.h,sha256=7oMtsfCygRM1xKAYCIsnWOER1Nl6dAjqSEOh6TWXiKc,1078 +torch/include/ATen/ops/argmax_meta.h,sha256=JD-f3m-okIS_rdNXPS2RO1c2x67uKELg-wsKbUsCWYk,646 +torch/include/ATen/ops/argmax_meta_dispatch.h,sha256=uD_iFuRzbRCtxdZ9hEcNu0MpWYxfMQpUR8arMba7hQw,1078 +torch/include/ATen/ops/argmax_native.h,sha256=PGqeAJ0QjlTI3A_JlQKadbCxOpzwE6lqJ1xXHvZXg0Q,663 +torch/include/ATen/ops/argmax_ops.h,sha256=OK7e4FxCkRFvFAKEdENFHS1dk5Lku4_35OYY2pgnJcA,1873 +torch/include/ATen/ops/argmin.h,sha256=D1ZEGmEgbeMbZaltra-zbIgnaZ6B3ldHY0uJlX1i7Zw,1364 +torch/include/ATen/ops/argmin_compositeexplicitautogradnonfunctional_dispatch.h,sha256=RF5Q-FQlz2lNghJ5ZqUyPg-X4NQaUiBzkjJW6lezwDQ,878 +torch/include/ATen/ops/argmin_cpu_dispatch.h,sha256=LH9h5vxwb-_fEkdumOMFJ6ixgcTRoFT5Zuy4K3gxkjc,1076 +torch/include/ATen/ops/argmin_cuda_dispatch.h,sha256=6nfimgKRYih7icR1mTVYaN9wv3H80PbuTdW0LorjY60,1078 +torch/include/ATen/ops/argmin_meta.h,sha256=Xgd54WAPLpVriKXTMHY_ksAF9LgAWslsNGIZUVwzjbs,646 +torch/include/ATen/ops/argmin_meta_dispatch.h,sha256=GeGAs7q8pHwfJWN5i9LWNHrUuC_BY8rN_tOwwlI14VI,1078 +torch/include/ATen/ops/argmin_native.h,sha256=JJlWafFzmOLZkqKEJr9fx-R6TuIQ-RrP6PObvbGk4Vw,663 +torch/include/ATen/ops/argmin_ops.h,sha256=FZeKl05sx13nvvcaLRoX_j3SNCec59ATxfIsKECnvNU,1873 +torch/include/ATen/ops/argsort.h,sha256=WI0gOUbMqrIcY1lzMG9w6_Gzkp6BLBaQR-gTN7SunHQ,1950 +torch/include/ATen/ops/argsort_compositeimplicitautograd_dispatch.h,sha256=_f2bCz7-z6BGHLwc_lr6r-9Z6IjDB17c_8L-HYdta9g,1287 +torch/include/ATen/ops/argsort_native.h,sha256=hK-uYvQ3bpcqXN7dqCOLDK0EUd7AGET95jM2WVOv528,864 +torch/include/ATen/ops/argsort_ops.h,sha256=f4rjim3I7CMwUUSjo5Ag3S6oU-Gw4lTSN5G76f92Y0A,3207 +torch/include/ATen/ops/argwhere.h,sha256=-CpA_Ta7H-VuhGe-3W-NbiKYHUWjSZuEOYyGdb3Y33w,652 +torch/include/ATen/ops/argwhere_compositeimplicitautograd_dispatch.h,sha256=y92LhevhGwzuQLV1Pun-JN-IXE9RIuCSfzKDEnVety4,789 +torch/include/ATen/ops/argwhere_native.h,sha256=mumJ4COBb5T8ASt-WeSQonYqbPpg7yN3Mn6AO9K6V1w,499 +torch/include/ATen/ops/argwhere_ops.h,sha256=9lXtT8GuFnByyQcGfwl9c3QhCx3BMTnFRUCzhO1gA18,968 +torch/include/ATen/ops/as_strided.h,sha256=zLVrotX2GJOrKVjBmuiaUMTmg_8nNpfN0JKCPKKeaAI,3924 +torch/include/ATen/ops/as_strided_compositeexplicitautogradnonfunctional_dispatch.h,sha256=TrdtisJBlDOu7qzEtJxDApOJHB9m-OEUJnJKbaFe1co,1117 +torch/include/ATen/ops/as_strided_copy.h,sha256=Y1bEZDjSiQJzCZP1KYRoch4v5x8k0hmHUiqm-e9x-Zo,5998 +torch/include/ATen/ops/as_strided_copy_compositeexplicitautograd_dispatch.h,sha256=8UhnkI0G8EZbqpi-XY905_M7GjF0Ht8cZdIvy2ONPc4,1502 +torch/include/ATen/ops/as_strided_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=YcNFbvAhmoSzuGmCkFOWNPFCr9tto2ndkPi0C6mdO0c,1109 +torch/include/ATen/ops/as_strided_copy_native.h,sha256=lB9yiOiVozQR6KU1nW1u6X4Vgrp5xN8ebXmk34S84z0,821 +torch/include/ATen/ops/as_strided_copy_ops.h,sha256=gJlbCQxAeQBHGj0Pj2vYMuv28dJcXDSIyS09CXEaZ1U,2279 +torch/include/ATen/ops/as_strided_cpu_dispatch.h,sha256=2oup49AdZJvke-mWqliPEKYAWfUThXzy4J9Ur10_pXA,1029 +torch/include/ATen/ops/as_strided_cuda_dispatch.h,sha256=noV2BDzlT97oR074NiXQacO3b0sYeVjm-gToCiF5BXo,1031 +torch/include/ATen/ops/as_strided_meta_dispatch.h,sha256=stZ_iNlOqEPXU0HmzhEp78pxpQfG-hHlDQ76oXaBdOs,1031 +torch/include/ATen/ops/as_strided_native.h,sha256=cO7BeNOE_2ngALVujFVk7gX8VrVsYP9qebxz87-hAG8,1172 +torch/include/ATen/ops/as_strided_ops.h,sha256=pWQChQKogh4ayUDJmvmS_QYDIWi3Elt5ZJVcB68e0no,2200 +torch/include/ATen/ops/as_strided_scatter.h,sha256=JhnCxu2K_cqWdjHRAv-HgNAuf2_WOYgAQBlRiU5wIP4,6511 +torch/include/ATen/ops/as_strided_scatter_compositeexplicitautograd_dispatch.h,sha256=5pmPPRCYNJFt99bkMgn00Ubs7w9PvtLQoLGk7cyI90U,1610 +torch/include/ATen/ops/as_strided_scatter_compositeexplicitautogradnonfunctional_dispatch.h,sha256=avEaMQExziIY1gq3bTYGTE_vzf-_YX8lKLOZAJGoPEI,1163 +torch/include/ATen/ops/as_strided_scatter_native.h,sha256=QJaAOkJKQzcwUdMiBqaOPHVa97nfultY2Avnmbyoy6o,875 +torch/include/ATen/ops/as_strided_scatter_ops.h,sha256=QiAy8FK5gtptXo9gl9CGBXJSF7xZMSH8osaxcHxdzjw,2457 +torch/include/ATen/ops/asin.h,sha256=NQLP3Y-kJLuvDLEu2FECILsBgaymF42RD6U093KtAxA,1164 +torch/include/ATen/ops/asin_compositeexplicitautogradnonfunctional_dispatch.h,sha256=wnlTtsc6jXfEq0nQpwfAvx18JFWK8vMf5dQ5lXwKJPA,861 +torch/include/ATen/ops/asin_cpu_dispatch.h,sha256=6JxahdkIjdn5UQZhKI8_1qYluTZAkeBA5tzsH2GITtM,946 +torch/include/ATen/ops/asin_cuda_dispatch.h,sha256=7mhWp4u0wO1OsRsmAgDeUF3GhPR1b57jHGE7yiL3QU8,948 +torch/include/ATen/ops/asin_meta.h,sha256=4v_xsI-3a6mLVGJFqoIymG4ckMLOiOly-qRKuyEY3Kg,600 +torch/include/ATen/ops/asin_meta_dispatch.h,sha256=q4oVLO9VomRxVbhkTumPzzaGtoyjS7riswcFyhRT-a4,948 +torch/include/ATen/ops/asin_native.h,sha256=eYUE3Wn5lzhmZZR2VqJe2yTFvLoVxgrfvJpSBTy7FnQ,1027 +torch/include/ATen/ops/asin_ops.h,sha256=CLn4L9C5gubJCQgG5oUTc4InCAFIBJTlJOGxpEll8ow,2055 +torch/include/ATen/ops/asinh.h,sha256=Zo9kqUK68OFlX5-QcV8DPZIeHwDblzFO7w7Gi3BPvOY,1177 +torch/include/ATen/ops/asinh_compositeexplicitautogradnonfunctional_dispatch.h,sha256=gBgAvhTYrkVoN9JryKpNR_Xex1NqZFScCi3rPsVSreI,863 +torch/include/ATen/ops/asinh_cpu_dispatch.h,sha256=JE23tq8U2PciyPub4h8kUaMtJ4rju6DcsdfgzvHQLEo,950 +torch/include/ATen/ops/asinh_cuda_dispatch.h,sha256=ptJkuUf5i-93ynPYdiKJo884PNQ-kCefida9AFeghKI,952 +torch/include/ATen/ops/asinh_meta.h,sha256=xlbiO4ipscYGmrtRNaW3qCw3jV428D8wUbkD8rQ3eJg,601 +torch/include/ATen/ops/asinh_meta_dispatch.h,sha256=fMokD40H-xZCFjpt0LkfLl6HCeUWWT-JvWkVz0Aq1gU,952 +torch/include/ATen/ops/asinh_native.h,sha256=QFQC7-clZyqFfWCWfCpZWrE0ykV7wI5-khEw0cbunqA,1036 +torch/include/ATen/ops/asinh_ops.h,sha256=yRUuD0KAt9h-NfC-BqeUSaLiknaiTJPiCVKXx_64jwg,2064 +torch/include/ATen/ops/atan.h,sha256=U3cvg3L4yhwu5mL8BVyafe19_-VNo-Fcda3FrVNzJOE,1164 +torch/include/ATen/ops/atan2.h,sha256=D3gBENrg_jJIlqMYwllmazCJH8JEQG41xGW82BrE-M4,1174 +torch/include/ATen/ops/atan2_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ElTWNSAj1APWClWjkTySgf_e39cfquV3TbwmkjONX40,915 +torch/include/ATen/ops/atan2_cpu_dispatch.h,sha256=Q3DVI8Jfp7yof-tHBcoqZjI65Qw3tTWNyXGb_9EYOoE,1054 +torch/include/ATen/ops/atan2_cuda_dispatch.h,sha256=rr1i-I3YTTQbkc5wVPTFQAtFxRoZ3TQJ7V6xTKdtF40,1056 +torch/include/ATen/ops/atan2_meta.h,sha256=3UnH2mVfgg1IeZXj3pHhYAIiGCrZ0EpSqhYU6R6NN9U,627 +torch/include/ATen/ops/atan2_meta_dispatch.h,sha256=r_l9vlX74cr221srdhiDtt6-hX1MV7bzrHjZssxPs1w,1056 +torch/include/ATen/ops/atan2_native.h,sha256=OlWyoqBidcmeWVOaA0mtXMJKjBZ3rnZsckF16SqN3Ic,642 +torch/include/ATen/ops/atan2_ops.h,sha256=XQMGVO5FfKxkmoyk6uNGpJ8bH2a8YzdnGO57bpFuMHM,2322 +torch/include/ATen/ops/atan_compositeexplicitautogradnonfunctional_dispatch.h,sha256=5KKyBVSYLeEv0RoFZkUIlO947syiJHO_CLYLbVGQ718,861 +torch/include/ATen/ops/atan_cpu_dispatch.h,sha256=J08mYAiyy20j_8b4oz0naRHQZVfiU77dzbLdZsixoUo,946 +torch/include/ATen/ops/atan_cuda_dispatch.h,sha256=46f1vZmZZMTjKc2CE2UQVVpsH6eVfqhqKwR_yQwEaQY,948 +torch/include/ATen/ops/atan_meta.h,sha256=_Cg8l8b8lO7pjQfMja3r7qIj6qlLy9c1JEJFR5J-5uE,600 +torch/include/ATen/ops/atan_meta_dispatch.h,sha256=mi5oyOC2LG7mcTX2hVjY771yKSHiS4Dxo5Q38eAP7O8,948 +torch/include/ATen/ops/atan_native.h,sha256=1ou5z5QEtW9DvXZ4VG0D-IXl6BYQbPZGz9yGCU4CUWg,1027 +torch/include/ATen/ops/atan_ops.h,sha256=jC-x7-Q4kxPPMeLnG3y-VJ5yD8vJpNoWvIxt11a9DSI,2055 +torch/include/ATen/ops/atanh.h,sha256=pxlB_7kZtKpKEpWhvTdpKkkJk-Zkqs1GzmW8fo-CwbA,1177 +torch/include/ATen/ops/atanh_compositeexplicitautogradnonfunctional_dispatch.h,sha256=DSXQEq-UMxwr1fUmlTSkPRPYIFzOQ4czxciu71tBzos,863 +torch/include/ATen/ops/atanh_cpu_dispatch.h,sha256=-1XhblogUyRFizgr3FJv3aAWlSwi4c0CE5XJ_7k1DbA,950 +torch/include/ATen/ops/atanh_cuda_dispatch.h,sha256=AlLK1E2-m_Ox99TDAb5QTenk2-fkw1OvYuGrvnx6rjM,952 +torch/include/ATen/ops/atanh_meta.h,sha256=5WdlD8OEzAJg-BJjHcEWAyaha8nA5meo4eyVEcmE87w,601 +torch/include/ATen/ops/atanh_meta_dispatch.h,sha256=0OuCwktLRCLA7p2bFMBGOCFHf0X2LqKL5Vy7Jm9o8sc,952 +torch/include/ATen/ops/atanh_native.h,sha256=ZmSDLDsMvU4FyhowU39yA_L4pZXZ91_KDifZifkgG6c,1036 +torch/include/ATen/ops/atanh_ops.h,sha256=vhIOu4T83JZ2A5jOYOSno2BIyg9GBYAhj4KLN9eCcwE,2064 +torch/include/ATen/ops/atleast_1d.h,sha256=cXk7mncXgylCqtz-8MIRXsX48TqIi_PGto0R2dfsOjQ,854 +torch/include/ATen/ops/atleast_1d_compositeimplicitautograd_dispatch.h,sha256=Jvp2TCKzw4v10RJJLpuNlG-348DFpYkYzLHI5aaJdqk,864 +torch/include/ATen/ops/atleast_1d_native.h,sha256=lwXShN4IrsqwaNQx5-7cguKCwPUwdtaboPoXFnbjP3Y,574 +torch/include/ATen/ops/atleast_1d_ops.h,sha256=p805vVnuMSmtolki4flXAdQnR-7p5moRQuh7O56X8Bk,1569 +torch/include/ATen/ops/atleast_2d.h,sha256=PEUtp11OGQqcMly24-K1jlP27V3ACa20q4QmCCPv408,854 +torch/include/ATen/ops/atleast_2d_compositeimplicitautograd_dispatch.h,sha256=ZKfjVqXnKc3s0UmsAOhewN5JO7JzFpbI_M5hxVGeues,864 +torch/include/ATen/ops/atleast_2d_native.h,sha256=MAp6IiqcwAC8q7tlkuazto7rdTh5D2RyPCup0C4zxn0,574 +torch/include/ATen/ops/atleast_2d_ops.h,sha256=GgfAghdHQHhUFwPLxgwDxTT6a1gakBL5R7XlOHwHtiA,1569 +torch/include/ATen/ops/atleast_3d.h,sha256=xW-4mkmUZIYBQjcuUAw5lkwpzBjpqwKnrBU28u_cJBw,854 +torch/include/ATen/ops/atleast_3d_compositeimplicitautograd_dispatch.h,sha256=c2TqVt2URBaSWsvePikgY4Jsnxs-Hm4l4V1MG6HtmiU,864 +torch/include/ATen/ops/atleast_3d_native.h,sha256=R1lumPdBbgym1qlHBhZRbS-PfkmQ8gVGKxQqgOo3Y-s,574 +torch/include/ATen/ops/atleast_3d_ops.h,sha256=w-sUEujWht0zYzgSGgpMubuqJIVeSad9crQogkC-6o0,1569 +torch/include/ATen/ops/avg_pool1d.h,sha256=218YwZhekbuEzq90H1PG98SY82y9Go_ZsogjHs4JsSo,1970 +torch/include/ATen/ops/avg_pool1d_compositeexplicitautograd_dispatch.h,sha256=gFFZ716pJNJR5x6cnPr5ajQIM6jeHI9lYTYSHNNi5QM,1151 +torch/include/ATen/ops/avg_pool1d_compositeimplicitautograd_dispatch.h,sha256=C970shXfeDRiwzshesVvGxkGZuOcvNXriAg_ZEHkzqA,925 +torch/include/ATen/ops/avg_pool1d_native.h,sha256=9vvh7D1kSc9BE4Dfmmj_sIZMq-ij19fXaJfHpjANqTg,836 +torch/include/ATen/ops/avg_pool1d_ops.h,sha256=sNimyIlwnCpkmYNa8R-Lfxj7vAu6KruPabliKzR7nno,2399 +torch/include/ATen/ops/avg_pool2d.h,sha256=TIX5_qNPFBG1WRc2aMx_jjEyi55_zD81h6KK_IbJGag,2267 +torch/include/ATen/ops/avg_pool2d_backward.h,sha256=vX5iTOX_n-PJ0NglEFKSaQIO6Apk_xJpgsgrDzI_Iao,2497 +torch/include/ATen/ops/avg_pool2d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=fRXG5gKpqQ4oNnWe8u3c5vFjfGOoPMZK5f5RqtVO-ZA,1019 +torch/include/ATen/ops/avg_pool2d_backward_cpu_dispatch.h,sha256=f0nt1Ec-jhgnmrWdy4ep18-A_DUoCbgjhwboB4n-ZrE,1534 +torch/include/ATen/ops/avg_pool2d_backward_cuda_dispatch.h,sha256=XpGcOLBheGZ-7FcUq2rGGV9KY5Hc4XkLngX_8K4UP0w,1536 +torch/include/ATen/ops/avg_pool2d_backward_meta.h,sha256=OOQ1y7RGuE7aFe71UuxzYx37_F6TYsZdhuAcXlIcbaA,808 +torch/include/ATen/ops/avg_pool2d_backward_meta_dispatch.h,sha256=q2PCqyFtmbeMMYuPhKBGB39btXeekc91HESsEqWH_WU,1536 +torch/include/ATen/ops/avg_pool2d_backward_native.h,sha256=3ppF1oRYmBn1cMGznfBfym1ZM1iBfg4qfOE6fE0FyHg,1804 +torch/include/ATen/ops/avg_pool2d_backward_ops.h,sha256=3oXcPI4kr4yBGL_UK4ffuOOdx5sZEnGXDWUVfd9eGH8,2941 +torch/include/ATen/ops/avg_pool2d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=MfJh7QqSnuhalxguVqGua0_1lshXhITGPIvyd-eUzlY,1009 +torch/include/ATen/ops/avg_pool2d_cpu_dispatch.h,sha256=zpPIgu3ea3foZQIzORj8-Pj_0gz7HZth7D0gPg53Knc,1459 +torch/include/ATen/ops/avg_pool2d_cuda_dispatch.h,sha256=L9BQeGvGxRksRTaAzWt-FMjsceXfi1yEXAOP7_wTzD0,1461 +torch/include/ATen/ops/avg_pool2d_meta.h,sha256=M67CfmcyR-p2I70C78dF1S_McYYE3dEKScEQnAOcgKA,3676 +torch/include/ATen/ops/avg_pool2d_meta_dispatch.h,sha256=BkpW1criHSHTvjnpSZHBSeFAjSHQ4rAuik-wlEbVqYY,1461 +torch/include/ATen/ops/avg_pool2d_native.h,sha256=EpeXt3xPvY-Qg_U4Ct6OwvrUoj97DV-olbNOpf_DbAc,1884 +torch/include/ATen/ops/avg_pool2d_ops.h,sha256=bUfWegu-QAPXgbERH_b5CdQ0xzi5l_DcKz3GSkgtEuA,2679 +torch/include/ATen/ops/avg_pool3d.h,sha256=uJ0KFuMc2pk_FxQcV740FYXx3ufxcxFM-KQcj1hj2TA,2267 +torch/include/ATen/ops/avg_pool3d_backward.h,sha256=u-rBNDtrc38byKSvyutJXBJlVzcJxulJ1r4e7h4GPWM,2497 +torch/include/ATen/ops/avg_pool3d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=33uMQH4zm2oawwpWjBgdDR8Z60pfHkgnNw9fSCgQK58,1019 +torch/include/ATen/ops/avg_pool3d_backward_cpu_dispatch.h,sha256=K_l2PzO5SuW6k4ZwN7fwq0Xxa7daGOzZKx-P0XfpQSA,1534 +torch/include/ATen/ops/avg_pool3d_backward_cuda_dispatch.h,sha256=q-kt1Csx_5Wh7vkAk93wD_A9wewv73r8hZl7H2G1MNs,1536 +torch/include/ATen/ops/avg_pool3d_backward_meta.h,sha256=x9hHwIZHKEko4Gbdfc7LVV91Wdlnjo_5wACu7cFoaCk,808 +torch/include/ATen/ops/avg_pool3d_backward_meta_dispatch.h,sha256=OYi7Jmjhxr9UceapU0NW756PBKv5qjz-6_WcwoAoL2A,1536 +torch/include/ATen/ops/avg_pool3d_backward_native.h,sha256=5U9INYj_UYpv5v1usfqTgS2BqVk2cU0nzToq8vR_h1Q,1804 +torch/include/ATen/ops/avg_pool3d_backward_ops.h,sha256=rGg8PhRrHU_Umn5_ctdKz2p4q1yDpY69294pIGRFI6Q,2941 +torch/include/ATen/ops/avg_pool3d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=YBFpZikSQhY50RPjMhttQNIvSsWe30rB9nNeuSiM3Yk,1009 +torch/include/ATen/ops/avg_pool3d_cpu_dispatch.h,sha256=eaFQ9q5akXV-kbao5kvuUmJbu8DiMZzB_hIWXibbmuI,1459 +torch/include/ATen/ops/avg_pool3d_cuda_dispatch.h,sha256=8hwoC-Y3hYE_BrJMFNdaNiuq2AvOyipJ2c7BXJHU6jc,1461 +torch/include/ATen/ops/avg_pool3d_meta.h,sha256=V2RbPFa13YQBJdB_kygfc_oNPMqgtSZQGxBD-YY0I7M,767 +torch/include/ATen/ops/avg_pool3d_meta_dispatch.h,sha256=dZqj8LUkuO-sm9hm6aPaqc_EPytfOaiz_y1BaU00J7I,1461 +torch/include/ATen/ops/avg_pool3d_native.h,sha256=7s2nIEJ21G3ZYe9vFx8-lokLqZK3W6wFDYzUme-Q8dw,1888 +torch/include/ATen/ops/avg_pool3d_ops.h,sha256=jMIrl5QfrwNleuzxGYQLc_C-gDI2iGcWj-IxgnZySA0,2679 +torch/include/ATen/ops/baddbmm.h,sha256=WQ0BHiHPr_9o9ecsZTQrdJFDDg3Pea51ef-CixR6xts,1649 +torch/include/ATen/ops/baddbmm_compositeexplicitautogradnonfunctional_dispatch.h,sha256=4EESnVcxL-gm7QzWakKyPEfFMIqbiRtlIIPKwT1aIWs,1085 +torch/include/ATen/ops/baddbmm_cpu_dispatch.h,sha256=uoGuXoi-s12ODeb88ZK_feFnIajINEghhmzQ0v_QG2Q,1390 +torch/include/ATen/ops/baddbmm_cuda_dispatch.h,sha256=Mgewyfurls-ER2Rt9fmhMo4zLjGUiukw_KrxuGwl00I,1392 +torch/include/ATen/ops/baddbmm_meta.h,sha256=dCLAEThniBToZvG1zhATkGR9ClX3OWSi3BO994ZYIK0,708 +torch/include/ATen/ops/baddbmm_meta_dispatch.h,sha256=lf1zoqJOxDnmPTy9X2-n5ilFtKBBLX_LDYG679BC1WE,1392 +torch/include/ATen/ops/baddbmm_native.h,sha256=mjEEMA8XSUHcqrGoLzOKHTnSb6KOmVmzsumkMUuGq3s,1188 +torch/include/ATen/ops/baddbmm_ops.h,sha256=EZ0HLxJGRR_vQC0mXo67cK_HYgsmNsrKK_wojh6e0Ic,3141 +torch/include/ATen/ops/bartlett_window.h,sha256=_wWSxCpekUgiAc-Ot57MlC7lKBgNnDdoOc-CYQ3YCrI,3455 +torch/include/ATen/ops/bartlett_window_compositeexplicitautograd_dispatch.h,sha256=37z5EZFrV7tjZZ1Ex4XT2yc3KF8EcQ4BcI09d0zbLWg,1736 +torch/include/ATen/ops/bartlett_window_native.h,sha256=mYriYR4W3dGzlAiKHmcPxi813w4RUP_vhVulmx0WlTw,1091 +torch/include/ATen/ops/bartlett_window_ops.h,sha256=W4UFKBLls91ja7PeYjxhT2RIhUdQCyY0ZuFNmuj_1zA,3894 +torch/include/ATen/ops/batch_norm.h,sha256=WFPnN3i0Ip8BK6PVE7u4RfB7qtnDDCi8dwj9ssdpOxA,1128 +torch/include/ATen/ops/batch_norm_backward.h,sha256=2ixQsgxeYs1PMlD15tLUSBVG-IIKqpioGb4ht8Pl8tA,1362 +torch/include/ATen/ops/batch_norm_backward_cpu_dispatch.h,sha256=Y-wDB1viILXYmtaNIiTL4ZKv1YI10wsAzs_iE9jhqfM,1128 +torch/include/ATen/ops/batch_norm_backward_cuda_dispatch.h,sha256=oDGTqU-hU0lez3chD94nYK-jE6muDBPmhqbXD2Bn5Ho,1130 +torch/include/ATen/ops/batch_norm_backward_elemt.h,sha256=ioG5wkokJX-eT75A9d0N7MvCGFUYoqe71m4gN-4xRlU,2373 +torch/include/ATen/ops/batch_norm_backward_elemt_compositeexplicitautograd_dispatch.h,sha256=Jw3Ox5Yunk9OSYxHhYtubc29u__T1ABN0cZvfMNIOrY,1349 +torch/include/ATen/ops/batch_norm_backward_elemt_cuda_dispatch.h,sha256=GNLQmMUJKXXTwp4J-fthRv-LH1XxbIpxXQ_3EYJuog8,974 +torch/include/ATen/ops/batch_norm_backward_elemt_native.h,sha256=zs85zbMjVPl5Y4U1jgvlUR8mWIzAMNl0DTniBn26o0o,1039 +torch/include/ATen/ops/batch_norm_backward_elemt_ops.h,sha256=emrj6B8_fV6-oBtTVl63f8Z8G-snr59y6DCQGmBcGrw,3051 +torch/include/ATen/ops/batch_norm_backward_native.h,sha256=V6o3weQwbKSZHFAz9DOEjj6uGN2MYTSr8WCyx--PWwA,1793 +torch/include/ATen/ops/batch_norm_backward_ops.h,sha256=mIYO4ribyrgRAzrrIrtbDSVbdfPESGPmygNlSnbG8BM,2217 +torch/include/ATen/ops/batch_norm_backward_reduce.h,sha256=ptiqSuTRRbwGFayJ4nL2Pvk2ovD6ZD2CmevyrN5SfXI,2752 +torch/include/ATen/ops/batch_norm_backward_reduce_compositeexplicitautograd_dispatch.h,sha256=Tf1tAdRyspp5ABUGEtWFK3w6MKyNt9DhT8obQI-EP0c,1489 +torch/include/ATen/ops/batch_norm_backward_reduce_cuda_dispatch.h,sha256=c2yU8P5MKWoQl0bCDObNag-4uwgIT9u02Ym_3V_VkQk,980 +torch/include/ATen/ops/batch_norm_backward_reduce_native.h,sha256=-KaAQcuP7ZLFBUpV1We4nR1jOBTCq68cfbP48LvNCyM,1115 +torch/include/ATen/ops/batch_norm_backward_reduce_ops.h,sha256=HW6f81zbE05UNJEwq23aW9Ov2UIMCLdVnXTTSuHlRaA,3367 +torch/include/ATen/ops/batch_norm_compositeimplicitautograd_dispatch.h,sha256=W81gr6k2y6h_O21keqKvj7-1fyb0utG2qLFLt7M5UD8,1041 +torch/include/ATen/ops/batch_norm_elemt.h,sha256=_CBBsLNCEaSW0SxoJbOdRXlp10Zd8_fRoFCJAbJj-JQ,1908 +torch/include/ATen/ops/batch_norm_elemt_cuda_dispatch.h,sha256=EIUCgr2IhlpfJ4BdKrFYarBoPYdEt718i6v2k7KCNXE,1387 +torch/include/ATen/ops/batch_norm_elemt_native.h,sha256=oG1CjYZ9AWQBaWqp1VGnIEQ7o3dq9V8xYvWUxtM5_Bo,908 +torch/include/ATen/ops/batch_norm_elemt_ops.h,sha256=fu78qUQmDpqe_zRZA4u5lZaQzsNg1UM6o3RDRcYlbeg,2611 +torch/include/ATen/ops/batch_norm_gather_stats.h,sha256=Hygv6nGMeeaL2-xORjVniHLxIED1r3-1SHEUxYxxu0Y,2530 +torch/include/ATen/ops/batch_norm_gather_stats_compositeexplicitautograd_dispatch.h,sha256=6BHV3w7aAFjp8_dGWJrQvYDK9MBe1y6iJF7ljHVrSeQ,1411 +torch/include/ATen/ops/batch_norm_gather_stats_cuda_dispatch.h,sha256=0TaKuCG5yZLfgsOfwA_iZkmE1VyC6zCJk_l_bO_gnH0,983 +torch/include/ATen/ops/batch_norm_gather_stats_native.h,sha256=b-is3i_yPhLj7g6j5CGlnaexYew-TV7awF-MgkS5qvY,1079 +torch/include/ATen/ops/batch_norm_gather_stats_ops.h,sha256=EcSm3FGkZwi-ze4h1ZxryEQazV23I2heO8EArHCGWW8,3199 +torch/include/ATen/ops/batch_norm_gather_stats_with_counts.h,sha256=SKPugOt1oZPBJkCoFbu4QmapvYHep9vI1niyYeIB9Hg,2701 +torch/include/ATen/ops/batch_norm_gather_stats_with_counts_compositeexplicitautograd_dispatch.h,sha256=q0hn0t2NRub5anr_nkbgOv_Qrx8BpHN8v1D2N3iBhzM,1459 +torch/include/ATen/ops/batch_norm_gather_stats_with_counts_cuda_dispatch.h,sha256=InO_xbC0yz4XNzoVSb4nsFvFO5tS24-JDl89tCRWUzY,1007 +torch/include/ATen/ops/batch_norm_gather_stats_with_counts_native.h,sha256=3btPQbPAErrRFzd0SGGgLdd8RRi8losS1lJf6g22y8s,1127 +torch/include/ATen/ops/batch_norm_gather_stats_with_counts_ops.h,sha256=elP7nUUSDs-ffNGq1iKWnRnRPf6VODJs49ur2c3qsQo,3349 +torch/include/ATen/ops/batch_norm_native.h,sha256=t3aioaOY7Q-iggOKhgQBa4y2lnS3ZY21kBEx3nDSxqk,751 +torch/include/ATen/ops/batch_norm_ops.h,sha256=jO4RGl66Fej8f1xECzT3ZP1t8M4fOH89_Hxd3mcpdOg,1786 +torch/include/ATen/ops/batch_norm_stats.h,sha256=_D-3VVJjaNKRKSqld-GUnSukpMJwN7f9fP0kLjWXQWk,1443 +torch/include/ATen/ops/batch_norm_stats_compositeexplicitautograd_dispatch.h,sha256=P1Ms1oIz8V4MAbiKYjfweBWFumZAk93yxfeOWXXgmXg,1031 +torch/include/ATen/ops/batch_norm_stats_cuda_dispatch.h,sha256=RshrENJGA4TBzAt4bOA0Koe6ImhalCaqQE7cm6N5ES4,793 +torch/include/ATen/ops/batch_norm_stats_native.h,sha256=W2_3yta6RBVA7-DBRa8i5VK7ONxbcrs6tIbVX0fA2h8,699 +torch/include/ATen/ops/batch_norm_stats_ops.h,sha256=-4A3trAKoyJBUXDBS8b6VIPXBwBWrQAKcmnygOmTvG4,1967 +torch/include/ATen/ops/batch_norm_update_stats.h,sha256=uLJBDdXV1SplNjxNvqxv9XRjoLJpbomomZ5rhiZuFko,2065 +torch/include/ATen/ops/batch_norm_update_stats_compositeexplicitautograd_dispatch.h,sha256=-1xWCT7RqJLq0W9By5LRVTFjJBfZRg3bsJc2txJYCO4,1253 +torch/include/ATen/ops/batch_norm_update_stats_cpu_dispatch.h,sha256=PgPydYQxoGvaTIcToCwgA0Uv5FRh42gMNGrwO6rPa18,902 +torch/include/ATen/ops/batch_norm_update_stats_cuda_dispatch.h,sha256=KX1JK3ZM-7zxfVc7CWjxjz65O2qBe5OQOttiZsCi58Y,904 +torch/include/ATen/ops/batch_norm_update_stats_native.h,sha256=tv8h-ud06LU6o-RXyAc85m7We94yiVk7N15pp28zbnY,1139 +torch/include/ATen/ops/batch_norm_update_stats_ops.h,sha256=G5z7WgkDgUrHFLKnGppKKLtpJJpYKKKNSVvbwuC9vfQ,2669 +torch/include/ATen/ops/bernoulli.h,sha256=NNNN9XGS3BNhDGlT2zDrkLo29Vs-4tknZXjZF4v774k,3277 +torch/include/ATen/ops/bernoulli_compositeexplicitautograd_dispatch.h,sha256=QuiyM3M3AhKJ28TmI01gdtNcdlPlqPO63c8pa0nsevQ,1580 +torch/include/ATen/ops/bernoulli_compositeexplicitautogradnonfunctional_dispatch.h,sha256=beRWxt21E1iR7ehzIx5p-haAIhMSrCSnkjxQG4bmypI,883 +torch/include/ATen/ops/bernoulli_cpu_dispatch.h,sha256=_5nL-BbyNDxH9S2j5ijfPFbECShjKZ-BVpv2VC1ghac,1212 +torch/include/ATen/ops/bernoulli_cuda_dispatch.h,sha256=h2WMpu_bvHshHl_MrK0QsKQ-IXjY3xsXSlk20vsobzA,1214 +torch/include/ATen/ops/bernoulli_meta_dispatch.h,sha256=vnCIBfiZqpqG-Jr_XI1kRtgfKAJFK8vfPJx_NeVnNuE,950 +torch/include/ATen/ops/bernoulli_native.h,sha256=7CJEM7WVQNCmXveHaXTW9WjUe9goUr6XyMpfOIp6O8w,1496 +torch/include/ATen/ops/bernoulli_ops.h,sha256=S7F-d_5hna8h21YqWz2bMgohhFEYdHghMPHcXjIYIJU,6480 +torch/include/ATen/ops/bilinear.h,sha256=xJ1Fl5HwZxgMEvPmgLCFRBziuo95qamZ74lpLqJ2D3I,828 +torch/include/ATen/ops/bilinear_compositeimplicitautograd_dispatch.h,sha256=zHV66Qi6JSBhe1qUxBiTDDsCmItiHQfN1YQ8sAXHfRs,890 +torch/include/ATen/ops/bilinear_native.h,sha256=21FxM0ZBnaexioPFhsZjZQuUgtErp8enj19gSmR7guY,600 +torch/include/ATen/ops/bilinear_ops.h,sha256=GtFrmqOWuxWA0gB2EIAdtGnsm-M8ZaXY-VeOrTxNL-I,1292 +torch/include/ATen/ops/binary_cross_entropy.h,sha256=4F7ye-5wdfmxCAm_KokkQYAzgbeeXQLHEIudqZ_pkh8,1748 +torch/include/ATen/ops/binary_cross_entropy_backward.h,sha256=GEld3FviRSnb8-5FkliVkkF_Kvl1Mhrcf9fynPJlETk,2103 +torch/include/ATen/ops/binary_cross_entropy_backward_cpu_dispatch.h,sha256=7vlDnlGJ7eMlQcproQ1HD55GZomSJsHDuPdbpbPHcik,1397 +torch/include/ATen/ops/binary_cross_entropy_backward_cuda_dispatch.h,sha256=UfijUrymEvPWEmSwmFg_rAL7zeBBMYVAfHJ-N7uS5Jo,1399 +torch/include/ATen/ops/binary_cross_entropy_backward_native.h,sha256=E1HuBFOz4oEVn8gLObZHO3swCd8seVPHfs4R2dZOpH8,1368 +torch/include/ATen/ops/binary_cross_entropy_backward_ops.h,sha256=l8WtLaSH_SDxCLs5AUdfrx2543Qe-I41w9KZEY0lzgE,2555 +torch/include/ATen/ops/binary_cross_entropy_cpu_dispatch.h,sha256=3Sgn9R7kldbJM6KCvuJSZ57-8r4iCV28jsXw-SkJnrw,1260 +torch/include/ATen/ops/binary_cross_entropy_cuda_dispatch.h,sha256=rnS4-PIk09_p0E-WKzxFs_bG5V5iLgTHIFzPbyINOYs,1262 +torch/include/ATen/ops/binary_cross_entropy_native.h,sha256=XAxLNDkNt5j-Jw8Ax1d3KwFxhxTuOg79NpoRoOLgeyA,1190 +torch/include/ATen/ops/binary_cross_entropy_ops.h,sha256=R4k9bnEAWz40B2tdpqzhdZis1dIx0Vqg6GL7ohimHrA,2251 +torch/include/ATen/ops/binary_cross_entropy_with_logits.h,sha256=k8KiYdi-S-OdROFZe9tztub_ui2fXYwd3qi2GFTirv4,2129 +torch/include/ATen/ops/binary_cross_entropy_with_logits_compositeexplicitautograd_dispatch.h,sha256=-F02HBOCrbZBYZVIyMaD3t7bM6TdH2vqVLaq3QLq0mk,1490 +torch/include/ATen/ops/binary_cross_entropy_with_logits_native.h,sha256=9H3pm4qRDjKqnYaEfJRfcKqOvHv8N9FRa7PgBxZmSZ8,930 +torch/include/ATen/ops/binary_cross_entropy_with_logits_ops.h,sha256=EZf7VL2YLoh-lzwN8j5wJrhDNMqHyZbhOlrLJ5LFw2g,2639 +torch/include/ATen/ops/bincount.h,sha256=0Xa8ujN7_lJzMmpUnYzW905k7L3UPrAjGG4yaAr0GsQ,1442 +torch/include/ATen/ops/bincount_compositeexplicitautograd_dispatch.h,sha256=QheiBOfwaG3_QZqgmMKiUtPB9VoOQBPS43fSJfCZ-Hw,1028 +torch/include/ATen/ops/bincount_cpu_dispatch.h,sha256=XQFIKdHMBGNTkV8EOGeHQ-5wNFkm-SvvO6HLVB5ajU0,814 +torch/include/ATen/ops/bincount_cuda_dispatch.h,sha256=pLamoQyXAXQUtEArHRumqQGvJ2rH2jm-DY-Xvh9N5PU,816 +torch/include/ATen/ops/bincount_native.h,sha256=epjo5G2GfDR-6VIc6-Z2yuEh99ZsH-7VqNjLHxO5hzk,850 +torch/include/ATen/ops/bincount_ops.h,sha256=cVBy1yv2C-f60y89rj37UpnjoIQ4YViItjCKMTNgviE,2001 +torch/include/ATen/ops/binomial.h,sha256=tz-oP7miTm9zqcDegrdxKLfWQLQUcTKjmaKemf3H5so,1474 +torch/include/ATen/ops/binomial_compositeexplicitautograd_dispatch.h,sha256=Yx5xZt492s6jydq15LHto9wIZVi5nP4kTLreAtqk75A,1046 +torch/include/ATen/ops/binomial_cpu_dispatch.h,sha256=yB6AHKWHblgxv-90E8g4S709U5CmeAj7jqt7bx-EJpQ,828 +torch/include/ATen/ops/binomial_cuda_dispatch.h,sha256=LP8EmSKoQ8OXKF7yD7ikbCXoNRjPvQdhTiqIDO7iGIM,830 +torch/include/ATen/ops/binomial_native.h,sha256=Lo5Xmdb0KuwZp7SVuMig4IdDd-AWiZ1kmEkgYIcqo1s,886 +torch/include/ATen/ops/binomial_ops.h,sha256=0KdOCNKnXvisCv8y6jk1AiSy8FQelafCo8f8Tam_aHg,2033 +torch/include/ATen/ops/bitwise_and.h,sha256=jnmI4SqmK2TpMRYB030-VJHOrse6dyom_obKEwaqXXk,2852 +torch/include/ATen/ops/bitwise_and_compositeexplicitautograd_dispatch.h,sha256=HicBtTGVjbFZ8mnqld-a99EeSIbP_8-2Bk0dzI5F-Xk,1429 +torch/include/ATen/ops/bitwise_and_compositeexplicitautogradnonfunctional_dispatch.h,sha256=LrkdRjcVkcXDme_l9QXfTopKJoZxbN0kDuCD85xHHQ0,927 +torch/include/ATen/ops/bitwise_and_cpu_dispatch.h,sha256=o-cFJiwDYXkIqLlB3GHA4hbFNfpfbxWwtCKbDH-1qTk,1078 +torch/include/ATen/ops/bitwise_and_cuda_dispatch.h,sha256=WmXg3twzRU5qfhlbpoLSXuCgMBl6cojlXajsMQwmBII,1080 +torch/include/ATen/ops/bitwise_and_meta.h,sha256=ByOBKI9nYICUgjYAaE08hPdSuEXsK-V1u5Zivwvx3Hc,640 +torch/include/ATen/ops/bitwise_and_meta_dispatch.h,sha256=QudXh8DsYNSOiGXT_NaZnau-xBNlNkKtNh9S66rExxo,1080 +torch/include/ATen/ops/bitwise_and_native.h,sha256=SPGTExp_6elPf2gpciClN0HXeFq3rE1MbWdd_C2eKK4,1156 +torch/include/ATen/ops/bitwise_and_ops.h,sha256=rFAhZ7rnW6jE3wGHBUd8bCS6jnboyrmR9qBeQAZfhMQ,5820 +torch/include/ATen/ops/bitwise_left_shift.h,sha256=9uxzqgFR5cy87Vx7GQDooPsGanYLPhTmYTpzng24Siw,3090 +torch/include/ATen/ops/bitwise_left_shift_compositeexplicitautograd_dispatch.h,sha256=o52IOA4c-DbwaL0LN1A1pLTkz2ud-Kv1d50-8yZhdtw,1478 +torch/include/ATen/ops/bitwise_left_shift_compositeexplicitautogradnonfunctional_dispatch.h,sha256=dxAX9RiutHUKDUwnL7FSaRSKwtua92f-xijH-zUwCms,941 +torch/include/ATen/ops/bitwise_left_shift_cpu_dispatch.h,sha256=_o2PasYc_IIUMRMfMNu8Gs4Z5ozkkjyxsvbuySmfUZI,1106 +torch/include/ATen/ops/bitwise_left_shift_cuda_dispatch.h,sha256=4-EX5Ljw9eBoy89zulV5oNxmkLyo8aWbXSm3JUrSV-s,1108 +torch/include/ATen/ops/bitwise_left_shift_meta.h,sha256=LaNNsCTQ3gXBZvnfEEMzjLJjv608yubGPvPqegqpb_w,647 +torch/include/ATen/ops/bitwise_left_shift_meta_dispatch.h,sha256=WBKYkAkz6Rjb74ArdcyVCyUBwY0poaQJ4P1_YlCwUIQ,1108 +torch/include/ATen/ops/bitwise_left_shift_native.h,sha256=Kfkoy8vHtCpbb1-cKVfBAAR5ckviRzB-EoQGzrazY8M,1212 +torch/include/ATen/ops/bitwise_left_shift_ops.h,sha256=RcF6njfKQgz6vx7jBFDnu95TOwDM7Zuazrso6kAGq9w,6051 +torch/include/ATen/ops/bitwise_not.h,sha256=qMM2LG4mFd-rBfGHMDuaSWc8tFm2I4qplQfe8uUZIeQ,1093 +torch/include/ATen/ops/bitwise_not_compositeexplicitautogradnonfunctional_dispatch.h,sha256=HvCpWTz4xF0x_OnnYVzCNnWRkTZAJbjOXvEcOEoRUnc,875 +torch/include/ATen/ops/bitwise_not_cpu_dispatch.h,sha256=BEx6SGaV2kFf-uIdTQy7-2twl2HfQ5ihPF0eIdeTang,974 +torch/include/ATen/ops/bitwise_not_cuda_dispatch.h,sha256=rTnkNZ_lu4rfwka9Qm261RHQzKX2Kn4pWqPgblXNuz0,976 +torch/include/ATen/ops/bitwise_not_meta.h,sha256=6sI2qPWpUce0x_UoK6DTyyneYGjIcGJ4-XKh3CgvTx0,607 +torch/include/ATen/ops/bitwise_not_meta_dispatch.h,sha256=0hF_4tDZHNpJXLiIroL9l_22nyzJxtuH672Wp6pxQtM,976 +torch/include/ATen/ops/bitwise_not_native.h,sha256=LVUyMTkIepOM-szTjxmDa04nTFOAlnU1o4hjcdGYYGc,634 +torch/include/ATen/ops/bitwise_not_ops.h,sha256=PEePl9al8Yijr0EInLQc4CPHd2MtIscYPmi7aNMAD6o,2118 +torch/include/ATen/ops/bitwise_or.h,sha256=y91HRWdeYA9J9Z6j93_QLxuUnyO_27mV9fWWIc0WYy0,2824 +torch/include/ATen/ops/bitwise_or_compositeexplicitautograd_dispatch.h,sha256=Tztw7zJOklukXYgQUrub451lQE5k3liWjycRfuxBmLI,1422 +torch/include/ATen/ops/bitwise_or_compositeexplicitautogradnonfunctional_dispatch.h,sha256=e6rsFAzlC_fCqLSRWW5SvPtan2fT7WilL9hUeTttIv8,925 +torch/include/ATen/ops/bitwise_or_cpu_dispatch.h,sha256=5NQxrSp0dIVvUvih8mgNt1Zq6YJcCfvF6zJBrxcEW1k,1074 +torch/include/ATen/ops/bitwise_or_cuda_dispatch.h,sha256=qbNAzLfQzWPOYtNGdP24o81ztLZQPuMHNMlX0cDKuiQ,1076 +torch/include/ATen/ops/bitwise_or_meta.h,sha256=y4ka2K5OZ3BDI0UMoXGjVItM5tHlwPBMKiKhfvtA33g,639 +torch/include/ATen/ops/bitwise_or_meta_dispatch.h,sha256=n2tzvM2CqwOTsLPf8gB9S4OhOHxtpEcs-3gIr_y3kNI,1076 +torch/include/ATen/ops/bitwise_or_native.h,sha256=z8Jqh74fQGLBuAundwwHC6IcJq3JaWT4DE5OX7eypC4,1148 +torch/include/ATen/ops/bitwise_or_ops.h,sha256=muv3CbLzQMzYtoSP8DHDeUmLEfHkz-XO4jZqtZelnxI,5796 +torch/include/ATen/ops/bitwise_right_shift.h,sha256=dSGNv-0VYKlVfU2e-God-Qr5zjsgwNHI7il9ZB-2Eus,3118 +torch/include/ATen/ops/bitwise_right_shift_compositeexplicitautograd_dispatch.h,sha256=-6OmIRkg16UXBF2cmroRp3yRY7yDtbTS34ek8_Qm8iA,1485 +torch/include/ATen/ops/bitwise_right_shift_compositeexplicitautogradnonfunctional_dispatch.h,sha256=6qlqior1aOo9PnMb6ZILQ-K2OaYgEv9XM4q5fWwjb5U,943 +torch/include/ATen/ops/bitwise_right_shift_cpu_dispatch.h,sha256=ABcFQn9vOVOGTf6In7FQinTY_cQ5demhhuGR22zuEtM,1110 +torch/include/ATen/ops/bitwise_right_shift_cuda_dispatch.h,sha256=yfuoEARzcLAgu5l7Xc2AHlzUVTXlR99l5Z3AKCevuaI,1112 +torch/include/ATen/ops/bitwise_right_shift_meta.h,sha256=0SB823SpnLk7VJaUQPJt5OQxrXUgnmTf63UplrBnbFs,648 +torch/include/ATen/ops/bitwise_right_shift_meta_dispatch.h,sha256=feXagVuB4TNjNnLg3Ma8t7gXhMZPogJ8yZmIgdYOtnI,1112 +torch/include/ATen/ops/bitwise_right_shift_native.h,sha256=XJiYnOfYc5cSvKT5VjO84vyqyPOTSgjUpa6u0sG-xBo,1220 +torch/include/ATen/ops/bitwise_right_shift_ops.h,sha256=xIPOcBDEWpg8Y3STk5qqRrggIgibOJogU50_W-1Ghoo,6075 +torch/include/ATen/ops/bitwise_xor.h,sha256=BthXxl8wq9GsJSzClcHg5JceKDlvcMmIHLZu-eXrSbM,2852 +torch/include/ATen/ops/bitwise_xor_compositeexplicitautograd_dispatch.h,sha256=0vHtldQKeZxfD1peDHiy2ld8BzDRDcclEQvb3eDBiMw,1429 +torch/include/ATen/ops/bitwise_xor_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Z5ednpJOQCgWzz_z_Y6QDs7HZOMIfClj56RYMZX9290,927 +torch/include/ATen/ops/bitwise_xor_cpu_dispatch.h,sha256=19BttxWsFk1jdfxGbMlmBsXB4GE_61IxYdSy7U3eQZo,1078 +torch/include/ATen/ops/bitwise_xor_cuda_dispatch.h,sha256=KzEWGA7YC5NCR6SCsWjqrCdPDIlcLKB-fJNuj00vC_E,1080 +torch/include/ATen/ops/bitwise_xor_meta.h,sha256=Zovpavi1GNvveLINraA1GKTu4IwwlXo0yghJXSgDnNI,640 +torch/include/ATen/ops/bitwise_xor_meta_dispatch.h,sha256=Lr6YhTlDiJaOSphOPFsc8RO4ELkZmZh5ch-F9PF4Nkw,1080 +torch/include/ATen/ops/bitwise_xor_native.h,sha256=3mUbBDTpb0HnfD5o142TcnJdJOnws2In-63r1Hbb1t8,1156 +torch/include/ATen/ops/bitwise_xor_ops.h,sha256=BMxd8IlKAAjLbhfOkhQFNU9Ke0mH8hTgVliojSh83qw,5820 +torch/include/ATen/ops/blackman_window.h,sha256=cyJx17g5i9rTbxUkLU6wFDYdQSYUfhsQu7f9aquVHs8,3455 +torch/include/ATen/ops/blackman_window_compositeexplicitautograd_dispatch.h,sha256=AFNQoa88tjIeld1WWq2ZnVqid3rQLefbi9dKMSe9f7I,1736 +torch/include/ATen/ops/blackman_window_native.h,sha256=9Udkjb4bPynMTSZjJDpYt-h-HG6Eq5yf7vGi9u-MjH8,1091 +torch/include/ATen/ops/blackman_window_ops.h,sha256=W7jxQoixPA9bBwoijRsLELQQd80UR9AGLWcfhXvflBY,3894 +torch/include/ATen/ops/block_diag.h,sha256=cRkPuanHBKWuIMUGEvcoDq-D_UUbfMphKilNzL5bhfc,1104 +torch/include/ATen/ops/block_diag_compositeexplicitautograd_dispatch.h,sha256=LCZveoqyxZ_Fg7Qvr0qtPNPMJarLBPS0PuPk0Pk9zos,955 +torch/include/ATen/ops/block_diag_native.h,sha256=NBsFdty974NcCdw-fifpJUAjJ23mIVn8cgDddpe2WY4,582 +torch/include/ATen/ops/block_diag_ops.h,sha256=nh-Vwlanop_EUfBHIVHqRI9vWzCeGnR9CGnGZGk4tGk,1585 +torch/include/ATen/ops/bmm.h,sha256=VrkHuRJuUOnlKUc_bYZUMOhJMMmCJm-Q6CA52-1BK14,1145 +torch/include/ATen/ops/bmm_compositeexplicitautogradnonfunctional_dispatch.h,sha256=2PhthoqZ1nqmaWrwmT3-dCuskm2lZjcyrtlgUR1MG8s,835 +torch/include/ATen/ops/bmm_cpu_dispatch.h,sha256=OeA07IHdOn7HYFQX1cStCOjJdFSgNugrClFEVe6Ng2k,968 +torch/include/ATen/ops/bmm_cuda_dispatch.h,sha256=JRmsOhJabi4l1x6ov6uPRPvuBwRKJd00hp07n_NI97s,970 +torch/include/ATen/ops/bmm_meta.h,sha256=CV8MZIu8by-ZXjxNVd5MUC4WcKdmtr-QRj9iY0xqE54,624 +torch/include/ATen/ops/bmm_meta_dispatch.h,sha256=ZHksbdFcn-MSv1XmcnCrCMHpqd-rVKHTYCPpkjAiGOA,970 +torch/include/ATen/ops/bmm_native.h,sha256=5SuyWEW-WhyL9oDNdy3d73t_OpjqxLQDUHEWFfhe3Vs,1499 +torch/include/ATen/ops/bmm_ops.h,sha256=rk6DgWZVh8BQkR2VpF1nguA9myctXsz8DVaxkdmBTwc,1711 +torch/include/ATen/ops/broadcast_tensors.h,sha256=tEdfukXE1EaNKXnKSSaP7EGB-7eRM8VziST3_BWvlm4,712 +torch/include/ATen/ops/broadcast_tensors_compositeimplicitautograd_dispatch.h,sha256=NkN-MkyW8jq-opdaYjyu6tfMAd8EeAAST_bQcwFEjeA,812 +torch/include/ATen/ops/broadcast_tensors_native.h,sha256=rLLFJ2KglsuNFRiHev2Ur3tXMS8eyZkdKqrm6ynSlIw,522 +torch/include/ATen/ops/broadcast_tensors_ops.h,sha256=rNviKSkDiqTEuJVCFhaaQ6g0dYC2yzja-bdbKnWvfAM,1041 +torch/include/ATen/ops/broadcast_to.h,sha256=0RhnVCJTJB4WS9VnrNgPC0Rj3eQEuJ4MfL6cG523zog,1475 +torch/include/ATen/ops/broadcast_to_compositeimplicitautograd_dispatch.h,sha256=vVMB5IkQ5yYHkTdgtKFFAQaaWHr6KwY_Hp4vKecC4AM,909 +torch/include/ATen/ops/broadcast_to_native.h,sha256=xQDWE0AL2V24IcQpWPiuUU124htMrS_BkfIfySzJIyM,536 +torch/include/ATen/ops/broadcast_to_ops.h,sha256=J3cmN3rv0kOWxmdOGQxcXMmg96MEORFJEvxfZvSEikg,1074 +torch/include/ATen/ops/bucketize.h,sha256=rzoTZw41yOZ5B3nTCtbwyJWKE4-LFKihIkTzzLv14sU,2665 +torch/include/ATen/ops/bucketize_compositeexplicitautograd_dispatch.h,sha256=rd86uX1L2n5Hw1EhMDNxHTVELljDltMlsisZgB4bi_M,1027 +torch/include/ATen/ops/bucketize_cpu_dispatch.h,sha256=AaZthxO54dxhcKfIo6XrEjwtgn0s4COF-uuMzCSg-1Q,1241 +torch/include/ATen/ops/bucketize_cuda_dispatch.h,sha256=RVKGTh_lxdGdNjfj_JCr5N55XKrVe1aefpXgkvmyPZg,1243 +torch/include/ATen/ops/bucketize_native.h,sha256=JHTT0uiqohIirbTuq_Nkky5pJXPPQ_SZPZLOpWz-nqU,1415 +torch/include/ATen/ops/bucketize_ops.h,sha256=hGif31roc-oLt_GWY4pGflVFSWfAVrUCzo_SPL5FaSk,3635 +torch/include/ATen/ops/can_cast.h,sha256=NsLlD5qhk5nTg6Aq08lerK9VmSz8X9LqQgm-dOFHHyY,685 +torch/include/ATen/ops/can_cast_compositeimplicitautograd_dispatch.h,sha256=CSRddvIQ3cUXsUTT-FaRg_LIIHBSauIrmS0nt5ulN90,799 +torch/include/ATen/ops/can_cast_native.h,sha256=mw4KtwOijX_fmZikzLeIg8fXaujzhPXGN1WmpHiwDzo,509 +torch/include/ATen/ops/can_cast_ops.h,sha256=alkAoHNE5Ax4Zwe7ZnbTU62EoBdlOmJAnA06vnbFzM4,1012 +torch/include/ATen/ops/cartesian_prod.h,sha256=jUMa4TThpImI70bipS1YXEaiLmUTzqGamGUnE8glWXI,683 +torch/include/ATen/ops/cartesian_prod_compositeimplicitautograd_dispatch.h,sha256=K358lBsp6-6jwLgwi-sLbqv4f4nFCJ0AyvJPah2dkbA,794 +torch/include/ATen/ops/cartesian_prod_native.h,sha256=trOi5fjwUjKsedLeW0LTUW5uvfFw9p0nYbCeKTCwSHo,504 +torch/include/ATen/ops/cartesian_prod_ops.h,sha256=It5o-KHlnpwkYNZ4C50gTU4pl3v3JrRFpaFuavyjtUg,985 +torch/include/ATen/ops/cat.h,sha256=hIsvPQXiuDOxaTel_DW-0zHCPz4_FC_OgGXBKm1g7fQ,1835 +torch/include/ATen/ops/cat_compositeexplicitautogradnonfunctional_dispatch.h,sha256=t__-cl53QiYtB94Zmw1JO1DhlOxJZQIHIA5c70kcmVM,836 +torch/include/ATen/ops/cat_compositeimplicitautograd_dispatch.h,sha256=qOr20uUe7n_v_wzndSZe-Rek1TpFrdr8kSV5K8vsz3Y,985 +torch/include/ATen/ops/cat_cpu_dispatch.h,sha256=-76NwBlHvzWd0VhkIqA8rLXNUEG5ZvADzHGR8iURsFc,969 +torch/include/ATen/ops/cat_cuda_dispatch.h,sha256=znbTEHV5qvo9MP0Pz8sjFnp6n8ToNRrJZcRJuTeLETA,971 +torch/include/ATen/ops/cat_meta.h,sha256=_ZKXvG1urOk85Zql_gAsPL0m6iYyL_H2q-eJcg7flFA,5040 +torch/include/ATen/ops/cat_meta_dispatch.h,sha256=JrxVPGdeJtqNsA9uNodinDON-Orz5w9UnglH2-2NBqk,971 +torch/include/ATen/ops/cat_native.h,sha256=_lfmW8NBfYlG0ypT9P07BbihU0V2WykyeV8itlZ-xrc,1583 +torch/include/ATen/ops/cat_ops.h,sha256=gU1SDasap7jWSQrMhbbMMYiqTZtzsEmafG8E2pJGpzw,2954 +torch/include/ATen/ops/cauchy.h,sha256=CbgPcLnMfgmveE51OfH6_cp57P2DQAlwlxIrsTN8QfE,1549 +torch/include/ATen/ops/cauchy_compositeexplicitautograd_dispatch.h,sha256=lvUEz8tY33wLCVgMV9WoGOGORiiS6t9ffC2MaOKSXls,1197 +torch/include/ATen/ops/cauchy_cpu_dispatch.h,sha256=W0c5q2NJQobbGWYRj6PSx7FLGH9XSC09ihmqRdyKYDI,830 +torch/include/ATen/ops/cauchy_cuda_dispatch.h,sha256=vNf68oSQ7XAFpNtLoUa6fij1bH_bI6cMstQ7REE8F2Y,832 +torch/include/ATen/ops/cauchy_meta_dispatch.h,sha256=wZ2CG6Sbc-iJjzFw5fCt2Pppb5DFIUkJzpkUeq_qXPE,832 +torch/include/ATen/ops/cauchy_native.h,sha256=SkxojkSzB6bjnH-cY_BbM4rO8sFAY7Ylogu3RB8-5xQ,879 +torch/include/ATen/ops/cauchy_ops.h,sha256=_q6tqQ4-uZfE2u_F5YUvfNL3MbIzDBC6b1uVqk-emNw,2823 +torch/include/ATen/ops/ccol_indices.h,sha256=S3bZrvNlY4xj0DdqVBYZTR2VR2GFWKwNnkBmcA9Ml-Q,512 +torch/include/ATen/ops/ccol_indices_compositeexplicitautograd_dispatch.h,sha256=pmTNMSoS-Ibf2lkWGTMstkA_cWR_V-_Trf21FSAFkQE,793 +torch/include/ATen/ops/ccol_indices_copy.h,sha256=VBwCcG5MB6CJEGcFZF5yIR2YjxE2qvL7dITbBlk_3WY,1153 +torch/include/ATen/ops/ccol_indices_copy_compositeexplicitautograd_dispatch.h,sha256=9MPCVdN9rRyXLmlrIHj3Fy63fJ-mOQAOSGisYabTFMY,913 +torch/include/ATen/ops/ccol_indices_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=hO3_Y2p9GMtq5jVWU612XuBDyo653Lj1ZBElSuAOzUQ,824 +torch/include/ATen/ops/ccol_indices_copy_native.h,sha256=sXtzTZgw27LCwG5XlOLBi48lhj1ywrRJG7hQl_pRNtY,598 +torch/include/ATen/ops/ccol_indices_copy_ops.h,sha256=fY-r5e2THGZhtLeX9Zbh-N7Wwm6kDG4zYuxQFffqZ1M,1629 +torch/include/ATen/ops/ccol_indices_native.h,sha256=9VqreGwWf2fXzrHUFQrA4setcFDG-0oe38q393Bbzp0,583 +torch/include/ATen/ops/ccol_indices_ops.h,sha256=IsP35RdBgPsLXhok8JoMOHWQmp7XXNYaG34QRAwzhwc,986 +torch/include/ATen/ops/cdist.h,sha256=oD699sLP-Xlx2bd8btcfIHq-YYPnIY861F632T8YIRM,790 +torch/include/ATen/ops/cdist_compositeimplicitautograd_dispatch.h,sha256=DimkmWxsVsRbRPjaeiZn5pL8LfB_DoZQfDABhPM1j7s,873 +torch/include/ATen/ops/cdist_native.h,sha256=mCk9GfdJQ5qqJ9eUAan0BN_nzWEHuK1-Zy1bdNvMJws,583 +torch/include/ATen/ops/cdist_ops.h,sha256=rUtHtS9z1A5Y2JypNa4oxT5iN-3NGi6SDDVsDPhAYuU,1197 +torch/include/ATen/ops/ceil.h,sha256=3MonM3ex8vnuGHeDACvWafg_8IQFa56qqjKOwY_m7MY,1164 +torch/include/ATen/ops/ceil_compositeexplicitautogradnonfunctional_dispatch.h,sha256=6S6Lf3ua2fTvNGMr2ewsBx4zNuvuoDzdfmAWccWOsWM,861 +torch/include/ATen/ops/ceil_cpu_dispatch.h,sha256=vJUpyThq7wJFeu9PZgxOP9Fpt79X2rL4Ukv2zCnEr0s,946 +torch/include/ATen/ops/ceil_cuda_dispatch.h,sha256=2xKW-Cmm7uh5p4lnpzqXvf7T1iT0O9bk5W6tzudpUTs,948 +torch/include/ATen/ops/ceil_meta.h,sha256=iaPHtcX11BlKoQyzDAvCxLm61aetCD0-CpC0F82ttXQ,600 +torch/include/ATen/ops/ceil_meta_dispatch.h,sha256=u6ftZhJyfHtYKCclxL3WQx5CXwKEHInpp80e73yzLls,948 +torch/include/ATen/ops/ceil_native.h,sha256=XSnsft1jHM0L-pSOTV0C5SMTk2VUeOKHiv8N_EO6mtM,1027 +torch/include/ATen/ops/ceil_ops.h,sha256=Oa-0OsTRW20ufNWuD8A3XJGAyKyDvQYG1J-1hEysOeY,2055 +torch/include/ATen/ops/celu.h,sha256=8cDVlmyp-zh9rWVEXxOAV33DkmlydDgzfOItBus2DyY,1380 +torch/include/ATen/ops/celu_compositeexplicitautograd_dispatch.h,sha256=QONqnAiTKnPd5_8JO8MqAcDy9bqUnv3x_8O7YLx-Lwg,1106 +torch/include/ATen/ops/celu_native.h,sha256=CMyU51YVzGslvZ_hJXDqHSRNEzayJmeJ0OnhomnbRYw,708 +torch/include/ATen/ops/celu_ops.h,sha256=FI_LH77S6xPJ9uZNfLozp33vu18v41am7mr5ZDetb90,2325 +torch/include/ATen/ops/chain_matmul.h,sha256=MftUqNYmcYsqzlqGoby5A8zKfVEm_eL7MuMhrHvMF8w,1133 +torch/include/ATen/ops/chain_matmul_compositeimplicitautograd_dispatch.h,sha256=5H-mk1ELa3CCFW6Y4zpMuz7mI-62Wni6eoGQeD34PsI,964 +torch/include/ATen/ops/chain_matmul_native.h,sha256=pqwqtPVpsbTq4i2EruMrU598_1yW4WD_rjwFGHGfe3w,588 +torch/include/ATen/ops/chain_matmul_ops.h,sha256=gu5ZaJjuy13vHvdBMPRJ5jLb7mug0QLD6krpH5OhS6U,1603 +torch/include/ATen/ops/chalf.h,sha256=33292FsNLbHcKeH8IPZCFxKne0KiacduwlrlTMGaoGo,505 +torch/include/ATen/ops/chalf_compositeimplicitautograd_dispatch.h,sha256=8J4Zb4SPoFBQOtDBOgVo-3t9l4ei4UZGzhAVvAAI3wQ,850 +torch/include/ATen/ops/chalf_native.h,sha256=2ir_2yy1l6KPTpA8o6XEKVVITbV-ctKxauV0OICTejs,560 +torch/include/ATen/ops/chalf_ops.h,sha256=lAd0ZuE-mjt9kjKsQtDC8f5A2zum7AFRNV8ZwvqLaFk,1129 +torch/include/ATen/ops/channel_shuffle.h,sha256=0wDQH9vJ18C_0bKpSrh8003JoBmjk6QcxG2sBn2MHeo,3634 +torch/include/ATen/ops/channel_shuffle_compositeexplicitautograd_dispatch.h,sha256=HOq1eX-Y9KO5XXRR5mmF_wUpQRr3PPvxzWfuwSBYRYQ,1172 +torch/include/ATen/ops/channel_shuffle_cpu_dispatch.h,sha256=iribNdSHHf8y1ogLZv0wL4zbh8G0l_wi2OXHCl4e6Aw,859 +torch/include/ATen/ops/channel_shuffle_cuda_dispatch.h,sha256=CubBpIh-e0QkJSblaWBpgZWqqXbgPri67PCYDwjIzXc,861 +torch/include/ATen/ops/channel_shuffle_native.h,sha256=BNq-ZfDBJkzao8t-fKjASVXWQiUD2CY25nORExtffD4,731 +torch/include/ATen/ops/channel_shuffle_ops.h,sha256=hcGBXECljTHbyBgT30eXH1yd_rD0LOSffIFD_m5NeMk,1753 +torch/include/ATen/ops/cholesky.h,sha256=JUW5OUFMTHA-9biAYh4VM6fDE633beEJz7vr-n6-vAc,1186 +torch/include/ATen/ops/cholesky_cpu_dispatch.h,sha256=R-dqHBYv0Ld1l0NjbAhw7hhEgWFH5p_j6_ssTzgWb5w,956 +torch/include/ATen/ops/cholesky_cuda_dispatch.h,sha256=aMBm11mXX0HHbG4O5eHwb3GtoJMwWal5SKRzZvpdpyo,958 +torch/include/ATen/ops/cholesky_inverse.h,sha256=ohTlFwPdITmAqJsfwTGWnzfnLRGoIOj89xizgGgqO7E,1266 +torch/include/ATen/ops/cholesky_inverse_cpu_dispatch.h,sha256=MqZ3xtMOirG4ZDx8aHb6WxF-5VYcTh8GhQvirlhAxhk,980 +torch/include/ATen/ops/cholesky_inverse_cuda_dispatch.h,sha256=XHkoEqIrAExteL3mR3pQMi-dN-6iS1mde02ZgQFYv_c,982 +torch/include/ATen/ops/cholesky_inverse_native.h,sha256=zhE4qIlcnWWseld20dThYPn-wkfOUOKIM5bYMCxrO-k,626 +torch/include/ATen/ops/cholesky_inverse_ops.h,sha256=relPYTWQkhg4d834xNBAFyAGGbhUCBfwxM7ra7WHguk,1719 +torch/include/ATen/ops/cholesky_native.h,sha256=-VO_qKjf4i3PLqPv7uqZVmuQN9NB49_JnobNYmPPW7k,610 +torch/include/ATen/ops/cholesky_ops.h,sha256=Szc1X_CpJzM3qw5Mk5RB8mnPyIDMQoqQd9xxrXxQEXU,1671 +torch/include/ATen/ops/cholesky_solve.h,sha256=8jcx3HTwSaDOpuxRj9oupy4PeslgbGTZGhLUUcU-EcQ,1396 +torch/include/ATen/ops/cholesky_solve_compositeexplicitautograd_dispatch.h,sha256=0oAX61a5O70P-1KdbdxXxLuDvhDAKIG-Qlc58LbA5j8,1099 +torch/include/ATen/ops/cholesky_solve_native.h,sha256=oHcaifLmcRT-AUqwQcHETr4COJ1dqHxEqSWs4OgzVcE,676 +torch/include/ATen/ops/cholesky_solve_ops.h,sha256=-4o0YBPWs5-DEqYCv3R9fl6pypteyibrUH2m4FsSz4U,1885 +torch/include/ATen/ops/choose_qparams_optimized.h,sha256=vwT-hOiRp5y9rHWeMaQsfxJepG5rLWuAku6jb7Zeb7w,902 +torch/include/ATen/ops/choose_qparams_optimized_compositeimplicitautograd_dispatch.h,sha256=1PkgD9f16NkbvVkIboqT4SRw81GK86ghra8qFvLrOfM,895 +torch/include/ATen/ops/choose_qparams_optimized_native.h,sha256=pTvdaLxnR7snPyKskXFGic8LJclgQy2WFq8BrDkC7cE,605 +torch/include/ATen/ops/choose_qparams_optimized_ops.h,sha256=KakiA9IyykBZFB-uJbCyDXpUszCYWU8xSU84Sz8Es1o,1318 +torch/include/ATen/ops/chunk.h,sha256=e20CA3f5BIl4-SGJalJHGXNL8dwInRkhm37nLKABk8g,735 +torch/include/ATen/ops/chunk_compositeimplicitautograd_dispatch.h,sha256=WxvNsXFW-nXCDgZGih-vwUR3x_f5fSYhk7IHbQSdF6o,832 +torch/include/ATen/ops/chunk_native.h,sha256=ri4rm0SvHolF2r3fIwIeRmph9oDhAUoaQ_zF4Gh9HIw,656 +torch/include/ATen/ops/chunk_ops.h,sha256=KhbcflMLgT1iRlVf0pT6KzA8B3wCVhpKDpWfolXShJo,1116 +torch/include/ATen/ops/clamp.h,sha256=enXhOfXEmj9KVc4mDX0gguz0gZjem5RfciyOJ0Ac0gE,2994 +torch/include/ATen/ops/clamp_compositeexplicitautogradnonfunctional_dispatch.h,sha256=9v-7ufB1BziE-2MZYNPGCUyVcG4IMA6k6yLydFfd114,1338 +torch/include/ATen/ops/clamp_cpu_dispatch.h,sha256=CpFyQcP3pFRmNrnw7QQOJ_OG4dBn1fQ2e9g9Pw7xpWA,1931 +torch/include/ATen/ops/clamp_cuda_dispatch.h,sha256=eNFu4Hh0Lc9y85OSxyY207RTLxOSUhIw-BMe0rUBgBM,1933 +torch/include/ATen/ops/clamp_max.h,sha256=5_qSwo9fp_Lf9gmarmdqko0-m8jhhoaGYBAYvAZAjoU,2335 +torch/include/ATen/ops/clamp_max_compositeexplicitautogradnonfunctional_dispatch.h,sha256=i3bYtbUqtQVuFvmWTnjzosybuMIOEP08wi_qYu9abqU,1080 +torch/include/ATen/ops/clamp_max_cpu_dispatch.h,sha256=nfysLEGlzPZNzPtdpJQwPkaDXTO6BMZkdseuOVJ91GM,1436 +torch/include/ATen/ops/clamp_max_cuda_dispatch.h,sha256=rAN3eL7ZEyZvpKyu2oHxmJY4Ur9Wncso3XLNf2T3WWk,1438 +torch/include/ATen/ops/clamp_max_meta.h,sha256=9h6EQThOJavQ1hqpzsDQQ8Q_jYkGd1qB8BsPye5yEoY,786 +torch/include/ATen/ops/clamp_max_meta_dispatch.h,sha256=SeIC0Jpd4L9S9eLBSNKq-fTr-VKaMBdDimzytVc1WaU,1438 +torch/include/ATen/ops/clamp_max_native.h,sha256=LtmF7vKcfFDF7PgN-dDXv2PZPUIa02DDtB_9A-Q_5OQ,840 +torch/include/ATen/ops/clamp_max_ops.h,sha256=XJaQSwQhsfZdUKkiRnq5cyNrqECew3PQ7ztFxuSObRk,4290 +torch/include/ATen/ops/clamp_meta.h,sha256=_LYw9nOHdP28wQPoaLyE_FburFqHjpNct8NT4gpeksM,838 +torch/include/ATen/ops/clamp_meta_dispatch.h,sha256=IE2JvEYkCU7ig6qWeRDKDTjZRyvLhYDpCQC3S1j56Js,1933 +torch/include/ATen/ops/clamp_min.h,sha256=Aw0ojF3_0BGaip1mkYYFjA4ktWYlCB69541N4BklQxU,2335 +torch/include/ATen/ops/clamp_min_compositeexplicitautogradnonfunctional_dispatch.h,sha256=3CJs5XfOlcAkJV5inaAozvD6TBHaOFPh4bT_imqKCD4,1080 +torch/include/ATen/ops/clamp_min_cpu_dispatch.h,sha256=LQ_m_egeIf5q3FziyiUN4c5JD5hfxjgP4NR44naN-zk,1436 +torch/include/ATen/ops/clamp_min_cuda_dispatch.h,sha256=wwNQSqLUN-f15mQIidjzEGnZTLp4ePyQXn4vokSrWNA,1438 +torch/include/ATen/ops/clamp_min_meta.h,sha256=Oy4sAMa24oMcuuhyCA8eR62g1PWQdwxYC0RaAEobgKU,786 +torch/include/ATen/ops/clamp_min_meta_dispatch.h,sha256=5jjdwukZVnVme6xnyz_SpTX2MKirVl9IzV5q68LuYZE,1438 +torch/include/ATen/ops/clamp_min_native.h,sha256=AfoerS--daaLcKXVNKAbPVZlaX_Zm_h2Y-rDGzyW-4Q,840 +torch/include/ATen/ops/clamp_min_ops.h,sha256=E9Qtg6PDBKUjg1t9jJyw_H10HNNCbmGpnTYFW0rUUlE,4290 +torch/include/ATen/ops/clamp_native.h,sha256=1Z3SPoiY_LLVWiZgiXEa235wqpWc-pObbUqVr4ks0QY,1060 +torch/include/ATen/ops/clamp_ops.h,sha256=3qLrSLx_jBiFd93umdNOoPuI-Wj1Gy-5jterI9iV5XU,5382 +torch/include/ATen/ops/clip.h,sha256=i1Qm-G543s8xXlLqchC7ET2EV3HtJhOXG0KwOj0hHV0,2969 +torch/include/ATen/ops/clip_compositeimplicitautograd_dispatch.h,sha256=OIrdjOSNw9M5GkW24eR5A9-a5TLVRz3jNSonB1SYqrU,1967 +torch/include/ATen/ops/clip_native.h,sha256=9TPI1nMC7rxGoxHtbdk6LlTre7rD_ywY4fANymQzlhc,1366 +torch/include/ATen/ops/clip_ops.h,sha256=AYW7OOJdh8obJsJExTIG4x5g-K3MFfAj-Bfdmm9Nr_I,5364 +torch/include/ATen/ops/clone.h,sha256=AY2cbS2wQbvK0gfuJqRMnybBcsghanx5pC76qoea4Ls,1360 +torch/include/ATen/ops/clone_compositeexplicitautograd_dispatch.h,sha256=g4VaUZZXRy5522TJZqcE3V89JIFAKPrUyZOqWPwoCdI,1120 +torch/include/ATen/ops/clone_native.h,sha256=jE1PYjyTEHKmNP5XgxUT2_amqujgnAY2lLSQa1K7Rpo,1326 +torch/include/ATen/ops/clone_ops.h,sha256=41G5xxCziBNKApfWAAhPrjmCNioaDKP0G1gZrZsk73o,1894 +torch/include/ATen/ops/coalesce.h,sha256=sh1l1MRx1PVcZ1zGt4tauAanMZsPGQWMCS4l5CvHzdk,508 +torch/include/ATen/ops/coalesce_compositeimplicitautograd_dispatch.h,sha256=_aOw2EPPSA5st_XgDaG6b7pdiqpw3FAcVqUheHjG9ys,789 +torch/include/ATen/ops/coalesce_native.h,sha256=Ki3LJgGqN5i4BT2O4SjotSVQhWJp6GoFZ2TtWI0_LIY,499 +torch/include/ATen/ops/coalesce_ops.h,sha256=BvYnBiYjtLjDwQrOJD-YaCYrASKkgpCcQ8K4iUsDY4c,974 +torch/include/ATen/ops/col2im.h,sha256=Uza8VdqMj150dxeG9NiYHvzGfVqEA0_CDjI9rWIsaGg,5911 +torch/include/ATen/ops/col2im_cpu_dispatch.h,sha256=mhBsG7wp5gN1--0KVTZI8u7BtEp6MBITPWKYKwXQ1YQ,1947 +torch/include/ATen/ops/col2im_cuda_dispatch.h,sha256=UinSLNxeFJwrLcugyAa_SqDRzhWXEAAXwoOyUphVP1k,1949 +torch/include/ATen/ops/col2im_native.h,sha256=mPV-6eSOqz31hU2ylVaFgJzg6aIpoP7PyEAGs-HQuuo,1260 +torch/include/ATen/ops/col2im_ops.h,sha256=4RV_TawzFL3DpLkMLCino6uxAJywKeMEWfeo3p47vrY,2471 +torch/include/ATen/ops/col_indices.h,sha256=dWR-HBkDO0ivKM6K9DzHDU0zsuCl0W-jFVSPnZXIFyk,511 +torch/include/ATen/ops/col_indices_compositeexplicitautograd_dispatch.h,sha256=MvGSCEy1K97sgpgSu_2hSbbu5MKxBcrqkExI22LC0FA,792 +torch/include/ATen/ops/col_indices_copy.h,sha256=kplu3eI2pC6FZIHneED3-qb72MxkG8oy82kfhl3m7N8,1143 +torch/include/ATen/ops/col_indices_copy_compositeexplicitautograd_dispatch.h,sha256=7OhGhoE0lnz0gxwg92rDrbYFdlVuN_UZhV3Q69QN2eE,911 +torch/include/ATen/ops/col_indices_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Uqv5-asqPG1XIeDXCgdV_ykxBYr1AE0SBiMDfAyv-To,823 +torch/include/ATen/ops/col_indices_copy_native.h,sha256=14ibvE-okRCm11Ioey3LAkUpow8u3wHBlsOE-tUWKcU,596 +torch/include/ATen/ops/col_indices_copy_ops.h,sha256=d4zCQyVbBdO4ygQwOoVtsy-SQJYa_TXHzN1pdXnauHg,1623 +torch/include/ATen/ops/col_indices_native.h,sha256=Q21UvVrZXT6nGRJzB84NV_gI3FM1A1BtnwHYOl5488o,581 +torch/include/ATen/ops/col_indices_ops.h,sha256=vqiDu6w5VQxoHjyVXo0CFUX14RYfM76hf5tFLnFaB3Q,983 +torch/include/ATen/ops/column_stack.h,sha256=QF0hXr2zfOCMUAUrY0uxdJMQmw2gksoJvdB1Hams8AE,1124 +torch/include/ATen/ops/column_stack_compositeimplicitautograd_dispatch.h,sha256=_IdwFCen6GkatAaXxhvFE06pS7N23XVYHcjwE8Fal1Y,961 +torch/include/ATen/ops/column_stack_native.h,sha256=klX_JX0Dh74Up1werV4rYR4PyLJI7ATr3NhaYubHHqI,586 +torch/include/ATen/ops/column_stack_ops.h,sha256=7qwHKLww8peXzOFM3MEroapgYUScN6w72EWGxCllpkU,1597 +torch/include/ATen/ops/combinations.h,sha256=Lve6gpZOGJ_NuM7U9CLuZ3tVs_k3X-OCTvq-8g9vKLc,769 +torch/include/ATen/ops/combinations_compositeimplicitautograd_dispatch.h,sha256=60qzt1eJ1LhRHtkBl_MCjfoHn5j9fn9zjASKxt3mqnc,835 +torch/include/ATen/ops/combinations_native.h,sha256=Pw_6JzWWA1Y0VlEpsaeAcjIzOLQ-CecxiWZwTbLAAeg,545 +torch/include/ATen/ops/combinations_ops.h,sha256=Dby4DTUL-tb7DRpLwMmqMs-y4mysmpNIgEM_w2LumVA,1101 +torch/include/ATen/ops/complex.h,sha256=s5bSd8cRyf_aNP-jjtNO3y8sTsycORp8Uj4EATKBYZY,1185 +torch/include/ATen/ops/complex_compositeexplicitautograd_dispatch.h,sha256=2JcSwF320fuRzmTJctVJftwwaCVgpJOC24Pn68wSNCc,813 +torch/include/ATen/ops/complex_cpu_dispatch.h,sha256=7Sd4QEZ_h-s7wYeRNaynFi16X6ZLbYo7gAcbDZkZhRQ,899 +torch/include/ATen/ops/complex_cuda_dispatch.h,sha256=RCovE-mtOgHsYS8Yr1BPa1TFNykWkPuT7Tbc-dJm3C8,901 +torch/include/ATen/ops/complex_native.h,sha256=4d9zTvgx7ccWBshL5WtwKFWsL47SHO7aUod2qjH1QcM,628 +torch/include/ATen/ops/complex_ops.h,sha256=RyuWGuGQsDMaO70BSOYflCSN_tW__V32EwNrBJaBXKc,1735 +torch/include/ATen/ops/concat.h,sha256=WZMMfZQq5rYeC8V5_qmv3iiOOlXtQV9qteAEaoc83lg,1856 +torch/include/ATen/ops/concat_compositeimplicitautograd_dispatch.h,sha256=aM6QnlnpIsjvccARJVLqIXi965x_NKE2SPV50UNs-xU,1248 +torch/include/ATen/ops/concat_native.h,sha256=KfOpx7GCVwsx50T95QAtQ3jIdEDdssTgWmSmuo4Jb54,768 +torch/include/ATen/ops/concat_ops.h,sha256=B-dMZGG2TnX8sCYlsz4u9rjeg8nFOXtsHF_unsSSVEo,2918 +torch/include/ATen/ops/concatenate.h,sha256=OBq0pt6oSsj0mNqtVYWg1iLdDuWCwazENIxqdq4wKrY,1951 +torch/include/ATen/ops/concatenate_compositeimplicitautograd_dispatch.h,sha256=ArWuIA7tZgWySm_EGPs0QeAYJXuU5OiPRgmzFWhhv3U,1278 +torch/include/ATen/ops/concatenate_native.h,sha256=nHN7KeXhUBXgbE0QQqwxp7Itl3ctxc-Z4-Mx8SZabR8,788 +torch/include/ATen/ops/concatenate_ops.h,sha256=D5RgkDuyg7WFRw-wTk2Ll8CUXKAD1L1yf-Y1H-j3Tns,2978 +torch/include/ATen/ops/conj.h,sha256=NMJ-GLXk3366ZaGK8c-QdImcqizqOKofLLDXyUzTSDw,653 +torch/include/ATen/ops/conj_compositeimplicitautograd_dispatch.h,sha256=6tbNYo4RzyooIzrEV4_Husju8upMm6HKJfJkMpUHe24,785 +torch/include/ATen/ops/conj_native.h,sha256=DoKBkrwZSZorCp9GDGWWP50IQjrRzFBw6uhu0hD9f2M,495 +torch/include/ATen/ops/conj_ops.h,sha256=lgoVQ8ndFGkL09mDKh0dNYYuCnli83PlCrKWhZJ6C8g,962 +torch/include/ATen/ops/conj_physical.h,sha256=HMlwJM7t0c0bOyHnNsYf-xUJbdHiGn6cjii2ndgquAo,1281 +torch/include/ATen/ops/conj_physical_compositeexplicitautograd_dispatch.h,sha256=_0rFF2eTc72z9PEw4d9yFgoBljUlwBXOW6hNG1H7yFs,791 +torch/include/ATen/ops/conj_physical_compositeimplicitautograd_dispatch.h,sha256=P6cm0qwqarMvL4VzVkgxwwlDakpHYQX41HQB5fQxiCk,794 +torch/include/ATen/ops/conj_physical_cpu_dispatch.h,sha256=3ISrvFgClyVIVK97zW0vTC2-PWbV_s85gbRlw0rz0RQ,861 +torch/include/ATen/ops/conj_physical_cuda_dispatch.h,sha256=Cn7oQF4guhsrJyISA3M-ozL4DRlFBBr4uK_G_SEm8gQ,863 +torch/include/ATen/ops/conj_physical_native.h,sha256=7VpeLUIwbtnH1xgCa0yBzYAVU1ucwLLYgGpTmcoIBiw,909 +torch/include/ATen/ops/conj_physical_ops.h,sha256=2Hc-LDUidPw-xc-lRPHhqKMK5ZFCzbrdL_CnmHMJqo0,2136 +torch/include/ATen/ops/constant_pad_nd.h,sha256=3hkfqtWGNG4EE6Tai3VjxENThmsB6DTcyD-ISimhJJc,4316 +torch/include/ATen/ops/constant_pad_nd_compositeexplicitautograd_dispatch.h,sha256=34eNChkYWlcgSE8TlV8j_RVGMvmBSxdGmUEE8DPmiYw,1537 +torch/include/ATen/ops/constant_pad_nd_native.h,sha256=ajvhQ1D_fAUZZ-8IyzQkvxAS2Z15BgB00tRJ8lPT05Q,701 +torch/include/ATen/ops/constant_pad_nd_ops.h,sha256=HrwiOWT21B2YrPtguvPIlAXdqrw9Hwi-oYMHroxQlvM,1963 +torch/include/ATen/ops/contiguous.h,sha256=IB1SlNuYMD5r7Bp2N_c8puHwPXO4co3w31jl_mA-wQI,510 +torch/include/ATen/ops/contiguous_compositeimplicitautograd_dispatch.h,sha256=S9JxIco4yVeqnl9fXtUDUC01FJiRdSI7DLNK1gUfo10,853 +torch/include/ATen/ops/contiguous_native.h,sha256=QZZR3w-LFCW9rNchWv-DoMTgUlHpX4-4z0MYMz4mcqA,563 +torch/include/ATen/ops/contiguous_ops.h,sha256=3WNWji5toKoxIZtxBRiwKLYG0z1BCPDEbYo_FUxZ0t0,1111 +torch/include/ATen/ops/conv1d.h,sha256=gN6kxOHv8f1mU5D3-HjWXF6gCSSX-U2bOuMlIZQ2BYw,4566 +torch/include/ATen/ops/conv1d_compositeimplicitautograd_dispatch.h,sha256=64bVt54xk3IOtd5_8QsUPsBPyN-Knj3HXCnb8O-jP6g,1722 +torch/include/ATen/ops/conv1d_native.h,sha256=vQ0ueE3s6xRHdJCwl4gloKvyuVtkx2E1FEZCKPUGPyA,1018 +torch/include/ATen/ops/conv1d_ops.h,sha256=tLFDWJkakvZvICgkLmSSwjQEtAZ2WrXHJ2fPwvwiafk,2693 +torch/include/ATen/ops/conv2d.h,sha256=1WD_Z5ZekJxjLPLiayxONMv3cCukVaxSrTLay8GVJYw,4566 +torch/include/ATen/ops/conv2d_compositeimplicitautograd_dispatch.h,sha256=LfRbX-KIbGihUVzvt7GqXi0-Exfyf3azcTB0dRroGHg,1722 +torch/include/ATen/ops/conv2d_native.h,sha256=7tTZQp9nKcYdsnexd9r3dGm7rrvd5FapEjeWuqHFnoE,1018 +torch/include/ATen/ops/conv2d_ops.h,sha256=GH4Btp6xKlfAAIkJAhDpEFjOKBJTbElECFgoR12MWGA,2693 +torch/include/ATen/ops/conv3d.h,sha256=wKH-wF1FVsnGKiP5qiGZDC1rVsR0A8-tdPPAw5kflKo,4566 +torch/include/ATen/ops/conv3d_compositeimplicitautograd_dispatch.h,sha256=FPuJqX7hZmFZf5C-NDEaWC53CJwHAFtrG_H26nyU15E,1722 +torch/include/ATen/ops/conv3d_native.h,sha256=g-3qI2BcOmfz0CzApv_INbgF7fTffdgALy_RbxxikzY,1018 +torch/include/ATen/ops/conv3d_ops.h,sha256=oQedGSUCcpzhe5F1dfejeYoH0JRwE1TDKV5FFAXAjE0,2693 +torch/include/ATen/ops/conv_depthwise3d.h,sha256=SXGseCp8KYqGlA7TfaAyrSkCvKSgDThRBjrDN7Bltrg,7361 +torch/include/ATen/ops/conv_depthwise3d_compositeexplicitautograd_dispatch.h,sha256=Uvcwf1rBq9qNKViBpNKOHTvf1uekiawpzXO1Z3q_waE,1828 +torch/include/ATen/ops/conv_depthwise3d_cuda_dispatch.h,sha256=EB1Uw_oLrEjS40zpMk13YeE89jgt0qgECSAS9R6X8Vw,1189 +torch/include/ATen/ops/conv_depthwise3d_native.h,sha256=U95zbCLHkVy9CYZARjnuvg8Ssg-N7YvgyVbmzSUyfAk,970 +torch/include/ATen/ops/conv_depthwise3d_ops.h,sha256=pl_cH50N-NdmGVXfMGU9aYlPthPMqWvybWSWteXdUVE,2879 +torch/include/ATen/ops/conv_tbc.h,sha256=_ZEXXmFAo8Zj5-6ZbNdtgN4oIm44QD9X4MH9HStXvQ0,1436 +torch/include/ATen/ops/conv_tbc_backward.h,sha256=NnsHxOk4L8sfdSg636fieg_cC35mKR9Tg49JBOjmo24,910 +torch/include/ATen/ops/conv_tbc_backward_compositeimplicitautograd_dispatch.h,sha256=G4mXO1RMiBOF7giiwaaZ9K7BZCkpWSEyM53sR7AGnd0,925 +torch/include/ATen/ops/conv_tbc_backward_native.h,sha256=M920roM_VRjnldDzDMGotfSYiPWgUBGzq-dyZ4oDrm4,635 +torch/include/ATen/ops/conv_tbc_backward_ops.h,sha256=-vXFZ1wRQ5NQw_0gQEB12PLbz1mDGU8Y7Bufij0w2kU,1423 +torch/include/ATen/ops/conv_tbc_compositeexplicitautograd_dispatch.h,sha256=4rbsyeqnmYsoBCZyI7MSA4VhPIYe1NE-xZT4_-rDGy8,1151 +torch/include/ATen/ops/conv_tbc_native.h,sha256=jzsaFDtjiV4DjzkEiTxXNNkFzR0RZ9cSCM0DTmZhcU4,712 +torch/include/ATen/ops/conv_tbc_ops.h,sha256=pz0Sz1EInpNohB7bAUvLU1H9LfvusoR8-i7iOazlKkY,2011 +torch/include/ATen/ops/conv_transpose1d.h,sha256=XdQqF03plM_U8_VNuhcR0_QxqRzwq5LiULL2aEjjoAY,3031 +torch/include/ATen/ops/conv_transpose1d_compositeimplicitautograd_dispatch.h,sha256=wH9eJujDK5_eNkDZPSKaWLJ4p3BnPdPBYFAVVxQC0sw,1353 +torch/include/ATen/ops/conv_transpose1d_native.h,sha256=E2qO-Y9Alyrq3Tgml4fr0wrpFAC6cH652m678KODyi4,792 +torch/include/ATen/ops/conv_transpose1d_ops.h,sha256=rmCBLZ77dhG327KECWr_Zy2xUFAdvlHu4gPRVVNtZKY,1715 +torch/include/ATen/ops/conv_transpose2d.h,sha256=d1EsqS1eugD60MgaQKIHdQx_z5KthYw7pkBqT8JAkJY,3067 +torch/include/ATen/ops/conv_transpose2d_compositeimplicitautograd_dispatch.h,sha256=85ZvXuBfN7Enp3JJCuZ5apc0xrE_oF2ss4ZBapnHcKA,1353 +torch/include/ATen/ops/conv_transpose2d_native.h,sha256=4RytatwIMMIW2IZvilFkZZk_Nbd87nzK5vEhHE5zwJc,792 +torch/include/ATen/ops/conv_transpose2d_ops.h,sha256=akVybpZLzxaIu16bo9Rv2xz6asD8QeQQB2H9RG1BGPQ,1732 +torch/include/ATen/ops/conv_transpose3d.h,sha256=KFCTCIQaJaeRimT6vvw6Ob2RkUYMguCEGTaGZ8HLGz0,3067 +torch/include/ATen/ops/conv_transpose3d_compositeimplicitautograd_dispatch.h,sha256=bvmI4FEaIz4acxNYofM3hp8Mbe6gNsifskGBFuc9byI,1353 +torch/include/ATen/ops/conv_transpose3d_native.h,sha256=XdRSw0mAbKK-jkzXKjLkTXeTKa22uGcV3gKjznbA_ow,792 +torch/include/ATen/ops/conv_transpose3d_ops.h,sha256=ft-2xPbLkXgDDF7DMKsT4TRze_p0N6ml00VD0V124O4,1732 +torch/include/ATen/ops/convolution.h,sha256=Bv_qRR0XdefLXjpOd3fsp58I3ptyj0A5zniKkMayC-o,8154 +torch/include/ATen/ops/convolution_backward.h,sha256=PEYxHvMtPIndkHT7JW5v-Ixpg5sitBnvp6Uxc_ch6_s,11555 +torch/include/ATen/ops/convolution_backward_compositeexplicitautograd_dispatch.h,sha256=_HiIjk_yZGK_6xslY5brJW3qlK1niFdqinedb0jNxt0,3342 +torch/include/ATen/ops/convolution_backward_cuda_dispatch.h,sha256=CkB9YnwuJ58qexHevhJM0qCAumzTJb3K1pH2bjvjarU,1470 +torch/include/ATen/ops/convolution_backward_native.h,sha256=AxFyIb5ESH1EeJa2uilWZbpWjhRxsIkUXZjdX2pxm1s,1289 +torch/include/ATen/ops/convolution_backward_ops.h,sha256=6nlhj79K-b1IWG4KL7qhfNaxsbYUtTWCcYatfwms4gk,3998 +torch/include/ATen/ops/convolution_backward_overrideable.h,sha256=r5JXSPBl7gp9xmKA5aZDN8WEAfu2mZY3uZ7SABotRRM,10752 +torch/include/ATen/ops/convolution_backward_overrideable_compositeexplicitautograd_dispatch.h,sha256=B_FQ67OONwyt3hbnr3p7ObTdqTwD_TSR7fg23J3XtjE,3195 +torch/include/ATen/ops/convolution_backward_overrideable_native.h,sha256=UE-RgRiUHSgfRDLfYPTdooymK_qC3-U9LQx0NIYn-jU,1240 +torch/include/ATen/ops/convolution_backward_overrideable_ops.h,sha256=vYP3tZeB6O60OdRf2_KeNIL3GHc_xstF_lakHjSvq7Y,3853 +torch/include/ATen/ops/convolution_compositeexplicitautograd_dispatch.h,sha256=bnnPDHdrZNmaA4S1Zrcp4jbH8dejOwgjxzwILhiOMQo,2531 +torch/include/ATen/ops/convolution_native.h,sha256=GRjWyS2OBU7HOJCxIy9Xb9mplVo9YNm2gVMX5CRoo5E,1033 +torch/include/ATen/ops/convolution_ops.h,sha256=SFxciilwbeo2OjIhZ1mdn1bE42G0bJd4vxg-RSNMop8,3115 +torch/include/ATen/ops/convolution_overrideable.h,sha256=TO51pt-3mLmKxBH3lNYs-v4ary6HAIrVbbARESQ8IVY,8557 +torch/include/ATen/ops/convolution_overrideable_compositeexplicitautograd_dispatch.h,sha256=ubdDwdVVqG2AvUX_LbpkXH95PKZaHxCmXnpi3c3ceFA,2609 +torch/include/ATen/ops/convolution_overrideable_native.h,sha256=lA4kSRbc-UgfyAEW2XCj84ynjbZviE-rMm05cjlkyGI,1059 +torch/include/ATen/ops/convolution_overrideable_ops.h,sha256=IdMgxRApfv2ZSCO9rfvhq5VZaqtrlHa0ghczyJLpVDU,3193 +torch/include/ATen/ops/copy.h,sha256=_Kh7GmOLf8VpUw5Bspv67vqGZ4qzPZsfNk9mmw-TPuY,1332 +torch/include/ATen/ops/copy_compositeexplicitautograd_dispatch.h,sha256=kOPwiM1kkUiC2iJ8q0lo408jSS0qcdJJHIGXh7fwdng,1078 +torch/include/ATen/ops/copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=8jq_UeW5qQeQDowrBxebWtykk7-YmUB0Rv8HK_kG7WM,860 +torch/include/ATen/ops/copy_meta_dispatch.h,sha256=QdDXsEm_8vedlBPxAks4EF1YNGv26mcSgppvON7Bkrw,792 +torch/include/ATen/ops/copy_native.h,sha256=b0zyZFJcYxj5DdX50HuvtXTYEi6FO857BM9cltvw3HA,1313 +torch/include/ATen/ops/copy_ops.h,sha256=RveCzKlcMShynoXvcoeeAe6j5CxzJm9UIj5nmw0ZViY,2502 +torch/include/ATen/ops/copy_sparse_to_sparse.h,sha256=7LajnT0uVzWDcEoCagWB6fUIyH6ehEUdBKTavA5cMpU,1799 +torch/include/ATen/ops/copy_sparse_to_sparse_compositeexplicitautograd_dispatch.h,sha256=RhL77q--KyoVQz9O4Hx-x8F9AydnPPH2ge9AVn8Yxw8,1132 +torch/include/ATen/ops/copy_sparse_to_sparse_meta_dispatch.h,sha256=_XmI30A7PmL_98qvxm9dwOwZ533iXNXHsyigGH1-E8E,806 +torch/include/ATen/ops/copy_sparse_to_sparse_native.h,sha256=0p-W25LHXcH-1uHkA6u5TnsBXcBzyTHxs_TKZhtBCh0,804 +torch/include/ATen/ops/copy_sparse_to_sparse_ops.h,sha256=SST5Rs9wzeuijLojCMec18s3bK3aMsESsHh-GlfSMf4,2655 +torch/include/ATen/ops/copysign.h,sha256=NUyChuyd1qIKRxg96z9eEICcUcwZjs88ZDQK5mXjJrY,1958 +torch/include/ATen/ops/copysign_compositeexplicitautograd_dispatch.h,sha256=vrIIM3VZ9LDDwROLsQEfF4gqY3pbSUtsDApXmtIZcgA,1110 +torch/include/ATen/ops/copysign_compositeexplicitautogradnonfunctional_dispatch.h,sha256=X0XJ9ZEDAzaoq8RKaSnYmjwdkudlv9uTlx78FJm-rtU,921 +torch/include/ATen/ops/copysign_cpu_dispatch.h,sha256=hJiktX5kbRN7uaeA-8Sjo0HB7jKYbzujus41TtXgjCk,1066 +torch/include/ATen/ops/copysign_cuda_dispatch.h,sha256=fTlL0oJ6JfxYTuMnj-a03afVX4iZlYD6RfXwdRxL_98,1068 +torch/include/ATen/ops/copysign_meta.h,sha256=Loo8k8VchzFiHV_vuq01xotrotVZYEc7AgjTR1akeXY,637 +torch/include/ATen/ops/copysign_meta_dispatch.h,sha256=tZ0AdILSvSOFqnbE6IfLKexmEHCThHaZovppgqv3jYw,1068 +torch/include/ATen/ops/copysign_native.h,sha256=NeHJ_hf6rY5QRL1igDsoDpFwMnjUpxXgughPGWTudN8,928 +torch/include/ATen/ops/copysign_ops.h,sha256=0g3S6hMVMUK5h2qj7ySPK7gEiH_fGlwzxSvGmqFl4MA,4348 +torch/include/ATen/ops/corrcoef.h,sha256=5uufwTv3y4n70zlYWiiOG3dG2vdif2z4K40fSJ0itm8,652 +torch/include/ATen/ops/corrcoef_compositeimplicitautograd_dispatch.h,sha256=7V_oy1Vfu2ojrCiv2kYG4q0KUdCEjCBFJqgor-71K-0,789 +torch/include/ATen/ops/corrcoef_native.h,sha256=xdrkVGOeaAFUHzwsrckz3u7quex5o5MEVkcC6rwd6Qw,499 +torch/include/ATen/ops/corrcoef_ops.h,sha256=ORbaxkp5bnvaiPqUEC8VApoxNtz71YAdazcTiy2jO2E,968 +torch/include/ATen/ops/cos.h,sha256=8NSHKZm5-HnsVGKvXbYOPDBaFkdOsI49jJSWE9EEIc8,1151 +torch/include/ATen/ops/cos_compositeexplicitautogradnonfunctional_dispatch.h,sha256=XVAn4vVZrOUGDcUAXTx2LTJThImkNe1iOm_jsN1M6aE,859 +torch/include/ATen/ops/cos_cpu_dispatch.h,sha256=yGfp9ceMPL56fW7Ttp7dJ-le134Ru8llvV4b3cyOLw4,942 +torch/include/ATen/ops/cos_cuda_dispatch.h,sha256=RxAQWgKfXTJtnJsIu48mIFpIsHcrElIdjbqz2iWqKFI,944 +torch/include/ATen/ops/cos_meta.h,sha256=3xZ82dXnI786DNP6dtR6SiLYilhMNmLVgN0Rnl09RBA,599 +torch/include/ATen/ops/cos_meta_dispatch.h,sha256=9BM-QpPkro2ZmqkvbW1JKCwvRQpeeXbJgCy8DjdsXxE,944 +torch/include/ATen/ops/cos_native.h,sha256=x79YeaQgDsUJlA8Q-UgY-Xlt83tr1iTHq8hiwJessc4,675 +torch/include/ATen/ops/cos_ops.h,sha256=02tITomgHlthU-DCx-TQoqjRhOu9hkVuzVq0BEIoLoo,2046 +torch/include/ATen/ops/cosh.h,sha256=EcL6-1JKC7mvbld_gdIsdGoqdt9StZKLES9l7AHWSqk,1164 +torch/include/ATen/ops/cosh_compositeexplicitautogradnonfunctional_dispatch.h,sha256=UDdRZlU8PUapXxAzqZgJprNf0pez72FfJLgp8KW4jPM,861 +torch/include/ATen/ops/cosh_cpu_dispatch.h,sha256=bjnJ3hun1-kXRkALDiQpKoJXqxllRiNt5vwdOj-NGyI,946 +torch/include/ATen/ops/cosh_cuda_dispatch.h,sha256=AKwDHJjOHoo2e_7mxkX6N0kGHEv-5Xc1KcrH2QCA5BI,948 +torch/include/ATen/ops/cosh_meta.h,sha256=RzS7hd2YJNf7_DH-GPYNDRVSxM4b_xa1t26iSgGGF70,600 +torch/include/ATen/ops/cosh_meta_dispatch.h,sha256=64rZAnLgvqHAM3xO9acy8ahZ5JjnZ7C_bkt7fcN_5OQ,948 +torch/include/ATen/ops/cosh_native.h,sha256=2GM7DLmw46PRO6S-TJXw5cpyvrXC5UFOZhgTnPn6E2E,613 +torch/include/ATen/ops/cosh_ops.h,sha256=K6vCbuOFWSXc9Zjy9GhwcdbhVCBsZZ8oROZxbcH0ao8,2055 +torch/include/ATen/ops/cosine_embedding_loss.h,sha256=JnSJJp6zqLso1nucQoTSCpoiMSb-eOKTGF8IMAC6AMQ,925 +torch/include/ATen/ops/cosine_embedding_loss_compositeimplicitautograd_dispatch.h,sha256=Fcm8ClSeixYUn0ri8Reel-qDifyUh9AAPtbi9uKile0,916 +torch/include/ATen/ops/cosine_embedding_loss_native.h,sha256=qrrcYlqpJds1obZ95blgRcNE-7KEq7BDTsVK1o3OUlo,626 +torch/include/ATen/ops/cosine_embedding_loss_ops.h,sha256=V5DYNiUIhHvJ_p9MB5L5K1e2PlTCmQxthBIGftY-hAQ,1314 +torch/include/ATen/ops/cosine_similarity.h,sha256=X-nF5PazzxBnCIafhEiqVzqM8hfNg5SY3zjwozG4svw,791 +torch/include/ATen/ops/cosine_similarity_compositeimplicitautograd_dispatch.h,sha256=QxuOvuBbJ3-G-UJQWaiH4Cgd6XxbLHIwc5urhUMbOks,852 +torch/include/ATen/ops/cosine_similarity_native.h,sha256=5L7dqwkAl8BSMTcqiay-UqviLyhu7yAZQEpsOWj83D4,562 +torch/include/ATen/ops/cosine_similarity_ops.h,sha256=XIp8jod_usyVz7vKuj9UJX56ftKUytS3le4FPVg8IZ4,1161 +torch/include/ATen/ops/count_nonzero.h,sha256=hvaHfsmw90Rpmfin72UjKH4-vQGx-fkbS0_m6wpqZxY,2078 +torch/include/ATen/ops/count_nonzero_compositeexplicitautograd_dispatch.h,sha256=LmFkwrRkscbuvzYCTQRZnvKpYeUIIoan-Q3zF7FRgwY,1302 +torch/include/ATen/ops/count_nonzero_cpu_dispatch.h,sha256=E4KLfCKtcVbLqMvUDD9CXLxf_s3hp3cR77dt5pPuE8g,771 +torch/include/ATen/ops/count_nonzero_cuda_dispatch.h,sha256=I_VabnPkxoz6tA2TpDMl-oMNCn3fZeDVDTQjk5oL_2M,773 +torch/include/ATen/ops/count_nonzero_native.h,sha256=axh1kLESq7wmwob5nLN0r6eGscCrvIMP8yyCuvMBBDE,959 +torch/include/ATen/ops/count_nonzero_ops.h,sha256=dyDYuqDRJ9b1leWAr1Ir_LKeIdzdVwcAkTCjiHmV5mQ,3172 +torch/include/ATen/ops/cov.h,sha256=P_6xPYCJfqWHpxav5narAxhO_d2DwJHcHnMbz5hQDKw,851 +torch/include/ATen/ops/cov_compositeimplicitautograd_dispatch.h,sha256=R0aEpV2Oxsy9pYvV3e7uQTKDdNS0en8sDt7G5a52P20,904 +torch/include/ATen/ops/cov_native.h,sha256=0YIHRqSAg2AAgj3rgajMVfRrEQky-JljxOolSEr7fgw,614 +torch/include/ATen/ops/cov_ops.h,sha256=WwxgTyIkpapb6Iq40tdJHjmdJxwzQNprZXh7oqIS7nk,1327 +torch/include/ATen/ops/cross.h,sha256=aD2IcmHzhW1HMpPKm6WSD8FQSBVUjDfBPEU6fGouS7Y,1354 +torch/include/ATen/ops/cross_compositeimplicitautograd_dispatch.h,sha256=OUH51b9T9pssmqtYwvgEG8V_cnNqCv4jkMOSFXDXFSU,1141 +torch/include/ATen/ops/cross_entropy_loss.h,sha256=IOWfssp_htBRBpZOLwgQP9EYpF3bETN-KzfrXA8DnOE,2457 +torch/include/ATen/ops/cross_entropy_loss_compositeimplicitautograd_dispatch.h,sha256=_EuqCxUnyXMk0dAU-BaTanFf1i_x5ek-zKZpWGTi_yU,1213 +torch/include/ATen/ops/cross_entropy_loss_native.h,sha256=2c-54JHidRPFbu92K68g9gJ-D99E-XVlMdhOzbrnR-s,688 +torch/include/ATen/ops/cross_entropy_loss_ops.h,sha256=QWcw4MvDEhAVFGQxtPKeh_eKOiFZHIk27-f3gHWb4h0,1474 +torch/include/ATen/ops/cross_native.h,sha256=je5YTZSkru-C9ILtssXPHeOBFI1OxzMZAxz-uPekhno,701 +torch/include/ATen/ops/cross_ops.h,sha256=FUkcG9CP6X6q8-_4pq-YMF6EhCNBLbaleo754ZKArG4,1931 +torch/include/ATen/ops/crow_indices.h,sha256=_yBhtezBL1Q6gs8RG9rsMx-XRpfwZPx9tjLqh3Kwbx4,512 +torch/include/ATen/ops/crow_indices_compositeexplicitautograd_dispatch.h,sha256=Kop498T3YYpCgH14FWgKyu-wmDdCOAIvJj08oY-ECUY,793 +torch/include/ATen/ops/crow_indices_copy.h,sha256=Ph9b9x-QGXvOFvh9rMrbPXcr2HiDLBmrqwMIWHxImNo,1153 +torch/include/ATen/ops/crow_indices_copy_compositeexplicitautograd_dispatch.h,sha256=FlJ_Zhgdb7mDs3ytL8gyQ2-QztECxwUnqjnUmNfn8rU,913 +torch/include/ATen/ops/crow_indices_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Z1XL_E9hvJuhEiUDeBkX1CLQdNLjOX-TjIl3z_0zK08,824 +torch/include/ATen/ops/crow_indices_copy_native.h,sha256=gxI0rc8jIqONTPRpilVQZrPPp9I56R07U2h1H8t5M7U,598 +torch/include/ATen/ops/crow_indices_copy_ops.h,sha256=Wt0tQRqLZBHVg37y60RKMFAAzXy03StzLWOWPqeaWcA,1629 +torch/include/ATen/ops/crow_indices_native.h,sha256=XSQXplDNuClSHj6FG9VMtfe_GQHp1Og2dapNDcNetTU,583 +torch/include/ATen/ops/crow_indices_ops.h,sha256=Sf_CH1LvIvEnBNADCzMkrsHeai1kDQOL9fRRcXFMMhc,986 +torch/include/ATen/ops/ctc_loss.h,sha256=Fd42jiOaLk5T9RUZALcUHRGp4H4kNXXG6ebqAqje9OY,1594 +torch/include/ATen/ops/ctc_loss_compositeimplicitautograd_dispatch.h,sha256=6kXzfZDGCxd1IKnmX-GurCiXZfvXKnNxEUIB-fNJyB8,1208 +torch/include/ATen/ops/ctc_loss_native.h,sha256=NnCee2W2pErf4fkl6q91DwaORlQkOg-IpNX60qjL-og,918 +torch/include/ATen/ops/ctc_loss_ops.h,sha256=PWJkIcSOV9kEMrgStS0o89vMTbb6aQ9LPhodBpUT4as,2550 +torch/include/ATen/ops/cudnn_affine_grid_generator.h,sha256=IR_dX22VQjn-t7Z0d7VdMsi-_Y7Fw6xlZcoiR9Dd-y4,1519 +torch/include/ATen/ops/cudnn_affine_grid_generator_backward.h,sha256=oqZ3ZWK4vuYtuYn6wa7scVElD9ROV3Way6C-d0Nhu_I,1606 +torch/include/ATen/ops/cudnn_affine_grid_generator_backward_compositeexplicitautograd_dispatch.h,sha256=xDmV411rtD7NIwyt32WYUyh3eUJST_7DJmAKA3wrr5k,1039 +torch/include/ATen/ops/cudnn_affine_grid_generator_backward_cuda_dispatch.h,sha256=yLEm7twRR3B8OjPdkYZrGak9RE25ld8y2kN1ghbINYY,819 +torch/include/ATen/ops/cudnn_affine_grid_generator_backward_native.h,sha256=K89RqVZGgSyTU93giNMmHTkTZJOnlXM3AZHYKzkzUFM,724 +torch/include/ATen/ops/cudnn_affine_grid_generator_backward_ops.h,sha256=suLz3VJuE1XEV2tKbOYQFtx9QmvLmO1m7IJnSn6iejE,2058 +torch/include/ATen/ops/cudnn_affine_grid_generator_compositeexplicitautograd_dispatch.h,sha256=PBldYIKHBwuEpNQmKbuz0NWUKfPn-59OvNstBdBwBZk,1023 +torch/include/ATen/ops/cudnn_affine_grid_generator_cuda_dispatch.h,sha256=drV5ySjoKOhVGUVcVaBXN93LMsxLzc10PQeHncMbGJc,811 +torch/include/ATen/ops/cudnn_affine_grid_generator_native.h,sha256=7MhMMPdtiFqVGATnOOSRKbi3fFDSuBQLKA4qrEWO8cE,716 +torch/include/ATen/ops/cudnn_affine_grid_generator_ops.h,sha256=vouoBUMiqVq87-uOcBYNdzSa1wTuLYAk57IoCRbr3vg,2004 +torch/include/ATen/ops/cudnn_batch_norm.h,sha256=BDl_mQcFUzsoP8h1DYDV3xcrv-LxbSU32usI3dYyxZw,3039 +torch/include/ATen/ops/cudnn_batch_norm_backward.h,sha256=rOrpfz44Dfymh7db_DsSRmJ5E43Rgn-4xcGv1BddsaU,3231 +torch/include/ATen/ops/cudnn_batch_norm_backward_compositeexplicitautograd_dispatch.h,sha256=AvBsGu7paQq8BIZFMnMTef7RQjsm2ddv1arRHYe52oE,1689 +torch/include/ATen/ops/cudnn_batch_norm_backward_cuda_dispatch.h,sha256=lFrrxFEP-Xvx2vpGFVl4sPOqdAIQKHK3WeEjXqcPkfk,1101 +torch/include/ATen/ops/cudnn_batch_norm_backward_native.h,sha256=l7G0b4AHr5RmO14yYZRhc8_6Z47NWgBUKh6DXeVXQGs,1331 +torch/include/ATen/ops/cudnn_batch_norm_backward_ops.h,sha256=CYwfrxfFYO9Aqk7zBjIT6VFf--BarCY-LgfzUcMH-40,4030 +torch/include/ATen/ops/cudnn_batch_norm_compositeexplicitautograd_dispatch.h,sha256=buazrjC5v12UZKCzu4yT8_43G6YZOXwXfP9SzCQEKU8,1603 +torch/include/ATen/ops/cudnn_batch_norm_cuda_dispatch.h,sha256=rC65R9hvbkAjx6RKdjLUVRVPZbCbNVAYznhBenTkhJo,1037 +torch/include/ATen/ops/cudnn_batch_norm_native.h,sha256=EV90Tp47CPChv2eF5b7ThuNOTzw0KuMRcNquy25A3w8,1224 +torch/include/ATen/ops/cudnn_batch_norm_ops.h,sha256=ZHmbndjdhOOziRNi2_f7K7fOnAoQC6uEnZ0YXGXGoYI,3717 +torch/include/ATen/ops/cudnn_convolution.h,sha256=a815j6p7A9casYRceqcRcrn1UIprUep3KB-s-Uv8k6E,7704 +torch/include/ATen/ops/cudnn_convolution_add_relu.h,sha256=dUUyT5B5H5_dJGwOIG1WxmnrFPZblEDV2zaKGZdfV4U,8283 +torch/include/ATen/ops/cudnn_convolution_add_relu_compositeexplicitautograd_dispatch.h,sha256=hIO8Vj8oEICI3ECOqO-h47xOj_Q8tY3d15RRdZBP2jc,2076 +torch/include/ATen/ops/cudnn_convolution_add_relu_cuda_dispatch.h,sha256=KlHd2n8b4CPRD1dSaKEORrSqebJD8vPJcBsomHsPhp8,1313 +torch/include/ATen/ops/cudnn_convolution_add_relu_native.h,sha256=lv9Bclp2uoRhZ-dvDhagZH96GRkpGMQLN7aQfiFvr7A,1089 +torch/include/ATen/ops/cudnn_convolution_add_relu_ops.h,sha256=cBm4x873NdJhp_SjDFpuk2j7aXena0jaHpB1id8Ba90,3273 +torch/include/ATen/ops/cudnn_convolution_cuda_dispatch.h,sha256=_ca7HA9zdBgUkeZJEw3nltPBAAp2WHpXJzVNkpzMefo,2279 +torch/include/ATen/ops/cudnn_convolution_native.h,sha256=0TxmWUD3xc_E6l8Umfu0qFdJzTyCzu1IGZSbcOF3nWQ,940 +torch/include/ATen/ops/cudnn_convolution_ops.h,sha256=yecssZ-Bb2_l7qL1NPGIy_K7nOUv7RiaZmKf45wyRNQ,2879 +torch/include/ATen/ops/cudnn_convolution_relu.h,sha256=X1bBrBcS7Pp65O-qSfMFp22fnJA78aO1X1CU3AOnco0,7109 +torch/include/ATen/ops/cudnn_convolution_relu_compositeexplicitautograd_dispatch.h,sha256=Ywjvgoeg3hHepND-ArD8qySSHU7WGC23MvgKZi6JzJA,1800 +torch/include/ATen/ops/cudnn_convolution_relu_cuda_dispatch.h,sha256=BA9GRRFfnUC0SwTohbDw2dQ-OIlUgmbWrZBKEoiFOCE,1175 +torch/include/ATen/ops/cudnn_convolution_relu_native.h,sha256=nq3Me5an4YOVSV_D7Cpm2d0eE_29KQvruiBWHSIoX7I,951 +torch/include/ATen/ops/cudnn_convolution_relu_ops.h,sha256=JJz9u6c6QuOdqzKgj2dtq60-R4-plu5BFz3LGrORzIs,2825 +torch/include/ATen/ops/cudnn_convolution_transpose.h,sha256=q1mz49SrF5lczTxyuZ3r7qQq9rukzh6NOv7sSRbyVoI,8920 +torch/include/ATen/ops/cudnn_convolution_transpose_compositeexplicitautograd_dispatch.h,sha256=P9qOdo0mGuMmG9siV4aibTvX52fAtLDwl5CS7A5zSGI,2000 +torch/include/ATen/ops/cudnn_convolution_transpose_cuda_dispatch.h,sha256=BC0PlbroAHYVuoMz2HW4rzX9l5AC9SG_VPucieYw9A4,1275 +torch/include/ATen/ops/cudnn_convolution_transpose_native.h,sha256=yToX0iNRcgptx9-Yz72sEGMx66T5DFiDiG2vzG-4qT4,1051 +torch/include/ATen/ops/cudnn_convolution_transpose_ops.h,sha256=XcXBWCobmkQR8151HaEiqr4YMhX16W--9YaQnBiovms,3175 +torch/include/ATen/ops/cudnn_grid_sampler.h,sha256=wKvWfuVqk7N7XkHG4MOIqITuljnBxgaHVpmChXSBtqM,1302 +torch/include/ATen/ops/cudnn_grid_sampler_backward.h,sha256=BmLd1ZdcskIJxVTR70XDndP3UOzaqFlGeuqO-ULLmMo,1807 +torch/include/ATen/ops/cudnn_grid_sampler_backward_compositeexplicitautograd_dispatch.h,sha256=pljl6Gbe1-4PY1iJDP-JF4WsTGVeRsp2uJh3PWNTfEw,1141 +torch/include/ATen/ops/cudnn_grid_sampler_backward_cuda_dispatch.h,sha256=OjONM5OFtaJ6i2JzhC1clA9k14jaFGvVV4pf79DKCcI,848 +torch/include/ATen/ops/cudnn_grid_sampler_backward_native.h,sha256=qo0DUXEyuD9z9o17Msc5QjTrnV78IQwo4vNkgjXFyvI,804 +torch/include/ATen/ops/cudnn_grid_sampler_backward_ops.h,sha256=8xmDKga0SVg2xV_4syUDM1tLQvsFUEzeNTPNQfkpbMs,2335 +torch/include/ATen/ops/cudnn_grid_sampler_compositeexplicitautograd_dispatch.h,sha256=zVcEVnuNQ7cj8AqrdNe63dOb-JsCs-mh8Qa-NsbMLE4,965 +torch/include/ATen/ops/cudnn_grid_sampler_cuda_dispatch.h,sha256=Cd6JcfxECgdnos3j9uq0_QhsjrmxlWsFYnuA1rOV3Vk,782 +torch/include/ATen/ops/cudnn_grid_sampler_native.h,sha256=qyOL-15FdSgut8LAZJaCuez0xLtNosnKJmKTNOLXlZI,658 +torch/include/ATen/ops/cudnn_grid_sampler_ops.h,sha256=Wp9_9xjBgUIDI9kv8eZEPXt4y5QGBuYzuli6uYTCr18,1808 +torch/include/ATen/ops/cudnn_is_acceptable.h,sha256=UC88lVQtdIRbkeLNDy56Dmt0K6WSsqGWtnhtDekVpFY,688 +torch/include/ATen/ops/cudnn_is_acceptable_compositeimplicitautograd_dispatch.h,sha256=4RDfynJ-NfnbUyEjn-LcW5Qf8U23_aJ5tR4SQBdv4xg,794 +torch/include/ATen/ops/cudnn_is_acceptable_native.h,sha256=MpaaOngDOMq1l5n01DHacdStxwzTTWs5Uwy35Xa2lE4,504 +torch/include/ATen/ops/cudnn_is_acceptable_ops.h,sha256=n0hCuJiIZZCImzclmzZDP6l4ims2Zv5hdhLYvwH52dU,981 +torch/include/ATen/ops/cummax.h,sha256=YxPaQ6gFcNkZVT3-UdUzkvF49vvC3Roq4WfT8jl64cc,2380 +torch/include/ATen/ops/cummax_compositeexplicitautograd_dispatch.h,sha256=76vwM6ayRGIrsMkUfdpExtaYKOp03IuyFr4b1REIuxw,1114 +torch/include/ATen/ops/cummax_compositeimplicitautograd_dispatch.h,sha256=Y8BzjVNWCu4k-uqJKVMEyMi7rdf0l5RqGRYGED69Ot8,1126 +torch/include/ATen/ops/cummax_native.h,sha256=5vaqWGOBSZ-Y0K9S7ECxE6Pj448IO68jKzq0ImlfyPc,924 +torch/include/ATen/ops/cummax_ops.h,sha256=jE1k6sMbSYi5ExKO2x2TSvU_dk_DjD8zef6F7Ah018Y,3524 +torch/include/ATen/ops/cummaxmin_backward.h,sha256=t7xWQNkg4Qybj-fbG6WTyrJ5PLh-8Kj2fDXQ6HodtF4,819 +torch/include/ATen/ops/cummaxmin_backward_compositeimplicitautograd_dispatch.h,sha256=8u-PM6RmSu-O8Jw43WFZyfB8xZgnwXORGmhwjPMvwww,866 +torch/include/ATen/ops/cummaxmin_backward_native.h,sha256=PJicNQOjNYsPLmIGmpnMu2s1D1DUoBEDKjPw6ZvD-bM,576 +torch/include/ATen/ops/cummaxmin_backward_ops.h,sha256=pp2dlzdC-k-Uu94CDOazPd-FZoP6AAWgZw-ORKe7IIU,1220 +torch/include/ATen/ops/cummin.h,sha256=2bqqaN4qirCqnsSceVEs5P_n_Mg-Z0yFaUaZYkBn82w,2380 +torch/include/ATen/ops/cummin_compositeexplicitautograd_dispatch.h,sha256=VE1V9Kgbpgna3qcD2sbANDhUEfsNt3TT5mt6bFKE6BY,1114 +torch/include/ATen/ops/cummin_compositeimplicitautograd_dispatch.h,sha256=rayHgWV2LY64vsz4g4pwFUmQFZpqUJ8BLX0YR4w6d9s,1126 +torch/include/ATen/ops/cummin_native.h,sha256=aijlv0O8NjhnKD7W8HK__g-NvYORRL-yt-pQwi8uDdo,924 +torch/include/ATen/ops/cummin_ops.h,sha256=59Yixbz0EeNvVYSJ35oh1r-yDtfoTkIkW9elNsWoFLM,3524 +torch/include/ATen/ops/cumprod.h,sha256=C5IxunKJb9von7sCJNwcD2zV-mCJucX4ueVGGdRBAkc,2321 +torch/include/ATen/ops/cumprod_backward.h,sha256=Hb05OeMBCUUlHUCM5YYlZh7RCA8vvEFGPjcUgvEMnc8,808 +torch/include/ATen/ops/cumprod_backward_compositeimplicitautograd_dispatch.h,sha256=pYqv8aobsqiQMa_N99Z74REd134Ak_-86mAQ2tiPyUw,863 +torch/include/ATen/ops/cumprod_backward_native.h,sha256=MoANNAI8V6F9MKAPHGRUVDKT9fK1FNbGUhzxub-fKMY,573 +torch/include/ATen/ops/cumprod_backward_ops.h,sha256=vzw-E7VeheJ9Y1GTqfRnCoINIFdcx2qm7dWEVKJZXUU,1211 +torch/include/ATen/ops/cumprod_compositeexplicitautogradnonfunctional_dispatch.h,sha256=NUlJqw4G7YrtFcnxxqN-FAGc8idePqWa6FIlXNuMoS4,1001 +torch/include/ATen/ops/cumprod_compositeimplicitautograd_dispatch.h,sha256=LwoMHUisTerulqfJ2qTFzpe0HVPCoTznOdJQM_tIHfI,1271 +torch/include/ATen/ops/cumprod_cpu_dispatch.h,sha256=IxXllw-tf-1tNw35VVVOeHAnBsidtXR2WlHred5KYKc,1211 +torch/include/ATen/ops/cumprod_cuda_dispatch.h,sha256=zdwE6Hb3Fx9RFyoRjZCnVvfVtLe-jqhY_ELKHOYBYPI,1213 +torch/include/ATen/ops/cumprod_meta.h,sha256=z-kd2rdC57D13kyK--xGDPmfNIXc3m7pGFTjKKMas_w,655 +torch/include/ATen/ops/cumprod_meta_dispatch.h,sha256=YPEDEIJMET_sPePg3Om0_9oGl9Us23ucK5XA5ORfLB8,1213 +torch/include/ATen/ops/cumprod_native.h,sha256=V9AxJI2UbZYrunWAsoNKhpxm3B2XC6OlBlX-EiXRa3Q,1061 +torch/include/ATen/ops/cumprod_ops.h,sha256=u3tqMdBh1HazlxhLijh5xnnBH1jrGsjlntGVFgO0ZFo,4917 +torch/include/ATen/ops/cumsum.h,sha256=A3LHkmucZciBDhJkHOY-3u8u2Ip3fA8QnaHMyQU_018,2302 +torch/include/ATen/ops/cumsum_compositeexplicitautogradnonfunctional_dispatch.h,sha256=S4sBEjrqZ34ajYasnz7hx4jqvrXEQf_0o7BsJB8QMNY,999 +torch/include/ATen/ops/cumsum_compositeimplicitautograd_dispatch.h,sha256=vXYu3kW44ljcBKKvwSYGTdWHV24YbIMU2Rr_im_asFM,1267 +torch/include/ATen/ops/cumsum_cpu_dispatch.h,sha256=Q2r46H7K69UHsyvJCPeUOz8yAEMPPu9K3j0zia4AK6Y,1207 +torch/include/ATen/ops/cumsum_cuda_dispatch.h,sha256=2hq4Zr5lCRWVPGpj0wMEhUTr7ZnUQA5MhRmVwjXOBq4,1209 +torch/include/ATen/ops/cumsum_meta.h,sha256=i8VOk40uEzHKu7iu7cJmaPkDwbswZ6zYDBpwwekeXRA,654 +torch/include/ATen/ops/cumsum_meta_dispatch.h,sha256=NrV_Am87nv6WHcZBV7C5jLS9mIQiRbfQ5wgBPGtrYNE,1209 +torch/include/ATen/ops/cumsum_native.h,sha256=ewJ4mSpog4a8lcKEU5eViGiIrQgc9kMztnrtzmZDuyw,1055 +torch/include/ATen/ops/cumsum_ops.h,sha256=1chhmlOaEZ7ckawO3OO1gKorSXrd1NKlMJi9IjylVCs,4899 +torch/include/ATen/ops/cumulative_trapezoid.h,sha256=gbYkGSm4XhY_5TaGddfQ7_oL04Pu16NsFMgjVCm4kjg,1023 +torch/include/ATen/ops/cumulative_trapezoid_compositeimplicitautograd_dispatch.h,sha256=L2kKTN-rCzcIJQTE_ljFjMi_Y8hCi12hg_65j3CSQgQ,943 +torch/include/ATen/ops/cumulative_trapezoid_native.h,sha256=rtjoL-EAM1_LyVmvQsWY0xKKWDhcErBCjdf6k2WHt4U,653 +torch/include/ATen/ops/cumulative_trapezoid_ops.h,sha256=JSudCOErTHc8ZaU6jCssbjnD37LSaES-_tE3D5domLY,1805 +torch/include/ATen/ops/data.h,sha256=lrsUGc8xMHlmdyXYnYuL6Rgy91luq5-y45ixODim-W8,504 +torch/include/ATen/ops/data_compositeimplicitautograd_dispatch.h,sha256=UWuVkwslXZZ17m84qhfncK321SAt2NhbFcAAD3MamFs,785 +torch/include/ATen/ops/data_native.h,sha256=A2okSTB9JUXlZR0npGXOe8rnCKq5xF4UUnxPjyoW0CA,495 +torch/include/ATen/ops/data_ops.h,sha256=vII2CgcMagDppbFy7jOFN2ozOlNfEejPGmMRxadOSDI,956 +torch/include/ATen/ops/deg2rad.h,sha256=NOG6measSawGqmRdpXxxOzz8IEN-W340HTVBzk5bnzg,1203 +torch/include/ATen/ops/deg2rad_compositeexplicitautograd_dispatch.h,sha256=rxnQ8cFMIDarcRtyLrlJhimCRVNovsQnG6SfObPyV-E,1002 +torch/include/ATen/ops/deg2rad_native.h,sha256=XK_kbXaIn8AKb-jtAhnJDdkEUv1nabqrV8TB82vg5TU,1063 +torch/include/ATen/ops/deg2rad_ops.h,sha256=ylbVlYOH27g8eHuCDxOqmu1LMDecoc8jrAAQOJGm4SA,2082 +torch/include/ATen/ops/dense_dim.h,sha256=eoR-r7Z1rMeTJpi7N7ICxY-HWgCStq866pTrJpsJLBo,509 +torch/include/ATen/ops/dense_dim_compositeexplicitautograd_dispatch.h,sha256=k_3GVogDxPA8RAAE4e9fWWt2DqwmQTu1RR9AlR8gNhQ,787 +torch/include/ATen/ops/dense_dim_native.h,sha256=v2LGOnKev2cyuAoQQx6SL7x5F0fB80YJgS8o1YRoVeM,633 +torch/include/ATen/ops/dense_dim_ops.h,sha256=-9pyjQqoXYBqwAL01ZV5Ptom_l8razN2qdC57j3Cgvk,959 +torch/include/ATen/ops/dequantize.h,sha256=p0e0zO62Y4iQ9xXslHCxHA5IZQ-MvyH2A1y0qMEHNVM,1750 +torch/include/ATen/ops/dequantize_compositeexplicitautograd_dispatch.h,sha256=FIxFmusTq27Atuq02viBdzhM2Zh4NRRJqkK_tFaIsgk,1052 +torch/include/ATen/ops/dequantize_cpu_dispatch.h,sha256=t6dPLbOLPUCAf80QSACYm2qzVklhnTTk3uFcdQn9NXE,747 +torch/include/ATen/ops/dequantize_cuda_dispatch.h,sha256=ubwpngHDiDSA_zsu5tpPZrjvYpnigtj-1YEnlpymkSw,749 +torch/include/ATen/ops/dequantize_native.h,sha256=z_NGDkE-oL8WGIccRwfq-anGGyDOoULPzdZcI2ybkhM,849 +torch/include/ATen/ops/dequantize_ops.h,sha256=3N3bc6oKDrWneoR37HbZ6Sj6BAp8hPdJrUH9Xjk-gbc,2820 +torch/include/ATen/ops/det.h,sha256=OyntdwEDDe9wF2OjP0p1Th-imbqmoTlsdZB9tlKNKPw,632 +torch/include/ATen/ops/det_compositeimplicitautograd_dispatch.h,sha256=hzsrS4965cFF0uvJUaSiY2zN2LyKjQYsURr_JnVq9RM,784 +torch/include/ATen/ops/det_native.h,sha256=PH0IYyq6SByBinA91daYj2zziuIZYd_CBCWxWMhD17Y,494 +torch/include/ATen/ops/det_ops.h,sha256=onjBROKruU_ZeHQnk0DaIWdtcOcLHJNqH62-GKIYM94,953 +torch/include/ATen/ops/detach.h,sha256=hLkCehsejN3GtR-9_bKIyy6E-jmRRQ39FOSwjE8h8f8,797 +torch/include/ATen/ops/detach_compositeexplicitautograd_dispatch.h,sha256=m_EMq_LYUltG0PEnb0JL2fxBxMlpsqEFs2Psig5Goh8,839 +torch/include/ATen/ops/detach_copy.h,sha256=MRW2o_mTNyAitHp7-3YSLVTjCMwM3O5EWWyZablKbPQ,1093 +torch/include/ATen/ops/detach_copy_compositeexplicitautograd_dispatch.h,sha256=N9yvEklo-g23Lgl1Trm7km-FpGVRwEbGHTbYThtxlqQ,901 +torch/include/ATen/ops/detach_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Mbg6RLY1vYTGdapeiAx8l57td1igdAPu4hq1qyT5rRo,818 +torch/include/ATen/ops/detach_copy_native.h,sha256=gKB38Chew9wjlCkLOuLl-WWlAjZqHdMIJvneruwysak,586 +torch/include/ATen/ops/detach_copy_ops.h,sha256=4mohSmhUZXsUIw69pAVWibY0rgbcYTc5RZ1LUZ4VpwY,1593 +torch/include/ATen/ops/detach_native.h,sha256=-aiGqPnmSjhTnee_VmbZOqXQ_Eu4-1B2-X0uNClMG6o,549 +torch/include/ATen/ops/detach_ops.h,sha256=d3qg_Z2e8SqqUrQ6GNz0nrawwksPtbM-zooFiyknhE0,1478 +torch/include/ATen/ops/diag.h,sha256=eCyPeJvGb7uGkp7ZNArcNreCzKfVwq1hLshjWqrajEw,1159 +torch/include/ATen/ops/diag_compositeimplicitautograd_dispatch.h,sha256=tKsnlXwyPWenQf6Gq2aH_Y_Q8EfIbpaqF6mJmVWYvSk,998 +torch/include/ATen/ops/diag_embed.h,sha256=FOHRSJDQvnPxYLjEijUv9hK7m9-Fhv1vGmFwA_j6PFE,1411 +torch/include/ATen/ops/diag_embed_compositeexplicitautograd_dispatch.h,sha256=pK8ZcPhFBAzg-mrXqv0g8inFQj2JtUXSYURTW1rpgkg,995 +torch/include/ATen/ops/diag_embed_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ZhD5YH7gGxx72xpCsWwbET5_G6PRHKloLza0cUj-FSk,869 +torch/include/ATen/ops/diag_embed_native.h,sha256=Jz7UlSE8MFXIgyqAlCA0ZaF8JD9ar52StfuADkgQwBA,680 +torch/include/ATen/ops/diag_embed_ops.h,sha256=vVMrrk2XxQlGt3XK482_gjp7yWVwSH5r8z55er8qAbs,1897 +torch/include/ATen/ops/diag_native.h,sha256=nrSnFaP1uH3Z413ifrjFH8OllJwnCKtsVbzErwFOLds,610 +torch/include/ATen/ops/diag_ops.h,sha256=wilFZY-zx6OM1O6LSZoZ1FvhSlxAHCTZuH-gctF8Nww,1673 +torch/include/ATen/ops/diagflat.h,sha256=H8kbqp4JLUVtRNNQAQeotA5BKkp1W58aCTwdyaH2Cg8,692 +torch/include/ATen/ops/diagflat_compositeimplicitautograd_dispatch.h,sha256=AxXEHll2B1BIh2lYVXHLoTMsR9jd2Rj9yZpSfVB4nAo,807 +torch/include/ATen/ops/diagflat_native.h,sha256=lUBhiLd1tpT2C1k3WNl_NSyVCMcTjjaGYWFBIPFf2mY,517 +torch/include/ATen/ops/diagflat_ops.h,sha256=S-jned7v7HYhBfV20v4rFQs4k8naoOkLTjZKOlT3W0A,1023 +torch/include/ATen/ops/diagonal.h,sha256=mN_ipr50VrwLaA9gys3ZUDfsGNvnmicUaTxvrfD9bTI,1097 +torch/include/ATen/ops/diagonal_backward.h,sha256=RtEDz19tjir7DF1YV0chhrQLvKZffAzkWahf3uxnK-M,5280 +torch/include/ATen/ops/diagonal_backward_compositeexplicitautograd_dispatch.h,sha256=R-nQC_P_XezAmusCdZo4WDe1GXVYjZYMwwWV9w-fQEM,1739 +torch/include/ATen/ops/diagonal_backward_native.h,sha256=qxi1JaRom2ltGN0puRbVsI10OrHpy6JIV1jUQG5d7SE,780 +torch/include/ATen/ops/diagonal_backward_ops.h,sha256=GTT_QX6LuNyDO-kj_AR9s5jtBRlBwrCtqYBT8EAIGec,2183 +torch/include/ATen/ops/diagonal_compositeexplicitautograd_dispatch.h,sha256=er_GT-mvtJSpx_oYa8qsrnrZaVx8r4l-So60myVinF0,839 +torch/include/ATen/ops/diagonal_compositeimplicitautograd_dispatch.h,sha256=mZ2xO_vOHYpxPARIUXj1HYGbBSICBM-v4op4C_H2_bQ,863 +torch/include/ATen/ops/diagonal_copy.h,sha256=rjncNnF2RKxrzhCKxYcPkNb6tA0i32J8fou2LrMR6vs,1431 +torch/include/ATen/ops/diagonal_copy_compositeexplicitautograd_dispatch.h,sha256=q4jhmuqp58xLJ1iSFaaQ3HlmyNi81JDH83uziUxIkY0,999 +torch/include/ATen/ops/diagonal_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=vjAUVNabpanhou3hnOzjUvISS96Nx_RKKMbaLKMsmgo,870 +torch/include/ATen/ops/diagonal_copy_native.h,sha256=hqVbRM6D1ertpiD4p_oMb3viB_lbORH4KQD_dYobIW8,684 +torch/include/ATen/ops/diagonal_copy_ops.h,sha256=pWIpoZeNm8-twGESDFGsqk6cQcYlvmdiZ0b8zGE6zT8,1911 +torch/include/ATen/ops/diagonal_native.h,sha256=-z5k7HLnGGt8jkqBMsLwxpl09XZtg7OUmy5iDY8wfRI,680 +torch/include/ATen/ops/diagonal_ops.h,sha256=YbZz7W28iR47j7cAGBbtAbuY3cqUGSVIsBwtoUNXPkI,1926 +torch/include/ATen/ops/diagonal_scatter.h,sha256=RIO7JAgUfr9wEatJcOxSJmZ9czmQwyOE9mwmt7EYe68,1584 +torch/include/ATen/ops/diagonal_scatter_compositeexplicitautograd_dispatch.h,sha256=eFB3alxl-RWBodD93HFso7aN8Ph9t0BKL3RJvHUvfhU,1053 +torch/include/ATen/ops/diagonal_scatter_compositeexplicitautogradnonfunctional_dispatch.h,sha256=5mpat0wzqhXEEW4vLDVSwPB1lj99oFGt3c5jsi8KB20,897 +torch/include/ATen/ops/diagonal_scatter_native.h,sha256=kyXvU5QoUviTNnOnhXUN1PxhlCTRDtFp7CSKHmc6Dg8,738 +torch/include/ATen/ops/diagonal_scatter_ops.h,sha256=c-ntvfbN40ik_chAxtnWce5nnZOcWJtOy1ymH_nM9sk,2089 +torch/include/ATen/ops/diff.h,sha256=ulgyTf_fosbSd0OHNAEnDUkdl_4ujbGkDw45FFkXups,1651 +torch/include/ATen/ops/diff_compositeimplicitautograd_dispatch.h,sha256=c2vg9pLz7pwwIjPHDVN8JR-ieav35Yv8imPlh-7gwBU,1301 +torch/include/ATen/ops/diff_native.h,sha256=wOifb7tQbmpXiDfZpcYrMH0CNfk_MZ3-V-5vnjJiJLo,809 +torch/include/ATen/ops/diff_ops.h,sha256=dxb9Sm_xJSjYD6Ou06OMEDlDHb0fG2ut25sYb1sF81Q,2315 +torch/include/ATen/ops/digamma.h,sha256=bpmqKBZvLx-ZcUJ8x_1l5QAnit03repWnG9rzsw2boY,1053 +torch/include/ATen/ops/digamma_compositeexplicitautogradnonfunctional_dispatch.h,sha256=UfK09Ulh-cIIueqGjg9qAuAygnRGQzHQBn4_gsaNxDA,867 +torch/include/ATen/ops/digamma_cpu_dispatch.h,sha256=39IvxUe-egmJU1uR0LeAeEEzfCqkXz47EmcQyKrCRIU,958 +torch/include/ATen/ops/digamma_cuda_dispatch.h,sha256=4yuKvdbZe1KDFPbjl874BSmlcAAjBY21YDaP9yiYap4,960 +torch/include/ATen/ops/digamma_meta.h,sha256=j8DN1PBRBYVABZaKaIZQYRNJBu-xPQ6pEGyWSKs23t0,603 +torch/include/ATen/ops/digamma_meta_dispatch.h,sha256=4vPGNuw7l3TQ1HFd2H1yarV6s9IzsnVSOAJkPcfJv58,960 +torch/include/ATen/ops/digamma_native.h,sha256=lfmlDkqUGQC5ASbvtvtQuhySoq9nSwVQCtEmMPezGkA,622 +torch/include/ATen/ops/digamma_ops.h,sha256=d3AwEbHnRGOLsIPJdsREArrAt9Zhm0XPbmTWLcA3LSE,2082 +torch/include/ATen/ops/dist.h,sha256=REmyWmPcP9b8Cmb2B6ZyZEMyNgRZHEFRuAcnxiZR1rA,1279 +torch/include/ATen/ops/dist_compositeexplicitautograd_dispatch.h,sha256=3bWdDsHWkCGBooXsWhwnKdj9vUYqdErjrpwMTpVI1mA,1088 +torch/include/ATen/ops/dist_native.h,sha256=BD89-_q5-fNXLxY2FbuBr6PKpLOKrDZPn5JZctQdsAE,670 +torch/include/ATen/ops/dist_ops.h,sha256=XWja56O2pmih_je6WBa0Qg643r-k7t3WmqP79xY9v0w,1875 +torch/include/ATen/ops/div.h,sha256=lx-1aMmKeL4aOcWso0ozw0w9QglUxYoPFzOZv68oz8o,3795 +torch/include/ATen/ops/div_compositeexplicitautograd_dispatch.h,sha256=4eeErL-lzng70cg0_5pmkrEPU2dd-p5ntV1KIvmG_oE,1644 +torch/include/ATen/ops/div_compositeexplicitautogradnonfunctional_dispatch.h,sha256=QCLD8tBY_XpwjhIRMGC6oRBiP9e1Lfy7VrRHTGA0Z_Y,1162 +torch/include/ATen/ops/div_cpu_dispatch.h,sha256=KuIDsDKGFIuC8JVk32uLuT8rjqu0dNSfm3SgolmnJcA,1600 +torch/include/ATen/ops/div_cuda_dispatch.h,sha256=cFZ5dV1HCQzC491r0B2Gz7m-jagfkKFlkGkC7oiWfCY,1602 +torch/include/ATen/ops/div_meta.h,sha256=SkYdqZ6LMhIiqbN7IVA1uO8fOC4pESVVFMb-Sf0osN0,839 +torch/include/ATen/ops/div_meta_dispatch.h,sha256=qtWy8YthDLe154VavewoUUJ3IG9l0egH2XCBLxL3-nY,1602 +torch/include/ATen/ops/div_native.h,sha256=ZpXaDS6AMkVCP2C3es2h34Wi_HUeF0J-WZTHJOeD0VI,2549 +torch/include/ATen/ops/div_ops.h,sha256=B8bH2cJs-6ABIdjNNOPKEBVTrOgeRIPNtpHsKuWbu0E,9085 +torch/include/ATen/ops/divide.h,sha256=Mbs71cU0wRpfni_u6b_a6xJb3TOd4PAwUo1VDe9y4Uw,2676 +torch/include/ATen/ops/divide_compositeimplicitautograd_dispatch.h,sha256=NSVXhYL30_sJrrWx4MyXZsbDoyYSODIOjosPTMcM7Aw,2084 +torch/include/ATen/ops/divide_native.h,sha256=ouetj1l12-3cqf9O0PAu7OawvHvPlAMONaV5lZ8rWSk,1533 +torch/include/ATen/ops/divide_ops.h,sha256=50fF968K4X-TojYvi7zINODHZCQP9RObdJCpatRdB54,7609 +torch/include/ATen/ops/dot.h,sha256=gs6Mr4QAIe9oMFNc8Ov8tUeN7SO5EGYeMw1Hu3Ky8I0,1163 +torch/include/ATen/ops/dot_compositeexplicitautograd_dispatch.h,sha256=VqYelKawhAxipiENSTHo9ZvufMxW-CRxxWbdL-p044k,939 +torch/include/ATen/ops/dot_cpu_dispatch.h,sha256=joBcjSScsZAmYII3YfVPKQmLiutUD0kwGz8cYM2u0io,767 +torch/include/ATen/ops/dot_cuda_dispatch.h,sha256=wfMRbZlMbeG7Hr1Octie1xVYdbIf0qABKArF4oTwWhM,769 +torch/include/ATen/ops/dot_native.h,sha256=0tm5A8D1IupasSYcBKitv_-PO7K8WTDmekHGCbvYLdY,708 +torch/include/ATen/ops/dot_ops.h,sha256=5o1gBdhBjazhTww2N97bnqN9XUyP_CRvffiErSs_-Rs,1723 +torch/include/ATen/ops/dropout.h,sha256=Y_VtSjxGw0hO6t4wfKsNGQTR3FvsHZiEi_jhb_L1S2k,907 +torch/include/ATen/ops/dropout_compositeimplicitautograd_dispatch.h,sha256=zA9jQTy_IiyG4P4_ckEBw7kjj2MvBmQYio_mGCXmMpI,886 +torch/include/ATen/ops/dropout_native.h,sha256=wykd7NmBdBBZzqU8DrSvUpiTu7xDcMOgUpXZP0UkxlA,596 +torch/include/ATen/ops/dropout_ops.h,sha256=rP2dsSRc_SQqFWHp0428rA3MNrJrlyauDpYAxp4uZYQ,1639 +torch/include/ATen/ops/dsplit.h,sha256=CMivxfDhD_-lEHy6vsLPDsKkCKC9PI2xqQpvthX4Ekc,951 +torch/include/ATen/ops/dsplit_compositeimplicitautograd_dispatch.h,sha256=G6ROgXAUp-IfSLn4ocAqeVYcEPQYWqVLslT55vJe1iI,915 +torch/include/ATen/ops/dsplit_native.h,sha256=7bWYX8nlLs4AJEVMGYPweRUDZof9TXfhuFqQ25NMuco,625 +torch/include/ATen/ops/dsplit_ops.h,sha256=1cpS2k8z5pN5UfDcM936zn8NgPkrwlgZvdSOrCWKbuE,1758 +torch/include/ATen/ops/dstack.h,sha256=l_FujBCmmEhE_prh-qtpqI8jU1c6rbvj-R2CB3wOAJs,1064 +torch/include/ATen/ops/dstack_compositeimplicitautograd_dispatch.h,sha256=ffYw9HbgtW4JK1RH1tVm25MZw7IyETX7t0eEw1nAdnQ,943 +torch/include/ATen/ops/dstack_native.h,sha256=lnzJxuStO5vhcsSy-cyrynhAuceUTvkny7idNZHxJPc,574 +torch/include/ATen/ops/dstack_ops.h,sha256=Q4FBUmT4mrDSpTZSYQK8I8ZiFPTT-PMUbhtjyzPv4Ok,1561 +torch/include/ATen/ops/einsum.h,sha256=eehuxneJ6HarjBxwsejBypbs_LkLM7QJ_bskkaU1SKk,774 +torch/include/ATen/ops/einsum_compositeimplicitautograd_dispatch.h,sha256=ABUUUmy-oNHeZ_EScOPEqm4ljHXYzOj4IKWZ-8vxmkI,858 +torch/include/ATen/ops/einsum_native.h,sha256=aVnwVaTmXFSRnebXiqf-BfBmO4CWUOtoyXHaLeaAF14,568 +torch/include/ATen/ops/einsum_ops.h,sha256=R1oPfTf8C43YetMgijZTHEnMPypfaWfJy68_3Y3jPS8,1153 +torch/include/ATen/ops/elu.h,sha256=W9jdEqvyab3JQFiUCxJ5NOy9zMCoPBZW9ln9lAK3ajY,1829 +torch/include/ATen/ops/elu_backward.h,sha256=SCEKOrLOfgwuFVL5typZmjuV2Sd1J1z0NI4QqeHBGIE,2064 +torch/include/ATen/ops/elu_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=OQ6NGf2RSe7Zi56Kya2-2nemlh2JkcdXHVUnXopO_QY,961 +torch/include/ATen/ops/elu_backward_cpu_dispatch.h,sha256=Ocx0rA2R_PS1cVUqkbb_hjjlRx0_964hyU4c72oru5c,1360 +torch/include/ATen/ops/elu_backward_cuda_dispatch.h,sha256=NvdlPDTxChD4rOZObv_GQ8kf-Z_fm-mmqzGBu9GvEnU,1362 +torch/include/ATen/ops/elu_backward_meta.h,sha256=rs1LS2TSmjAPnPD5PT__uQ01nse5mwkMb6diePFPoRw,750 +torch/include/ATen/ops/elu_backward_meta_dispatch.h,sha256=b9QSjD2uQprX0BqwNIer_0hELmgHDdXKHA6EqsKy7h0,1362 +torch/include/ATen/ops/elu_backward_native.h,sha256=YElmHmEdpxiPvhlmscqfFp1oqF5RA9RmTnLboQQL4SQ,786 +torch/include/ATen/ops/elu_backward_ops.h,sha256=qYolpj1YYg8tbVGhe-hc-vznLnfidqjF88WUoh61bxs,2569 +torch/include/ATen/ops/elu_compositeexplicitautogradnonfunctional_dispatch.h,sha256=OCm5LtpH6Rv9b_sXRjhy4D3lsLH0C3RQsGl6vmn3Bmw,1039 +torch/include/ATen/ops/elu_cpu_dispatch.h,sha256=itJn2lmQ5MjLVEwRJUhf-GwWRYekcccCAqlHMtdtAmk,1296 +torch/include/ATen/ops/elu_cuda_dispatch.h,sha256=XwKgCAWj8qVknGYlQ_j_NY-5yLGuUl5MbudvsVRuVYg,1298 +torch/include/ATen/ops/elu_meta.h,sha256=X-EMV_X5GA-12CicB0CwskzUixd0JMXfqKzwfaSLi0Y,683 +torch/include/ATen/ops/elu_meta_dispatch.h,sha256=thNLeYb4OUXYryTvrewE0xqqe3kX4Z0Ggy3VigmkpZo,1298 +torch/include/ATen/ops/elu_native.h,sha256=26wVsnnE8TZOSiSy36k8Wg5N5fGMoy9dvdDUYgTomMk,694 +torch/include/ATen/ops/elu_ops.h,sha256=7x8WoUl6tAZqRu26zTmJNX4jPtc4_ssQSLjNO_LyoKE,2892 +torch/include/ATen/ops/embedding.h,sha256=nzajtX8aag3hDBDl-UdT8nlvLofKpHLLQGHhdtqCdSo,5428 +torch/include/ATen/ops/embedding_backward.h,sha256=JSljmn27-WLiL9IPj_2TMq5wofxTf2ixCWLT5AE6pV8,2215 +torch/include/ATen/ops/embedding_backward_compositeimplicitautograd_dispatch.h,sha256=W9Qs6tOfsIQBIGga027432zGRvZ7EELYIbyirFpvB1w,1097 +torch/include/ATen/ops/embedding_backward_native.h,sha256=FkO6hgAtP2BHAtvH3IBigOS_EiALqsQEXmC6Yiuo2zQ,632 +torch/include/ATen/ops/embedding_backward_ops.h,sha256=KSnB6Ao4f4lfabzsXckE_Cc7H5wo-NdsielleJtAfbs,1382 +torch/include/ATen/ops/embedding_bag.h,sha256=57h6mzgyQIzXA19JOWSPp6dcNSGES7YJcYJB5QnGS0U,1966 +torch/include/ATen/ops/embedding_bag_compositeimplicitautograd_dispatch.h,sha256=6Yi3Qsu7UalEhOzV-i2aC1Id1nSeEx0pEik0SV4YbeU,1395 +torch/include/ATen/ops/embedding_bag_native.h,sha256=B53aMU43bdzmtjEEYjE95t00ZYSHtrN71LgMK6Ol87k,1105 +torch/include/ATen/ops/embedding_bag_ops.h,sha256=O5GuyodH7TN268fPndOMfZ2BvZM1uUJ8MROWDmI01To,3277 +torch/include/ATen/ops/embedding_compositeexplicitautograd_dispatch.h,sha256=nvksXwRCdsCYr4sERlE_GqdDO3xSvaDauQ2FyPMf7fM,1805 +torch/include/ATen/ops/embedding_dense_backward.h,sha256=6dixvEIbCWanafs9dWi4Fb9zBJAJEHBpPhyP6fyUgGc,6055 +torch/include/ATen/ops/embedding_dense_backward_compositeexplicitautograd_dispatch.h,sha256=QLgkWuM5npod7iUrER_Yav3VOtBj9KS21jLi3eGcey8,1560 +torch/include/ATen/ops/embedding_dense_backward_cpu_dispatch.h,sha256=UaFy8ykg2Vvn0zGgQVQFym8xIj-3dzXAiTknXxPDAlY,1053 +torch/include/ATen/ops/embedding_dense_backward_cuda_dispatch.h,sha256=nU7ASdlKges8akSm0BWMRyV0Rgt6m6t7GtHttMCTUWw,1055 +torch/include/ATen/ops/embedding_dense_backward_native.h,sha256=DEQSQnda1MNtnrjFnHC82dF_a6USGvoW5zWDEei81GU,1015 +torch/include/ATen/ops/embedding_dense_backward_ops.h,sha256=xIx1k5FXx557kLD1S55kS4KVoQd3g4eG0Yu6GKODDro,2391 +torch/include/ATen/ops/embedding_native.h,sha256=6nrR9KwTUYvu4KeBl6JncdrmEUSqs-7Wgo9PNrPzrvE,972 +torch/include/ATen/ops/embedding_ops.h,sha256=OxxXZNGj6FWBYYLqcYVktPIO0ae90v4m6VVgFv8xafA,2225 +torch/include/ATen/ops/embedding_renorm.h,sha256=qVIdo509iHAxKQ3cRka4o0NmItR9p3JkX3NHgSagHCA,1888 +torch/include/ATen/ops/embedding_renorm_compositeexplicitautograd_dispatch.h,sha256=H5_3_wMyvCklnMlA-cTz-qw0vZMHygT-YzimOuCfGks,1165 +torch/include/ATen/ops/embedding_renorm_cpu_dispatch.h,sha256=mrOcm2uLSnh2wU9DwiQbvaE5uFLbnPKsAMiGysOP21c,813 +torch/include/ATen/ops/embedding_renorm_cuda_dispatch.h,sha256=gOsiXXZ_5geioMYCr2P44nZa3W-uTb5P3-4aScBtEQY,815 +torch/include/ATen/ops/embedding_renorm_meta_dispatch.h,sha256=NQSHNkVx5k8M9hFDA37jqev3FE6-WZ52FLFVHKVc29s,815 +torch/include/ATen/ops/embedding_renorm_native.h,sha256=E-X2fOxgikD93YBgjM5EGgSX1zAd1pkHld5tyqLZR_8,981 +torch/include/ATen/ops/embedding_renorm_ops.h,sha256=yCdivVkTAwMfvwfyUToaHFk39IlGjyADUziOob8j8yE,2796 +torch/include/ATen/ops/embedding_sparse_backward.h,sha256=mnQqxqhYBKryI8U7S4EIIKVdK-e4IHNsdMz-Q2EJgcw,945 +torch/include/ATen/ops/embedding_sparse_backward_compositeimplicitautograd_dispatch.h,sha256=rik2rbXzxK33WgzpcBEHXtZFD_mC81q_aAglOjq_aqg,901 +torch/include/ATen/ops/embedding_sparse_backward_native.h,sha256=8VKVUgNNSJsPy9eDgPhhNtpwlUWK-TDCfVDFtiZ3eFU,611 +torch/include/ATen/ops/embedding_sparse_backward_ops.h,sha256=zFOmxeE_igr-VInyheM7EhUH_ii6s0PGVJus79U_ctg,1328 +torch/include/ATen/ops/empty.h,sha256=XaIhPSTDHhRm5KwZ2nvE1HSAxMADd136ahYeEzyp1eE,9336 +torch/include/ATen/ops/empty_compositeexplicitautograd_dispatch.h,sha256=NflAQrbcGfmsDvuLllht42a1gsnA4h8XPnTz5y0Jjo8,1546 +torch/include/ATen/ops/empty_compositeimplicitautograd_dispatch.h,sha256=McoBzoagAGhiqi3evSpbgdWQiy-4tR1_77EyvPLRTfw,1282 +torch/include/ATen/ops/empty_cpu_dispatch.h,sha256=nHo_HBSMUCRAkeCAq7lT4ytPR3yn9S_WBhl9P7gR3qE,1490 +torch/include/ATen/ops/empty_cuda_dispatch.h,sha256=8D5l6f1IIxlR4tsa-sneREyQoD3QeM8tBVXCCv8ncIU,1492 +torch/include/ATen/ops/empty_like.h,sha256=X3Uk_yqUg90wJ0fY-8XzCXiydhKXC6OVP_O9l3OaOJQ,2241 +torch/include/ATen/ops/empty_like_compositeexplicitautograd_dispatch.h,sha256=tWRpazyztfke3QVKEOhHlQChciXhYVSxZKAf_3kG3Qc,1418 +torch/include/ATen/ops/empty_like_native.h,sha256=cy180I7WfnKHJ3Pj-PMHb5pfxgOv0BrWu7HVVmCllo4,2013 +torch/include/ATen/ops/empty_like_ops.h,sha256=djdS_7TcQOMESXRi3vwzwy-t4O63DQbTolHVb0OM17w,2417 +torch/include/ATen/ops/empty_meta_dispatch.h,sha256=RAho-ujyUBgsUdFpI6xWcg4aMAjudq8ISt_D7Pzh1E8,1492 +torch/include/ATen/ops/empty_native.h,sha256=Pv-6kEHA1A46NBoIm2goiNciJF9jzdTArbE-gWCWrWE,3624 +torch/include/ATen/ops/empty_ops.h,sha256=GiqgAuaSPqiP54qYKqFmfJ5_4YEKszxmlKtJyObPlVY,4653 +torch/include/ATen/ops/empty_permuted.h,sha256=n-X5RY_GKCW4rTTAvAA_AHqSKO9YOciuYvd_pKdUcgI,6868 +torch/include/ATen/ops/empty_permuted_compositeexplicitautograd_dispatch.h,sha256=QDOwU3pQVBVAAKY1xeQe8T2FndYGiWN51WP6eJFDTEA,1968 +torch/include/ATen/ops/empty_permuted_native.h,sha256=gZ_t4HIaUC-xzkzXIcrKZRE0_RILc10FtzrhEAVOWdU,831 +torch/include/ATen/ops/empty_permuted_ops.h,sha256=wcfNlENibv932UWyVJ2M0vEsSRd2CuKtEh_byfiAtDA,2329 +torch/include/ATen/ops/empty_quantized.h,sha256=vGyLuRPqzqZyz3A9PWGJWstyS0Fs4Q6BhH681PtPhns,2502 +torch/include/ATen/ops/empty_quantized_compositeexplicitautograd_dispatch.h,sha256=X_XfMSGqFcOsVt2sKmxqHmMM_k24k_uDyGq3wMCTxyM,1072 +torch/include/ATen/ops/empty_quantized_native.h,sha256=_m5HK56wj1JR81_tbCsu2vwfYZs5DiWoabesu9h1fZs,914 +torch/include/ATen/ops/empty_quantized_ops.h,sha256=cqoYsGS4ttnoFjSfHnmtVffO3lmh3idhAe4R3vcUBqE,2611 +torch/include/ATen/ops/empty_strided.h,sha256=qex4W47LyXYypfxe4BFojoum6xmnXWg-CG47Bg13pbk,6731 +torch/include/ATen/ops/empty_strided_compositeexplicitautograd_dispatch.h,sha256=kEx6pKNCM9DSUMVpBY6c9Ow5iaXuV4kB24AHSFVdSGE,1192 +torch/include/ATen/ops/empty_strided_cpu_dispatch.h,sha256=lqfXKrFbfpRKp5RBOGMWmoYu86TmoHrnMe8rQe-H4fE,1400 +torch/include/ATen/ops/empty_strided_cuda_dispatch.h,sha256=ZdSYmuiKoAu1VDI5OGo6CO1TgM1xWZU9eNaUOmq240E,1402 +torch/include/ATen/ops/empty_strided_meta_dispatch.h,sha256=GY1h1mF1uB0544gFb1HEGMJYDeEJCtrFsuQfsc3DlQs,1402 +torch/include/ATen/ops/empty_strided_native.h,sha256=-q9nwxhkWQJY80eXZ1Zs8MEysydv6PA7Um-ne2IJFgg,1571 +torch/include/ATen/ops/empty_strided_ops.h,sha256=oQEQ-iyoXSz3lWRh5sqnEeIaHw73WYshT2xcs0VgPiM,2299 +torch/include/ATen/ops/eq.h,sha256=NcLPdL8GZ3O3oDUf3a7Um0Vi3CopNgESwzZRE1emQtw,1872 +torch/include/ATen/ops/eq_compositeexplicitautogradnonfunctional_dispatch.h,sha256=0GGlFeqLJCgZJvLlSQd6ThFKGGB5DadgH1xA45uYFqs,1060 +torch/include/ATen/ops/eq_cpu_dispatch.h,sha256=m2KH95kej88ehSWAhwJMtKXh_UyfjRfIo66xEvLWkTc,1396 +torch/include/ATen/ops/eq_cuda_dispatch.h,sha256=tlHCuxYnRO3VabLFKjlet-QFel9M55mEGKxy28GnI7E,1398 +torch/include/ATen/ops/eq_meta.h,sha256=k5fB6wFBh_5T66QicqB-GOX75NZa4sxhOCzZYR2NhBg,783 +torch/include/ATen/ops/eq_meta_dispatch.h,sha256=daefTgYlHZfcuaBYKsocdE3qvDMgvTTzwmzi_3aWUEE,1398 +torch/include/ATen/ops/eq_native.h,sha256=9ue9N6NXDXMMgJp8Hx6DW3yF7jNOeFc-TEvyu0hhZms,1417 +torch/include/ATen/ops/eq_ops.h,sha256=DehKkmY2AzJwX2pct6nxVqZHkhSNGYr1HAYfwOA3ZE0,4261 +torch/include/ATen/ops/equal.h,sha256=8dmrrFCCOg-2ru8HYMs5l8kn-PyKoY6gy-o1PefXd2s,679 +torch/include/ATen/ops/equal_cpu_dispatch.h,sha256=vz7hmw9ex41tC_B1UbedEyIpU70GOrMR652-_q8HIX0,762 +torch/include/ATen/ops/equal_cuda_dispatch.h,sha256=IvwMSwuiqRGEqMWeCDa_V-ODV5kWEDm7rkcpIExBLGM,764 +torch/include/ATen/ops/equal_native.h,sha256=ihig0p4oOFI7uc8BNSjUncrwPq4QX5JUdloawZrgOWY,687 +torch/include/ATen/ops/equal_ops.h,sha256=6h9S2PYTHM37xpUlaUnOIoZxAEd4z7pzVrSMmnvFFWg,1025 +torch/include/ATen/ops/erf.h,sha256=twBpVQxPHJNLPtxUdG2Nhy6gRR0jHd-fPBhkAerYIJo,1151 +torch/include/ATen/ops/erf_compositeexplicitautogradnonfunctional_dispatch.h,sha256=h9xyEPbJQ1xDGvigkKBB3Apk5gQIpZWrPiT9d7v8h74,859 +torch/include/ATen/ops/erf_cpu_dispatch.h,sha256=DcORWMdZAl70kqbP6t88YxB8a8jIzS1MjnpeAsOCBJY,942 +torch/include/ATen/ops/erf_cuda_dispatch.h,sha256=aElRUzn_cyKHpUMTFF2Qm91uWhcBde5T0aNkfWPn7pw,944 +torch/include/ATen/ops/erf_meta.h,sha256=oP8pIE9BvGB7hSvqhfbMfSR_pLMVXvLEJyaOiN-oE3o,599 +torch/include/ATen/ops/erf_meta_dispatch.h,sha256=7ZFjwRLfKUp966KckOOeqJp5qVQb23sOf3fy5_TFrkA,944 +torch/include/ATen/ops/erf_native.h,sha256=szqvjFPaRlvZTP6kxAbiKqHD__x6ZQm8xDy2-av6Ips,1018 +torch/include/ATen/ops/erf_ops.h,sha256=itV9DN_XcNcnw9ioRYZxNQ9ycWV918icuMqZo9MzTJ0,2046 +torch/include/ATen/ops/erfc.h,sha256=FuDnyifhKxp2IGnWq-fz7drwJn6XyvaPG8J-wG4Xnlo,1164 +torch/include/ATen/ops/erfc_compositeexplicitautogradnonfunctional_dispatch.h,sha256=7LsskttYY7TjVzjh1e6nSdY9vTItkin1DS7mmjmCQbI,861 +torch/include/ATen/ops/erfc_cpu_dispatch.h,sha256=XbvC3Qvy4vH1VqWB1T4bVE153U6vwKR3fdvRpd9FvsM,946 +torch/include/ATen/ops/erfc_cuda_dispatch.h,sha256=v8ggcLZhnOXC6JtqpjrNTgjx6WDWnlEeXGsb4SLmNyY,948 +torch/include/ATen/ops/erfc_meta.h,sha256=LGCoBnAzAH1bZ_uYJtBWhj7BrnmEzUjPgMq6yKS_gH0,600 +torch/include/ATen/ops/erfc_meta_dispatch.h,sha256=wbe8M6I7RT6cT05Ubfw-NaMqT7187Dh68i2mdnyruyo,948 +torch/include/ATen/ops/erfc_native.h,sha256=Hh_75jCWiLbvOh0z2_ccYtvcIrjiPDCOfRowRRyUgfk,613 +torch/include/ATen/ops/erfc_ops.h,sha256=_rVnInwwXz5vdLTWcBQMqPtgSYng567p7NGojIb7YEI,2055 +torch/include/ATen/ops/erfinv.h,sha256=CP-Qi3pox_DUEEprjpkJu00-BMzuvLXc9i0lgEwZm8Q,1043 +torch/include/ATen/ops/erfinv_compositeexplicitautogradnonfunctional_dispatch.h,sha256=AyvhQ0niBogEeJkdRXy3U2VI9mzVnijGdJJFZPVBvN8,865 +torch/include/ATen/ops/erfinv_cpu_dispatch.h,sha256=HRt-gpV5nxIW6rcAgt_R5J3qKyHzYq9s_0H-VUmC75Y,954 +torch/include/ATen/ops/erfinv_cuda_dispatch.h,sha256=E92GxI3eDcPacHnho9HrGI35Jp8Yo6GoFyizJ1lvvRU,956 +torch/include/ATen/ops/erfinv_meta.h,sha256=bXOj6V8HC_miN4AWTBT41KvtvO-oMz_qqLc6y70v6jU,602 +torch/include/ATen/ops/erfinv_meta_dispatch.h,sha256=CGqbgALRCdynFtXx9ged2FTxmkag0VKZZacIhTNRVik,956 +torch/include/ATen/ops/erfinv_native.h,sha256=k9mEUwM9Uoz9PAQXK-AyMNADgKwO8nWF6GBAYfipN2E,1045 +torch/include/ATen/ops/erfinv_ops.h,sha256=U4yx-6vENoXpkYcB07kyIrIl5Ff3wQczz0BqEXjaHLE,2073 +torch/include/ATen/ops/exp.h,sha256=RAyYH91kxF8npYgSLYS6Hg_FNapWwNVPbyfY_6Dq2FM,1151 +torch/include/ATen/ops/exp2.h,sha256=h6vS1Ch1qdtMGasmmluLV7xjte6a5mG492UmLQdO5Jc,1164 +torch/include/ATen/ops/exp2_compositeexplicitautogradnonfunctional_dispatch.h,sha256=8WHEptHjB5qVNdzDuSuXumGUBBWSTk5d_ZoIHc-lwu4,861 +torch/include/ATen/ops/exp2_cpu_dispatch.h,sha256=rMHO1zpoXqWsgm2wVx-33nwn2KPWWwooe2R8lYP9Sqo,946 +torch/include/ATen/ops/exp2_cuda_dispatch.h,sha256=LsT_BE4vxDuax3evVuWO8m7MswxQ-aXlhPE-0CtmMIE,948 +torch/include/ATen/ops/exp2_meta.h,sha256=13rTRpxH8OY5e0f_qBfGIWzTM57wlCl9sC5-B4rr7g0,600 +torch/include/ATen/ops/exp2_meta_dispatch.h,sha256=LTPycEqemhIR0De2oNcoyIigROCAhXTIA8rLf4G0cE4,948 +torch/include/ATen/ops/exp2_native.h,sha256=jbk370cwHxUSxFRj_P6wU-GwQ4sjD4g-lIO4qDOtxv0,613 +torch/include/ATen/ops/exp2_ops.h,sha256=kBO6cHcbVxmtiDDnNR1U3REZmMP1pF7oGWmL-6P-SBo,2055 +torch/include/ATen/ops/exp_compositeexplicitautogradnonfunctional_dispatch.h,sha256=bgUdPxvPWwaEg6MS2NZv41ogCSHsdZUERHJydbMc5J4,859 +torch/include/ATen/ops/exp_cpu_dispatch.h,sha256=KMkk8_2RShL1si7QjR6tyUX5XMv2l99t0ZTqFQMYOhY,942 +torch/include/ATen/ops/exp_cuda_dispatch.h,sha256=z3jc0bge-_dCEdw9D7A279sSIEgEtMg9Ys-iOcGeBMM,944 +torch/include/ATen/ops/exp_meta.h,sha256=Lxrbrl_oyNSpztX45aQlwcPG0-Q-MeijT1sP1lqxyAs,599 +torch/include/ATen/ops/exp_meta_dispatch.h,sha256=ydU6d0BieN_dFdz9oUtwXh6MwsowPHLEog-JQ6mYeSU,944 +torch/include/ATen/ops/exp_native.h,sha256=-AlM4OqsztXu9lzit_2VRo16-PgsZPJN-ckSYMXc7h8,610 +torch/include/ATen/ops/exp_ops.h,sha256=IeS1XrZbb8EGRZ5Iiy0a2wfNMKkwlhVxCzNEBylRep8,2046 +torch/include/ATen/ops/expand.h,sha256=3cFZj8KMRJf2z-PLEKZQrEm9QO93U1moF7r8TPHj8a4,1060 +torch/include/ATen/ops/expand_as.h,sha256=ORVegPNLrch6F0KtIuBbIgi71doB0ItPmdvaMHzx2rA,509 +torch/include/ATen/ops/expand_as_compositeimplicitautograd_dispatch.h,sha256=e5pPRr4OOqc4Swdg2pfVAXMnc3UKu5uDCglyNiM7wxo,816 +torch/include/ATen/ops/expand_as_native.h,sha256=fQShmz4U7AItSVPnVGlgap0t_pHukqu8CthFA-STv-U,526 +torch/include/ATen/ops/expand_as_ops.h,sha256=06hamsAs8713BVSCUWFIJ1cMsUn1EH1jzDDPdmkIjso,1063 +torch/include/ATen/ops/expand_compositeexplicitautograd_dispatch.h,sha256=5MrLbNh38D3E8LJZwOCK-WvyJwn6CG5FBEtO2vQH_84,939 +torch/include/ATen/ops/expand_copy.h,sha256=iqkK2PhI6qRzUuDIGXz6WNwjSpX1gj0wo7bdBu5JVvU,4194 +torch/include/ATen/ops/expand_copy_compositeexplicitautograd_dispatch.h,sha256=NgFC1zsirDXTd3kCqA-qiiHP_X8JrO0qP6Dd3eY4JzM,1252 +torch/include/ATen/ops/expand_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Xn6rftlWACoT-C3OCWD6PoXbzwCDZ_mw7LSSYhOqASY,975 +torch/include/ATen/ops/expand_copy_native.h,sha256=R15uX7YI_z5o6fw_zPKr9osoYqEVmnb59ggnq8niw20,688 +torch/include/ATen/ops/expand_copy_ops.h,sha256=rOMERy1bcaSVTckL0HJKNC2ax6joPNpT6dlUVJ6ldow,1886 +torch/include/ATen/ops/expand_native.h,sha256=p6kHyTfhM_Rj-rNaYXVIxBnvEh0NliYZ77386qbsYOM,540 +torch/include/ATen/ops/expand_ops.h,sha256=t5df6RLSwOkzO_v9CcOgYqFgIwVI0cG-5nIN5FWIzO4,1116 +torch/include/ATen/ops/expm1.h,sha256=zNf_UmhR2g1WHtCxrdP_8DOTcvWoQEaNXwulhuJ5UII,1177 +torch/include/ATen/ops/expm1_compositeexplicitautogradnonfunctional_dispatch.h,sha256=A_AQ5jf8gq3p_UGpLMmL8uULpAs7LsX2Chsu8wyP7oM,863 +torch/include/ATen/ops/expm1_cpu_dispatch.h,sha256=m3JN8aNNAducJWBqkR7TwXzujaAZHg0Ak5S_GWEqAPc,950 +torch/include/ATen/ops/expm1_cuda_dispatch.h,sha256=Np0ZhqRs5L74uHAvmR5uR_K1n1L5BOnf6UAb5ZRvCM0,952 +torch/include/ATen/ops/expm1_meta.h,sha256=ZBrNEWB4e2nabP-oqwk3suuo0ehs2xfw6n69IlLbHZ8,601 +torch/include/ATen/ops/expm1_meta_dispatch.h,sha256=WJCiLSH0ItAVOYR_nulcYfn-rS78h5968QBajyVFmrA,952 +torch/include/ATen/ops/expm1_native.h,sha256=VN90iIQxRutVvdteZAHFZ89pXmqlwpXwm_INbIGxPzs,1036 +torch/include/ATen/ops/expm1_ops.h,sha256=hgeRTDPHT1Qd9Jjgm2Zc74rNjgjUZBwerRL-Z0KTONo,2064 +torch/include/ATen/ops/exponential.h,sha256=VqfLbJQ6AVljNotzqV9nkBEO2NK5dK0Se53sLMkVUnU,1478 +torch/include/ATen/ops/exponential_compositeexplicitautograd_dispatch.h,sha256=G97t2RJ6xKOsCZ3bOVuNw_vFOCr6B7uXNgcMoeUIsSs,1163 +torch/include/ATen/ops/exponential_cpu_dispatch.h,sha256=OT2MEzMeZQ_Hc-Ngyf8-_kYne8izzxj4fzcZYFqcvbo,818 +torch/include/ATen/ops/exponential_cuda_dispatch.h,sha256=aPjDTLm4Sg3786pWLunDHRlHWLeTRUAIrfaAO14gExM,820 +torch/include/ATen/ops/exponential_meta_dispatch.h,sha256=24cV39GKlMIptrYXmc2jbZhdg5oH3QUea_LpV4sW5eI,820 +torch/include/ATen/ops/exponential_native.h,sha256=tspfO4UlMwAeVA8xffpV_dpeQM-gqtdEiNXRUmouGfc,845 +torch/include/ATen/ops/exponential_ops.h,sha256=oUe_EP6FhuSTUmKYvvQMq-CPJ9tLbXRt0hv7d2VBh8M,2706 +torch/include/ATen/ops/eye.h,sha256=xnol6RCOyHbpAJujCsRAGYvLg4LxPnOOgPG9j8lVRxI,9805 +torch/include/ATen/ops/eye_compositeexplicitautograd_dispatch.h,sha256=YxsHlsjEtuDVH6crEBTF9OW-2Ej9fpu75J_Ko4A9Qr4,1832 +torch/include/ATen/ops/eye_cpu_dispatch.h,sha256=SDghe6wVM-i2G4o7lSLxC2wVP4-A_AHTDIB4q97-E_g,1284 +torch/include/ATen/ops/eye_cuda_dispatch.h,sha256=riNhJfsklMaQpexMoi8ckJ3WtDV9RdGQM9oKNnaN_ho,1286 +torch/include/ATen/ops/eye_meta_dispatch.h,sha256=q4TtUKBPpvQcBPH8z1_wSrY3GvfVpXmnq4RPdThIuPM,1286 +torch/include/ATen/ops/eye_native.h,sha256=IfhsakXPuj84jtMwMsVhVooPqlU_uNIqR4BOJZgeAQ8,1131 +torch/include/ATen/ops/eye_ops.h,sha256=UAfV8XDvMPGIm5CM3WVJ6k2SelNTt45dOUxOfGvCdRQ,3628 +torch/include/ATen/ops/fake_quantize_per_channel_affine.h,sha256=fJv3nA0ZYX1Xkq9D3uZEzsOA1VLmGTGDRc2fU33tfWo,977 +torch/include/ATen/ops/fake_quantize_per_channel_affine_cachemask.h,sha256=cChoLEPtkeLRg14OaKiQPzONDbnAx9GTt2P3vFMhs8M,2309 +torch/include/ATen/ops/fake_quantize_per_channel_affine_cachemask_backward.h,sha256=MLe-ZfBQQv3JvEEJKwKz9MWDMS_vWf10ZDfvxXmO_r4,868 +torch/include/ATen/ops/fake_quantize_per_channel_affine_cachemask_backward_compositeimplicitautograd_dispatch.h,sha256=XdxHB4Lm5xbuRwQlnsPxppb0YpveLlS778XF6lfTeYA,857 +torch/include/ATen/ops/fake_quantize_per_channel_affine_cachemask_backward_native.h,sha256=xiaySuFqop7Npj5ZlW6gKttDvx77NCXIfE5yrxInJ0Q,567 +torch/include/ATen/ops/fake_quantize_per_channel_affine_cachemask_backward_ops.h,sha256=mlVltRUAEtUYArjKbQilgOz1TvK-PRBOYKwLhLcCvbk,1180 +torch/include/ATen/ops/fake_quantize_per_channel_affine_cachemask_compositeexplicitautograd_dispatch.h,sha256=mPsT0kJBmCJhrD2KCDYdlKbIggq2P8ygJADLDOHTY20,1275 +torch/include/ATen/ops/fake_quantize_per_channel_affine_cachemask_cpu_dispatch.h,sha256=1-WcypustbSG8zXIEhNqb4xlbHBg_k_Ujl1ul-UPNPI,913 +torch/include/ATen/ops/fake_quantize_per_channel_affine_cachemask_cuda_dispatch.h,sha256=VJmLXrIb27CPu8-CWxvcz3KbJ78mX0Nv4HWZejUqAzg,915 +torch/include/ATen/ops/fake_quantize_per_channel_affine_cachemask_native.h,sha256=uWz8fCBwTnUoBXzthZ5W-UTxVJwj22zVlMLbLq0NNDk,938 +torch/include/ATen/ops/fake_quantize_per_channel_affine_cachemask_ops.h,sha256=FqQ-VTD23D1wLWABPMJeRHQja35EiZoIjPH4TFTQZ98,2759 +torch/include/ATen/ops/fake_quantize_per_channel_affine_compositeimplicitautograd_dispatch.h,sha256=FdLHvzub6oXAhaa4D9q_9lZftzR1ghgQ1pJzhCRN4lo,922 +torch/include/ATen/ops/fake_quantize_per_channel_affine_native.h,sha256=6y5lIE3zkoIZBasSi8FHKuFXReZk9mcyDUw9HunvfW0,632 +torch/include/ATen/ops/fake_quantize_per_channel_affine_ops.h,sha256=q6hBOpF6hWJs-YJHSjI4QqS81TfxGCkCCwgaxm96DCE,1398 +torch/include/ATen/ops/fake_quantize_per_tensor_affine.h,sha256=_R0a_24lEHPN1IerZgaBUddu-0JTJhpMCUxqRm1OUTA,1360 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_cachemask.h,sha256=-zvxHBjumnT3LsgZTBY08PjKSQmb6Y9Y77ihibLq-m8,2128 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_cachemask_backward.h,sha256=KoTbYeTTi-eLhItnNGtyDxIX2cnLDqefh5G_GDgCWCo,864 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_cachemask_backward_compositeimplicitautograd_dispatch.h,sha256=kmw94RXWKxB48SbYPPwvjjMs90j1VIPSvk6ZhXepYnk,856 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_cachemask_backward_native.h,sha256=RyUjqDKfznWYGCIjy4QuwnzU2yUVKz-sjiJKCSEZhog,566 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_cachemask_backward_ops.h,sha256=IUSfpLH81jlV5vEOlQuvDCVGM2maOv0cA0f9dUxrFvI,1177 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_cachemask_compositeexplicitautograd_dispatch.h,sha256=0QZV6HRkYxLi2z-6LCRRENoue9tY7c1vYc24FK9YTUU,1199 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_cachemask_cpu_dispatch.h,sha256=WbXdS23G2b914PnFXUu-F9u5rZLGn1i6yvyXqwRTVco,875 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_cachemask_cuda_dispatch.h,sha256=iMMGg7mSQZWBRPyXtrRVJvKWZSvUd3hKYxJl78kUWG4,877 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_cachemask_native.h,sha256=AnPkcaLEhAan9nCPjuCORbB91Yy7U3XeQ4iZivwoi7A,862 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_cachemask_ops.h,sha256=HtvEQpcJNTBIsveHTyKNzuoF0dnTKtlf7ehmPQLMOxA,2513 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_compositeimplicitautograd_dispatch.h,sha256=lKDkvrRdncB78rUnmw7T7nVTxSZJriQ6LZsTZtA-RJU,1059 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_native.h,sha256=UfMNmyd_jKwOUwUHEyDE1rAmAHJCUYenHDt1Sq94PtA,769 +torch/include/ATen/ops/fake_quantize_per_tensor_affine_ops.h,sha256=tXCS4Mgf2XNQuWHPcEai919tcvvsfc22IqPzTmAQth8,2216 +torch/include/ATen/ops/fbgemm_linear_fp16_weight.h,sha256=ovgzBn0r8fUaSSFW_29g31fQzn8FsuWtDG1JajeQqX8,838 +torch/include/ATen/ops/fbgemm_linear_fp16_weight_compositeimplicitautograd_dispatch.h,sha256=C5KDQLoLOW82CMAxcYX8KmeyLK57eJXiZuqDRv34Ers,866 +torch/include/ATen/ops/fbgemm_linear_fp16_weight_fp32_activation.h,sha256=F38grnx3QWauk3hhUYc28Xu7v1gnd8Wq3aDD0_GmhGE,902 +torch/include/ATen/ops/fbgemm_linear_fp16_weight_fp32_activation_compositeimplicitautograd_dispatch.h,sha256=ErOqV8lLD133dVfUW3fzFz-kXNFD4Lhs3x3nfdc2qhk,882 +torch/include/ATen/ops/fbgemm_linear_fp16_weight_fp32_activation_native.h,sha256=F5bYzKZA9-SqaQjkhmMguc79wYvL56iklitHgR-7Dpw,592 +torch/include/ATen/ops/fbgemm_linear_fp16_weight_fp32_activation_ops.h,sha256=YCzCXhriCQsB70vEJOP4S8pi4Zr0tJyHrW0EnC4YSFg,1263 +torch/include/ATen/ops/fbgemm_linear_fp16_weight_native.h,sha256=pNuhpR_BvMm4Sizzo1as0gz9hmglyfoeIeKspZavehU,576 +torch/include/ATen/ops/fbgemm_linear_fp16_weight_ops.h,sha256=JVPK25NoTGjFdnJZVz3GAU2EnNY6fulYB71R-henh94,1215 +torch/include/ATen/ops/fbgemm_linear_int8_weight.h,sha256=mpzxD3IlGRcH5mldFFDsEAHxZk_H33t3TpMPG89ndVI,1083 +torch/include/ATen/ops/fbgemm_linear_int8_weight_compositeimplicitautograd_dispatch.h,sha256=4vymeLvZKJOG72WLQ_Zh9Pqhu1jkLmsflSRXAxjuLcs,989 +torch/include/ATen/ops/fbgemm_linear_int8_weight_fp32_activation.h,sha256=eXeuXQVJGkyiBvLeDmFARrJg6cyjKVTC3AdCp2_lUnQ,1147 +torch/include/ATen/ops/fbgemm_linear_int8_weight_fp32_activation_compositeimplicitautograd_dispatch.h,sha256=nzVbJrbQ6wpZziNTVwIwoKyQKpUFWnYK3-rES0zhCvc,1005 +torch/include/ATen/ops/fbgemm_linear_int8_weight_fp32_activation_native.h,sha256=zQonRBtIc_WwNj5uRdS11Mz_EksLafgpzHCPA2hV3Tc,715 +torch/include/ATen/ops/fbgemm_linear_int8_weight_fp32_activation_ops.h,sha256=AJE-9WO1k0K_d2erEg1l40BZj_1JwxcxQGvbzlwstS0,1664 +torch/include/ATen/ops/fbgemm_linear_int8_weight_native.h,sha256=P9gY80gkdyTBXkReLhFYqYcj3rgR9SvTc7rhsj5PK1A,699 +torch/include/ATen/ops/fbgemm_linear_int8_weight_ops.h,sha256=xx_ou5RBS9x7gk51w1CUPG8gCgBr3pR2s_oyFqw63BI,1616 +torch/include/ATen/ops/fbgemm_linear_quantize_weight.h,sha256=0GCcDHYbLeotPSBZU_hIjJ2nY1XsooD4YYJ97Stlbc8,801 +torch/include/ATen/ops/fbgemm_linear_quantize_weight_compositeimplicitautograd_dispatch.h,sha256=QND0FO2vaMVrW3Te8ICS-DaWtK-KJQxhd8PII4EHPas,851 +torch/include/ATen/ops/fbgemm_linear_quantize_weight_native.h,sha256=RdixkUYA-fjkMeuIqNHnMzfDbxkTjy_VQPHnraR8pKM,561 +torch/include/ATen/ops/fbgemm_linear_quantize_weight_ops.h,sha256=4WW7rqNNO7y5O1HzZWSP_poBNVv6BPNE5LWYzCrQn3k,1176 +torch/include/ATen/ops/fbgemm_pack_gemm_matrix_fp16.h,sha256=DZdZqycQm98Z1T1TNODZXZdrh3PsViXMwhkrN0mypYk,735 +torch/include/ATen/ops/fbgemm_pack_gemm_matrix_fp16_compositeimplicitautograd_dispatch.h,sha256=E6IzjSyqp6vIBqc_NSrhPUfyP8WuV6mbCvBPnWBBWbE,810 +torch/include/ATen/ops/fbgemm_pack_gemm_matrix_fp16_native.h,sha256=z1JouhPCtENlOA2Mixi8ua53V3joHuLUe_veQpHVkQc,520 +torch/include/ATen/ops/fbgemm_pack_gemm_matrix_fp16_ops.h,sha256=OqgMkfKVHA9guNqhIUuz9SOLo6Dil-QvI67qc82rxmU,1031 +torch/include/ATen/ops/fbgemm_pack_quantized_matrix.h,sha256=wD03k4KlWa4KIidED9Pe14kgxRToWsvnFF1K5wlYiWA,992 +torch/include/ATen/ops/fbgemm_pack_quantized_matrix_compositeimplicitautograd_dispatch.h,sha256=zyc5v2yf1VYYmfOpqg8Wxn_SCsS8W9_tNbtBFbLT_XI,910 +torch/include/ATen/ops/fbgemm_pack_quantized_matrix_native.h,sha256=IUJTxyuZqm_KcPN5Fx9p9KIKTwS-XIaJAzwPd-2dFUk,620 +torch/include/ATen/ops/fbgemm_pack_quantized_matrix_ops.h,sha256=wPyTI1-4LsVq4WHU7jMW6qDk4gdGyro_8jEe_6NiWxI,1695 +torch/include/ATen/ops/feature_alpha_dropout.h,sha256=Ryz2PBP7rJKOjx2fVjTlGjf0Y9wsCKhGMo9P83afOjg,1005 +torch/include/ATen/ops/feature_alpha_dropout_compositeimplicitautograd_dispatch.h,sha256=aThteQaMsyhntGWMS2cPeYR6cL9PUHwbomLEO37yFmo,914 +torch/include/ATen/ops/feature_alpha_dropout_native.h,sha256=8QKY_TUs9KqaVliFhk9PZSfGLcWC6vfx_X_YwgKhk-U,624 +torch/include/ATen/ops/feature_alpha_dropout_ops.h,sha256=bLFdTjUnBU7jAG6R8ZRR__UKpuSL-RWecA-FlKZyefY,1723 +torch/include/ATen/ops/feature_dropout.h,sha256=zizOW_KYr8rxAhRXbal0l79_IYuX_c71TnbFvwR9ehI,963 +torch/include/ATen/ops/feature_dropout_compositeimplicitautograd_dispatch.h,sha256=PtRo5tmlU1cpfcrgRcVVuIQ0q78-IOAi44ESIjdOXQY,902 +torch/include/ATen/ops/feature_dropout_native.h,sha256=czfjGD2QwIKw-l2ExJm2UNau_zlmOA2-T3FU5sX_dSY,612 +torch/include/ATen/ops/feature_dropout_ops.h,sha256=GqNwM8plDsoYen8FzX1OHcHwturEfrQqExiviiOIOK4,1687 +torch/include/ATen/ops/fft_fft.h,sha256=Wal3ORkcf1XDUeLN5Jdqf8_OyLi23eI7RhqkeLVPR34,5090 +torch/include/ATen/ops/fft_fft2.h,sha256=IG43JBybOpLlhcMoPCjgB6JwwChUMf7tCimXfJLBi9g,5383 +torch/include/ATen/ops/fft_fft2_compositeimplicitautograd_dispatch.h,sha256=uZdFsk5GVMLnm-qrl82K5U3DldpWv875Et_0XE-zaYA,1882 +torch/include/ATen/ops/fft_fft2_native.h,sha256=SbAQLvn-veiGXNbfd6518xl2ADYxSTgofybRKxdMEgU,814 +torch/include/ATen/ops/fft_fft2_ops.h,sha256=ovioQFgn8IXvKg2ojezXSOrOoX4HAcyy-WfTP_rTC6s,2209 +torch/include/ATen/ops/fft_fft_compositeimplicitautograd_dispatch.h,sha256=tBWmroEywJrVXAzMqhFuSsLySfFkCWIsfby60x_s6Ck,1817 +torch/include/ATen/ops/fft_fft_native.h,sha256=_19feDCmM5kiz1Kpz_LjzSJWVpouXqpCHy72vRPL4IA,795 +torch/include/ATen/ops/fft_fft_ops.h,sha256=Pdrl3cwWFNB2Z_BQRI_ASYDNLj4fiMdVvODdef5K0EQ,2145 +torch/include/ATen/ops/fft_fftfreq.h,sha256=i9qJJp5oGeArPYF5OUDNofw1R93T5rEY3puvfSFuW0I,1784 +torch/include/ATen/ops/fft_fftfreq_compositeexplicitautograd_dispatch.h,sha256=axpnPfxcHMHEThbOYa6Fhm6C-phJIZnwYxCHpqhsSvw,1188 +torch/include/ATen/ops/fft_fftfreq_native.h,sha256=h4mahel6sogilDYczEitkXM42AVVqCM1DUR6odVN71w,739 +torch/include/ATen/ops/fft_fftfreq_ops.h,sha256=v3HSHmN8zD_jhJeXHJcx3tOklPq5CuEI82R8TmXDBe8,2081 +torch/include/ATen/ops/fft_fftn.h,sha256=EDUDESk8KobsqN7OfUurqU2M7zSPCGKcEj7bQNi4kKI,5523 +torch/include/ATen/ops/fft_fftn_compositeimplicitautograd_dispatch.h,sha256=mlnmk4Q1I07E2WbxLtjqGWoKpMqwfcHazBq6YY6O5hE,1958 +torch/include/ATen/ops/fft_fftn_native.h,sha256=-HFmHBok2XF5YZSWpPKWoMB-ZhtbfqjZE4eh5sgLWFI,837 +torch/include/ATen/ops/fft_fftn_ops.h,sha256=8zkaIXv5kYa6kNQRzti1oeDe3ZEzvfcGgHztS-s5MaI,2253 +torch/include/ATen/ops/fft_fftshift.h,sha256=TTz-KmdS61Sv9YccamYu5FP6bviPKXn8QlnTRxRTiD4,735 +torch/include/ATen/ops/fft_fftshift_compositeimplicitautograd_dispatch.h,sha256=_z4XJ8jxJmRtMlqu7cfNyo5VqPbRsP4vZtL6aGj6dh4,837 +torch/include/ATen/ops/fft_fftshift_native.h,sha256=Og5L-0ECaPeuLUwrprXKoUmKizw4UszVnRBupK0fbLg,547 +torch/include/ATen/ops/fft_fftshift_ops.h,sha256=AjFIjJzL7k43DSaY4pr-nBpYFk-a9s-LdvuNqWdPq34,1081 +torch/include/ATen/ops/fft_hfft.h,sha256=BKpGma40ADxS8TLsE3N78SaXyrMgvygccaZJRKcHPm0,5121 +torch/include/ATen/ops/fft_hfft2.h,sha256=6F0-GknMA7v3P5P8FuThlDCVmm_lIfTL531kXS_798c,5510 +torch/include/ATen/ops/fft_hfft2_compositeimplicitautograd_dispatch.h,sha256=Vyc3SZokkuKQKWbpmsY49s7sHruWXMN4qhq0EbFPT7g,1936 +torch/include/ATen/ops/fft_hfft2_native.h,sha256=rzXNd1h629f9vuP40p8x42f7M6KvbjLC916BtYEtZKM,828 +torch/include/ATen/ops/fft_hfft2_ops.h,sha256=BrUj1nRipidlEl6A5LMIrmbGanfCGP6c8oER6qIMuKc,2251 +torch/include/ATen/ops/fft_hfft_compositeimplicitautograd_dispatch.h,sha256=b2qNchbIk5fsBQePCh8RJMhjhKsEjsx5UAMxe07XqFg,1823 +torch/include/ATen/ops/fft_hfft_native.h,sha256=WkFsixazxf3-gXrtNVJyOLO78fhsWqxSPho07soYCtk,797 +torch/include/ATen/ops/fft_hfft_ops.h,sha256=wxbSXYc80M8YoqWTYgje6eTfueVy1EZ7VDqhb9AxJws,2151 +torch/include/ATen/ops/fft_hfftn.h,sha256=zSmFJjB4doJuNBUykYn71jMbzS6WbO5g7sryIQNSPRU,5650 +torch/include/ATen/ops/fft_hfftn_compositeimplicitautograd_dispatch.h,sha256=CPTeu1f_-ZoF8QpNDXk5s3eLO2fW6gWNXsHS8-LH9DQ,2012 +torch/include/ATen/ops/fft_hfftn_native.h,sha256=yyqYNIqTms4NsSC_y9oP7jxUpLnPaE2lvQyTEewf9Ro,851 +torch/include/ATen/ops/fft_hfftn_ops.h,sha256=EQ7ctZPX0UVxKUw7Izqkd0NQJajkarIWWzRyNfMl8cU,2295 +torch/include/ATen/ops/fft_ifft.h,sha256=AI_wbAthlAMZbSX4RpPV1cG8gYkMT4u3UUtVQg2Zlbw,5121 +torch/include/ATen/ops/fft_ifft2.h,sha256=9KVJaTrGVOi3DncaUilgrHjalbdhByaCsyszqGxla_0,5414 +torch/include/ATen/ops/fft_ifft2_compositeimplicitautograd_dispatch.h,sha256=Op0gCyQbsp7pyPjfwR5QY_1eY3n8gGgLro_FzwPTYSU,1888 +torch/include/ATen/ops/fft_ifft2_native.h,sha256=HI-qFeOwuLM1sY-Giv3rCHYQk-z83F0efzKTA-qg6ts,816 +torch/include/ATen/ops/fft_ifft2_ops.h,sha256=K0_8pw4ACd2NkjN6YH0mUS4N3dQKYdH-7serCv-GwaE,2215 +torch/include/ATen/ops/fft_ifft_compositeimplicitautograd_dispatch.h,sha256=8M0Dr6ZWpEzL_oXgr4al55DOnbylwJFCJuD2KYvy5lU,1823 +torch/include/ATen/ops/fft_ifft_native.h,sha256=XfItHPHjmPnoHk735Mu5inSdkkWtmPaZFPh30CnagXE,797 +torch/include/ATen/ops/fft_ifft_ops.h,sha256=2Id6rQ_VmiVHWdTXeAMU29D7Um2ID8sqYTa8Ms3to-U,2151 +torch/include/ATen/ops/fft_ifftn.h,sha256=_Oy1sb_ixBFhe9mPzQGyy5YQae2pT8IvB-UtoQSMVxs,5554 +torch/include/ATen/ops/fft_ifftn_compositeimplicitautograd_dispatch.h,sha256=I85NLp_VvqoPaEIYSXReatzpQxqI-MwIvkltw29yxuM,1964 +torch/include/ATen/ops/fft_ifftn_native.h,sha256=vWlFOUNGXQTjQLqKZNWaKLrtg4wIDQ0ZdstwGiiNYyo,839 +torch/include/ATen/ops/fft_ifftn_ops.h,sha256=lHgp7F9j16rzE5X0d1BhvDSwohgj8usrDquH_2kQX5o,2259 +torch/include/ATen/ops/fft_ifftshift.h,sha256=707Hrm7CSwRJCjehZNik_pivj4AcxYN7SVS0gDgK6eM,739 +torch/include/ATen/ops/fft_ifftshift_compositeimplicitautograd_dispatch.h,sha256=8h23hQ_hUYtQM1A1UR2y47wxr7plfFKu9HuSnMta22A,838 +torch/include/ATen/ops/fft_ifftshift_native.h,sha256=P65O4_7UPbTTsBUjBCycsr0718sXJHl3TRkAqAv5fhU,548 +torch/include/ATen/ops/fft_ifftshift_ops.h,sha256=_W-hXws_12PdiRbi3TUetE60qnFz55NG0RiyimAKS5w,1084 +torch/include/ATen/ops/fft_ihfft.h,sha256=aUSGo8CR8juNosQ05KoLAlwdA_ytXfduhWMy1OmLAgs,5152 +torch/include/ATen/ops/fft_ihfft2.h,sha256=DMqN6TKDE1lgWohfFL5lwOatStodF8Xm9QMHhOMEqZc,5541 +torch/include/ATen/ops/fft_ihfft2_compositeimplicitautograd_dispatch.h,sha256=Wpi4Vz8kZAAECt7O22eHyh0vfTyD5UfpGxoT1re6Np0,1942 +torch/include/ATen/ops/fft_ihfft2_native.h,sha256=biURk6TQIRsEY_H079OyGKPKPOntrt0VXddsJlYM5CQ,830 +torch/include/ATen/ops/fft_ihfft2_ops.h,sha256=4x4EEiV2MHz9bH3cGf6aQmgg_31bgbFyMLczZ9eF7bQ,2257 +torch/include/ATen/ops/fft_ihfft_compositeimplicitautograd_dispatch.h,sha256=iEOb6jl_r7qwVgGzYFicBOxc6MxEsM5aGnYi1xPI5KE,1829 +torch/include/ATen/ops/fft_ihfft_native.h,sha256=P5XRM5Jfo2pA1nY2PBhsu4zdrdAlqSZztN0HrLMFmeE,799 +torch/include/ATen/ops/fft_ihfft_ops.h,sha256=RDti_lSTbtliLddAbRNJ-pqxFHIgMmuMaFJxXWwCABs,2157 +torch/include/ATen/ops/fft_ihfftn.h,sha256=T4YniXOwfe5VhBTSImGCeA-iSxQF19oQK7eI_YAu4Qg,5681 +torch/include/ATen/ops/fft_ihfftn_compositeimplicitautograd_dispatch.h,sha256=LoR9M6bJmMdjcrwFy3P7PVwC9m2vQR7nbOiWJDqv4EY,2018 +torch/include/ATen/ops/fft_ihfftn_native.h,sha256=fNxNDmjPPoxc8s_-MDXH2HFdJJsrYGtIGUMaNVaOClU,853 +torch/include/ATen/ops/fft_ihfftn_ops.h,sha256=vNtnZabvp0NoVTkSk-Isi9gqC--5H6IfcJZW-aiiBhU,2301 +torch/include/ATen/ops/fft_irfft.h,sha256=sSwnAogAxWdjbeOuU2spRBvGU9TamQZcJZiYXM1dM3A,5152 +torch/include/ATen/ops/fft_irfft2.h,sha256=SdV_I6Y_xtDPfm8d3pjgcOrNwOx6Jqi8emM7T6Vr3Aw,5445 +torch/include/ATen/ops/fft_irfft2_compositeimplicitautograd_dispatch.h,sha256=VNAhcR2MbtFFcj64916ynjlWnBgnF_uHs2IfYU4ZhVE,1894 +torch/include/ATen/ops/fft_irfft2_native.h,sha256=wJ74b74fIZgT1AR94nnOZbivao5i5qlM1gdiDIMBAhQ,818 +torch/include/ATen/ops/fft_irfft2_ops.h,sha256=H7dgKvb1GWFekg_RJzvqDNnSbwfY4XGmobmZLvx4w9U,2221 +torch/include/ATen/ops/fft_irfft_compositeimplicitautograd_dispatch.h,sha256=x4nXNAcHdga36GQORwx75tHgmQY4A9pz9dtYN_QL0Ec,1829 +torch/include/ATen/ops/fft_irfft_native.h,sha256=evtlnnzrVGyAYX2y5yIeyORKxLccYII-tio2oUFk6jA,799 +torch/include/ATen/ops/fft_irfft_ops.h,sha256=6fu0Q8XrlBd7MuO5P4eaeEoaToxN_LIcDYaTALFYnrk,2157 +torch/include/ATen/ops/fft_irfftn.h,sha256=dpVGqRRrO1qLpEumNAhEFubtr1AYKMIiBHeKAzZd5bM,5585 +torch/include/ATen/ops/fft_irfftn_compositeimplicitautograd_dispatch.h,sha256=1ZE8bkUdghYyD2DlFZUx271lp0pjc99UYHR2cMrbO4w,1970 +torch/include/ATen/ops/fft_irfftn_native.h,sha256=JiGfqXmrV5rKDJTDwvFPoD9AEkTvoFuaHxZEN-FZFns,841 +torch/include/ATen/ops/fft_irfftn_ops.h,sha256=MjX_3n7p_zfKnkxc-CA_UMOEb035ei6egHq7M8GiTdM,2265 +torch/include/ATen/ops/fft_rfft.h,sha256=i-gk9q1ckqxDnYYwFoeLVRXmm1Obgbu9-CL7_iXAVQ0,5121 +torch/include/ATen/ops/fft_rfft2.h,sha256=KHCKRaLFZX-78o2XHbUBYxg_Czkg1ko5JcTfLWO9i0E,5414 +torch/include/ATen/ops/fft_rfft2_compositeimplicitautograd_dispatch.h,sha256=g_iuXy74fn9sdewd52CWv8gG0U6GGfogl7qNE99GMSw,1888 +torch/include/ATen/ops/fft_rfft2_native.h,sha256=ZriUDX72Eq7GfWOiZ29Ei6efikd0gKvUZq4W0yQHa64,816 +torch/include/ATen/ops/fft_rfft2_ops.h,sha256=qlEuvG-XnHADYhn7rE4wfr3w1qQPSxmXQJsb-vaxXUQ,2215 +torch/include/ATen/ops/fft_rfft_compositeimplicitautograd_dispatch.h,sha256=M4YYUwpmdpViKyLh8QADwcSjrAAB_WncDfU3VlfTTo4,1823 +torch/include/ATen/ops/fft_rfft_native.h,sha256=drVykdXiUHsz0Kg0Ido5qDRDwvH0YXVVlnIMVp2Jw9M,797 +torch/include/ATen/ops/fft_rfft_ops.h,sha256=RtVpJsr9eSXOcEoBrZC8TdJoaAguz3tPSLGm-2pdmts,2151 +torch/include/ATen/ops/fft_rfftfreq.h,sha256=dHHdvh70QuFM6qDF-OicOMvFHoe2wdfIiWaMrt7ZQsA,1797 +torch/include/ATen/ops/fft_rfftfreq_compositeexplicitautograd_dispatch.h,sha256=cqj909mSYNcKqioVBtkNderN5MHRPVBkoxVGcw1thog,1192 +torch/include/ATen/ops/fft_rfftfreq_native.h,sha256=nCqbA4d99AJ8UZe8MUytl0Tyh7WNk4LBK97m4wxJzbw,741 +torch/include/ATen/ops/fft_rfftfreq_ops.h,sha256=Taqay9IdTtrc20VDFHHn1q3btq4vfFD7xcix8l5ojgY,2087 +torch/include/ATen/ops/fft_rfftn.h,sha256=TF_fNVPXthTpkXAWW9sHXUswK970mU5rhsFcQyK52cQ,5554 +torch/include/ATen/ops/fft_rfftn_compositeimplicitautograd_dispatch.h,sha256=bIntqX1vJACfD2OHWmUcvuxvw2lENZH5rRvmjg46uss,1964 +torch/include/ATen/ops/fft_rfftn_native.h,sha256=tzhtzZznE4NfoJFKiyVINDzJv0VWYIboTUU3F52OOV0,839 +torch/include/ATen/ops/fft_rfftn_ops.h,sha256=gBgAN3D9pASyUcAVXblNXMfI5d-D7hj-PO8Q8Cctjik,2259 +torch/include/ATen/ops/fill.h,sha256=tlG4TGGtiSf58a2u2AOY-1KN-fJBOr2Ll18XJik8Dhg,2314 +torch/include/ATen/ops/fill_compositeexplicitautograd_dispatch.h,sha256=QrWK8g2MukRDdZ4pBYSmsyGMepJCi_vaxk25xL35pTk,1304 +torch/include/ATen/ops/fill_cpu_dispatch.h,sha256=xITqKkIx_7TnZVn8BmPsy3_wmfZUImOyPytkyuCPaKg,840 +torch/include/ATen/ops/fill_cuda_dispatch.h,sha256=a1HTtHaz0HYuNkX-j1AuUeBtUDTQCglhYBLOJoeq5BU,842 +torch/include/ATen/ops/fill_diagonal.h,sha256=v0q6l-sJcHK5S-iwRoPS-CiPO0sDGfrZFMrBsiqy810,513 +torch/include/ATen/ops/fill_diagonal_compositeimplicitautograd_dispatch.h,sha256=W3cfyZtcM2Egr5wIJFHZdGIFOhyZp4iW_BgXObmQRNE,839 +torch/include/ATen/ops/fill_diagonal_native.h,sha256=tuwcqKCQ78vP-g93v_4eSkOJoswyL04vGJ2C9JSuoBU,549 +torch/include/ATen/ops/fill_diagonal_ops.h,sha256=-mXndyvNRQ_jpA-wkN4Ms0Ar9GotFQvXk3g-ZlIJV80,1128 +torch/include/ATen/ops/fill_meta_dispatch.h,sha256=MKcKQ3BeJHdm_AGx2yCbHPfN8n70LNzginNx76Kf0M0,842 +torch/include/ATen/ops/fill_native.h,sha256=qBMK2H1QEFYpsxgh_ouh5jynyW_jrme_TlVrsyn34UY,1559 +torch/include/ATen/ops/fill_ops.h,sha256=wVvle2b44ClS1ixzdDDuLstZSqUo_V0_fqOM-gtnZd4,4297 +torch/include/ATen/ops/fix.h,sha256=7htZBX5aBIbSc1tbJDXVu7-MpDEKzQ08obdMgpk4Wak,1151 +torch/include/ATen/ops/fix_compositeimplicitautograd_dispatch.h,sha256=UcKNz6B14G8JqAs8wbXDXxz9za2U9eMckxn-D2IgDaM,986 +torch/include/ATen/ops/fix_native.h,sha256=xZm1swCvpOUm42AZKulE_869Aiiu0NqnbQdiJ-N4k1A,619 +torch/include/ATen/ops/fix_ops.h,sha256=Ieke_IGw8C6Pp5kTUSyUvgp-NAWbcsF9ySgKvkeuzvc,2046 +torch/include/ATen/ops/flatten.h,sha256=2KD-14Qm2uXexv2R0EiNL4ab6PsmYQTZNJiTdv6HPt8,1662 +torch/include/ATen/ops/flatten_compositeimplicitautograd_dispatch.h,sha256=61qlFT2IHk2LeHuMcHG_Fgi9FQRyHhV4G0Ykdhi0Oww,1162 +torch/include/ATen/ops/flatten_dense_tensors.h,sha256=JkZyQ0soLrN0baKxtKcFt1YPTVsLbaSFJ2zQyjMT4b0,711 +torch/include/ATen/ops/flatten_dense_tensors_compositeimplicitautograd_dispatch.h,sha256=nioNKhBuII1hT910ATCdHM84dVA0_7jaXVaOFLSiJYI,801 +torch/include/ATen/ops/flatten_dense_tensors_native.h,sha256=NuS59VZ9zzWI-SDK29mKw3o_mAwP_vSeCYe-q61tNNQ,511 +torch/include/ATen/ops/flatten_dense_tensors_ops.h,sha256=8vczy8juC7VvpylhP8v8td4V8fdIT4pMief_XQ9yP7E,1006 +torch/include/ATen/ops/flatten_native.h,sha256=_wHreF0OUzXi0321dGuGBDQAxKM6Ma-x8eA_PXzaFhQ,872 +torch/include/ATen/ops/flatten_ops.h,sha256=sS-yEM4LAzBWRsh5Efz6uNi_uM0ILIwFhRjMvZULw5A,3358 +torch/include/ATen/ops/flip.h,sha256=fSQ3u2ZXokhuITIWtVQSQDQDngXz7zi2GiDiu_NwwkU,1143 +torch/include/ATen/ops/flip_compositeexplicitautograd_dispatch.h,sha256=9Yr_v9RTWiukzd7sg8DDrC1TmkZLPL5cf1scQuscS-4,931 +torch/include/ATen/ops/flip_cpu_dispatch.h,sha256=ZsZjEHGya37mrL-hOpQwFOSACOwj782PtgQUt9XRtDI,763 +torch/include/ATen/ops/flip_cuda_dispatch.h,sha256=Rk9kOmucxo6KOapoT1jy0_CTqf-XGTH8p6N6i1JewD0,765 +torch/include/ATen/ops/flip_native.h,sha256=oy4T9cMfJWbWAC39LsjtSK1HGtxmzQEy1Do-xgQ_i74,616 +torch/include/ATen/ops/flip_ops.h,sha256=K2LW6LVQuiq4-t8csaUBFVA_RETLfnF8lBrebHKieio,1697 +torch/include/ATen/ops/fliplr.h,sha256=t9Qey9oDPVuYJiRxDaWUG-VUsiyves3g7W2864-MYyE,644 +torch/include/ATen/ops/fliplr_compositeimplicitautograd_dispatch.h,sha256=BFF29Q9LuGzshe2urYORhGQHodw2ErciFjvoabpU0G8,787 +torch/include/ATen/ops/fliplr_native.h,sha256=s7ggWzj72fNHBS0JaQRU6hWzBxeUiyfPDt0Yu8ba2Zs,497 +torch/include/ATen/ops/fliplr_ops.h,sha256=DQHlJ7CXNI6jJYdv3uonyWf_gpkTfIgS8rMNhqDvaxA,962 +torch/include/ATen/ops/flipud.h,sha256=_NE1uJg-LdooqEtRheHlk_rPOfsP11LMsTHroUeYS0o,644 +torch/include/ATen/ops/flipud_compositeimplicitautograd_dispatch.h,sha256=URIbF6s_StXQzyWb25FG7-MoOJYyyns86KeLHf9DCPM,787 +torch/include/ATen/ops/flipud_native.h,sha256=qpJuj1XjHmFaiVk_D1NscZt2-rr1uEr-l-n9-nVHnQg,497 +torch/include/ATen/ops/flipud_ops.h,sha256=APQxeEXvL2CUqCGYAez7Xn9y7i8EpI6JYgGtdp6PA8k,962 +torch/include/ATen/ops/float_power.h,sha256=LgRZIhVFv8YFmRsZK0pX_t0vtJne-3Mg0Wc2cWfdENY,2975 +torch/include/ATen/ops/float_power_compositeimplicitautograd_dispatch.h,sha256=RkY5lCkBhLiEX7aDs2GUsP3gFPnyW15ApvWrSyrcBjA,1852 +torch/include/ATen/ops/float_power_native.h,sha256=pm1oBp8HUxGBt9O7nuzjY6jqeXOnYWhfoVJBfeBgcgM,1220 +torch/include/ATen/ops/float_power_ops.h,sha256=_L0JgwBjge-ZzH0xcPMdAkb3oSDA4FT3i7RR3ttkiTY,5934 +torch/include/ATen/ops/floor.h,sha256=9dgaULoeYNdS0yfORj4FNQiJJ-a-2G0tC4j8KsEAQlA,1177 +torch/include/ATen/ops/floor_compositeexplicitautogradnonfunctional_dispatch.h,sha256=9roGqNabIZFvu9eG91rig5NxT7lDYZ-XHFw_GimnDog,863 +torch/include/ATen/ops/floor_cpu_dispatch.h,sha256=ykYFHSa-It_Qm_0JfjB3D0M8zujiGQrFiV5Oj5ymXGA,950 +torch/include/ATen/ops/floor_cuda_dispatch.h,sha256=LVZh5NRxSh3HzO30k3_Zt1AcTj3qNbIPZdURBuTvp4g,952 +torch/include/ATen/ops/floor_divide.h,sha256=_PuZ0-e0MPQbN-AFjFwx_RRlwEDH8QxLX-8aGJmB4io,2020 +torch/include/ATen/ops/floor_divide_compositeexplicitautograd_dispatch.h,sha256=-Q09AgmUv0CQTPi9lr51UY6rCgkdrN5EaCz5VtdsxyY,1126 +torch/include/ATen/ops/floor_divide_cpu_dispatch.h,sha256=pE3ZAGxazRWwn6tExYF9OrJm3wdHnQDphe5G7O2T_XA,1082 +torch/include/ATen/ops/floor_divide_cuda_dispatch.h,sha256=uGiMB-_0O-28ivZwXyPfIvuSiPSrVe64DSQOjfed-0A,1084 +torch/include/ATen/ops/floor_divide_meta_dispatch.h,sha256=_PCBIgeutxTdyrr5qQUBl-tX3_br3gOjYsOaTuAnPhI,774 +torch/include/ATen/ops/floor_divide_native.h,sha256=RLcxLISaO9M3qg-xgJ5wHPBXl0P9UTWff_ff0FWmjDA,1324 +torch/include/ATen/ops/floor_divide_ops.h,sha256=9GHPtu-ygmdBKGXnvrEw0tQwpHY8zcxkAQI_y1RLVXM,4400 +torch/include/ATen/ops/floor_meta.h,sha256=H6dXLIc5TqyVZt2RtiwxOXkq6K1GL2OHN-XaEvRRrPE,601 +torch/include/ATen/ops/floor_meta_dispatch.h,sha256=HdyFsR3yQC2A5z-cmOvI4FeYBzSD7NdU3b02R0SOTKk,952 +torch/include/ATen/ops/floor_native.h,sha256=Dygh9Br8gwGo59cyKfOeyavvkDNadG-XnrkWAJ2BqlA,1036 +torch/include/ATen/ops/floor_ops.h,sha256=qdOLLMvDJSKsLed1aod1-3dWPre1jSPQBYfIeSi8iII,2064 +torch/include/ATen/ops/fmax.h,sha256=rnEKrN6FTl1ErBnwGr6qxBAg01F3-uKLhMAsEbzHC2E,1164 +torch/include/ATen/ops/fmax_compositeexplicitautogradnonfunctional_dispatch.h,sha256=mfbOMM2v_EHhV5-B0cZO9D39aTjP4YJi9ZLSWlW9WlQ,837 +torch/include/ATen/ops/fmax_cpu_dispatch.h,sha256=FZPRn7PXuz1axhZC6D0_rPT6pCVV6dBt-TCTFovkkjE,974 +torch/include/ATen/ops/fmax_cuda_dispatch.h,sha256=uItWVF9ScGaYXEK8zmbMRa8aV7vsUgwODTgqEGsaYJA,976 +torch/include/ATen/ops/fmax_meta.h,sha256=0FRYQwODdFZOlVJDJ3vpLYV8ks5j-Ql2Jo7_c4zCAKo,626 +torch/include/ATen/ops/fmax_meta_dispatch.h,sha256=Cqn3kxKvCJnz1HgOb2JUUcm978eY__X_3rxJlRs32q0,976 +torch/include/ATen/ops/fmax_native.h,sha256=aLUX0Safq79n01AiFxotQt8dAT6l753eG3gB-zBMGNs,639 +torch/include/ATen/ops/fmax_ops.h,sha256=ULcUHbaeeliX2NdD86i3tVJnsPC6P3JhNOn-aaqeRjo,1723 +torch/include/ATen/ops/fmin.h,sha256=iOXd7pubx71Bg895x9GjGuZXCfAP_zZ4r65rvVPMVLw,1164 +torch/include/ATen/ops/fmin_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Wfod54GyzaY4EXB2tiU1FtSnedDnH15vydeSkADZAII,837 +torch/include/ATen/ops/fmin_cpu_dispatch.h,sha256=MmtmqeSo9OklQrbuhtD1RxiwHKw8jcML-CVXIASb57Q,974 +torch/include/ATen/ops/fmin_cuda_dispatch.h,sha256=6oi5CfTsoypJHaNo4qKNrl_oviEjgtRauTxKyLBxQQw,976 +torch/include/ATen/ops/fmin_meta.h,sha256=7316r3RT_DucQPhAFnjAXBSKfF8D6ljpm8ZQyTb2m5M,626 +torch/include/ATen/ops/fmin_meta_dispatch.h,sha256=DqE6j-qdoRXPm-0v_d5N0VrmUrObvOUrocVSNW37G0Q,976 +torch/include/ATen/ops/fmin_native.h,sha256=08UYmAVNk_1bDcNa1f2YXIeOyLs3bQdnLnqi5B9hoM4,639 +torch/include/ATen/ops/fmin_ops.h,sha256=l-bH01r30wo22Tjhd-k5olTGDVpUXltLY8A0_sDhIio,1723 +torch/include/ATen/ops/fmod.h,sha256=N17605qJF8S3q7U4Zqp7GN2ZRalvuIT9LQcxUrEj5Vs,1910 +torch/include/ATen/ops/fmod_compositeexplicitautograd_dispatch.h,sha256=EIvo7eiX8d9jN63qJnCqlUTm1_6OCxfx_mwU3v7ufg8,1094 +torch/include/ATen/ops/fmod_compositeexplicitautogradnonfunctional_dispatch.h,sha256=dpsvSu7M7v34-ssh2ZNrmOBYfw9wmVcgnhIHwL82ywk,913 +torch/include/ATen/ops/fmod_cpu_dispatch.h,sha256=HPGtRyJ7LsQjeM4qWQGfgOV3IH5SrAUQw3pOw2eKzrA,1050 +torch/include/ATen/ops/fmod_cuda_dispatch.h,sha256=hUDJqP7L26njdSRN2rf6-mWo7sL157_2aZiL-cEm6Iw,1052 +torch/include/ATen/ops/fmod_meta.h,sha256=hCShObx0KvXv-BIfNwR2kqwUGT6TeXxk_vOCoLG4ji0,633 +torch/include/ATen/ops/fmod_meta_dispatch.h,sha256=EfDsNxFdIYT6wg9wEGw87wHosThwURv57mMwrr4pc6s,1052 +torch/include/ATen/ops/fmod_native.h,sha256=XkvLGt6tv5-gIuNf2M-j57IM6BQK9ea7SqXRUmh3brg,904 +torch/include/ATen/ops/fmod_ops.h,sha256=Li5hUXHw65w5QlBJ9AB4RkQHSlYqN2jG02csJOUVtkE,4297 +torch/include/ATen/ops/frac.h,sha256=sS8QtXK6Wl4gTCRUsgr_iu9rCyO_AHew8aqGxMY50ns,1164 +torch/include/ATen/ops/frac_compositeexplicitautogradnonfunctional_dispatch.h,sha256=vbMcLKh1FBKK87n4yIF3PDWf47z3BR-MFkrs-vISlFM,861 +torch/include/ATen/ops/frac_cpu_dispatch.h,sha256=BL0jOfqkr1XwfRK0fMfFD7FrAwG0BH7_CS2auL5pag0,946 +torch/include/ATen/ops/frac_cuda_dispatch.h,sha256=E3SjWbAojHkHVgAujzmVErO3doKC7kPODM7N7AEqa10,948 +torch/include/ATen/ops/frac_meta.h,sha256=n2GCtzIyOYoKeZoWp-37Sjhs4mOYhExuZFihxNW02T4,600 +torch/include/ATen/ops/frac_meta_dispatch.h,sha256=UaX7rb7eOJa1MmFSHF_CuORtCU8ade8qkfegCjbCLh8,948 +torch/include/ATen/ops/frac_native.h,sha256=K6V_chkymTWrttwH4ZIt6KmPb0Ve6X8Fpa8smQrmVDQ,1027 +torch/include/ATen/ops/frac_ops.h,sha256=ZQoe9xaiBveSsgExWXTzj759dX7eKJF8qLxfM8F5xTc,2055 +torch/include/ATen/ops/fractional_max_pool2d.h,sha256=H9_0jML1v4sGNjCzFnQz9pHRatR1SmsAV85K1i63wHo,2036 +torch/include/ATen/ops/fractional_max_pool2d_backward.h,sha256=AKEW-dcqhGCEpqSOyKl1o8j3M5KGXUvJ10F479zluv4,2079 +torch/include/ATen/ops/fractional_max_pool2d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=A_MZN_35wNZ8J2F8CkFZmnflvdv6OzmiEMEdnm9qpHU,955 +torch/include/ATen/ops/fractional_max_pool2d_backward_cpu_dispatch.h,sha256=LZ9vdI03VkNe5Zn4e2CGoifsPoixcTlZf7EXD4wKemA,1342 +torch/include/ATen/ops/fractional_max_pool2d_backward_cuda_dispatch.h,sha256=fDcHnRwUhokeGmAEfw57WDee4uz8sPYY4-mdfmQACU8,1344 +torch/include/ATen/ops/fractional_max_pool2d_backward_meta.h,sha256=FYhOROP8t0R7D992XZ_YAaz_wKFcCHby31uFZ2MbaNw,744 +torch/include/ATen/ops/fractional_max_pool2d_backward_meta_dispatch.h,sha256=W3pmLzdWAGClhupZWktYq1E7GskZwqlwgJUDZQEL2bM,1344 +torch/include/ATen/ops/fractional_max_pool2d_backward_native.h,sha256=_u4bgSLdIF0v1cYsn7iaeVhRUF0wvM7uTERjJgxFae0,1134 +torch/include/ATen/ops/fractional_max_pool2d_backward_ops.h,sha256=M-k-2XFxhsc2lHdIYy4760KjSU_7wnXmrXAY_tXAMFA,2521 +torch/include/ATen/ops/fractional_max_pool2d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=AhiAgeKTa3L4b2N61geudqXhsZ7_vI_SgDY-DXwSXHM,946 +torch/include/ATen/ops/fractional_max_pool2d_cpu_dispatch.h,sha256=C0QexDqB0rkKIhfgI5welhrPaCRXe2G7OJrOO1aX0I8,1355 +torch/include/ATen/ops/fractional_max_pool2d_cuda_dispatch.h,sha256=eLwR-e-uileZ5fJVM50e0u4EfID7aVUy3E_fAdRocf4,1357 +torch/include/ATen/ops/fractional_max_pool2d_meta.h,sha256=tkRE-fEBqFmo2RJx3KmAnFjoQq8txrOV0MFhHPYa9IY,710 +torch/include/ATen/ops/fractional_max_pool2d_meta_dispatch.h,sha256=ARKBRxjxyHrCCmSGhe9AzfB3yOeM6vWkilZ60lXiVKM,1357 +torch/include/ATen/ops/fractional_max_pool2d_native.h,sha256=9L0Rlq3E-bVeF_3XhAwz8zCqR3QOPXkFB1eutmeFxfo,1095 +torch/include/ATen/ops/fractional_max_pool2d_ops.h,sha256=1GybjYY4Zg55EWf1UkY_exVWGZSZpC5PfRg2OenbkW0,2535 +torch/include/ATen/ops/fractional_max_pool3d.h,sha256=xQj0sWQGNhOLk0-A8Rf-x7Ni6K5yhk6NxnPwWsGt7ZM,2036 +torch/include/ATen/ops/fractional_max_pool3d_backward.h,sha256=F8t_iOwsiMqJvwiLwxrSAExjWpI4KF4UL0tnO4-_1GU,2079 +torch/include/ATen/ops/fractional_max_pool3d_backward_cpu_dispatch.h,sha256=jDqeeYdwtfhXpJYq7xAU_aVhUg9FiQ_hykJximGTqXs,1342 +torch/include/ATen/ops/fractional_max_pool3d_backward_cuda_dispatch.h,sha256=pH7jj6fZY5WG5P0Tv1HanQ-n0JV9scGi_0i3m70cnUo,1344 +torch/include/ATen/ops/fractional_max_pool3d_backward_native.h,sha256=yz5BekxbOEYPr-lcbi5lS5wcaPBrc3FpOX5IopgS_qY,1310 +torch/include/ATen/ops/fractional_max_pool3d_backward_ops.h,sha256=ZHX4IPnaWyJpfKRrtMQyU828QzOWIJc3c1-VNGE7mPE,2521 +torch/include/ATen/ops/fractional_max_pool3d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=VRvk9CAsVDpA_eK4H40aX5uPREvqolKDHSFBYt8rdTE,946 +torch/include/ATen/ops/fractional_max_pool3d_cpu_dispatch.h,sha256=FhfwrBMJ8Eg8JkZfsbNyJ9_alSaJnYb7Mss91UPAuEs,1355 +torch/include/ATen/ops/fractional_max_pool3d_cuda_dispatch.h,sha256=sWxq_NEtkcwRxuHgNkQe7lOfmg6iif7tXLUnHkujnVY,1357 +torch/include/ATen/ops/fractional_max_pool3d_meta.h,sha256=X6GzgKpCwhIKOvhhs4M42PEHLRp5lRbLc2qvd4oW0R0,10046 +torch/include/ATen/ops/fractional_max_pool3d_meta_dispatch.h,sha256=I-JpDC13xjmDKweCNMEVvpY9jqcLr9UmMb4cngN0V9w,1357 +torch/include/ATen/ops/fractional_max_pool3d_native.h,sha256=W4pPNFhkC0gLnm4uwdy7fXkL5iGdaF4Wlu1SUzjWKY8,1365 +torch/include/ATen/ops/fractional_max_pool3d_ops.h,sha256=gxZdecgG8hD6u5CRaBBHVz-rTs9CNKo1Ut628jI-eCM,2535 +torch/include/ATen/ops/frexp.h,sha256=YJP3efNRbdBh6DgT_aUlKjWnPd8emQJD3qt7Pq6k9kE,1384 +torch/include/ATen/ops/frexp_compositeexplicitautograd_dispatch.h,sha256=deF99eyGbjSdbGPkTDpCP_cvzU2HexXU66Ff_IXWtRY,811 +torch/include/ATen/ops/frexp_cpu_dispatch.h,sha256=HbWHWxUobLfQXyF9Kk4izrqrXK0NFBR2zPOoK7etIWo,955 +torch/include/ATen/ops/frexp_cuda_dispatch.h,sha256=RtHcFCBvjxx4iEi3fsJuLnffzJdUw8GcFC7WKJYU2L4,957 +torch/include/ATen/ops/frexp_native.h,sha256=6VAjDOubEvHAgz5w8DG1YefATRwFZC8vccOMzTYclMA,654 +torch/include/ATen/ops/frexp_ops.h,sha256=BjI33p-mK3YzwB1NQAWd5KhE5xSM5v1mfxbs_YaUdu8,1910 +torch/include/ATen/ops/frobenius_norm.h,sha256=Uors73g0NLVQHiJbOLn_2Gcr51XO716T2wTA7Tx8d-0,1386 +torch/include/ATen/ops/frobenius_norm_compositeimplicitautograd_dispatch.h,sha256=8_Ok-tTCQ5nfpMyv6jq5T8FLNWxcsPiEixglUDhILpo,1087 +torch/include/ATen/ops/frobenius_norm_native.h,sha256=S1O6QrFwdBv4-LV0yGAXWwAsW8OxVennceKoCOaRiM0,668 +torch/include/ATen/ops/frobenius_norm_ops.h,sha256=RD5vqGav87uMJeHs3-PTf7EgEofLMmU14nBzN9KNU_k,1872 +torch/include/ATen/ops/from_blob.h,sha256=O9mlg92bmafqsnGGEX2QzQwuKWYnLZTOPC_x6Pw6Vas,4330 +torch/include/ATen/ops/from_file.h,sha256=B0lk_PU9nO7mp2g_4rgT1x797GIOgilEcKB-sGjuG9o,2228 +torch/include/ATen/ops/from_file_compositeexplicitautograd_dispatch.h,sha256=9YnaJEcYzKaktdgyyEMLwRo9oLilhQRYbZ2OPvu7n8c,1040 +torch/include/ATen/ops/from_file_cpu_dispatch.h,sha256=NMq9Z_jyYb6iQ0vFVfw3fHigx-CdJTeXs6GjJKpdW6g,1122 +torch/include/ATen/ops/from_file_native.h,sha256=5ohz5lSnuboJKuntb-HAoEsFBOhzviJYRQ1lw8s0pAc,882 +torch/include/ATen/ops/from_file_ops.h,sha256=YjN7Bbnpr6U45ywI8Q0DtAS-5Ls1exRVheOdyANstCU,2489 +torch/include/ATen/ops/full.h,sha256=YVxHL3uTvS3sUxKyNJ7tkRyY-0sU-Tkoo2oQMbH0_IE,8025 +torch/include/ATen/ops/full_compositeexplicitautograd_dispatch.h,sha256=HqsVVuSpSdKb8Rk1dE2vYRqn5LzZsswgksn5QHmZRBU,2580 +torch/include/ATen/ops/full_like.h,sha256=0u0rImLqeHo7j4vGsvgiP7e-y4nQxLzG0eyhtyMQ6I4,2476 +torch/include/ATen/ops/full_like_compositeexplicitautograd_dispatch.h,sha256=LU3Epq7x3ERLbVs-GBCx6z3FkdGtXv9qrwuZ0J3I2WQ,1538 +torch/include/ATen/ops/full_like_native.h,sha256=0Ug3QlpwWG1M7BnYrqbl-BcaT5HJrXhlB_woMI0tRC0,914 +torch/include/ATen/ops/full_like_ops.h,sha256=wEOyu7_22G5x15_2ufG0rzRf8X2up0whSvt8t2eddII,2613 +torch/include/ATen/ops/full_native.h,sha256=VjIMs5z5pest3oMcnM0iCMk5SDcOVizzFXeEhQX1CGc,1214 +torch/include/ATen/ops/full_ops.h,sha256=MwkadUfGWXsFuCHzg16krGW2u_s_HnJPjWFWWt2Efrw,4336 +torch/include/ATen/ops/fused_moving_avg_obs_fake_quant.h,sha256=XrZy8gePKPT3xoumCTXiFKwHlLCeTrVbtZXC52XuoI8,1459 +torch/include/ATen/ops/fused_moving_avg_obs_fake_quant_compositeimplicitautograd_dispatch.h,sha256=1vaCrmVRA4weYeI05s_A_gxl9dHCrjQ5zdlNZNVdELA,1113 +torch/include/ATen/ops/fused_moving_avg_obs_fake_quant_native.h,sha256=uubym-1EpgpgMIt6LKki4AGd_Omei6kAm58HmJR8gr0,823 +torch/include/ATen/ops/fused_moving_avg_obs_fake_quant_ops.h,sha256=6WPEl8ERgWYF_qErGhdwXyvV-nds7KAQywaH6_ZVj30,2014 +torch/include/ATen/ops/gather.h,sha256=t7TOP8BxwqMW62IwoWq_5-mFAL0-nvlFgoMOry3I3to,2458 +torch/include/ATen/ops/gather_backward.h,sha256=6XWGcRG1sc27mBs3pqGQaktnB-sZsoq1QYuNQDITgQk,847 +torch/include/ATen/ops/gather_backward_compositeimplicitautograd_dispatch.h,sha256=WxH2OZwKPBjIKuGaPY1E5zRMnhA9SaARSye-NGOY8Ek,878 +torch/include/ATen/ops/gather_backward_native.h,sha256=4hzoSN6Ns_sTtI73-67UymfvTTh4WTCxCNTu0J3NH8k,588 +torch/include/ATen/ops/gather_backward_ops.h,sha256=DWi0DWkqL8Pliiibt6nD0tG2VCxEaiJePnNMd5Eb-LU,1262 +torch/include/ATen/ops/gather_compositeexplicitautogradnonfunctional_dispatch.h,sha256=dHTThEYf4YJBb8xuwTBslfbvhMHRGDMu0nOd-U2qjhM,876 +torch/include/ATen/ops/gather_compositeimplicitautograd_dispatch.h,sha256=guHPqvi_nys0GvEYMMkJC9XqjdBAQPTQ6puP2gkFXdQ,1141 +torch/include/ATen/ops/gather_cpu_dispatch.h,sha256=9s0vE6xQLwwH8qdteFRWzD0ftBnY_rwC6quStftqr88,1085 +torch/include/ATen/ops/gather_cuda_dispatch.h,sha256=zcxiGa5Ttny_rTFbtHYa9fS7n1AuyNdfIl8kaVk13iw,1087 +torch/include/ATen/ops/gather_meta.h,sha256=Paq6aaHlDRrKBRCVsKGoPTUniArTRG-Z_K2KzNxpfzg,659 +torch/include/ATen/ops/gather_meta_dispatch.h,sha256=gs8Z3952uHGBsDB5d17Cam5lM9utWcvBJ5xCza9yGgU,1087 +torch/include/ATen/ops/gather_native.h,sha256=ztu0Y4CoT4eo-7U-DWpAbqP9AtmrY0AwNOEm6xA4PZQ,938 +torch/include/ATen/ops/gather_ops.h,sha256=Fiz7kzU6UdxW1QA7wzmqqaEFnFz55wX2tD5IgwDm40Q,3544 +torch/include/ATen/ops/gcd.h,sha256=tOAUHB_fxQdxhwnjj_e0TcrsWjVXOthxy50d6KHEBzY,1339 +torch/include/ATen/ops/gcd_compositeexplicitautogradnonfunctional_dispatch.h,sha256=2byiHT9IxGLj2G-zmvE8jLktt64as6g-d__imGx9iN8,911 +torch/include/ATen/ops/gcd_cpu_dispatch.h,sha256=m_lKydFT1gULNsHCnZ2YZHqUlOCQ-xxyXfga9avoZZw,1046 +torch/include/ATen/ops/gcd_cuda_dispatch.h,sha256=G3x3FPPpqlZPImDbGsKpt-p9DjJLKRzPIeDV26Y-CBI,1048 +torch/include/ATen/ops/gcd_meta.h,sha256=BNv-3Kj9P0H4YMMqBLxX91RMh1lQ98ry08S5qDQ2Rs8,625 +torch/include/ATen/ops/gcd_meta_dispatch.h,sha256=ifwsQCn3_rSHfNc8enRb1m10mSxSkWaFyGug9SDP60Y,1048 +torch/include/ATen/ops/gcd_native.h,sha256=EvL06e8UkeIGMIsLL0_QA_hGybyRI9rmQ3vbSOH07_4,636 +torch/include/ATen/ops/gcd_ops.h,sha256=r9aGeJG1Mpn4OC2Bi1cjRFnE1k88WqAWV45OfJdJNuw,2304 +torch/include/ATen/ops/ge.h,sha256=3vjfMFR03IM1MyJ2-Ho244bRfz31erJOb8DRPkFvMko,1872 +torch/include/ATen/ops/ge_compositeexplicitautogradnonfunctional_dispatch.h,sha256=gVN2YA1H8CBD-QOdo5jrAd_7h3IbokNmV7-jigbYDRw,1060 +torch/include/ATen/ops/ge_cpu_dispatch.h,sha256=PKtZ8cTN5JsiuqQWnAFlWUxE75KWaKOaxqH6lvSgye8,1396 +torch/include/ATen/ops/ge_cuda_dispatch.h,sha256=ACUnY2_6X_1qwfF2f0q1VieVym_oyl32lJdrrLWI4Qg,1398 +torch/include/ATen/ops/ge_meta.h,sha256=zSnrKsSTmXToDRoPIpnnmdOuofOS-IZVw5uSidkLO1M,783 +torch/include/ATen/ops/ge_meta_dispatch.h,sha256=lKsS58hpC0uZhe-bJK1vm4y94KkYbceWHLpdo5QbkG4,1398 +torch/include/ATen/ops/ge_native.h,sha256=dfeLZMqAPpStWuslrTGq9bFdm6DeAr-fi5rrZcFhjDA,1326 +torch/include/ATen/ops/ge_ops.h,sha256=L7xyGf1f59kQUtCBPKPO9uwboaO7wUj3PC5XQCNZtqg,4261 +torch/include/ATen/ops/gelu.h,sha256=TFRLJPOXg08SPBtMgT3MU04ThSaaMNyBDeMBrA8DE1Q,1459 +torch/include/ATen/ops/gelu_backward.h,sha256=udTD9o_XXVhNhH_auLfbkzLtThZyK8jlzI5Z31OyP8c,1596 +torch/include/ATen/ops/gelu_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=qWVXQSpTN99JlMRfvpQwsYgRSyHui5fyR7uhORHm2m8,889 +torch/include/ATen/ops/gelu_backward_cpu_dispatch.h,sha256=baYV-iBi3ZEmC9Zul9FfEb8j2fM8x_M-jynP1O8YVIs,1137 +torch/include/ATen/ops/gelu_backward_cuda_dispatch.h,sha256=TeLD_WSbhUs2okVFhQgQ7uvQOFr0WbRoeguW5XsbZDU,1139 +torch/include/ATen/ops/gelu_backward_meta.h,sha256=9jAHkpEa9d1ArKejdC3NUEAklhIhzavWEkOgv-avvPA,671 +torch/include/ATen/ops/gelu_backward_meta_dispatch.h,sha256=w_WzBHrbfMXL6EZ-3XAGa2ZYP-BcgIltMpJryppsAZM,1139 +torch/include/ATen/ops/gelu_backward_native.h,sha256=ueB-7NILazqE1Wn7l7V133v_kMRgBamanR7Y30cH7Rk,1222 +torch/include/ATen/ops/gelu_backward_ops.h,sha256=GpyC4IbGwvkYaGUAEwzjuQQHFblwVvZbDykGlePCPpM,2062 +torch/include/ATen/ops/gelu_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Bngro4JC9tuvwcJCsYhCerE2yOCJlSMM3NEwkKKZ9kI,935 +torch/include/ATen/ops/gelu_cpu_dispatch.h,sha256=NZQI9tAuGJq1E2e7p4N2UdVZfOC1YHxAvIYdbAujQ0c,1087 +torch/include/ATen/ops/gelu_cuda_dispatch.h,sha256=cZWMnoA2CF_r_YS8Rygu4Y3xu9j1ZP6FSsJXVzhGU50,1089 +torch/include/ATen/ops/gelu_meta.h,sha256=2I2TdTYaLIAL6SgysbvnYuccmfqC8dIsCdfN_xhjyOc,630 +torch/include/ATen/ops/gelu_meta_dispatch.h,sha256=DUGMTD8aNwNwdQ4NtF04Oyi-CoSaqh3XpJz0U2bndXg,1089 +torch/include/ATen/ops/gelu_native.h,sha256=DyEzXqgg3pcO2PJ_0S_tAEOvYGbM9I3FcQkPLbNB4xM,1432 +torch/include/ATen/ops/gelu_ops.h,sha256=iPrHGGf8BVfqJIrigN7yK0zegFAK64-53PsBYUdRI5Q,2367 +torch/include/ATen/ops/geometric.h,sha256=uUebHhR_fIzZoXW06BaC1G_-US5P7nTPjF-jpSILpdM,1412 +torch/include/ATen/ops/geometric_compositeexplicitautograd_dispatch.h,sha256=TE7-YkGBSfcz0gdYnOTMTm2l7Ec2Y_djJrBiyafYppo,1141 +torch/include/ATen/ops/geometric_cpu_dispatch.h,sha256=VuWsHs9_5Oh5hkARF8cTjQbxfQOqS1SszJwmnqvcYGA,810 +torch/include/ATen/ops/geometric_cuda_dispatch.h,sha256=Nru-LIsyYfCQHAE5lrk46mnai-A1KJNZQKHT_-zule8,812 +torch/include/ATen/ops/geometric_meta_dispatch.h,sha256=Y8ImO6Hj7CGEeB3dwlOA48Lxq7v4uvVezrA4h1_Vteo,812 +torch/include/ATen/ops/geometric_native.h,sha256=Pe0Ms9d7XEprcN-AT-EL-qWweMgnahirs2bpfZQ1GFc,823 +torch/include/ATen/ops/geometric_ops.h,sha256=Q3_6-qSQ36ZSSkI-WkjEkMCi3y0Xlu59JMdLD-pHBTo,2646 +torch/include/ATen/ops/geqrf.h,sha256=_0x-9nCGUhVKZuDktBJ1c8V32j0UTc0dj5WmeTFTzVE,1226 +torch/include/ATen/ops/geqrf_cpu_dispatch.h,sha256=15AijNVsRObUP7jD_q-HEb3HWD1RXLwpY9clLdmsS9o,1010 +torch/include/ATen/ops/geqrf_cuda_dispatch.h,sha256=sPAs-b_vExwWGhY_5_a3PPwRtd3z-SFoUkVUfsSllPo,1012 +torch/include/ATen/ops/geqrf_native.h,sha256=ZXtr0RNt9jhWH1URUqe5MJhpGuhx547jNXvPuNaQrlU,642 +torch/include/ATen/ops/geqrf_ops.h,sha256=YMmE5bSpeOKWFTrngnSslXELGDXkFXYdV84WpVfPfDI,1803 +torch/include/ATen/ops/ger.h,sha256=qzCYAXzWOywByWgPewHoEafTCBnH19S_xuTX1d_9NVU,1145 +torch/include/ATen/ops/ger_compositeimplicitautograd_dispatch.h,sha256=K7FKNcJrsDjdi-NynLs_TXhm3Up0W_BYCQll5_HnrWM,1012 +torch/include/ATen/ops/ger_native.h,sha256=Hgn_HoJY6Di5lOlPYIH4fSOze1lO-TpnPZ0RAbBCnlw,620 +torch/include/ATen/ops/ger_ops.h,sha256=-vPM9iXnQ-KKw8b5D-e03UG_-B4kS2p-PR-YWCzOwyE,1711 +torch/include/ATen/ops/glu.h,sha256=Jv0wNH7bmDlMhuEvf9Ab0EtnYRsyA2RryS0BlTSUdYk,1109 +torch/include/ATen/ops/glu_backward.h,sha256=qcyUGn2bpZOz16fc_UZGANK3yTYfACNQj5gBza7N0yI,1449 +torch/include/ATen/ops/glu_backward_cpu_dispatch.h,sha256=CiGPGy4Lx73gwSbYAhHEtlqG6m2_2UAGZGvJ4fnXb-c,1069 +torch/include/ATen/ops/glu_backward_cuda_dispatch.h,sha256=OtadHCIw9gTvoRuIXZdzKWwIZjUT_tsOXNGM6enB-RM,1071 +torch/include/ATen/ops/glu_backward_jvp.h,sha256=5K557qyg0vh7VeFXMnMQ2AoyfJui70log0A6TE6qDQI,1806 +torch/include/ATen/ops/glu_backward_jvp_compositeexplicitautograd_dispatch.h,sha256=lsd-nKCn_UCgkV2O7wCz_RBj3GHRMhvSRfko1KXoMZg,1149 +torch/include/ATen/ops/glu_backward_jvp_cpu_dispatch.h,sha256=uj4WENQzBx7KSiLUDxI5TnHUsZrqvqVV-wSdtR9M3GE,872 +torch/include/ATen/ops/glu_backward_jvp_cuda_dispatch.h,sha256=XepTFM3UzNmd2ps9j2Ze0zF3yw3RGAgXl_AQ_f97jIQ,874 +torch/include/ATen/ops/glu_backward_jvp_native.h,sha256=aFCAtkUWV6LcVauPg6B-PnMSyp4u67f4SnJpgjBQW3Y,834 +torch/include/ATen/ops/glu_backward_jvp_ops.h,sha256=rWL5xLlbNVFoZXntO4elCh6UKAS_E4qnBfNecDwwHDc,2411 +torch/include/ATen/ops/glu_backward_native.h,sha256=oX_ozps1ShNTGg78lWFKgmJ0iMouqun79IpuZTDsukk,946 +torch/include/ATen/ops/glu_backward_ops.h,sha256=Tx0yu-rrGxxviFu7wmjXm_6OHDe-4_ZblFn4KDVkJOE,1937 +torch/include/ATen/ops/glu_compositeexplicitautogradnonfunctional_dispatch.h,sha256=JxHBq33uGbOfhKV9BgraWtfCH00nurGZ82BZ9DSu0XM,826 +torch/include/ATen/ops/glu_cpu_dispatch.h,sha256=XAROScoLUEPYOHAbqplXtZlKlHYIQUOlLyb6pHx3Q8Y,938 +torch/include/ATen/ops/glu_cuda_dispatch.h,sha256=Tusi6OLVWipv8tdOJJ1D84fG0r9dfpvwy87lZkZJ0dY,940 +torch/include/ATen/ops/glu_jvp.h,sha256=8DsIVQos_0_hc4dvhG0MF9WHoCqcfGhd35QFRyZhhU0,1344 +torch/include/ATen/ops/glu_jvp_compositeexplicitautograd_dispatch.h,sha256=Fsjc6H3etxAv0nIv2oDRJlQnXVr5WUdJj3lgRrUEYag,1007 +torch/include/ATen/ops/glu_jvp_cpu_dispatch.h,sha256=CgOWH-LflGH7jaSRjCIic4Ss_qnpA4EAK8rxORnW7jM,801 +torch/include/ATen/ops/glu_jvp_cuda_dispatch.h,sha256=xpTD6Sm5JxSPzzReLayOKVYoO2n8UP7Pn1WcW77s1-Q,803 +torch/include/ATen/ops/glu_jvp_native.h,sha256=EZmMBc3WC4ILbNwYg86fGOdkYmF0gP6ChrUgJClkX50,692 +torch/include/ATen/ops/glu_jvp_ops.h,sha256=WPGBvjcTpgnWsOm6gSNqmTo0n5XlXU-FVNoKij3Z-io,1953 +torch/include/ATen/ops/glu_meta.h,sha256=23-JrXhZ90qbp6HBcQDWYUpfMhp9Yu8dvFwFjJzXPG8,612 +torch/include/ATen/ops/glu_meta_dispatch.h,sha256=-BzX_1h7paitic4dik8xR2pwMpDovuY4mwz_-FvXVgk,940 +torch/include/ATen/ops/glu_native.h,sha256=MHx4rFcWBU0CNf8ssR46AZecZkgN0-shO_GkuHQ0tKM,623 +torch/include/ATen/ops/glu_ops.h,sha256=0JC3HElqQlxA5nfcM7RMZ2B89b6OSt52WkMvDBG7dUs,1639 +torch/include/ATen/ops/gradient.h,sha256=Oud_bV7W5_HbdYYqb0AI2mR6tQ3ymTpdRYIM1Ql_SZo,2909 +torch/include/ATen/ops/gradient_compositeimplicitautograd_dispatch.h,sha256=F22NVmcTTDeX3gDPX8lvOCmiJJOC6o1RN-Ehnxi-WLk,1813 +torch/include/ATen/ops/gradient_native.h,sha256=DiYPmCyMe6Bc58pkoA2IhAEa2z2_s7oR6pSnc_JPPXw,1523 +torch/include/ATen/ops/gradient_ops.h,sha256=iwh5Nru_T-wj0lo7puOy7igh3WOW8PuNnBceKGbx6jA,6343 +torch/include/ATen/ops/greater.h,sha256=0z-X5OuvGFttfEjEl3dxP8cIo7IpB1-kkYdYaEhpghA,1967 +torch/include/ATen/ops/greater_compositeimplicitautograd_dispatch.h,sha256=8m6b9kwclvpfoVGEZJq_WseULlPO2gxn1ssrkWvgkzo,1480 +torch/include/ATen/ops/greater_equal.h,sha256=ddE780aMSXYJ0yIj4_qHlwH6Ftn_8M5rcv0XIWCQlgg,2081 +torch/include/ATen/ops/greater_equal_compositeimplicitautograd_dispatch.h,sha256=fuSOyFfahtvmnsUaNgh9JGWOv1GTNj1tbmGy8CrmybE,1528 +torch/include/ATen/ops/greater_equal_native.h,sha256=KJxz7zw2boo_8Acevi5cuxPRjC5KDI71NaOPbdGZ2Oc,1012 +torch/include/ATen/ops/greater_equal_ops.h,sha256=dRt-10WhFI5mNFYn0Wf9SvVwMNlWedQ1-rNKVA6tA4Y,4459 +torch/include/ATen/ops/greater_native.h,sha256=1hlTcCk813lWb_Aoo9qfjkqlj3-G4AgaSflUAyHYrPQ,976 +torch/include/ATen/ops/greater_ops.h,sha256=3RVrDLMhOvYIgHoAbHKqF2LMEnYQ0mSV2TbyW-WSwuw,4351 +torch/include/ATen/ops/grid_sampler.h,sha256=FXeA3oKnk0Mg68EsUkO6W43XwlkE-8g5bF6wCvD4E-E,896 +torch/include/ATen/ops/grid_sampler_2d.h,sha256=3PTCcpgUfJ6VXOr4uzzKS4GmECvOZpzM7QWZyoOgE_0,1817 +torch/include/ATen/ops/grid_sampler_2d_backward.h,sha256=HvnqMPI1YT8ohsDomMrkX75Qw3eXhNk_2tZlhulLzPU,2513 +torch/include/ATen/ops/grid_sampler_2d_backward_compositeexplicitautograd_dispatch.h,sha256=0eof-LfTRuMNCKP9kcI0NWS5WotjDLAgOCduCP8Th-0,1345 +torch/include/ATen/ops/grid_sampler_2d_backward_cpu_dispatch.h,sha256=0v7_2jUuEVN8_yUk_XD6FMWkAN-lt0TYEA8EeSDImfs,948 +torch/include/ATen/ops/grid_sampler_2d_backward_cuda_dispatch.h,sha256=j6va7wm1_fsxoIFsR3M5ML9nIxjc_JYdxpP7yh7t7U4,950 +torch/include/ATen/ops/grid_sampler_2d_backward_native.h,sha256=HIBQ3wLG4SVwIO0nLjH_fMzF7TI33Y5E0Ug7R5eFq4Q,1277 +torch/include/ATen/ops/grid_sampler_2d_backward_ops.h,sha256=7FP44EYMA28hFngpA15z9BX-BG-o26W5PDbe_SWSjf4,2977 +torch/include/ATen/ops/grid_sampler_2d_compositeexplicitautograd_dispatch.h,sha256=vtg90Gq6R8kMnK2u9d3Otq1dGnAfIC0CFvGylieliC4,1101 +torch/include/ATen/ops/grid_sampler_2d_cpu_dispatch.h,sha256=aPsZQIm4MQB2xQzijw5xpps0pmbh0iUwlMU1VdKx6kY,848 +torch/include/ATen/ops/grid_sampler_2d_cuda_dispatch.h,sha256=3Cm35FpDy5eFc54KpuebPC0tDA1fq6Hce3sQ6yW-yKw,850 +torch/include/ATen/ops/grid_sampler_2d_native.h,sha256=1Z4wh1nj3_P5L-feMDbONEhSxdlDz8hcsLhZ9Sr8pqs,955 +torch/include/ATen/ops/grid_sampler_2d_ops.h,sha256=wy_-QBjIVvPeO54Q14HZA3yQNCc-_RfF9oCPkZJybkM,2241 +torch/include/ATen/ops/grid_sampler_3d.h,sha256=TTHw2uepW0NVsXrHR43zsH9n3JnFDCR3c4XmpUcBZMg,1817 +torch/include/ATen/ops/grid_sampler_3d_backward.h,sha256=elA4oKGDArBkPiAxsuEaDASdFAORgONM9NIK3L58Cik,2513 +torch/include/ATen/ops/grid_sampler_3d_backward_compositeexplicitautograd_dispatch.h,sha256=pEPkdPNof9vMPqinSfAXO9kKpiuSMkCW_Ssd9twZTT8,1345 +torch/include/ATen/ops/grid_sampler_3d_backward_cpu_dispatch.h,sha256=7vZIOnvndYW0YixBSQ3ypM3t3RvHEfW6bQt4IJHe1Us,948 +torch/include/ATen/ops/grid_sampler_3d_backward_cuda_dispatch.h,sha256=23gIXncAwciW3VfkUjBZFBECKOMY6rY1bFOTLQ7Z52I,950 +torch/include/ATen/ops/grid_sampler_3d_backward_native.h,sha256=6Xrr5lTSrW3DQcL1rvkdTcRxRfRbw1sw5rBdRz5HgYI,1277 +torch/include/ATen/ops/grid_sampler_3d_backward_ops.h,sha256=oL_Apsa3iglBQZNAxpiQaCCtPOUTD3Q6CuMkpGs67mA,2977 +torch/include/ATen/ops/grid_sampler_3d_compositeexplicitautograd_dispatch.h,sha256=9SUe9Hq-j7p4c8zMFaRfCBnOlr4S8nsGN4h7SnjBkVc,1101 +torch/include/ATen/ops/grid_sampler_3d_cpu_dispatch.h,sha256=GC-zXpvdAgXxDnqk1KaKNHmiWevDoQFVnarIdNdTp44,848 +torch/include/ATen/ops/grid_sampler_3d_cuda_dispatch.h,sha256=ESgJtfz_Aul0Faywq-Fr2kZmV8qrcqcdkI9nBJ_uEbM,850 +torch/include/ATen/ops/grid_sampler_3d_native.h,sha256=9emds8m8dPIL-xnnIwN-ll-1OZS7QLHcqjH78xaeiMA,955 +torch/include/ATen/ops/grid_sampler_3d_ops.h,sha256=Dy98EOWJ2LZChJmW1SfLi6HaeygYHneM8MJjHZb3-cw,2241 +torch/include/ATen/ops/grid_sampler_compositeimplicitautograd_dispatch.h,sha256=TzvShjnFoV-946upn5-TKq-Cy2Xw7LJZdqG7z5rP0w8,889 +torch/include/ATen/ops/grid_sampler_native.h,sha256=qZRpJWyTvZcssRRxqLYQ6oxCjdVrLpq2K7-d1uKqhpM,599 +torch/include/ATen/ops/grid_sampler_ops.h,sha256=IzL_UAk1i1KvHb4J5WQCVuvadhsVHcLRWtjOp0WqEPU,1292 +torch/include/ATen/ops/group_norm.h,sha256=7KWfj3iyEjXG0DvyRyhqQk1ch52HbDRTq-uGVZpjWkk,962 +torch/include/ATen/ops/group_norm_compositeimplicitautograd_dispatch.h,sha256=5npicrSiIRekLmeugxlxVEzYWQ2e_rB1mOZXBQtpMno,947 +torch/include/ATen/ops/group_norm_native.h,sha256=PCbFJQxjBj_8SxjNQ3tW_bukuu381ba8RNk5Le_eA0Y,657 +torch/include/ATen/ops/group_norm_ops.h,sha256=oB1MikV7lQyIDQPZyeYxIQCvNAuE9RpxdmFWkMs59-Y,1448 +torch/include/ATen/ops/gru.h,sha256=GId0BdOLLmFmjR61VSV1EjTIYyzVx6kphOHktKj-cvM,1584 +torch/include/ATen/ops/gru_cell.h,sha256=CUfUN1HvtJNWaUzjiyp3ys4fWPI3tJUoua29yK1veE4,921 +torch/include/ATen/ops/gru_cell_compositeimplicitautograd_dispatch.h,sha256=Uf5BdbZvd2K-iIeEE5O9C-HKBnY3ddWYMmpJLIwb2iM,953 +torch/include/ATen/ops/gru_cell_native.h,sha256=OVLIyxDwkNACdq6J6opGB5UcGTXAEogJKAVM_DMgZ2o,663 +torch/include/ATen/ops/gru_cell_ops.h,sha256=5opUh6qwmZg6JsKM-4LpLh26CJr1_XGkd-DAnmhhkuY,1494 +torch/include/ATen/ops/gru_compositeimplicitautograd_dispatch.h,sha256=mQRRYCDpXC-uG05oGcbkM7_xCpirXfvYeKsarK4yF4Q,1199 +torch/include/ATen/ops/gru_native.h,sha256=4xOjzzkJIMVmGgqmWrVqCwIvrhGbtPvhIqbhkFWZ6TQ,909 +torch/include/ATen/ops/gru_ops.h,sha256=hxHuSB-mK-5wXYXFEkxGrveR5JXH5f7W93piU39PeeI,2705 +torch/include/ATen/ops/gt.h,sha256=fy9NGYl-4Sb-aUAmGZQ9L5amLxXNPjXSZs5zfBq4c8I,1872 +torch/include/ATen/ops/gt_compositeexplicitautogradnonfunctional_dispatch.h,sha256=F_-oKd6yJcn4TO-GY1V_h7W-qKvmHv9LQFWkwSGJ510,1060 +torch/include/ATen/ops/gt_cpu_dispatch.h,sha256=olFMnVQYzQ1ndAMqVgoq2NXAkBffkEk_KN0DBdMfxac,1396 +torch/include/ATen/ops/gt_cuda_dispatch.h,sha256=2uYWHPbcMrjN9AeZIfR6wqu6runjUhjoIvlS7dPSGx8,1398 +torch/include/ATen/ops/gt_meta.h,sha256=ShDhvSTYwtN8MM15OEsLtS8FxtB_sCFIfx3iG4GrfCg,783 +torch/include/ATen/ops/gt_meta_dispatch.h,sha256=v99mjphAY0vGncwOTaDDXKirVgHYOuglgPqjqK9o4d4,1398 +torch/include/ATen/ops/gt_native.h,sha256=FL951OL7FfHBVnJmdCqtu_kSMfPAyVTNDem4se242AM,1326 +torch/include/ATen/ops/gt_ops.h,sha256=s3YuD6eKu8g8-ee4t2YFMmPQ4n29UVH_Q6BDjU65zuE,4261 +torch/include/ATen/ops/hamming_window.h,sha256=C-qD6AtcIOBPeB6BbfgARqIOLxjMd5gNpVrWSrIJHQk,7112 +torch/include/ATen/ops/hamming_window_compositeexplicitautograd_dispatch.h,sha256=R1lhareJLDWMlvegYZTLPffvIUew2_UB__7uNRRaZk0,2948 +torch/include/ATen/ops/hamming_window_native.h,sha256=HkUxzzeETI5Ih-C9rqna3fs1ZfBSJPt184IK4a3vO7Q,1870 +torch/include/ATen/ops/hamming_window_ops.h,sha256=NmKwQWR-gCFvy6QixqQ-7fRESdFboto0j7UAqAZNSI8,7858 +torch/include/ATen/ops/hann_window.h,sha256=LtFnuG-g21LtRzfJnU0PWirHEr92sV_uN6m64jKMMck,3355 +torch/include/ATen/ops/hann_window_compositeexplicitautograd_dispatch.h,sha256=U1QtzyLvyYVBEoJfRs5RmJ00w2y9kxJtHwHeCHoyHfM,1704 +torch/include/ATen/ops/hann_window_native.h,sha256=xaOEnCKhsn1GZB6JOkRZoiLLZbhwiHKYZCzell9Czy0,1075 +torch/include/ATen/ops/hann_window_ops.h,sha256=N0o9IVckHUzXlRZzfsHQCXXnuykIPUQzs4l_VIHV_1c,3846 +torch/include/ATen/ops/hardshrink.h,sha256=XHfTNuyufBC5EU4UA0rNf2DAd3q8Yq3Zx2_07mk9yCI,1244 +torch/include/ATen/ops/hardshrink_backward.h,sha256=dMAFl0VtOPmvK2P9aKLFFkGgCjQfAoiRTT7Hox86KoI,1552 +torch/include/ATen/ops/hardshrink_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=DSfvNgURbTtZV4Go9rSooE8p0e2K-zKRsmlaRe_swiM,881 +torch/include/ATen/ops/hardshrink_backward_cpu_dispatch.h,sha256=TT5Phbe2GoIXPxQ8iXnC75n0m8tJzpI_-2O_LECecv4,1120 +torch/include/ATen/ops/hardshrink_backward_cuda_dispatch.h,sha256=l0dc0t4zieu0Kb-H_DWDSI2ylkydR046zlTcxEWUtZM,1122 +torch/include/ATen/ops/hardshrink_backward_meta.h,sha256=w_YoGmuyqwf-LpOHqgOjCKNbhMJV-YfvlA0K_XA134s,670 +torch/include/ATen/ops/hardshrink_backward_meta_dispatch.h,sha256=nVECIFKc310wCjOvbuNJDsc5qAzPneoiFWUiYyRE9Es,1122 +torch/include/ATen/ops/hardshrink_backward_native.h,sha256=IiJ2zvmQQK9sdMjblmlSPHFtjziLLgzzlqlqnmZ_SmE,720 +torch/include/ATen/ops/hardshrink_backward_ops.h,sha256=etp4rQGIvihzJmCKJ4y4HAa_fE_R9XHa986C8O_Bzsk,2045 +torch/include/ATen/ops/hardshrink_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ppiMfrw40um6MgUYp3QHjRKbwdisIFHpoviZDigEvWI,847 +torch/include/ATen/ops/hardshrink_cpu_dispatch.h,sha256=CuRtV1qyX0QZ1g1iMy7FZunxUzTfKt0_A3y5AunR_lY,1000 +torch/include/ATen/ops/hardshrink_cuda_dispatch.h,sha256=u3DZCdU557GFgjF3VVOgYPnlu5vW8AxC-slNotmhC-o,1002 +torch/include/ATen/ops/hardshrink_meta.h,sha256=fvM46_m6Amj37eVj-Go9CAt_OITqmFfixe4CxoNsX94,632 +torch/include/ATen/ops/hardshrink_meta_dispatch.h,sha256=BzSIaHEpwLwT1qoawyi1OgMKsFpU9y45XpRNBOCrpPY,1002 +torch/include/ATen/ops/hardshrink_native.h,sha256=9G_p8t1KUgjLr8dz5rp3ydeg4h1cCXXltN63fa-hG00,657 +torch/include/ATen/ops/hardshrink_ops.h,sha256=7ix1dERmQqo23Adr3rEFNCv8UftzlVXiwh28V-eg7XM,1767 +torch/include/ATen/ops/hardsigmoid.h,sha256=TcLlNab00IWPhkrNXYzB-nS2p7GvSrzVvBzAEV-1U_E,1255 +torch/include/ATen/ops/hardsigmoid_backward.h,sha256=eXY7jqgaii8XyI7VKfA4HuNtxq9j2rx-wc4jfeSZeU8,1448 +torch/include/ATen/ops/hardsigmoid_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=FzgASsN6eLbg-RiEMMNE__-SDjRJYQKDIcluF0r8zUk,859 +torch/include/ATen/ops/hardsigmoid_backward_cpu_dispatch.h,sha256=55a441ZZoaJUFMvtDkc1foxPnwGUhQVf43UVzvRgER4,1054 +torch/include/ATen/ops/hardsigmoid_backward_cuda_dispatch.h,sha256=t5wH76Vugsaheht8a-aZB2amdizZ1wawUxtTYQ0fRNA,1056 +torch/include/ATen/ops/hardsigmoid_backward_meta.h,sha256=It-_OvBEskDeGAphqtrQ5UBP01cB7HLq_D60ElJf1lc,648 +torch/include/ATen/ops/hardsigmoid_backward_meta_dispatch.h,sha256=iZ3m_Zmq4FgNIeGrGUyccGl67OUWggasTqUytj2cpx4,1056 +torch/include/ATen/ops/hardsigmoid_backward_native.h,sha256=bwhch2g2u93zKIF9TMFmqVltvfQSei9XIXQfzKVTqaw,700 +torch/include/ATen/ops/hardsigmoid_backward_ops.h,sha256=5qPXWe1_75sBOL2Iuyb2QAzrNHbmSeP5oR1y_x8uF34,1897 +torch/include/ATen/ops/hardsigmoid_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Srfp8scdHFCdhoa5677IVr7mu7OXuDkHmR_kFkwQ2OA,875 +torch/include/ATen/ops/hardsigmoid_cpu_dispatch.h,sha256=rV1504Sea9n9gJczpcNWMcFEgjSo07OqN5QtnjKj1lY,974 +torch/include/ATen/ops/hardsigmoid_cuda_dispatch.h,sha256=jLr7zbrdcOBAsRTiPx_QK3OTn9rZcVxheo9FI0SNtyM,976 +torch/include/ATen/ops/hardsigmoid_meta.h,sha256=CddWi8nJNlPiOmk4uCNd0AJTLZeyDihB-ZtEFmJj4R4,607 +torch/include/ATen/ops/hardsigmoid_meta_dispatch.h,sha256=P_PDJ2pcZId03_kDD6YDi_YkD80EU-KULtQ4C9xt3co,976 +torch/include/ATen/ops/hardsigmoid_native.h,sha256=9zAuj79u6VZCXFjd3bB3QmeKrq6ngOrGN7G-g7xNyro,806 +torch/include/ATen/ops/hardsigmoid_ops.h,sha256=B2KbBWZ2LSLt13qniuqQ3ig7BrzzvfR4S_OlD5rSs7s,2118 +torch/include/ATen/ops/hardswish.h,sha256=uaqfqlk-2oghZL-qoSa1z4PjZL24wsWqdfhz9o_FVi8,1229 +torch/include/ATen/ops/hardswish_backward.h,sha256=oY9WUMCNWIbCEbZ1PHBJLjmr6ndtyIaIj29UaZbRalY,1358 +torch/include/ATen/ops/hardswish_backward_compositeexplicitautograd_dispatch.h,sha256=YBbNDNFJJMzPrQ3kzCLguqCeJfEn_6bDlnre93_1p_g,979 +torch/include/ATen/ops/hardswish_backward_cpu_dispatch.h,sha256=a6EO1eXUkK4NveImLd91Eh2QMrUk6jXyVs20Szq6RXA,787 +torch/include/ATen/ops/hardswish_backward_cuda_dispatch.h,sha256=uxe81h0kRhvTRxFyV_FGQ6CwfgX1d2GbeBNHhHJbpjc,789 +torch/include/ATen/ops/hardswish_backward_native.h,sha256=SfNNsY9quIw56hvKOtUzyYDgcppKSwVS2C8UFwDrrm8,664 +torch/include/ATen/ops/hardswish_backward_ops.h,sha256=Fq7ELe8VIkJqh9qLmC6wL43OCOfLLWkisjrKG8Iu6pQ,1843 +torch/include/ATen/ops/hardswish_cpu_dispatch.h,sha256=-RuVmpD8qcWtdy4fuMCmSP1XJvpGx1MN9yj_EFP2HC0,966 +torch/include/ATen/ops/hardswish_cuda_dispatch.h,sha256=lj78B9IR2taT7KRpXu-G2IFMN-3b1pVZ4RL73iEY7Ww,968 +torch/include/ATen/ops/hardswish_meta_dispatch.h,sha256=vCKVzIHBDgeJ8c4qOvBbvsFqPx08bUm8Pur-7Mr3CiM,745 +torch/include/ATen/ops/hardswish_native.h,sha256=35tiHi8NDeMxDwRyjsfXbhH8NuSGp77L2qgg2JI1dKc,637 +torch/include/ATen/ops/hardswish_ops.h,sha256=-PHLy1nrWA_ecw-IxUYEh1aKikHIvPrLnCp6KgsWMiE,2100 +torch/include/ATen/ops/hardtanh.h,sha256=oUEYSins3l_-IzUGZWvEYjQMnXBi1122OM0hnjHI654,1675 +torch/include/ATen/ops/hardtanh_backward.h,sha256=1wq5VVPZwNRjSvyLeAD1j0DYy0Ya-pibUu-X06CwZoI,1736 +torch/include/ATen/ops/hardtanh_backward_cpu_dispatch.h,sha256=pxDY8M14gyrMXFoGv8NvTnWBylP4_4cyMPsiwQ03W8w,1213 +torch/include/ATen/ops/hardtanh_backward_cuda_dispatch.h,sha256=WYNmpwXbj1pzw7YRqR33PSEBc1hOhJNy9ZAizDEXVUM,1215 +torch/include/ATen/ops/hardtanh_backward_native.h,sha256=sUEZUA53CgZyJavGKCYKhIn0IfUeSK5OlcE5zlX9ZPo,781 +torch/include/ATen/ops/hardtanh_backward_ops.h,sha256=hFjdZXM8wgimKmhCx8b7ZBfRvh5Z7FIjIrtcNg1C4EE,2247 +torch/include/ATen/ops/hardtanh_cpu_dispatch.h,sha256=W0Mk2X1984cMzfClzFh0BdA8u4GdG0a3Z3HJoTiZNPQ,1201 +torch/include/ATen/ops/hardtanh_cuda_dispatch.h,sha256=9gSZbr1m1wq_C8llrqZky-mroBVSqcjfpnI7V1GVC_M,1203 +torch/include/ATen/ops/hardtanh_meta_dispatch.h,sha256=_yVg8Vb6NQ3L513GbhWXKydJVpvtpEoXmfxEiXwJKg8,805 +torch/include/ATen/ops/hardtanh_native.h,sha256=H5wqJeiug4koyrwhDB-NMwOoMWgtwlYA3mzAXC2Zl9I,1224 +torch/include/ATen/ops/hardtanh_ops.h,sha256=nVvsEtohI5-0_7LpXCXiPMYJJocVT48ExFV5A1iJzcs,2658 +torch/include/ATen/ops/heaviside.h,sha256=tStUPiJGq5iMYxZ2HQDF1podHXXK0MjNKuTkZc1tcPQ,1223 +torch/include/ATen/ops/heaviside_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ffcLkx0EQ1pg-xZrdIoKdnN_gtqo0rtBySdFJ8qBq3k,925 +torch/include/ATen/ops/heaviside_cpu_dispatch.h,sha256=GwDhKCf6-TKGk6PC82mZmyS73EYPGADDoJg4TpLZFNU,1074 +torch/include/ATen/ops/heaviside_cuda_dispatch.h,sha256=4e96-T_08QVWqyoRVsMvG-IeRDtVHad-30I8K5TBEZw,1076 +torch/include/ATen/ops/heaviside_meta.h,sha256=TvJy5kq2cVN9pZ9BUKfLyiOzCnz-yO8cExTkQxIaO_8,632 +torch/include/ATen/ops/heaviside_meta_dispatch.h,sha256=kMdeEtH57XT7xMnV0C18-xnZ0hqtW71Bb0aQAKSROJ0,1076 +torch/include/ATen/ops/heaviside_native.h,sha256=NpMEJDpNvzGox4egsXUu97Ni0IkXqgy4ILXPCvq5s_w,655 +torch/include/ATen/ops/heaviside_ops.h,sha256=wDSICXevFycRVTCtDcW6oAxiPD-SGE0F8nY4qUagRVE,2367 +torch/include/ATen/ops/hinge_embedding_loss.h,sha256=skBiDcDAUhEDG_r9r8WRlaOWYgg4N99D5luYna4n5tc,865 +torch/include/ATen/ops/hinge_embedding_loss_compositeimplicitautograd_dispatch.h,sha256=agNle1fnmgUwjzFAs7WzG-T_0g-aIznJglvL3H9o89k,886 +torch/include/ATen/ops/hinge_embedding_loss_native.h,sha256=eJTzshZ3HtFplNePUGKgs3tzqiQOZ5Z4knGtSTZD8lk,596 +torch/include/ATen/ops/hinge_embedding_loss_ops.h,sha256=J9xmUqYlzIACjELryXFeQ92RTNsLnZSstHQ7v_Sntlw,1216 +torch/include/ATen/ops/histc.h,sha256=2zOKGamAZScYuSp4JjjW-78uCupGHMXOwINrDWnkt3U,1409 +torch/include/ATen/ops/histc_cpu_dispatch.h,sha256=2cZA18gg8jb07USKHY9Uq8kqhPrMQDlcBenmot09hHc,1101 +torch/include/ATen/ops/histc_cuda_dispatch.h,sha256=1iASw3tSWy1gEunCA2lPTrxihLgYyjaB0Mj6iUIhmrM,1103 +torch/include/ATen/ops/histc_native.h,sha256=oSd5lQqCrSxwF-yMFcAqlA1lAItvTFquMisZFjLQVLo,1002 +torch/include/ATen/ops/histc_ops.h,sha256=Y3vpyYi0VEFylNf5-OG-rTlujTMKZxzFIGH5KLuazPs,1987 +torch/include/ATen/ops/histogram.h,sha256=t3pizSL1XKvuiw--x3DhMhCiaqKS-yrR8yG8uj8idlE,3546 +torch/include/ATen/ops/histogram_cpu_dispatch.h,sha256=EyXXtqtXXiLrChH9atpaNN9XegUc3519lu3h8wJRxBE,2066 +torch/include/ATen/ops/histogram_native.h,sha256=ego-9UyGampskzONPcS73XvyTmjPCh-Bgtlo87VQeRw,1313 +torch/include/ATen/ops/histogram_ops.h,sha256=9iteCTgxBG4VTwH1739dhnAayNBhAYMl0FAYu-JaFnQ,4791 +torch/include/ATen/ops/histogramdd.h,sha256=3RXjPwhBJNgJG3W7Oecy2ZwSEyI-pMAU7N4LFdE_c5U,1976 +torch/include/ATen/ops/histogramdd_compositeimplicitautograd_dispatch.h,sha256=neenWuCY0QNwJ0w_3p_9xDaUB8Z7NgPaISL2-eWMrIk,1470 +torch/include/ATen/ops/histogramdd_native.h,sha256=cDbcGb1OFe2HaJhK_-K6Uxebe_qIgSNdaszwLloUecI,1180 +torch/include/ATen/ops/histogramdd_ops.h,sha256=lyPv4jQ-KYCG80zLL8XPHc_fwcRuYI6e89pcv5dPs8k,3786 +torch/include/ATen/ops/hsplit.h,sha256=2EwQ8N-M3gx49du8x4GT-pseQ7jKCIxR9YmUTB49lqw,951 +torch/include/ATen/ops/hsplit_compositeimplicitautograd_dispatch.h,sha256=oZSSWZKuLwrASSeEZbOpxi6KgnYIX5k4C9Z52ChcXC4,915 +torch/include/ATen/ops/hsplit_native.h,sha256=HL6pJaREzQpTePbSUXoUSLXGfjeVNiQW7Kr9A6xFOr8,625 +torch/include/ATen/ops/hsplit_ops.h,sha256=SV46IzKLSq6CCZ4uywx_Q2VgbdnwfT1xjMVBpyPJ_w0,1758 +torch/include/ATen/ops/hspmm.h,sha256=G7J0QJ33wV_KScM4T_v59TLiiSa6leSoBLkLvC6FMYA,1165 +torch/include/ATen/ops/hspmm_native.h,sha256=Qqq5KYgWNPI5I_eMQFnOntdzsHVT_gVlU5bwS8KDfrY,852 +torch/include/ATen/ops/hspmm_ops.h,sha256=fKstKbMRKT4l10B83cUcJMAHk6F3V4Lb2oxbqqP1gdY,1723 +torch/include/ATen/ops/hstack.h,sha256=EsRhCS4pPoXUcVZgLbXKgqeu-3PnuUF8AcoUWXywF5Y,1064 +torch/include/ATen/ops/hstack_compositeimplicitautograd_dispatch.h,sha256=qSvFN-1m3i869NssaHyqfGUBaTy_5EGL_9aXfwPt1L4,943 +torch/include/ATen/ops/hstack_native.h,sha256=XIPnHW27VGKdF3KjRwy5N2Gism6GANDoDNI6oKzJrNc,574 +torch/include/ATen/ops/hstack_ops.h,sha256=KbVylCw0kunVzmas4i6yS3io2PKWzlpL-1a5_0TVCeM,1561 +torch/include/ATen/ops/huber_loss.h,sha256=WWnRyLbqRVKuTspCDDHiOkXZYpgfjQbccKw_nI-GyL4,1545 +torch/include/ATen/ops/huber_loss_backward.h,sha256=DXoZFlElZEH1yciZMDoOfHNPOzgdroLJgDa4MM--9Cw,1797 +torch/include/ATen/ops/huber_loss_backward_compositeexplicitautograd_dispatch.h,sha256=KZrJFso0Aj7ORNXKvRiMMUZ9IFFw37yDAI39LrGEBgA,892 +torch/include/ATen/ops/huber_loss_backward_cpu_dispatch.h,sha256=1FeHpsJ5inbeIQm23syCWpDCUDX8mTBQLiJgLxokQW8,1071 +torch/include/ATen/ops/huber_loss_backward_cuda_dispatch.h,sha256=7R0oAumeJHEie9P6wgPwcMOQsBHDBQQQY6ghPQNY5q4,1073 +torch/include/ATen/ops/huber_loss_backward_native.h,sha256=1EshJnvvrcAPqC5tuIMyrVIxRflFHKeSIPZKt6XP-Gg,793 +torch/include/ATen/ops/huber_loss_backward_ops.h,sha256=UPfxVGOJgyst4_eDkeicSkAyNINJk3ezuUx9ReeZMGM,2270 +torch/include/ATen/ops/huber_loss_cpu_dispatch.h,sha256=JAdOXOxXF8WPuLYkqwkUBvGfKgiudAn4zazFwF39pe8,1142 +torch/include/ATen/ops/huber_loss_cuda_dispatch.h,sha256=bbIO69bT6cu_kLWrEdjmS2YdXpGROOTaITX9DaNjyJE,1144 +torch/include/ATen/ops/huber_loss_native.h,sha256=gODrsFtQ8ENp5yk7pSsLDXPWhTvk3tvORaPJ3bZQ2RU,728 +torch/include/ATen/ops/huber_loss_ops.h,sha256=aHIBXinrDtXo6lwckjrG7ThJzfLkGZB3E1wjUmQTTFI,2005 +torch/include/ATen/ops/hypot.h,sha256=BIeZzyNAicZJQtbgs5S80DdkGv8evc9dqB1ggGev90A,1174 +torch/include/ATen/ops/hypot_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ImEKpZuQpVoU7VvCs0hurrZaakFMeCuUwqVtAmfNnfs,915 +torch/include/ATen/ops/hypot_cpu_dispatch.h,sha256=BuiiXcEnAC4pWxe7vENddsI2aO_rzqb_0Vc153g-rFw,1054 +torch/include/ATen/ops/hypot_cuda_dispatch.h,sha256=KT78XiNkPT3uCLzW7tqeT6Lkl_7n6kKF91VQ-uK5gVE,1056 +torch/include/ATen/ops/hypot_meta.h,sha256=oQtv3TaGE5blJi2cR5_DC1YiO_ye4Bl5jjjdmYj0p54,627 +torch/include/ATen/ops/hypot_meta_dispatch.h,sha256=xUWGOTGtli5apfCgFyQKxxC6HmwEZgrXkvaQEroL2xE,1056 +torch/include/ATen/ops/hypot_native.h,sha256=cdEqSu4vGxcmeNMZAxAMlpkK2KgxGPb3X1LDNo1QLNU,642 +torch/include/ATen/ops/hypot_ops.h,sha256=tNqXMDROvYpkd5ZuKfQw5rhFVAFXfaqbj8369HCeysU,2322 +torch/include/ATen/ops/i0.h,sha256=BazR6NtSlpFMHZmWPcLXpPOn0cM95bz3wo18N2hdioU,1138 +torch/include/ATen/ops/i0_compositeexplicitautogradnonfunctional_dispatch.h,sha256=nJmSu1dFd7mmJIimRaMgg3pkd2jTn7on2qhAeJP9zPw,857 +torch/include/ATen/ops/i0_cpu_dispatch.h,sha256=kPYD60G30UEDrOBW6zfEgChn4ykcTsmxFMdkX5cfSUA,938 +torch/include/ATen/ops/i0_cuda_dispatch.h,sha256=60zO0yYcSmghHrvH3AH00J-GL2Xc_Q3bby0oE7_N8FQ,940 +torch/include/ATen/ops/i0_meta.h,sha256=Egjii-CR6hfBp5K-Jkxp168ZXpD0KHp7UF5u5ohDKsc,598 +torch/include/ATen/ops/i0_meta_dispatch.h,sha256=8XtZuuqF3bPS5MpRq_Kf1SpqGBTYRDoEBUtxiUwoV1w,940 +torch/include/ATen/ops/i0_native.h,sha256=CcQAbXQgWxrmIM_jV2WIfWynPhKDj9fENFzsu6_vSNo,607 +torch/include/ATen/ops/i0_ops.h,sha256=RgVlmo_cPdyx72Sh41xWoCE9rHiZHEYHxo92Pk_GYzw,2037 +torch/include/ATen/ops/igamma.h,sha256=pRVY27wosx0Znq009Fh77zq4gRrKXoeHIZx0AfITvfc,1184 +torch/include/ATen/ops/igamma_compositeexplicitautogradnonfunctional_dispatch.h,sha256=blictQrEgYJY2l68yB3O2IsDpEQL-jv8smGy4DR1BWw,917 +torch/include/ATen/ops/igamma_cpu_dispatch.h,sha256=3prEsXehK_I-EhXyfINYDkbgrSrDElv_Lqkk0A6L4ZQ,1058 +torch/include/ATen/ops/igamma_cuda_dispatch.h,sha256=Fa1GZ_hJyyWnaMQM0eYoufjcwaxBO1aHBYHW-Mn5wEo,1060 +torch/include/ATen/ops/igamma_meta.h,sha256=mydjX-4cl5NstLkt_8cGQ8hW2YRrdXw3ovlLcjqAg_Q,628 +torch/include/ATen/ops/igamma_meta_dispatch.h,sha256=3peisq9YwTqk1u2F1FZeQ6CHWO4c2cSkCrhFxxLUsz0,1060 +torch/include/ATen/ops/igamma_native.h,sha256=tM_jX_9uCvBmA0VZ__rXJZ5trvA_fOCm4qNbiYpKSBM,645 +torch/include/ATen/ops/igamma_ops.h,sha256=NwMzKA-y0R7OpMCREiKR0CRS_CVV3dc9J8FIpIZAPV0,2331 +torch/include/ATen/ops/igammac.h,sha256=hWWW8TG7Ch1ao1zxd3x8Gb1dl8sFcRYzlkbrATx2q-E,1194 +torch/include/ATen/ops/igammac_compositeexplicitautogradnonfunctional_dispatch.h,sha256=yPvQMwlUk3N1KH1LsrU1ufGGFlYyn6EdLox1wuD05ZA,919 +torch/include/ATen/ops/igammac_cpu_dispatch.h,sha256=mpFiOt45ohKUw3VWZ4ld2Rhvn3yRR79-4Aewcb-i71s,1062 +torch/include/ATen/ops/igammac_cuda_dispatch.h,sha256=k1J3zoJuazqDWzvDeJRrvIwTrJkQo0TQ2qCbm4NQCBQ,1064 +torch/include/ATen/ops/igammac_meta.h,sha256=SXGCXKUDeSJVC0kr9LWyUqFhs2h55XqYMV6QSJmo06w,629 +torch/include/ATen/ops/igammac_meta_dispatch.h,sha256=ALu7tgpPFY_WCEz0fJcDRUkUotz3xY91tDXkakrBtTw,1064 +torch/include/ATen/ops/igammac_native.h,sha256=yu9E0d_JfeZ4h0sAU1_vGElgdBh3_K6ZbZwnbA-ZQTk,648 +torch/include/ATen/ops/igammac_ops.h,sha256=d3uTV6ck5-QzM4UQ25C-BW20Rw3GZj90uVh5f5Ax3kw,2340 +torch/include/ATen/ops/im2col.h,sha256=OxPbwDKP5sB_Z1_FqZvt0t6g1KcHBos54wTqtrCX_5k,1679 +torch/include/ATen/ops/im2col_cpu_dispatch.h,sha256=WGWf3jSbWoIzqPa6U2RZxKnaBqccqliKatc1BaoHIZw,1214 +torch/include/ATen/ops/im2col_cuda_dispatch.h,sha256=zaifIoRLTE9-aoRjDbaKwvWy9E-Tjw5SYFm9tTJAcyM,1216 +torch/include/ATen/ops/im2col_native.h,sha256=F9lFQdw9AZmcZUnNRzr0GUm7C86HrmN77RJ1WLzvV8k,1144 +torch/include/ATen/ops/im2col_ops.h,sha256=waSdmqhYrMaI-tV6OZA5zI8qd5dH9qjfzatwGwV-dvk,2251 +torch/include/ATen/ops/imag.h,sha256=3Z5BBXrHMcH0ba-hQuoGUVDDAPVIG-s5qBERuuT1lgU,642 +torch/include/ATen/ops/imag_compositeimplicitautograd_dispatch.h,sha256=oeKDm1PHOSuVHdBlWkS4FjnnzcZnnLeHyYsS_Rsh7gM,785 +torch/include/ATen/ops/imag_native.h,sha256=E3B4KyUsquLsYeJSH-KBD5H1E7ypyXTbbU0fhV7tOHw,495 +torch/include/ATen/ops/imag_ops.h,sha256=iBcqfEmbZYUurd_3aAmnR1JuZUO_AZWEOR50WbbYdbQ,962 +torch/include/ATen/ops/index.h,sha256=ebprHdSHcbMLVWcFEQvP-3MIcCwoiTwJGGMpEDifjgw,1327 +torch/include/ATen/ops/index_add.h,sha256=Wt4po0KqCuuOEB5CigriJKQnDlMo3VHWntPpcV4ZkYY,1950 +torch/include/ATen/ops/index_add_compositeexplicitautogradnonfunctional_dispatch.h,sha256=-DDi3l7afTs4cs86AMCZhDmQFnm5wCIeZ3fEndCb74Q,1059 +torch/include/ATen/ops/index_add_compositeimplicitautograd_dispatch.h,sha256=vTKHKuoycVfKBCT6adnbo86D37ZA4Kl5Hq1MTw-6IyQ,888 +torch/include/ATen/ops/index_add_cpu_dispatch.h,sha256=fHwUqAQb7SbL5UEPg4YdMNRHKoYRgoIilydUmAoiNnE,1340 +torch/include/ATen/ops/index_add_cuda_dispatch.h,sha256=m3rp7URb41pvtNq9wAblMNx6AMb22_jlZG6xCZ1YMp4,1342 +torch/include/ATen/ops/index_add_meta.h,sha256=fYjHlLDEgnRFf-lHT_gTmD7SkUG3tW9MAECBu3rL34Q,1183 +torch/include/ATen/ops/index_add_meta_dispatch.h,sha256=NxZ8hsr27GYYSZ9ENFK8jZT258I2losVrXzMPEN7izs,1342 +torch/include/ATen/ops/index_add_native.h,sha256=ewVqaOHxle8oO5d-g7ovqIEJrc241FJ-P4T84wYvG5g,1127 +torch/include/ATen/ops/index_add_ops.h,sha256=dK2y3T-emESTSPOSTpudMJLRZANn52xeeEC8pZrv9jQ,3896 +torch/include/ATen/ops/index_compositeexplicitautogradnonfunctional_dispatch.h,sha256=hKY-OjEImjWXZ9ohTbQlcDDXwMh3Cb2l0WF0urS5edQ,868 +torch/include/ATen/ops/index_copy.h,sha256=IT3ivuNsEGPaPvp8B6Lg7BFFpVWvYOoOklW-MaQRjPI,1755 +torch/include/ATen/ops/index_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=-K5w2RPLPCr-Ir6xzS3F0DZyLtg_KOTRi50CbifyVeY,1005 +torch/include/ATen/ops/index_copy_compositeimplicitautograd_dispatch.h,sha256=BKg9qkoKe871tOp9YnObLl-GGN6rO1aaD-GQNvxyOxw,987 +torch/include/ATen/ops/index_copy_cpu_dispatch.h,sha256=HuhTOpm7tndQLHowfJaQcZ5nXipPbKmKsMR0rAqvNgY,1234 +torch/include/ATen/ops/index_copy_cuda_dispatch.h,sha256=PV30xZek9NeXlAvwinAZJtqX94YVWftc7XA3ELnfifY,1236 +torch/include/ATen/ops/index_copy_meta.h,sha256=hVddBqL9gPm6bfH4BjOP3FRM-1vt8hD5QvFndA3I2Hg,1158 +torch/include/ATen/ops/index_copy_meta_dispatch.h,sha256=S56Pu1KvCEyVQGBdgP87OpPnt58ifvZBAPU1sVP7-K8,1236 +torch/include/ATen/ops/index_copy_native.h,sha256=XRkOxXzXLpQSvJ4caJrLCnKhj-tMK_Fc_9LpbgLemwU,952 +torch/include/ATen/ops/index_copy_ops.h,sha256=DKGCeBAW2k6Si-71c2CYbhZECr2uy0Pm7k8CI9TL0jE,4327 +torch/include/ATen/ops/index_cpu_dispatch.h,sha256=nFrd6OnHRxlE0JKFzntjN6aOnzpGabQbTXKrXOasfRo,1067 +torch/include/ATen/ops/index_cuda_dispatch.h,sha256=lBT0b23OgMe7Q8MbNAHlkfphk-S8B3yr3iPBcecNqfU,1069 +torch/include/ATen/ops/index_fill.h,sha256=_-mvabGQeVMDd1cG2KHIHpQQ5YKoU65XEHFmfDde864,3138 +torch/include/ATen/ops/index_fill_compositeexplicitautograd_dispatch.h,sha256=oJF6Uufn0Unps-eI0qnfIVcb0lLMPGo0wo0KDwikng4,1574 +torch/include/ATen/ops/index_fill_compositeimplicitautograd_dispatch.h,sha256=7VA3VD9kOhiY41gLMCpBrmv1oLzimFTuEVYNCITzOXQ,1238 +torch/include/ATen/ops/index_fill_cpu_dispatch.h,sha256=ycHSpTKzFTtmi5eE5rXHZNj9hPZbGOp__ygtfmtC9PE,930 +torch/include/ATen/ops/index_fill_cuda_dispatch.h,sha256=zZhLeI99vBu8UTEgNwkw65cVTTyw7lKdD6biHWgzQXE,932 +torch/include/ATen/ops/index_fill_meta_dispatch.h,sha256=G2AW_fXMC1tx0XsmB0WStJedCDoIXP_YXxhuCmqBpjQ,932 +torch/include/ATen/ops/index_fill_native.h,sha256=ZTprWxlt41-edoazT5h8P58TthmpDAXoTYeTR3hiqJ0,1756 +torch/include/ATen/ops/index_fill_ops.h,sha256=zEddBJ51c8gmPm5gC8VEyUcCwWvCHvxPcpXci2eNsjI,8451 +torch/include/ATen/ops/index_meta.h,sha256=hOC6qF6HVqMmeDECYBAbdYOIBV3pSF7wn8vrN_oSQSE,1576 +torch/include/ATen/ops/index_meta_dispatch.h,sha256=rJ3a_sMVgNWfmrRxJh9jq0uAhOJK-kIscr2-dP2zDw0,1069 +torch/include/ATen/ops/index_native.h,sha256=vnnKWlAAhdEVDuPeOBQO1SASZayv7VWk7U3hRoDM4UU,787 +torch/include/ATen/ops/index_ops.h,sha256=L72iIYmuLd7afYh48r3czJ9ox13_RBXQ8LBvp2Ste4M,1956 +torch/include/ATen/ops/index_put.h,sha256=jZuiRDPleBbfBx2sHFJbM3VK4DhieAFrlLxcy8QxrJg,1991 +torch/include/ATen/ops/index_put_compositeexplicitautograd_dispatch.h,sha256=OZKf3IY0Y-EqhJq81da3g7VgoFkMkougaA8qxt6sCuA,1428 +torch/include/ATen/ops/index_put_native.h,sha256=4Z0UQDX_yyj16dkX70hw_rJxIBLM46mVXVvFa7S2GqA,949 +torch/include/ATen/ops/index_put_ops.h,sha256=o5S4HqcDfbXA3AwjI55tL_eAS6s63VkjWOcT-W-5JLg,3093 +torch/include/ATen/ops/index_reduce.h,sha256=1tBYOruU5DxIewzrugKkzMlfNXEiHO3NaQF_7DP90Ds,1794 +torch/include/ATen/ops/index_reduce_compositeexplicitautogradnonfunctional_dispatch.h,sha256=aRUyQZaIwLmFbGH6J0UNqwVj7jxnO-Nvl-AiQ5qpQZY,1107 +torch/include/ATen/ops/index_reduce_cpu_dispatch.h,sha256=Bdw8N7MaqlGH_5Gu61XR8Ll5luitxVzGfsiQX2cRq3s,1433 +torch/include/ATen/ops/index_reduce_cuda_dispatch.h,sha256=NUxOrIMQLlcqEysIERuHq12OCPPFDwhcekbFmrnFYW4,1435 +torch/include/ATen/ops/index_reduce_meta.h,sha256=R6UgYWrMttYyYIv_O9o-b6oIg4-rBpPObipQlbsKa6g,1204 +torch/include/ATen/ops/index_reduce_meta_dispatch.h,sha256=lnbG__ivHVCRN8yOATqc6qWY7M908HD_-Bt3FuOrSYU,1435 +torch/include/ATen/ops/index_reduce_native.h,sha256=F3hwZhKH70QhvKQ3yjmk2QV0qheaiSIAnzkEHV_MUPQ,1022 +torch/include/ATen/ops/index_reduce_ops.h,sha256=tpxnBfm_RRLlTARNLATVea9TcrP4Ht5qom6yX_cgK0w,3234 +torch/include/ATen/ops/index_select.h,sha256=a-T8qV-o2KxJg4DmV4ZeMxB3d1GS28ffK0e5zBGv5AI,2212 +torch/include/ATen/ops/index_select_backward.h,sha256=seDLaJ8I_65tghTjg2uaN8kVWzTjx4tRHxyjUGLohOI,1872 +torch/include/ATen/ops/index_select_backward_compositeimplicitautograd_dispatch.h,sha256=X2aW_PO8IXcs8bP-qiDKKrRmMGmotQE_R5QDzN3cb2U,1017 +torch/include/ATen/ops/index_select_backward_native.h,sha256=iOld3Wan-bq1jmw-ijDi45SvYPuDiOqiqBvB44d-nhw,590 +torch/include/ATen/ops/index_select_backward_ops.h,sha256=ajZ-BHPapQ5jlnGzI5S3QSlddG8WjjQfsGJO_TiKfKA,1243 +torch/include/ATen/ops/index_select_compositeimplicitautograd_dispatch.h,sha256=pEKqmFPTAdPKA9xWKtdCuOUBUftSRDvDnE_oC21NHQ4,1093 +torch/include/ATen/ops/index_select_cpu_dispatch.h,sha256=kMWS3kuFjYUHLnQA92e_5jWN-bXMOrE-yd5yX-DGoEU,1037 +torch/include/ATen/ops/index_select_cuda_dispatch.h,sha256=eVr5d1UnMfQyFyyeLLbdZ9zl8BI_odKDKvnYT_zWU9g,1039 +torch/include/ATen/ops/index_select_native.h,sha256=fwLUav3pF8cQUE-GVIYgFot__rJuj2FAFsu5RhnpcEs,1595 +torch/include/ATen/ops/index_select_ops.h,sha256=vKunwKjubKb188w7w7-RE_hd3eKmCaJ9jZRkZtbr_TI,3346 +torch/include/ATen/ops/indices.h,sha256=ZLUvzSAmCy-MWswpmA7Nzq47g6WTL5zljlEXdk2aqQ8,507 +torch/include/ATen/ops/indices_compositeexplicitautograd_dispatch.h,sha256=yyjvm24Lk1DpHyIhQ9S1zEFgGgpeCFWYF0U9GFNnCDM,788 +torch/include/ATen/ops/indices_copy.h,sha256=SeXb2KnCq-9E7JSCCvbXVljVpjDTekkMwlCYc-NadIw,1103 +torch/include/ATen/ops/indices_copy_compositeexplicitautograd_dispatch.h,sha256=MYM3k4HTy0ZNyKI6krEhghiaQAwbOjmA_B8ywlA_6Os,903 +torch/include/ATen/ops/indices_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=JoSTyAUblo1T5brcglprg2o04pqtqsg6wsgkCdAZt4w,819 +torch/include/ATen/ops/indices_copy_native.h,sha256=BFz_ZlYXaJ2XEvxaa5dpzokNEGBcvvq4GzfCkGF17O4,588 +torch/include/ATen/ops/indices_copy_ops.h,sha256=ZBc6jHPnBIrTFnFgYa3i5BEI5zmgbHHFr1s5lePehjg,1599 +torch/include/ATen/ops/indices_native.h,sha256=Av2H5KnqIE9odH6POMxOKf0QMg1Rrxsf4Oqcbo0v_08,569 +torch/include/ATen/ops/indices_ops.h,sha256=LEg85WpmpyU4xX7_lkShPKG9ICW7tmmVlQHsTU1OMkM,971 +torch/include/ATen/ops/infinitely_differentiable_gelu_backward.h,sha256=9oA9r7Ntf44VcoWwrDCm71NX87Manlb1dSLKQF2g9wE,820 +torch/include/ATen/ops/infinitely_differentiable_gelu_backward_compositeimplicitautograd_dispatch.h,sha256=5vjj1huJjb2eA4KFKVD8U7C1nqOxUOOwQzdxhYpl2nw,845 +torch/include/ATen/ops/infinitely_differentiable_gelu_backward_native.h,sha256=Nyrhv5F6ZKZdY3KyyInqLWYjsdRLwrYJdzNDUHa7HrE,555 +torch/include/ATen/ops/infinitely_differentiable_gelu_backward_ops.h,sha256=nEfZoPq70Al7crrpRYkU02R32ifxi0fifHQR_yoBEKw,1144 +torch/include/ATen/ops/inner.h,sha256=oBn5fZlg_NqdpLwUki1K5w3LpJYdsKWp1RV50mgP67w,1174 +torch/include/ATen/ops/inner_compositeimplicitautograd_dispatch.h,sha256=0B-jJ2uHNiYA4kOhMxOEOkXQPZwK7vByqoSE3sqFKgo,1021 +torch/include/ATen/ops/inner_native.h,sha256=fCUqkIKiZfSNPB2t__5Ctph3z0_Xcz6ORAZqGezTCjs,626 +torch/include/ATen/ops/inner_ops.h,sha256=shdJWSZPqdd7lSeHTDDF6jbsBSuI9xh1udIVoKCyPBE,1729 +torch/include/ATen/ops/instance_norm.h,sha256=w5kfcZlTaEG-he2Rafq6v0qHwbUPwl6jhjmNFPDVUdE,1161 +torch/include/ATen/ops/instance_norm_compositeimplicitautograd_dispatch.h,sha256=Oy5ijMxPTsO_rOcxGMXBEnPLYEdOGddZwe3M8caUxok,1051 +torch/include/ATen/ops/instance_norm_native.h,sha256=hhLMx-bwETPcHbsOvoE5CbpFf-eWqATTXR-Ulafx2dg,761 +torch/include/ATen/ops/instance_norm_ops.h,sha256=GVRzwH-27LGeXRu--GixVbTSUlDR29FvfsuwP2beko0,1816 +torch/include/ATen/ops/int_repr.h,sha256=NVsu1_I4gJNn0u5HHIxSWz5mCR4K_MkaHlZ4E1wWpNY,1063 +torch/include/ATen/ops/int_repr_compositeexplicitautograd_dispatch.h,sha256=66wwGFQC4qnvTmrpJpaIE2iYOCc-ngJhlpKFuRAR-QY,895 +torch/include/ATen/ops/int_repr_native.h,sha256=eTmOd4A6C6d4PeClVUFNykzoj2CWZMrY9XJuO0DqFf4,666 +torch/include/ATen/ops/int_repr_ops.h,sha256=Eg7UoaZghvt0IE71DDBjkF2IUuIHVv9J9eEf08xOzrs,1575 +torch/include/ATen/ops/inverse.h,sha256=0pofUnqFE8nk5ybWVbS7LJoPb4Qi4jISHZM_Cj01Wco,1053 +torch/include/ATen/ops/inverse_compositeimplicitautograd_dispatch.h,sha256=D4JXeREsciBavXqHNcGOGnhc6x5WILWh24_pukTXpI8,949 +torch/include/ATen/ops/inverse_native.h,sha256=qGTrrZjHgpy1utKmTbq2o6IqE5YPAq-2MmGcjMJuRxI,578 +torch/include/ATen/ops/inverse_ops.h,sha256=-AYk5Q793Dh2c5ISQgiqi3N1dodTO6sk3Y5pVOHON0A,1569 +torch/include/ATen/ops/is_coalesced.h,sha256=oQEAfvWdn7UzG2uUaup9XHpBEnxlV0qK23bzR53SXQk,512 +torch/include/ATen/ops/is_coalesced_compositeexplicitautograd_dispatch.h,sha256=AUTixpEYNI1FEJVNh4dVjfWdIsZtc7vWyDXOdA2RQ-4,787 +torch/include/ATen/ops/is_coalesced_native.h,sha256=wR9us3mfu-HJe3RvTBbKN6X23qFeTRMo66YrA3zA_-g,567 +torch/include/ATen/ops/is_coalesced_ops.h,sha256=mVzrcFNMWGNrewRP1rlaYLlZo17t3491pS8i6yJkbE8,960 +torch/include/ATen/ops/is_complex.h,sha256=zecG3OHP8lIlG4y3RyAJJ4M-5KaNkMTo0axqC68G0Gw,663 +torch/include/ATen/ops/is_complex_compositeimplicitautograd_dispatch.h,sha256=h95xAY2QAfv_xxkIp-lxxTpcxS2XpSXnzepeDDV6mqI,785 +torch/include/ATen/ops/is_complex_native.h,sha256=DkDC-jwwvKOkLb6287gEohkio2vtaqL6bNWQ1IBjZNc,495 +torch/include/ATen/ops/is_complex_ops.h,sha256=07n2eOrh3mti4d9pg8w1xMBNhmbEj34bPLOMnzMe9CU,954 +torch/include/ATen/ops/is_conj.h,sha256=4SEgDZclbBbzw9cE45S3wsKpGLvEwUHi2Aa5r4F8MLk,651 +torch/include/ATen/ops/is_conj_compositeimplicitautograd_dispatch.h,sha256=MaeV7CQJq98HKiLxpdtpxbGicGz8wHq0GBxQqJgzLkc,782 +torch/include/ATen/ops/is_conj_native.h,sha256=L7Qg4DvAUBasbW-PlhSO2_yAL6lbhYsaFTcwZRBVBaE,492 +torch/include/ATen/ops/is_conj_ops.h,sha256=_21gDCJSmkYkWCrhhdBCkcLzvRtxRh87KTMNsQzv6dU,945 +torch/include/ATen/ops/is_distributed.h,sha256=fbdAaSgaZBismiSgYsTSyi5Ux0N2JUzarGJjsNYT9WM,668 +torch/include/ATen/ops/is_distributed_compositeimplicitautograd_dispatch.h,sha256=nN2r1wNg6KT8E2SNn8bQz2MHwJSY4v6RjtJkqJzTtjU,789 +torch/include/ATen/ops/is_distributed_native.h,sha256=mpfX0PI6EBdC5h1gret2-_5eHd15ZcwoVrXM26iuT8c,499 +torch/include/ATen/ops/is_distributed_ops.h,sha256=TPALTK2sAeN935mbqKKvCmfMpKJPVFZ3Nl28jvQXWno,966 +torch/include/ATen/ops/is_floating_point.h,sha256=iFh8e7NvxojxtmupkVNmPkNcsc_sUS2PXR3wA-aO0Zk,691 +torch/include/ATen/ops/is_floating_point_compositeimplicitautograd_dispatch.h,sha256=XUXBogNWTpVJCuECya8qGxThsnZ9AA5ts_KQNAWMsUw,792 +torch/include/ATen/ops/is_floating_point_native.h,sha256=9WUYXdG1uqBfOZOopEGwSMHEQkqL-3WJdqr1lniGyI8,502 +torch/include/ATen/ops/is_floating_point_ops.h,sha256=EFQHiW6lZNYzEtPG6SuGMy97seGo2m9Cu5WKvDUSeKA,975 +torch/include/ATen/ops/is_inference.h,sha256=z3l3JhGE6LT9nFp39rEJLkjwEZrm-XJVblFu585UlnQ,671 +torch/include/ATen/ops/is_inference_compositeimplicitautograd_dispatch.h,sha256=yeJwIcQrd_tcxjI8XPx8DzAR0aMebXobg9OTvXEY83I,787 +torch/include/ATen/ops/is_inference_native.h,sha256=R_gTQUcwPtfS-KIyFCx_I6ZPD64pPk_3HkiVaGjNLa0,497 +torch/include/ATen/ops/is_inference_ops.h,sha256=rOx6RWdMJ862Mjhwrth9ISzuqKfqNGglYu6xX66F1cA,960 +torch/include/ATen/ops/is_leaf.h,sha256=oTHvxe4IRVAKyCtRZmk0m4hlsQVXeYptzQduEcgHjUA,507 +torch/include/ATen/ops/is_leaf_compositeimplicitautograd_dispatch.h,sha256=ee-gSc1O1DGyb5r8kEOrpglYwl1cIsU4XWITtHtGjOg,782 +torch/include/ATen/ops/is_leaf_native.h,sha256=mnoEieI7tUAhr0h0M6Xwo49gpSx4Dlh8w3jbC9UKZ1U,492 +torch/include/ATen/ops/is_leaf_ops.h,sha256=gIoSv6km3EAXyCZ9c9XQVtxXWmaPsnlMHgsCZxC6enI,945 +torch/include/ATen/ops/is_neg.h,sha256=MOtp3FoT3TfjubVxB4vxzNS8toVfbxsDnM2O3Ekz3Gw,647 +torch/include/ATen/ops/is_neg_compositeimplicitautograd_dispatch.h,sha256=1r1cbHELLtoP_doK8-RzcKa78-aJmnLR7ywHCUs2wk8,781 +torch/include/ATen/ops/is_neg_native.h,sha256=LhGqoy_ZLbY6YgAImL2D7W3rViwfeZE4qpciU-6uAGQ,491 +torch/include/ATen/ops/is_neg_ops.h,sha256=vXHitOrXVk2f5ovFPk4J8crHH4mTGRTg2DJdeX97Up0,942 +torch/include/ATen/ops/is_nonzero.h,sha256=U2ZKXnA02_Kk-cNlOBENeih8JBKRF2QkpH4JkDa1C84,652 +torch/include/ATen/ops/is_nonzero_compositeimplicitautograd_dispatch.h,sha256=wyDCtYnaB5stV2L_7BujsabeWVoCxt6AXPCmiLsUTpI,785 +torch/include/ATen/ops/is_nonzero_native.h,sha256=MTlQS_yNqSOAk5g1BD8G6eJQ56MkUy3nOWVJ8eGsb3I,495 +torch/include/ATen/ops/is_nonzero_ops.h,sha256=oW4r2BnRnnPTAkuedmx_Fj2jl_yZ2H3-fG_xyhSGxBg,954 +torch/include/ATen/ops/is_pinned.h,sha256=BMjV1GuvLBV9ew96lUKQG8Q0KbPncRASKY_AJ3hjz9k,509 +torch/include/ATen/ops/is_pinned_compositeexplicitautograd_dispatch.h,sha256=n6yUUBdxRZVU60qY4L7W5ZGwGhaV62GdMOqtQ1nmQvs,835 +torch/include/ATen/ops/is_pinned_native.h,sha256=M6UcKhnwFcRHrFsbL0-ORhvvvoFRuU9980u2KNVu5ao,780 +torch/include/ATen/ops/is_pinned_ops.h,sha256=shkwL960vR5-IFJ8LcvCCBlElGWR_VRIe0kLTRZ45wM,1073 +torch/include/ATen/ops/is_same_size.h,sha256=vTv4q0GDuPxTN5TnFx13fi4rQbu7-pSSSqBuytXH-ek,707 +torch/include/ATen/ops/is_same_size_compositeexplicitautograd_dispatch.h,sha256=Jh20srMIEdQFmI8EwxsB3g5yMIwzjRidQNJK8KkW1tA,813 +torch/include/ATen/ops/is_same_size_native.h,sha256=cOSw9NZfTtNse27Tm3sQyJQcuwSQsb--V_tmWUXON5o,611 +torch/include/ATen/ops/is_same_size_ops.h,sha256=esbz_qm_n0I4L4lDnjJ_Dfw7Ock53t9b9i7sID-9_l4,1046 +torch/include/ATen/ops/is_set_to.h,sha256=-657g_8xUhKPXh_1K6CO2GDbnJgZC4-niPpeJJmyCIM,509 +torch/include/ATen/ops/is_set_to_cpu_dispatch.h,sha256=RunyQ_cDiXI04RbkoLWS3Gi95KE5RAuHmH1YjmR1Ius,767 +torch/include/ATen/ops/is_set_to_cuda_dispatch.h,sha256=byipTQYtM5S7x8zXyMhH5ZOKvB0DefrtB6wCBEE60ZI,769 +torch/include/ATen/ops/is_set_to_native.h,sha256=CpT_0eouHrJap-cU4TpDzKhXQR5DzHezFKUG5qnfmuc,521 +torch/include/ATen/ops/is_set_to_ops.h,sha256=P3TM-B3yw7zK2z3UNuHsMGc97oWbDdDrSNo3pTgh8eg,1040 +torch/include/ATen/ops/is_signed.h,sha256=SM9Odu04Ttv4hkTL8LHSGfvZe-A2soZwr3mZnGnR0e0,659 +torch/include/ATen/ops/is_signed_compositeimplicitautograd_dispatch.h,sha256=BVo0Fs7lO9wbHyPY4TFu0zZoEjVTGa1heB7LvG2xX9E,784 +torch/include/ATen/ops/is_signed_native.h,sha256=Oluv3oNHDl9lIm-AIHcRFHUXG72IEgbRPByN0USuoys,494 +torch/include/ATen/ops/is_signed_ops.h,sha256=kiCD6B0C_T2TLxlAEWcgyRRwjaNlImUnaqG3_68MEDI,951 +torch/include/ATen/ops/is_vulkan_available.h,sha256=UKyA9K8_UKobGhn9-OzNvtz1jT8_25G7-cN656aSfss,650 +torch/include/ATen/ops/is_vulkan_available_compositeimplicitautograd_dispatch.h,sha256=QMLnEjHrLU9zJ48THu6NBuqghAiyGTWLDUI2oZlo3Cs,771 +torch/include/ATen/ops/is_vulkan_available_native.h,sha256=En2M8Eq3imC1NQTD-S17jACAqFa8OAcsT-awo-bkpW4,481 +torch/include/ATen/ops/is_vulkan_available_ops.h,sha256=40k4a61BAUR6TdQ12ycJyXSN3s_zeFMy5UEHgYNfHfA,904 +torch/include/ATen/ops/isclose.h,sha256=Lp-G7IjT7QUyv_lp2_cMria8abQVqV1L_u10aY56m1U,836 +torch/include/ATen/ops/isclose_compositeimplicitautograd_dispatch.h,sha256=Mt-VCfkGwFaI2R3Tyox6zscr6ZEBKDivJEL6gh8eVOU,874 +torch/include/ATen/ops/isclose_native.h,sha256=0f4hfYEeJdQr1P5o74s6NnCVYvuaacxhF5tR4b9IoO4,584 +torch/include/ATen/ops/isclose_ops.h,sha256=mQ5s5YrDGUAxW61dgPLn2JICuFhN-H4Dk7KWC7dSfb0,1215 +torch/include/ATen/ops/isfinite.h,sha256=WakcHvweLhhR8D5U7Yts3McYuWA9WzDVyTaz3Np_ARc,652 +torch/include/ATen/ops/isfinite_compositeimplicitautograd_dispatch.h,sha256=YteVGAaV_tGhE1VVrYN1QdEsF6ac7prW8q74pbfM4To,789 +torch/include/ATen/ops/isfinite_native.h,sha256=O82KpuyYBABBWppTNf7_ibTD0tBFUozGbBOFenBvUJk,499 +torch/include/ATen/ops/isfinite_ops.h,sha256=_T4dfFWhKKMyOv4DPYVbscRAj5GMWPnokTScEL0FmAE,968 +torch/include/ATen/ops/isin.h,sha256=Q3ocZwQG6D9W51oSB1EHUbhqRD976e_JVYV8osrTTuY,4036 +torch/include/ATen/ops/isin_compositeexplicitautogradnonfunctional_dispatch.h,sha256=mhihbAQijjT1HjXCe7yATpbqxGotvL33a9tlyTyOgUM,1164 +torch/include/ATen/ops/isin_cpu_dispatch.h,sha256=0Dr77LKWPKwx45KOWj8NTFmhC4WAjVVUJwGEHPmdmYQ,2017 +torch/include/ATen/ops/isin_cuda_dispatch.h,sha256=IK4v9WiUpG3l2yqsdYxJDDsPFHxNhk2oFsbxg9XAYsc,2019 +torch/include/ATen/ops/isin_meta.h,sha256=Xd2e6djHrx9UnAgkbxFiILVZvIDValsm_Lr2tUHspp8,1095 +torch/include/ATen/ops/isin_meta_dispatch.h,sha256=j2C4ujo2PXMONTWgbSbWVaQR9wyNEdv9ySjkLhQIeUg,2019 +torch/include/ATen/ops/isin_native.h,sha256=kfHL8T4izLXRdYpI2YrGenEyTs_PYunlRQuCpyIYV3U,1188 +torch/include/ATen/ops/isin_ops.h,sha256=WGJrlT_8Xakvervd_bh35sHkFWajt_mDXVPtlLHWue4,5467 +torch/include/ATen/ops/isinf.h,sha256=xDb5CqqXhA7pTV282QzbXFlPVF2iIRKEy6s9NG7Njy4,1033 +torch/include/ATen/ops/isinf_compositeexplicitautograd_dispatch.h,sha256=cwkzs5SqVwNYSPY4o13ihEnMTk78jp_JmapEgf50wNE,943 +torch/include/ATen/ops/isinf_native.h,sha256=MFuc2RtYAjsisNbM8CEe-j0JcVGAm5K9QeSABeBlnKo,833 +torch/include/ATen/ops/isinf_ops.h,sha256=1jfaZOxWbXibU3YlnT4KFypWRWjgF7kQmlmeFzTHCmg,1557 +torch/include/ATen/ops/isnan.h,sha256=WKfKq0B73K19ShkeFheYfLML2MD2YbKiAX2laYg698A,1033 +torch/include/ATen/ops/isnan_compositeexplicitautograd_dispatch.h,sha256=FGKiJsl_rMQ-B58UJU3v-O3NATqjS0F3TBp5_2SXmzA,889 +torch/include/ATen/ops/isnan_cpu_dispatch.h,sha256=-ryf3BAV6EAwhWwNuFWQWoJBDBQHkyZrtig42uA2prk,742 +torch/include/ATen/ops/isnan_cuda_dispatch.h,sha256=bpwoLAc76QtmnWM1sjLeO3O3nCtGEiP82jC5D5HXVyA,744 +torch/include/ATen/ops/isnan_native.h,sha256=8NPTv9NCKj0mKld4Q8qk-771COZD-PH8F1dToeegfn0,767 +torch/include/ATen/ops/isnan_ops.h,sha256=UVAd4-gjvF0CCUWwI6AOdhxpU8hn8e3gTIVVTEXBR20,1557 +torch/include/ATen/ops/isneginf.h,sha256=eXL8ziudf9UQ2o1W9KOIXDbqdbhzMQeMk682RFmzQAs,1063 +torch/include/ATen/ops/isneginf_compositeexplicitautogradnonfunctional_dispatch.h,sha256=8A7MaWqDbDPtdhOEVDGq-oTS-jKBm7nrJqIQY6dvzc4,815 +torch/include/ATen/ops/isneginf_cpu_dispatch.h,sha256=5HHAcx5fqzVs4PedFNh0ktEPtG-8zpPgTU8G_Z-CaVk,908 +torch/include/ATen/ops/isneginf_cuda_dispatch.h,sha256=jfqLhner1jAQkxbdALC_Z3yheq10vddnvHvyXVX5icU,910 +torch/include/ATen/ops/isneginf_meta.h,sha256=uZlC5NoNX_jq0gy_t5Aae6OAwZbxE18xkPClt0Ak6QA,604 +torch/include/ATen/ops/isneginf_meta_dispatch.h,sha256=I9yAX1vF78K6QUBXs-ccn_CNcac59X3Fg_chUZ5e-t4,910 +torch/include/ATen/ops/isneginf_native.h,sha256=nd3y8tb783Ue_mQ5s5mrCLFs_O5PjsRfbiou1ZqxTMM,1007 +torch/include/ATen/ops/isneginf_ops.h,sha256=O_9oASVMp6J_fvb2iwZ-qeQf-b3HvEluTdCK44DSdj4,1575 +torch/include/ATen/ops/isposinf.h,sha256=UmILJwChfk5XDpMoQZA9c_9ss1wg3fEebNalo4VsvtU,1063 +torch/include/ATen/ops/isposinf_compositeexplicitautogradnonfunctional_dispatch.h,sha256=rR-wHjAl5VDw5EnvMVfINmnq4n5y2KW-nyVBKDO9AHQ,815 +torch/include/ATen/ops/isposinf_cpu_dispatch.h,sha256=PQUUsi7ST-DHMRYzdEzw6ozY0V517fCQxHUQqREBuCg,908 +torch/include/ATen/ops/isposinf_cuda_dispatch.h,sha256=2lVnyGQkV9RmB9lA-egvIV0JjB581EKhSJklGtdH58E,910 +torch/include/ATen/ops/isposinf_meta.h,sha256=5nMEUId52tQFlvPi1QNRtKX41SarYhxJUYywXFKC3iI,604 +torch/include/ATen/ops/isposinf_meta_dispatch.h,sha256=Vx55Qbu32ceYrIphuvsEfbdKb1WAZL0Pw3gl3_IlSEc,910 +torch/include/ATen/ops/isposinf_native.h,sha256=VSOHxG0sE3JrFH4bOeHx-MCdqJJ78OVhK9lFSi259eI,1007 +torch/include/ATen/ops/isposinf_ops.h,sha256=8dYVWGqqE7pyGRSTdraN6unBni37ns9ojvcg124db-4,1575 +torch/include/ATen/ops/isreal.h,sha256=LJgVm6d-0noRa89cEG5tWV-vv7IJpEV1jqAlCnHjb_w,644 +torch/include/ATen/ops/isreal_compositeimplicitautograd_dispatch.h,sha256=M_k2RCQuJJGJRULH5smFKnDoALN31w8aIDStR1O4xOc,787 +torch/include/ATen/ops/isreal_native.h,sha256=RcM6eR7HgYK9bB5RTTfyiUiu24YwNQ_6ntw8UvCypr0,497 +torch/include/ATen/ops/isreal_ops.h,sha256=CkogihBy9ebpBjDhWMM5-fHWG_ZEyNEEYPM5k0h2g0A,962 +torch/include/ATen/ops/istft.h,sha256=tC_GpfAnMbASDkWZU5khyL_FCDQ23O7i2FzWvKu3e7M,1245 +torch/include/ATen/ops/istft_compositeimplicitautograd_dispatch.h,sha256=57o0_b2QRMkqgCvABv9gRMZBUWyAW29oyB1yiAZ4Tr4,1115 +torch/include/ATen/ops/istft_native.h,sha256=-jUNelHmoHi-aOHwufrrHjqtjrO58EfGL9DczPe_t9c,825 +torch/include/ATen/ops/istft_ops.h,sha256=vhN7bH5rUboZGU9l1RqLzUdEBUjAtStk2oyUxCU-fv0,1805 +torch/include/ATen/ops/item.h,sha256=J1CEguf1H9w5WtL5bCbYaN3S_AvMYw2FMb8-jIOvl0k,504 +torch/include/ATen/ops/item_compositeimplicitautograd_dispatch.h,sha256=1ecGhHGt8_A4dGOEXc1raK9f-VlfWu8JR6S1oSDdAps,785 +torch/include/ATen/ops/item_native.h,sha256=KhFHUrXbVH5XehVLDNT5xJdSyFb7PFFuFB25WBJ_TaM,495 +torch/include/ATen/ops/item_ops.h,sha256=Jkj5Jk5Wy09TzoaftGgIaqYotle1k7lo_Va0NFV11ns,956 +torch/include/ATen/ops/kaiser_window.h,sha256=s2JV8aLieuqq0FrSfJ2MFCGl-rZurc15Bl-a91QoRas,5060 +torch/include/ATen/ops/kaiser_window_compositeexplicitautograd_dispatch.h,sha256=gQl2k_LSnCL2vG8wfb5Wag59CEuSMy3hnUYeAh4yZp8,2296 +torch/include/ATen/ops/kaiser_window_native.h,sha256=7TE996k4sSk_3MpMxcRQKTcY-dePLtV5JIpnq3wYsxU,1445 +torch/include/ATen/ops/kaiser_window_ops.h,sha256=Ld_5jOfJJbf9dxAxWSWSlpnWO4PhydO6G_XguI4RK00,5725 +torch/include/ATen/ops/kl_div.h,sha256=eHLYW17eIZmG9qnHZcJHXhxGi1Rx_j2fhTB4SNTxDKo,825 +torch/include/ATen/ops/kl_div_compositeimplicitautograd_dispatch.h,sha256=06QVEuF4ONULDQRJfoPwAwbIauVBtM0XsqRgLTAknf8,876 +torch/include/ATen/ops/kl_div_native.h,sha256=MNzMSmjTdLWkLTMq8WHpoaXCQXP3RijZ6pqV26qYnTA,586 +torch/include/ATen/ops/kl_div_ops.h,sha256=9F0a9aW_Lnke5uYWJSEiIApJQh-z1z_dkzOyji98eHk,1184 +torch/include/ATen/ops/kron.h,sha256=KRloLYH3bkRB7b3f6GuBQ-pQxUt6Vw-nQxx-Cs5L_UQ,1164 +torch/include/ATen/ops/kron_compositeimplicitautograd_dispatch.h,sha256=qSwnf1Ryj8RiCmKu2Dv_FD5FmaXPW40E7Ivg7eOvI9M,1018 +torch/include/ATen/ops/kron_native.h,sha256=EwHMdnPKWfeg7OdLLeLNSMZnWfFkIvGwRRzUeWOP7c0,624 +torch/include/ATen/ops/kron_ops.h,sha256=IVDoi2M6KZtaf-cBhwt0CvT9oMW_1Rnec0PQiCzZ3ic,1723 +torch/include/ATen/ops/kthvalue.h,sha256=1374LPAQ-2nw2qnroV6GVbqnK62xwIkpkKKqe3w4pGE,2853 +torch/include/ATen/ops/kthvalue_compositeexplicitautograd_dispatch.h,sha256=0pthUB4Mkuo7NFxfO0SqG_SrB5b-6YhYRYVZ1CprC1c,861 +torch/include/ATen/ops/kthvalue_compositeimplicitautograd_dispatch.h,sha256=ZvnHJF636y0xZlsCw0sXaw4ulf_LTrQjx6KvQ83o_9s,1219 +torch/include/ATen/ops/kthvalue_cpu_dispatch.h,sha256=RM6GhEdTi965cXMqd2iy07XsAYVIal_42wiIF6VjOzg,1040 +torch/include/ATen/ops/kthvalue_cuda_dispatch.h,sha256=P-xv2eAVbtQibEsv71r8F3DCLJDt7DXsaT3TUxEO-_g,1042 +torch/include/ATen/ops/kthvalue_native.h,sha256=snSV7-QNciFY4vANi3bG-BbKm15VcaFcSyvy6q0HOus,1227 +torch/include/ATen/ops/kthvalue_ops.h,sha256=ICV9CTYUTfzn9q2FlfN4kGARw18gcnb8Tsn6G-lYF3k,3931 +torch/include/ATen/ops/l1_loss.h,sha256=vRbfcWH2FTNe9OIOfF7jZl-Dt4SGqUG9P0oMhilC23Y,768 +torch/include/ATen/ops/l1_loss_compositeimplicitautograd_dispatch.h,sha256=M5Mp217w5jbEifSlFhPtVg-8t5YKKGxK5RRr0Est6aM,854 +torch/include/ATen/ops/l1_loss_native.h,sha256=4IQyZ3uswTelSrh7ZK3CL6awa_3vTnhjxVy2CftIhS4,564 +torch/include/ATen/ops/l1_loss_ops.h,sha256=JMMAo42J6k_st5TsIni9mcTUxLn_QSqWFczVSWCoX8c,1121 +torch/include/ATen/ops/layer_norm.h,sha256=N5sAy4PBIq07E9gt2RDMQRCZ5BpRpsDk7p5APiEcI_g,2401 +torch/include/ATen/ops/layer_norm_compositeimplicitautograd_dispatch.h,sha256=nzgb8UIRBZT74kO5PlPWF-icb6SKpM9DhfHx0FxrwGo,1199 +torch/include/ATen/ops/layer_norm_native.h,sha256=uUDna7UXEjnOo3Tlz3k4vvth66__t_Tts90UY3AwbLI,681 +torch/include/ATen/ops/layer_norm_ops.h,sha256=5bnanGPlB417ty13raOumHdFon1rHDp-NFnvMghBsTE,1504 +torch/include/ATen/ops/lcm.h,sha256=ZAojprpT8K9U18EMm8xgD_eqh4sCvHWV8oOuQmmPH-c,1339 +torch/include/ATen/ops/lcm_compositeexplicitautogradnonfunctional_dispatch.h,sha256=zY-IDlvJl0xWRiQnjoa0B2vVtVbp5Da0pSBbs5UId5Y,911 +torch/include/ATen/ops/lcm_cpu_dispatch.h,sha256=7TJaa5whkpQDBf7u6HAD7uRsrli2_z5bTUFjyOyfMXk,1046 +torch/include/ATen/ops/lcm_cuda_dispatch.h,sha256=rMQ8tdAw4D2nPvhMcrAIMpfQ4VoK7rjYUDCodwOmMwM,1048 +torch/include/ATen/ops/lcm_meta.h,sha256=lkKe7kN9ntuKhT1Sk0t69SnN_RJ9KHk1kapA5O0gL6A,625 +torch/include/ATen/ops/lcm_meta_dispatch.h,sha256=hiPxjqLePWlN4IToX0eA-QptHTd6t__pdGaVNRsJul4,1048 +torch/include/ATen/ops/lcm_native.h,sha256=QAe8jOSb9_CUq_cRH0lDPSXh7ZsjMJBy2C7ErSUGjw0,636 +torch/include/ATen/ops/lcm_ops.h,sha256=5MqYXgwm18WidR9oYBglZoa0m3NB8MyPF9LFKm04Vxw,2304 +torch/include/ATen/ops/ldexp.h,sha256=k25NjekdbXw2nE2pDGelm7keZY2O3r4G4VlvWUpJnT8,1379 +torch/include/ATen/ops/ldexp_compositeimplicitautograd_dispatch.h,sha256=u5RwhvcX-ni3pCRDFk33yYWeRcvy3A2IVtm2FJ0OTN8,1098 +torch/include/ATen/ops/ldexp_native.h,sha256=JduRNliT5W-FFbgrW5TATyeaUGpK9j78T33tnwCTiiQ,703 +torch/include/ATen/ops/ldexp_ops.h,sha256=ege3TdDyEUVPIPFJkKisEhS_qotrh_8nStC-Na31OhI,2342 +torch/include/ATen/ops/le.h,sha256=DuaugzNIY0CZy759RTKPtv91DTfLZ3iOYYOAfMjFneg,1872 +torch/include/ATen/ops/le_compositeexplicitautogradnonfunctional_dispatch.h,sha256=aepkbaqdU5XqYBpepOyqZRajB-ddZbZ-SzIgLwmVmkw,1060 +torch/include/ATen/ops/le_cpu_dispatch.h,sha256=7xoFyKZ_2Mbp_yp7FWM3z1yYWNsA1eTpIOR23_6OBu8,1396 +torch/include/ATen/ops/le_cuda_dispatch.h,sha256=NXd80r4s51wU4bveraqHGsQnY6ZcIArO_sNV-F6MWpE,1398 +torch/include/ATen/ops/le_meta.h,sha256=m0T-cUP3Aol5pTG54SPWm-GkuvvFROq2xbOnK5H8UV8,783 +torch/include/ATen/ops/le_meta_dispatch.h,sha256=tU4pcuKNuzvK4l0_C0fiZzXQuNe_wFoEbTHoXsUxEJQ,1398 +torch/include/ATen/ops/le_native.h,sha256=DKtkwx1a6TNtfRlBOqFF8ohVJ_4Tz9BS_2oUop66t2w,1235 +torch/include/ATen/ops/le_ops.h,sha256=M8FplkOVzPsciU_hbqu7A02j27Bing4QbyvUyPTnXxg,4261 +torch/include/ATen/ops/leaky_relu.h,sha256=GbKkX5Za2JsTzid43IPI-idRYwL5ErJT3LCFB_hCqHo,1573 +torch/include/ATen/ops/leaky_relu_backward.h,sha256=IzaXFX-IwlcbwVVoW4uCcimw1DPvkWOHx5fLfa9axKQ,1834 +torch/include/ATen/ops/leaky_relu_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=A9tqDQOBlYY0VLohKdIAXzcQ9uXZthzPow--NmT28dA,914 +torch/include/ATen/ops/leaky_relu_backward_cpu_dispatch.h,sha256=Dr-2OKGIaX8nAv10gGB5cmf730JYL98t7ZWmy49oYZs,1219 +torch/include/ATen/ops/leaky_relu_backward_cuda_dispatch.h,sha256=i-BHyBH6vN_Vfx1mHCagrt1Sltg7J9b8jQ2TdU6b4RU,1221 +torch/include/ATen/ops/leaky_relu_backward_meta.h,sha256=WX94ruJVMP5pFrjYWis3u9U_gafyCNUjqHMVewo30gU,703 +torch/include/ATen/ops/leaky_relu_backward_meta_dispatch.h,sha256=3YuZcZ4MjuV-H1hA7ulprI6PkSiTXZksm_7ZlnCm968,1221 +torch/include/ATen/ops/leaky_relu_backward_native.h,sha256=9S3cq_-XQ11MdGEUh-9whtd4gOW6L1fuqJvCqdkheM0,753 +torch/include/ATen/ops/leaky_relu_backward_ops.h,sha256=zSB2KOjcNjJ32y3hcuDh1atjrJCQXlDGg1-WgSQPyXQ,2255 +torch/include/ATen/ops/leaky_relu_compositeexplicitautogradnonfunctional_dispatch.h,sha256=KDC2F32jCuVnXlX7pL6-FoUAdOaJpmuQkNo9U5u9WCs,953 +torch/include/ATen/ops/leaky_relu_cpu_dispatch.h,sha256=tEXMq_cVJk65fPTjkcXI4bWY0rUHPN6xzenS3nOXvvk,1125 +torch/include/ATen/ops/leaky_relu_cuda_dispatch.h,sha256=SDfpwuNltusqJqPg3uoHMq8UE9mkN1UAYpvhXueJRBo,1127 +torch/include/ATen/ops/leaky_relu_meta.h,sha256=oB8R9o9ekOur8w3BeO_oxdowDfC6OUOHcf94gMOTR3I,641 +torch/include/ATen/ops/leaky_relu_meta_dispatch.h,sha256=qwsmE0_M6uVacJH2O_-GR_0KGzTGGm1BoTojALKeZm8,1127 +torch/include/ATen/ops/leaky_relu_native.h,sha256=3CWjuycc0hOSdMp9BNHOloWRHcglQcYet2-Z8srR8QM,1021 +torch/include/ATen/ops/leaky_relu_ops.h,sha256=YcYR_jSpYZlamS9zgtLWams7VNC3_6O9KvWHlw0s0W8,2463 +torch/include/ATen/ops/lerp.h,sha256=MFB67aVtYSUbvodWSUguUvxW9cqAWtR2voxL3yIQyeU,2174 +torch/include/ATen/ops/lerp_compositeexplicitautogradnonfunctional_dispatch.h,sha256=pnb0P9rrT4n4svhpBS0RWsXkgfxz3VhqHT4zYhxW3yc,1168 +torch/include/ATen/ops/lerp_cpu_dispatch.h,sha256=MvUG64EEi-9VNlhI9GCg0vmb7h3HrzMjv7HUxeq5CsA,1612 +torch/include/ATen/ops/lerp_cuda_dispatch.h,sha256=kTNfodjLoesyXjaeEI7CBX5xpTHU_Ko_V6ChgzGkGlQ,1614 +torch/include/ATen/ops/lerp_meta.h,sha256=9Zb88zlCvIb23pDCHz9IUyvjWri1NZySOznHB6c6Sx8,837 +torch/include/ATen/ops/lerp_meta_dispatch.h,sha256=-A4GqcvaGQFDrGxclxm9K1mw7DxUi_ID9jCole9skj4,1614 +torch/include/ATen/ops/lerp_native.h,sha256=5yevCEZbAYw0GaJw42EBmX7KGlNq7hv0NF5fg4-3vNQ,875 +torch/include/ATen/ops/lerp_ops.h,sha256=2GqVgShjGSesXsbD8iW2Cw-M5tShj8C_BDTZ5otBZdA,4795 +torch/include/ATen/ops/less.h,sha256=-cQ5uC-hkovnN3KGqz1-tDvT14Ljc-jPHErEpwWz20Y,1910 +torch/include/ATen/ops/less_compositeimplicitautograd_dispatch.h,sha256=pGm-gnrR0EbWSi-R22DV4EaQS6aH-BHL72gFzPuGhOk,1456 +torch/include/ATen/ops/less_equal.h,sha256=5fH06r2PrFoTPLTMQy5A2MTWHdIrGOckDl-0Y24-hDo,2024 +torch/include/ATen/ops/less_equal_compositeimplicitautograd_dispatch.h,sha256=q2TQ2jYJToBDd72ZPhi0_kj7hWlzjmhPn5dO_WWwpqs,1504 +torch/include/ATen/ops/less_equal_native.h,sha256=kmDmlhfrBXwRXhH3ODNp1ANpjks_DT-QUG3F_W5OPKk,994 +torch/include/ATen/ops/less_equal_ops.h,sha256=QsN7KRFCetLFUbpAzfajFxZRwdjdZtJeHnMg8D7yYSY,4405 +torch/include/ATen/ops/less_native.h,sha256=Y5W6Mq1Gj9EfK7a7518nha4ljiBacoAQ_WZ-0qypj4A,958 +torch/include/ATen/ops/less_ops.h,sha256=dvN4pAUxnKOxcrSH-gDNb5JTjTinujwQWPjn57FKcd0,4297 +torch/include/ATen/ops/lgamma.h,sha256=DBCRwFlUCn9Rdp6vexGPka5qsXBf7sLSH7agrdYWkO8,1043 +torch/include/ATen/ops/lgamma_compositeexplicitautogradnonfunctional_dispatch.h,sha256=TeOtEIkrLxURhLEnJcdH_AvmBV7hJ0b1ti12_FZe_qs,865 +torch/include/ATen/ops/lgamma_cpu_dispatch.h,sha256=w6fn93gs-Gyd95w-b-58_fxsElD7eWuZOWeQEb6dwr0,954 +torch/include/ATen/ops/lgamma_cuda_dispatch.h,sha256=AnmGPYO7BYuUpVvMyYiwg_3BpN4-a3vpCUTOIewr85Q,956 +torch/include/ATen/ops/lgamma_meta.h,sha256=g6uIYQ97QaIkmnFvbQwRXdQ1qVPKAx2gay6Wij8K_jA,602 +torch/include/ATen/ops/lgamma_meta_dispatch.h,sha256=mtJKsJyN0fmSA9uqDJBfAj-CL9Jglt6uhr5LO_ntRWg,956 +torch/include/ATen/ops/lgamma_native.h,sha256=xSGDhsN6YrAbynEkvnqikPo3qnpjMiArGPVomrcL8tk,619 +torch/include/ATen/ops/lgamma_ops.h,sha256=m8ou2zB2lest8tJiBvQ6ffDTYiAIikMfigLP00UTFLI,2073 +torch/include/ATen/ops/lift.h,sha256=13P9ksktq0y3j5UNuTqUlig99lSlGDpuAMsC_vw71BY,1023 +torch/include/ATen/ops/lift_compositeexplicitautograd_dispatch.h,sha256=Yg2sBC4Dq-eOgF-6mSU1RJQp677d1voARD-icdw_JSo,940 +torch/include/ATen/ops/lift_fresh.h,sha256=vM8kMYdq3gCSMqWPAiD6T-_XX6JjT5txfw03ZTtFnNw,666 +torch/include/ATen/ops/lift_fresh_compositeexplicitautograd_dispatch.h,sha256=3H1mwN_Yq1wR5KfNZMFZETCdVf13Wyd64_xbL7ZddgE,791 +torch/include/ATen/ops/lift_fresh_copy.h,sha256=QjGYvXzJ_iLjqSv3yV-I9EeHo8nfjlcJimzKhukmT04,1133 +torch/include/ATen/ops/lift_fresh_copy_compositeexplicitautograd_dispatch.h,sha256=KIKMIToRE7dISahe9pXOSnMp-S6i-HRDhXAp-GoBdsM,909 +torch/include/ATen/ops/lift_fresh_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=0SLnkZo7O6f4q3BDjy3qrywO6ejKI_iy7QC9Q0o-zjo,822 +torch/include/ATen/ops/lift_fresh_copy_native.h,sha256=F24O3qk8T9KfV2Giygxjf5mWRCw1XnRi2oR1-lNa_p4,594 +torch/include/ATen/ops/lift_fresh_copy_ops.h,sha256=BbIQ6Thr28Z38CpEDR1viJaAZxN9op42tbjJh4yEiSM,1617 +torch/include/ATen/ops/lift_fresh_native.h,sha256=F6zOgV98f2ZbgczW3tW82jS2ZRx4hk9HXzDCW3vSSkw,501 +torch/include/ATen/ops/lift_fresh_ops.h,sha256=UVCCGPdLykWpZQgLKTufwvBHAM154r_hG1V4UsMlLWE,980 +torch/include/ATen/ops/lift_native.h,sha256=qlH415EJ11nqOX0CTc7PLLoAsLxpibnGjO7XGYlpm9g,572 +torch/include/ATen/ops/lift_ops.h,sha256=CRLoIuGYXpZrEMk-OvPzKcd5t5LhdNwV5NnY1upCz34,1551 +torch/include/ATen/ops/linalg_cholesky.h,sha256=tfQYKqyzRD18mBBbChh1fcM0vu3rsUz5vw7p9sB-K54,1259 +torch/include/ATen/ops/linalg_cholesky_compositeimplicitautograd_dispatch.h,sha256=sNLo5PF1xgmI6hLu67Ca1FLznK2q33hTyxzFRD39JBY,1021 +torch/include/ATen/ops/linalg_cholesky_ex.h,sha256=zcezcediomxUzsChlkjo6GPk9X3BPH6JWMkws2lYgEc,1677 +torch/include/ATen/ops/linalg_cholesky_ex_compositeexplicitautogradnonfunctional_dispatch.h,sha256=L2qJWeRUsMuBB2U7_yAgCs5eByDkfmlbLgTqTzqzzqY,893 +torch/include/ATen/ops/linalg_cholesky_ex_cpu_dispatch.h,sha256=PjdrzW4TMynwVtozFKdoQrw9pt0W4XAZGPRW6pwJRGM,1168 +torch/include/ATen/ops/linalg_cholesky_ex_cuda_dispatch.h,sha256=wIDDff2-JTfP7gqPJ2mwVApWZPtMymQRB2lcLAizyT4,1170 +torch/include/ATen/ops/linalg_cholesky_ex_meta.h,sha256=-wBd-3iS-_jGxqTo5dIPbgzW3U-S_LPBwHQGt43uloc,645 +torch/include/ATen/ops/linalg_cholesky_ex_meta_dispatch.h,sha256=qGl3tO7KwsMZmh8i7AJCkh-5pt9Tq9u0r4iry1HvyFE,1170 +torch/include/ATen/ops/linalg_cholesky_ex_native.h,sha256=iLtuiSOuQCTUPa3vlAagRWscKWUwW30rCANAvrfN9xg,709 +torch/include/ATen/ops/linalg_cholesky_ex_ops.h,sha256=5RE92W8dJGy-cTgIXgHeyBZG1AF4YtwfSQuIw3QiGu4,2123 +torch/include/ATen/ops/linalg_cholesky_native.h,sha256=uxUKpFHnDvJ4UqwDIe5zGs_zpoTTh41Hto-Exi3vdRg,624 +torch/include/ATen/ops/linalg_cholesky_ops.h,sha256=VH1FPBXmigoyj4fHEmjY-0RRg3EJQW0T0js6Tg1kv4c,1716 +torch/include/ATen/ops/linalg_cond.h,sha256=OE4J9yW5t-58wxQpsjVOyzldGmML55A2H5EALQW5W80,2007 +torch/include/ATen/ops/linalg_cond_compositeimplicitautograd_dispatch.h,sha256=wA9BnAqamEo4wZjQLZe8C41wpSHOn2F3GXCRpRK2q8o,1397 +torch/include/ATen/ops/linalg_cond_native.h,sha256=WWKEOVNgyDVHurxJ-36gR7Nfb8pD_yJk7_rEmktqH2g,863 +torch/include/ATen/ops/linalg_cond_ops.h,sha256=QyiVXEWNJbqK0JJHmCZNxyYv-01XHiT8vlq5j3Nd5ac,3162 +torch/include/ATen/ops/linalg_cross.h,sha256=Nvd_jnHeP37XwEiO4-3sU62nxnITl1J6W1YNzbm71NY,1343 +torch/include/ATen/ops/linalg_cross_compositeexplicitautogradnonfunctional_dispatch.h,sha256=AjApHTgho7xGdqO3mK6nJk8o3HhCg3ggE1NfqNq6ooM,861 +torch/include/ATen/ops/linalg_cross_cpu_dispatch.h,sha256=05fFackUWVrdG6zamgka3irMoVV-8qHlchuBNwpoVlA,1043 +torch/include/ATen/ops/linalg_cross_cuda_dispatch.h,sha256=HpqZtLrYLm9XiLayHtAJahenoB2ZDyU0B3C_af0bGDI,1045 +torch/include/ATen/ops/linalg_cross_meta.h,sha256=zalvMXyY1xBx4g73wDdWBulW3WRZ1qMTAqbu3qLUw-Q,647 +torch/include/ATen/ops/linalg_cross_meta_dispatch.h,sha256=cxP4DIolMSVOIaeP4KGGaGhWXtcHhkW_dSpleRFULB4,1045 +torch/include/ATen/ops/linalg_cross_native.h,sha256=V9wgmRMjXtb_kedy8DNK0GrDdkYe1Mi2Iqwp4TFJQh8,790 +torch/include/ATen/ops/linalg_cross_ops.h,sha256=Hm-kLsWGJfcAlingDmuHkf6_CJ99AwKIWfmNyIL9Jjg,1868 +torch/include/ATen/ops/linalg_det.h,sha256=d92RMk_ka9TpCZ_jZSDRl10NBePsyyBtu_uIR1i916Y,1056 +torch/include/ATen/ops/linalg_det_compositeimplicitautograd_dispatch.h,sha256=CEMOGhm13rogwdq6TWANpWVCGhaQmC0mD4cc-lvRZI4,949 +torch/include/ATen/ops/linalg_det_native.h,sha256=cPvwxKv-qN9kX25FMlXeGR9USsphLTnK-le5s9vsyqU,578 +torch/include/ATen/ops/linalg_det_ops.h,sha256=TTvLIeZviRdg8qPqB5gidxuoTH3M-zuJVmfAlVfanR4,1569 +torch/include/ATen/ops/linalg_diagonal.h,sha256=IF-MG2hdFu6e5dwrGub0RFR_W0VY8BudTsHoJHvekeE,792 +torch/include/ATen/ops/linalg_diagonal_compositeimplicitautograd_dispatch.h,sha256=__eF9ZuN_zW7Gc_naIGOMU_tLg9V_v3E2vQ84jBOGz4,845 +torch/include/ATen/ops/linalg_diagonal_native.h,sha256=sWRpHybtLlMQe4n3WjKIkuBPWEfaQODGs5Ii5Pcxe3k,555 +torch/include/ATen/ops/linalg_diagonal_ops.h,sha256=EkBwf8ted94lgOgvBCQtCj4bAFz1RwMpO7ofPTjitMo,1144 +torch/include/ATen/ops/linalg_eig.h,sha256=iMsb1QdIJtkaMQzuTabnJhkUCVHcLglRw20xQ1EZgGA,1455 +torch/include/ATen/ops/linalg_eig_cpu_dispatch.h,sha256=yCavEkzbw6OQeIwj6ff8BuyRL2NVd8etDG_l48F1cxI,1063 +torch/include/ATen/ops/linalg_eig_cuda_dispatch.h,sha256=gQQaONaKvnBzypFP6wOXzFhOEwxi-9kXlMS_toymQ6o,1065 +torch/include/ATen/ops/linalg_eig_native.h,sha256=vmBnsZn6T0PYhT0D0AOCEqOEoQj1amINdePQ15jps2Q,671 +torch/include/ATen/ops/linalg_eig_ops.h,sha256=6xxHna-MkT-wjYXmZXzBhL0nbrNCPZXy9ZoVSUroW8E,1934 +torch/include/ATen/ops/linalg_eigh.h,sha256=P5Wu3EGLwLD6-DMBaWriXwQzaXQXBsp4psFzs0qrmbw,1564 +torch/include/ATen/ops/linalg_eigh_compositeimplicitautograd_dispatch.h,sha256=agbG-x1M01NKw0bfw0wInSoTghOz5wWBz_kJJzFr4jI,1169 +torch/include/ATen/ops/linalg_eigh_native.h,sha256=ZsjGTYmh4TPGabE2XCC8RU1qqjMQ1A67vD0jv5i8qKo,714 +torch/include/ATen/ops/linalg_eigh_ops.h,sha256=2MAtj7H4J5hHaDP7isriY-obzl6BcgF_o576B9aodEk,2085 +torch/include/ATen/ops/linalg_eigvals.h,sha256=5dqL1JhmNT1C1xNLEuE5yqo_OFGSQNHrMbKBH21ruMc,1123 +torch/include/ATen/ops/linalg_eigvals_compositeimplicitautograd_dispatch.h,sha256=aUTo9IBIJ6Tvr8DG3iNP-4huHpacRYIwOzgxY5jspBk,795 +torch/include/ATen/ops/linalg_eigvals_cpu_dispatch.h,sha256=3trf1XLw5kZmswCIOe2ZQOdzwlTWxXahioHSi--jzBI,863 +torch/include/ATen/ops/linalg_eigvals_cuda_dispatch.h,sha256=YI-ikqzSSPoTdaryegSZJD3FwkC0Q9FHTvLEZ7jdsQY,865 +torch/include/ATen/ops/linalg_eigvals_native.h,sha256=s_U-JhEfIe0ECZvWarUZl1GaPuAOSLmwkCjCQuSiOJ4,592 +torch/include/ATen/ops/linalg_eigvals_ops.h,sha256=t5-DHmPcRj2uuglL3B5O_PCSDwqzt5WzGcy9G3apV9U,1611 +torch/include/ATen/ops/linalg_eigvalsh.h,sha256=YIR0aDN5wplqvUY9zakUBfigQ8A0yugkxYpAMvajvnk,1270 +torch/include/ATen/ops/linalg_eigvalsh_compositeimplicitautograd_dispatch.h,sha256=wSTXIjZ22GoPwo0j5ACS57Ix34LmZgviZw-IUwsMD4s,1050 +torch/include/ATen/ops/linalg_eigvalsh_native.h,sha256=bu6wf11rIag5cbFOb-GMBtqL6ZtOFQq6BfeJ71LiTk0,644 +torch/include/ATen/ops/linalg_eigvalsh_ops.h,sha256=tlu60LNbeg9DrPow9RbGs5KrjphcL0NfIHrMUeduZgk,1777 +torch/include/ATen/ops/linalg_householder_product.h,sha256=g33GoN1MyVTpJAOaBU54oOYu_ayRg-LjHSB-2MizxBQ,1375 +torch/include/ATen/ops/linalg_householder_product_cpu_dispatch.h,sha256=IWc8HN4J32TB83Uct4dGsOE0NJ7ZYoJFLTbXJu4qIFo,1037 +torch/include/ATen/ops/linalg_householder_product_cuda_dispatch.h,sha256=AAkGVfRmHnKlKdPc4FjV5f-gHa0GHHYzJfyoDAXSZQw,1039 +torch/include/ATen/ops/linalg_householder_product_native.h,sha256=2g44g2E_8f1IAg3JmP18uKWtrSyq2xbImvl-gw4gCl0,666 +torch/include/ATen/ops/linalg_householder_product_ops.h,sha256=psLrEYwbB1WqgLSOYCrPBtv5VuF822HkXZUMp1PyglQ,1849 +torch/include/ATen/ops/linalg_inv.h,sha256=Yol5P7MAuOGpHrxmsm4pPXuen6CLbG97tdKziQcRp3k,1056 +torch/include/ATen/ops/linalg_inv_compositeimplicitautograd_dispatch.h,sha256=8YCFi4O_QVjy909IXghbx1WhxCaVAsjlCMd1DDYybEE,949 +torch/include/ATen/ops/linalg_inv_ex.h,sha256=gB5IpeBpqj6yqhmtBYW0c7iQz2DauOanSe4-TERSih0,1555 +torch/include/ATen/ops/linalg_inv_ex_compositeexplicitautogradnonfunctional_dispatch.h,sha256=rM7hNptwdbhFG7zYBqPm8WvAXo72rJn_EhBc9-k-sAo,867 +torch/include/ATen/ops/linalg_inv_ex_cpu_dispatch.h,sha256=KPA31rwy9qgIqPRUy1_F8pKwdUFlt5xjhT-wjmqWHs8,1108 +torch/include/ATen/ops/linalg_inv_ex_cuda_dispatch.h,sha256=T7QQC5pvM7K_20NXlcQo6rAp_-8aDRehDds0k219Pjs,1110 +torch/include/ATen/ops/linalg_inv_ex_meta.h,sha256=L_SOegXtjCKkgBZklVfESRIVzyRYD2-6bT3Ulb3QRaY,625 +torch/include/ATen/ops/linalg_inv_ex_meta_dispatch.h,sha256=YstI_i3-NBwpJp2PJwxa-qEedS8kW5DuAHX_0hOZzYw,1110 +torch/include/ATen/ops/linalg_inv_ex_native.h,sha256=H28k57oe0Xt2GJJm5RpDZ_DdrbFX_cMFEoOR7EwFeZE,685 +torch/include/ATen/ops/linalg_inv_ex_ops.h,sha256=dTw7KVOstl6p9eUuwsF0oCIm2nfP0iQQkYi1_jSFRKQ,2027 +torch/include/ATen/ops/linalg_inv_native.h,sha256=kMVg-OqmGjDNb0g-tQaQ_7m9J6dbwan1jtRrnJXvgPQ,578 +torch/include/ATen/ops/linalg_inv_ops.h,sha256=OoTCMzrk1cx8vRK9g6Uj0gK2jALXWdIricDCEczVDOM,1569 +torch/include/ATen/ops/linalg_ldl_factor.h,sha256=qyzLZKkl8NXnqbd8szKVKMppbiWeSGIZ_cXP24Uc31g,1552 +torch/include/ATen/ops/linalg_ldl_factor_compositeimplicitautograd_dispatch.h,sha256=qEBWW6q3K0pS5bevS8ZpwAXkc3J2yDteIaCAnfE0xWA,1158 +torch/include/ATen/ops/linalg_ldl_factor_ex.h,sha256=wDzIOzOxhUN1VASMq5S1kp2_eqKX6fN3OW0PIIqZEvc,1936 +torch/include/ATen/ops/linalg_ldl_factor_ex_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Q_15XsQUIz7Z3yCTTMyx-ES9Nc8lpRGSCofL6g5edHY,910 +torch/include/ATen/ops/linalg_ldl_factor_ex_cpu_dispatch.h,sha256=uZNsjsfcf6CJvvLiRlbKAlYo3gKcwLW99wXJp72fp7w,1267 +torch/include/ATen/ops/linalg_ldl_factor_ex_cuda_dispatch.h,sha256=XzQo_Iq74g6jpKGnAJoJgwCcBSie020w-VjQCC47T8s,1269 +torch/include/ATen/ops/linalg_ldl_factor_ex_meta.h,sha256=VjqDhBetY1uPezlsl29Z-K7QSPERLQE8Aaoj6KqaBKQ,651 +torch/include/ATen/ops/linalg_ldl_factor_ex_meta_dispatch.h,sha256=bShYy9aJZOCh3_Zi08EcH7tFmJ06sbr7E2EnpLOVLLQ,1269 +torch/include/ATen/ops/linalg_ldl_factor_ex_native.h,sha256=LR_teyJ1PfvzN4AcSScswuo6nHRrQFliRVZSPucyhEg,747 +torch/include/ATen/ops/linalg_ldl_factor_ex_ops.h,sha256=zzkVg6rt6_EQ0KFZ3TG5epnEK1_LcCuLY48ckkVyOeQ,2351 +torch/include/ATen/ops/linalg_ldl_factor_native.h,sha256=SnBtIwuKJ6lY8Zgw8pxtjCEqnOp9SQGHyGhHncNgMxg,708 +torch/include/ATen/ops/linalg_ldl_factor_ops.h,sha256=da3NmhtgKf41TL2-6XL2wTkw-qTyOPZTM7_TNCZpd0k,2024 +torch/include/ATen/ops/linalg_ldl_solve.h,sha256=mbLdZ3ZNgpwLMBnOXYL4lLLVJp8EPdLg1SjyhTYxKpg,1542 +torch/include/ATen/ops/linalg_ldl_solve_compositeexplicitautogradnonfunctional_dispatch.h,sha256=HFGnzqycFoUQB_RFZo8tchW8KbKijP87kGRhIh1YpB4,892 +torch/include/ATen/ops/linalg_ldl_solve_cpu_dispatch.h,sha256=c-EOS4j5z7FSP_THrdGtYMaTG5INvznUMsg9CCsQz44,1133 +torch/include/ATen/ops/linalg_ldl_solve_cuda_dispatch.h,sha256=pVT1puytTdRx2R0cvAcFZUmpskRpEE0IP8A6jP7BvrQ,1135 +torch/include/ATen/ops/linalg_ldl_solve_meta.h,sha256=PlejK6Lg7paDFDztqESFzXzOYSQzA-r_qpD8guVuqAw,675 +torch/include/ATen/ops/linalg_ldl_solve_meta_dispatch.h,sha256=oqMgl5RBborDW-olvivj0Y1zeYjS8SjEtqZ5YIE302s,1135 +torch/include/ATen/ops/linalg_ldl_solve_native.h,sha256=ppBXO4PKDbRlSekrhJYQCHCpHk_5tGY73OFLH2Vplpo,712 +torch/include/ATen/ops/linalg_ldl_solve_ops.h,sha256=xnu0Fro20jQI5R8Y_YPT8egPg9RdfYoKaXZBeG7tDwM,2060 +torch/include/ATen/ops/linalg_lstsq.h,sha256=Wj73gKk0dwsThjROrIkrtOP4Pp5bIrmuajV0hDLgZ6E,2399 +torch/include/ATen/ops/linalg_lstsq_compositeexplicitautograd_dispatch.h,sha256=7tY7gJeD51R5aptcIHmgfdr_RI8JOO9u-5VVuHpgO5g,965 +torch/include/ATen/ops/linalg_lstsq_cpu_dispatch.h,sha256=F7RsNyWV1nqmpR3FOvxY6Covsv00WpKBaiyHiEM3mKs,1341 +torch/include/ATen/ops/linalg_lstsq_cuda_dispatch.h,sha256=yTw1w72Eox28g2jUTD4w7HHwIaBdKRu29hcGypgdZgk,1343 +torch/include/ATen/ops/linalg_lstsq_native.h,sha256=Pf3oMYTGkzuGqT9tOtopb1iQ3xoHTIJxDStig5P2Ats,986 +torch/include/ATen/ops/linalg_lstsq_ops.h,sha256=TlkMFhUmEfKiYL1U-m_7oWrII9xckArWu79kSoWPljg,2950 +torch/include/ATen/ops/linalg_lu.h,sha256=lpMx5HVIAoBJyttOaKoj8pxv9O_wDEGS7cdcHpohx3Y,1491 +torch/include/ATen/ops/linalg_lu_compositeexplicitautogradnonfunctional_dispatch.h,sha256=eSJzSWFLSbCI74XivERueyiVmwzhON-Vo3IO6bWzsGU,866 +torch/include/ATen/ops/linalg_lu_cpu_dispatch.h,sha256=jUz0Wh6wdRTwqljnjD6pitVNSWbKEoKK0vDUy1s-veg,1124 +torch/include/ATen/ops/linalg_lu_cuda_dispatch.h,sha256=-xSfvdTi9GPVAsuUsQb0tZsFJ0pcW8wYS2L3VXKspdQ,1126 +torch/include/ATen/ops/linalg_lu_factor.h,sha256=jRr5LYSlISCFZxYnJlwltPEFZcYn1DSRq-Emq4x31OI,1474 +torch/include/ATen/ops/linalg_lu_factor_compositeimplicitautograd_dispatch.h,sha256=HlqM8dHvTitoK32QQ3hP2z33JL6G1PrN3qpWuLq19NI,1132 +torch/include/ATen/ops/linalg_lu_factor_ex.h,sha256=jVQYrFJgWAXFPHaUKLZZQYAbCKM_kRWKbwZcusToRIs,1858 +torch/include/ATen/ops/linalg_lu_factor_ex_compositeexplicitautogradnonfunctional_dispatch.h,sha256=V37dBozm3bNyGxbB9ja7Ar975PdtiHNdyKD3l8GNxXA,901 +torch/include/ATen/ops/linalg_lu_factor_ex_cpu_dispatch.h,sha256=HNiBlwcgdDa3Xp8sxlVZ3wlzcCxDi_AVcg947nmeDpI,1241 +torch/include/ATen/ops/linalg_lu_factor_ex_cuda_dispatch.h,sha256=BedP0jxVoyCkgJaHeSPpHxev4iUhbkOClVEwV2eFyYI,1243 +torch/include/ATen/ops/linalg_lu_factor_ex_meta.h,sha256=BnGZbDJAB-Q0GzVGLi5mELA3vpOk34g-39ULAesRsuM,643 +torch/include/ATen/ops/linalg_lu_factor_ex_meta_dispatch.h,sha256=HWqT1BYWeypbTFZm08XaBEUt-XhoUGs18m9bhMTGMQc,1243 +torch/include/ATen/ops/linalg_lu_factor_ex_native.h,sha256=vXLYZKxvIsxN-cUw7ylloxADUMEMa1cNwWp8QD2FtJk,737 +torch/include/ATen/ops/linalg_lu_factor_ex_ops.h,sha256=Sz5IXZoHcArBl69F6XogaiyfdmpUqcSRE3ShcDQCN6A,2301 +torch/include/ATen/ops/linalg_lu_factor_native.h,sha256=gO1bNc-k4PCBy-EHUb5mOXTA_cipwRPtRA4hyy0X71U,691 +torch/include/ATen/ops/linalg_lu_factor_ops.h,sha256=oYAvk1gyjs9wXVOylqzVm-NbBxccYRUOywIxjtGM9pM,1974 +torch/include/ATen/ops/linalg_lu_meta.h,sha256=x0nqiSPhS7wwdcUmBYif-_t4U9nCkp3VW1jyYvOQoGo,614 +torch/include/ATen/ops/linalg_lu_meta_dispatch.h,sha256=bpdq8fWPRNlPvbtz1sQ5J_XkKk7NZoNXMYj6DZ0waP4,1126 +torch/include/ATen/ops/linalg_lu_native.h,sha256=Y9HZ5q9_0qCKWOmpPYjWHpo-tGh0l8Mem5A_hN1DTOg,679 +torch/include/ATen/ops/linalg_lu_ops.h,sha256=JPYV3v9-oEy6YPK-5ig4VV_tZaKBlGJc90vActPwscA,2058 +torch/include/ATen/ops/linalg_lu_solve.h,sha256=0O0ss6XluruSSozhTRVJ4z4LnOkKN1ELwYwmSrr1wAs,1623 +torch/include/ATen/ops/linalg_lu_solve_compositeexplicitautogradnonfunctional_dispatch.h,sha256=7zj-Y2ErMEUN6e-uGW-io-5Mp0aidJ4fZLflgjVhof0,905 +torch/include/ATen/ops/linalg_lu_solve_cpu_dispatch.h,sha256=xK4m8h2N9SCQG2chu9E1TeosELw9uTTguWJJGjoDgM0,1167 +torch/include/ATen/ops/linalg_lu_solve_cuda_dispatch.h,sha256=gpqZU6wPdrcJ1eWEDPw_qptwmxsLmKZJyMceuMByTPY,1169 +torch/include/ATen/ops/linalg_lu_solve_meta.h,sha256=eAq3q3oEy5HZ8iRtV3WHymvPHwYIR5iwqVIyxO7MrdU,683 +torch/include/ATen/ops/linalg_lu_solve_meta_dispatch.h,sha256=53l5UanEMMvg8E-fuQlxmJ5I9szm1BNjO5OW3w2XAxM,1169 +torch/include/ATen/ops/linalg_lu_solve_native.h,sha256=fIZAdYgruLZDPEbQaHFmkCmDNwAFBHloa6l39MFfIbU,718 +torch/include/ATen/ops/linalg_lu_solve_ops.h,sha256=afQOaGCp9AuvWUcxJSAjE-UfJLJI1p-pn4x-dy291us,2130 +torch/include/ATen/ops/linalg_matmul.h,sha256=qTZTEFzjr9K1rN5A1XxafyPfK00Dgmqn2Go-dYQWIJk,1254 +torch/include/ATen/ops/linalg_matmul_compositeimplicitautograd_dispatch.h,sha256=U0aY6pEJIPSo_WbkdqDYFoFDqqHAnlUE7MMa7nj6Hss,1045 +torch/include/ATen/ops/linalg_matmul_native.h,sha256=h4FLUbMZZKkd7xO7-jppB9N420QVmQSLuWsqAmH3zaE,642 +torch/include/ATen/ops/linalg_matmul_ops.h,sha256=TE1hgL4r4jeeNl0HaP7KFD_4L42kpqsKyMQMLZ_rf6M,1777 +torch/include/ATen/ops/linalg_matrix_exp.h,sha256=R0WysGpU8uy1_eefzT75aBoaB3qYAeHaVZkfftaixKw,1153 +torch/include/ATen/ops/linalg_matrix_exp_compositeexplicitautograd_dispatch.h,sha256=GHGJnjT7e2kT8qZbnZsd3k-Po8er-ipFkUmMtXkGK0o,913 +torch/include/ATen/ops/linalg_matrix_exp_cpu_dispatch.h,sha256=S-4FsyrhsBLYGinIQlHmqCEn6l-HXf1cxdGVOGyF5Fs,754 +torch/include/ATen/ops/linalg_matrix_exp_cuda_dispatch.h,sha256=2ybl9Ory6qmP-6teJ-bCIW4bY12ugH_MQK1Vgtg5oAA,756 +torch/include/ATen/ops/linalg_matrix_exp_native.h,sha256=fCSF6X-h2HuD85wYmzYnTaCKDmGtcKq1x6-8T1gmMpg,598 +torch/include/ATen/ops/linalg_matrix_exp_ops.h,sha256=k73eMNzg3FYhINF5g6aCYI1FYi_qVfscXhFhIZ9DdgA,1629 +torch/include/ATen/ops/linalg_matrix_norm.h,sha256=ppU9QI5zWGznxRgnsUbYrQiRZ0gQKPJDiQ8Nwn2JCQ8,3189 +torch/include/ATen/ops/linalg_matrix_norm_compositeimplicitautograd_dispatch.h,sha256=-Z7WEWUWI0f8sfHBd0K8W8qiO6Krj4l2cFidi-3CaeA,1942 +torch/include/ATen/ops/linalg_matrix_norm_native.h,sha256=36ystJuti0i3upoP_fX3cO3piqTXWWr0yALsUJsRcrU,1210 +torch/include/ATen/ops/linalg_matrix_norm_ops.h,sha256=I8GNFsLbVLUqbLsMfMR6QKALeSX7xlqY2CkIH3JCuBY,4254 +torch/include/ATen/ops/linalg_matrix_power.h,sha256=mVTJjnaGnTTmD3RvmpJTa0dlKFSx2A3fKDvHiKwZq8M,1236 +torch/include/ATen/ops/linalg_matrix_power_compositeimplicitautograd_dispatch.h,sha256=OKHdFNGAPD64iUhWZ_dU0XWYdNBSGC8eotIlPNhTUk4,1018 +torch/include/ATen/ops/linalg_matrix_power_native.h,sha256=4-HyiZK7hpzpAqFPCUBfv_Z_7y4ZVt1GXYMzbUa2SpA,624 +torch/include/ATen/ops/linalg_matrix_power_ops.h,sha256=1k89vbEXxuQdbZFzFEmsJJEoVfTJi8hm5LZoVe2dM78,1717 +torch/include/ATen/ops/linalg_matrix_rank.h,sha256=UR7SMtSlj3MBceVg3xJ3tXJsa090jBtRJRzM3dROGTo,4973 +torch/include/ATen/ops/linalg_matrix_rank_compositeimplicitautograd_dispatch.h,sha256=cazqxhnoCTei96Xbfww19MCM0-hT08-P7FdElxsRv9o,2530 +torch/include/ATen/ops/linalg_matrix_rank_native.h,sha256=eZtrqGmanxuJ55cOpYiikGE36wpDyXc0nbv3G8Gjtww,1626 +torch/include/ATen/ops/linalg_matrix_rank_ops.h,sha256=3fhUvXO2ipwED2-z7XnVXBFM5T5e174dKUmlLSRSvvM,7164 +torch/include/ATen/ops/linalg_multi_dot.h,sha256=z2k1tYFP_bSUJW83k9pDTsB2e6ZURGFBMmPpmjbwYAY,1164 +torch/include/ATen/ops/linalg_multi_dot_compositeimplicitautograd_dispatch.h,sha256=fd2R8mbeFhUfQzhn_zMAlD82Ix09w2h41V6R6bywMZg,973 +torch/include/ATen/ops/linalg_multi_dot_native.h,sha256=aqA5rZ81LLSWEhkIpgE8pLJiNiNxInKmUn_rMPPExdo,594 +torch/include/ATen/ops/linalg_multi_dot_ops.h,sha256=ZYGXt_eGGoaj8aXsarmahqD0ovBTRA0PkWpggwdFx88,1621 +torch/include/ATen/ops/linalg_norm.h,sha256=yZOlqZv5N0l9olGIekOYRatYfX7ZXAWTkPn8_nLuUOM,3195 +torch/include/ATen/ops/linalg_norm_compositeimplicitautograd_dispatch.h,sha256=M_cqMzBDWDPIHkxiKJHufEO5dQVCKkaT01nTDl1aJ_k,2045 +torch/include/ATen/ops/linalg_norm_native.h,sha256=mjb9N_iuxY4lw4H23eWeclRuKGYDNlnKaDgX7yUUhDY,1271 +torch/include/ATen/ops/linalg_norm_ops.h,sha256=f3qliK0mDcPRn0PXLIY2i0rlgSxtVdOUTT1HrZImaGc,4364 +torch/include/ATen/ops/linalg_pinv.h,sha256=XNdhQ_qjPpM4JqQvFlYCdQe18wlOdTZPXXtjTW3WLAo,4744 +torch/include/ATen/ops/linalg_pinv_compositeexplicitautograd_dispatch.h,sha256=6AvMw7UdFzhs0EvVhgVqqYHWwltxTm9sYvJyImqpnqo,1113 +torch/include/ATen/ops/linalg_pinv_compositeexplicitautogradnonfunctional_dispatch.h,sha256=mZMTxLPkg9dexdU_NUZKs8Qw2oV024Ytc5aB9vRwXwI,930 +torch/include/ATen/ops/linalg_pinv_compositeimplicitautograd_dispatch.h,sha256=Ve6PNzCnKMqu2cjp3TXbuyhBJKxXAC6VrPUEQfD0CzM,1899 +torch/include/ATen/ops/linalg_pinv_native.h,sha256=gJ7chqSVVud_D8FeN4JnYRa1NjA3EMMJDltme5fz9to,1574 +torch/include/ATen/ops/linalg_pinv_ops.h,sha256=8ciDM7sr_AnggoE_yr8PVtd923XBbnFYlKeX9-zS7Pw,7020 +torch/include/ATen/ops/linalg_qr.h,sha256=Qadj2IB2qpNwG2HEqZYdWbMgXeQjPmHITsc7OmAf4rQ,1396 +torch/include/ATen/ops/linalg_qr_compositeexplicitautogradnonfunctional_dispatch.h,sha256=6spNlsrIiz31j50VWoGrHbavie8GRAn6-XstoZ9PMrk,871 +torch/include/ATen/ops/linalg_qr_cpu_dispatch.h,sha256=OTr23PVwLB_pQQz48Y8AEpi1QKFh9R1hCdLsPd2zK0c,1098 +torch/include/ATen/ops/linalg_qr_cuda_dispatch.h,sha256=E7KMO20H4y6g0yl1dUVQP2p-uDiVn1KR7kvaPyJ5fww,1100 +torch/include/ATen/ops/linalg_qr_meta.h,sha256=DwWWxhZLT23tBY5hC3AeESsjXyTtbzSjGlMGgyIzyeA,625 +torch/include/ATen/ops/linalg_qr_meta_dispatch.h,sha256=dJErAl9Xgk_rtf4FUMOYlVNxcbD5syc8La_CH2TYiTw,1100 +torch/include/ATen/ops/linalg_qr_native.h,sha256=t2F5iCe4OvlRILA04Xt6AW2WWyiy6y30SR-Lg5ZQe7Y,668 +torch/include/ATen/ops/linalg_qr_ops.h,sha256=dnoatcvop4_OwXalcuS80EOsZQQd4x-Ra3zZ0W_8GiM,1973 +torch/include/ATen/ops/linalg_slogdet.h,sha256=0PCFUVqiGIGo7Qj4AkXhkssOJU3VEBb7CJZ76tosLRo,1378 +torch/include/ATen/ops/linalg_slogdet_compositeimplicitautograd_dispatch.h,sha256=1EaoBAHvM7u8CqUmJNrivq3FWb3JBncFT1pMR-EY4rw,1090 +torch/include/ATen/ops/linalg_slogdet_native.h,sha256=_vb0-9d2BAEGH6UPJEZHSwiCXuJ_WG6WqiZMxwC5a4M,663 +torch/include/ATen/ops/linalg_slogdet_ops.h,sha256=RDQWzEt4IKHV5uglIgeKPfnxxcVHVTxTTorlErQNyqM,1890 +torch/include/ATen/ops/linalg_solve.h,sha256=JgdKXKKPZKZTBtPTfINUVZgx7p36YhBsTRJZXYcZgV0,1293 +torch/include/ATen/ops/linalg_solve_compositeimplicitautograd_dispatch.h,sha256=cL4nenT7ZuTma2yqKva9csxuO5H9DY3wkKf71ES-OB8,1064 +torch/include/ATen/ops/linalg_solve_ex.h,sha256=xFRXiCoQTedzysbSTRHZRmDqRl5sweV0964KfjFIhJE,1764 +torch/include/ATen/ops/linalg_solve_ex_compositeimplicitautograd_dispatch.h,sha256=CcygaDoyBU8CIcTD9jSXL7UdHo19p3_CYZSc8CD7gnY,1265 +torch/include/ATen/ops/linalg_solve_ex_native.h,sha256=GmaCR3wATY0QxrAPGSE8cP_YnqHcrIwtyXGqwHNVt7o,777 +torch/include/ATen/ops/linalg_solve_ex_ops.h,sha256=AV_3UbSpNbNNjvp5Z8XmyRQHjnUDJ706kx2ApxiBR8U,2258 +torch/include/ATen/ops/linalg_solve_native.h,sha256=O5eNw9u9ezNs8MjV-HdzzfHZLta7EWZiA1W0NAzt3PI,653 +torch/include/ATen/ops/linalg_solve_ops.h,sha256=Vs32mgfMayMthOZ5t0NC22VCynhiwo7qCXhV4yL_i0c,1820 +torch/include/ATen/ops/linalg_solve_triangular.h,sha256=iIXxUvSIl6v65HFHctr-OOHmUKoHceOfroBGBTdCOAs,1718 +torch/include/ATen/ops/linalg_solve_triangular_cpu_dispatch.h,sha256=rkgYTebF6HZHnx93hQ6R0GJWwpwU9fDROzYMu2M7Qec,1170 +torch/include/ATen/ops/linalg_solve_triangular_cuda_dispatch.h,sha256=2ztxlI0qElFPWzVcYfUqRxxnz1M8qlHti46Uo6qmN2g,1172 +torch/include/ATen/ops/linalg_solve_triangular_native.h,sha256=6lQnb9drUYEhLMib1cW33qF7QwudGlmbLjtSjCpMHRA,751 +torch/include/ATen/ops/linalg_solve_triangular_ops.h,sha256=cAg1iArLMT07yJH8sSGEfrgAxPvuX_Cv7T4IybYxNBE,2132 +torch/include/ATen/ops/linalg_svd.h,sha256=AnETFRZGF6HCgN8VSVD7jiLbEY1r3doj92HNwWptFj4,1808 +torch/include/ATen/ops/linalg_svd_compositeimplicitautograd_dispatch.h,sha256=h5VuLLtQ6E0Q3MzvBU6xGp4ggLFLgAo7IqxUDBNmufU,1353 +torch/include/ATen/ops/linalg_svd_native.h,sha256=Y6Zbar6fmcPSwj7LE9gwKj2pHJkzjZwruy-NK6ZrdWM,829 +torch/include/ATen/ops/linalg_svd_ops.h,sha256=3jRHiv9IMm63_5N90ofRNjaE1WPOumEg-EIToBfCUdg,2385 +torch/include/ATen/ops/linalg_svdvals.h,sha256=gjl3Ky7-ptsTmNvAxxOva8LmV7KLM9LqkzqZox6TceM,1333 +torch/include/ATen/ops/linalg_svdvals_compositeimplicitautograd_dispatch.h,sha256=JVXjFjIs0DAgHv8jT1Nlas7NAaYw80bKz0qGyQGzT1Y,1117 +torch/include/ATen/ops/linalg_svdvals_native.h,sha256=ojzrVF6FQZ2ZBhIVidFU0l0aY7yTJatZzYWwfWQU6Ys,685 +torch/include/ATen/ops/linalg_svdvals_ops.h,sha256=Gbs42l3wAh2bSsvFekeReSH8bxpK-pmkFEgrVsVVWf4,1870 +torch/include/ATen/ops/linalg_tensorinv.h,sha256=XHR-M7SfxadwwmxhvfAaDpye6CD22kP4lFq-gGgXDeE,1234 +torch/include/ATen/ops/linalg_tensorinv_compositeimplicitautograd_dispatch.h,sha256=cbKHMCgE8GnwN-C0Ovr2Vqq7kF5pYcweRZvQ-mkaxtQ,1019 +torch/include/ATen/ops/linalg_tensorinv_native.h,sha256=SYyS0FIXxFgoAyI50Ih8impX8PvbvFlG6XdMiLf40Bc,624 +torch/include/ATen/ops/linalg_tensorinv_ops.h,sha256=5Q7u3uCkjcnCel3WPu48Hvxm_7pErhNXQDQu3pj2ffg,1715 +torch/include/ATen/ops/linalg_tensorsolve.h,sha256=mPTCPAj97Cg3SZLrYZDrWo788GYr1iXs9ytaw8sONso,1496 +torch/include/ATen/ops/linalg_tensorsolve_compositeimplicitautograd_dispatch.h,sha256=vJ8vw1oOy8TQBus-7PCyzYBy6lRYE3NLvyNFe2hmEPk,1180 +torch/include/ATen/ops/linalg_tensorsolve_native.h,sha256=v7i8PA2lP1JzZ1DngLetoApR8_SQNMcoUYkxyxJon0c,727 +torch/include/ATen/ops/linalg_tensorsolve_ops.h,sha256=wlH8ueABKZircakbTYo2W0iPdSX7hC-3wgvrL9_6MiQ,2013 +torch/include/ATen/ops/linalg_vander.h,sha256=nSXu3WqYErnQY6fpKIVPiC3TXXwE1buLdew75231DOE,1610 +torch/include/ATen/ops/linalg_vander_compositeimplicitautograd_dispatch.h,sha256=Dmx4NaOZZ5g8o_y9taSZBSKhTtZRkcT1sj5FesJLc-A,947 +torch/include/ATen/ops/linalg_vander_native.h,sha256=f2anfXt_SH3CX_2MyMtYvnem6576ckjPQntTOJ3Vduo,555 +torch/include/ATen/ops/linalg_vander_ops.h,sha256=LJcZ-b0zLUWStBgJuP87uyGfafx4cphCnFc1XiSD4is,1087 +torch/include/ATen/ops/linalg_vecdot.h,sha256=33uOvv2hLK0QEL-fk85wd7Ns4y_Unje_hjgoVTXTJKw,1290 +torch/include/ATen/ops/linalg_vecdot_compositeimplicitautograd_dispatch.h,sha256=7FhuvPZT2c-JH6FKu9KWn6prRTxzZspVa_Pw-GOPk8A,1069 +torch/include/ATen/ops/linalg_vecdot_native.h,sha256=OKYZIng8f_X0o6qIsNZwVQVuvix1mKMh2dmXH2crnPU,657 +torch/include/ATen/ops/linalg_vecdot_ops.h,sha256=YbE3Mq770qEns83X8L5I5xMhVTYIzi6uIEyv3e6jD8M,1832 +torch/include/ATen/ops/linalg_vector_norm.h,sha256=CzbTNct6vuBGyzfPQ7YGvSY16eviMTev-J4mq-3Xhyg,1866 +torch/include/ATen/ops/linalg_vector_norm_compositeexplicitautogradnonfunctional_dispatch.h,sha256=9f7b95MVpSLRqh98UN6drY-k93sUXaj4Nz1U_DXIo10,969 +torch/include/ATen/ops/linalg_vector_norm_cpu_dispatch.h,sha256=JrMKWdXNp3I7GZjywxmbmOrxfzL3Evfsu5dbSqYaWcs,1332 +torch/include/ATen/ops/linalg_vector_norm_cuda_dispatch.h,sha256=HdqL_p4S95pno05c8sqMXOgY-Z_0RWu40_VI7DG7Pbs,1334 +torch/include/ATen/ops/linalg_vector_norm_meta.h,sha256=MTC5rLeClOKPIyQejM-0yCHsn_rrl4AGxdHjcGkCJOM,720 +torch/include/ATen/ops/linalg_vector_norm_meta_dispatch.h,sha256=h5qYEQ7Nf3QlmzQRPrHywffNbc8HKzZ2-APCeOdI5HY,1334 +torch/include/ATen/ops/linalg_vector_norm_native.h,sha256=oM-ds5-sWXi5FN85SJcaQSW227fLGC41ks-7M_X2N0M,761 +torch/include/ATen/ops/linalg_vector_norm_ops.h,sha256=WfXw3JcylTmdf49IGhMlP0jD_IpAzFZBwn5JCbhQAQQ,2382 +torch/include/ATen/ops/linear.h,sha256=i4_l_6fWgPDM3J-_A_HVNvlhn3zMeFO8l5dBxYoYcgc,1409 +torch/include/ATen/ops/linear_backward.h,sha256=r-KhEnBYyF-hOF8In--rXnntBHUFf9BcwkucQdMAhG4,2042 +torch/include/ATen/ops/linear_backward_compositeexplicitautograd_dispatch.h,sha256=ziZIHjcPwk-5JxJvEUgFhgd0EFn05OnWadzo_ddCvD8,1253 +torch/include/ATen/ops/linear_backward_native.h,sha256=SB_cFa7znQPxUb3eC-qLKMrVgzMCxHwtyGQx6GUd-gc,902 +torch/include/ATen/ops/linear_backward_ops.h,sha256=HlPP5D_ShKjCDf9g18OL2QiK7QKq7RDd_lOpfi__K4U,2638 +torch/include/ATen/ops/linear_compositeexplicitautograd_dispatch.h,sha256=KkG_vSff22DFNODvFKnAVZLieWW3KqgNJHoSRqph9s4,1034 +torch/include/ATen/ops/linear_compositeimplicitautograd_dispatch.h,sha256=GS-fSZveweBPNlukOhlYvgxxQjQ4MiJfU6jt16_mJKk,860 +torch/include/ATen/ops/linear_native.h,sha256=_PTz7OvDzZwYkvxIOiKBgx5Qg4IJ1YOd6kPaSUcOIfQ,854 +torch/include/ATen/ops/linear_ops.h,sha256=aACjGoJUg6RZy9w2V0N750sFOfhFhpAKIUSjXwhe5jA,2027 +torch/include/ATen/ops/linspace.h,sha256=xOW6fNhDdp0ZolhqwhdEtLFH_s2vBUho-0ASkT41KDE,6950 +torch/include/ATen/ops/linspace_compositeexplicitautograd_dispatch.h,sha256=GSTWLMPTsudD9TpvAx006CHe8t1NBFyO4yDVxqb6arY,2937 +torch/include/ATen/ops/linspace_cpu_dispatch.h,sha256=JVHrj_cl7YfZi7g2UntlGqaWZlEbe7VyGtXbpgoBZRE,931 +torch/include/ATen/ops/linspace_cuda_dispatch.h,sha256=TFIjorpyhCO4h46OpwB_iHVVGMoei5Z3f93EfDA7NGg,933 +torch/include/ATen/ops/linspace_meta_dispatch.h,sha256=SW8Ro1fApvgvt2WlBQYT_nGYJfhu7prK-2gkpAMb3kc,933 +torch/include/ATen/ops/linspace_native.h,sha256=md5O3kt53L_Nsaf0RFZKqRauBMQzpI_4KnH9QV51VXo,2068 +torch/include/ATen/ops/linspace_ops.h,sha256=kOSIM_fsWs3FQ7Pi4UAkLOv0DVEk0mhL2c7ZMMpTjkM,8244 +torch/include/ATen/ops/log.h,sha256=jla3btimNvIjruvuul01wJ1wVZzmHfCsZ-rmgwcapW4,1151 +torch/include/ATen/ops/log10.h,sha256=AAwGh3D_CTia4oIC4q5Qw0hRjujvXIDqv_07Pipr45w,1177 +torch/include/ATen/ops/log10_compositeexplicitautogradnonfunctional_dispatch.h,sha256=m-T5Lht5kV6_p_s2eDf8LSjIgo69aRXCZb0Yy-iXZYU,863 +torch/include/ATen/ops/log10_cpu_dispatch.h,sha256=IS5RSglcVkdiGs6-vbhhDpeyUINKtwz_NXROsukNxRA,950 +torch/include/ATen/ops/log10_cuda_dispatch.h,sha256=FUWlAd8aCXJIQqAHn7iqFyifYpmZLLqDrlLsJwcNqLQ,952 +torch/include/ATen/ops/log10_meta.h,sha256=FDO3SYlu8_OW3RCJv_Ol0TOWgFtVZTWokK9jWZP69DU,601 +torch/include/ATen/ops/log10_meta_dispatch.h,sha256=Zeob0tpDyHluSkPB8xQUbT9LBfXsApYZpd8RHYTFrJU,952 +torch/include/ATen/ops/log10_native.h,sha256=7FxC1V7yS3wUoI79XxzzYGH7UEz_slUCZsO-r6I-SJ4,616 +torch/include/ATen/ops/log10_ops.h,sha256=P4UKULhjohsAwm74eBJogHP3ZtLjbpeaosK30Gr6bSY,2064 +torch/include/ATen/ops/log1p.h,sha256=GipaoHaQOel3k9JjRCRYuTm_dOa76w8tg5GyfzkTjzc,1177 +torch/include/ATen/ops/log1p_compositeexplicitautogradnonfunctional_dispatch.h,sha256=XW20tRc0PEjr8az4YhS-sBYIPXGLXnLT_4UHe61_uJU,863 +torch/include/ATen/ops/log1p_cpu_dispatch.h,sha256=AR5G4slKywedUcTfF3pmiKMKVAckcm7nBWFt-KnONH8,950 +torch/include/ATen/ops/log1p_cuda_dispatch.h,sha256=wp1tKHb0eDOsCHsCoY-Guq3Y-tdOurG5qeVqijHbRkY,952 +torch/include/ATen/ops/log1p_meta.h,sha256=d4jNDJ71mro7mahuJrLqPPFHRRyZoTmrARkFtUajJf0,601 +torch/include/ATen/ops/log1p_meta_dispatch.h,sha256=1zcZdWA_yAD6k21971SEorN_FcqdV-JOuu1OOEgbkTs,952 +torch/include/ATen/ops/log1p_native.h,sha256=A-ZtkIboVh65g07-JwjS44FFh6K9JH8kI-6mHDQuGKc,1036 +torch/include/ATen/ops/log1p_ops.h,sha256=4ry8xjyQBFRc1jrv9UigXZICjXSu1E0wsWD3OlHOh98,2064 +torch/include/ATen/ops/log2.h,sha256=gbtSlk0NhLytltR_MVSqxoioyHBGrLZLppTpH8C72cI,1164 +torch/include/ATen/ops/log2_compositeexplicitautogradnonfunctional_dispatch.h,sha256=9lOoZAV3sWO4YrA9FnS4t8JvXNYWIpHcZR8eM_CBqAM,861 +torch/include/ATen/ops/log2_cpu_dispatch.h,sha256=sR6n55fpzvroxC_QAoQ1uKML55YjjTmptpPGFT7UZ-k,946 +torch/include/ATen/ops/log2_cuda_dispatch.h,sha256=Wimy2puCD97ccRiHNAWiBdW1Iq6wwI_noCOJMGMl-Fs,948 +torch/include/ATen/ops/log2_meta.h,sha256=dCFm09OMkfg0WrJbMaIhIY8Bdy_kTHRc7OotgFjfHBk,600 +torch/include/ATen/ops/log2_meta_dispatch.h,sha256=DgWEsEn34IWNsjVCaM0gDc3HDoSXHmzwg1ubJB4PAP0,948 +torch/include/ATen/ops/log2_native.h,sha256=J3-510l8O_KX64FYYTYRw2UmA62h-FPHet4AYUnKmy4,613 +torch/include/ATen/ops/log2_ops.h,sha256=aHC5emwL6jmdpjX3fkLya9O2-Mn_Wa-Wi0mZB7kos_8,2055 +torch/include/ATen/ops/log_compositeexplicitautogradnonfunctional_dispatch.h,sha256=LDvHxonRyHLAhaen7Jf1fGUSp6Acj1qqWWkRHGQLxME,859 +torch/include/ATen/ops/log_cpu_dispatch.h,sha256=ZA0Fbc5bo-n0I6-zlF192wDuK8PttCJNrfzs0gZNE84,942 +torch/include/ATen/ops/log_cuda_dispatch.h,sha256=1faZ9WEzwr0zM3fN51Zmr3RiZseFX4nUVdtTeweQMfM,944 +torch/include/ATen/ops/log_meta.h,sha256=fOhj3NH-rOQr_nmvq2HBMFZlKPjlYdn02j7V_JUOb5M,599 +torch/include/ATen/ops/log_meta_dispatch.h,sha256=y3VyrU5iUxElUX7Dw5qDBdBWzgkiIhUwJDyvkwcpIDw,944 +torch/include/ATen/ops/log_native.h,sha256=T0o12vzESKwtYpl2b_NkN0UdSgNjNRkuKp07YtOMHOs,610 +torch/include/ATen/ops/log_normal.h,sha256=3H-GwR8IeFRQZvpQ1aMk9r19jXcu1ZIKe1b3MBcy9jU,1553 +torch/include/ATen/ops/log_normal_compositeexplicitautograd_dispatch.h,sha256=FI2U-C9FCdCgKFn90Mde1_9FalTEOkvwBWanrCfgOE8,1197 +torch/include/ATen/ops/log_normal_cpu_dispatch.h,sha256=uPY9GCtsZkjx5HTlcuWzY5PB2NC_18qLJrtmYRaz26Q,830 +torch/include/ATen/ops/log_normal_cuda_dispatch.h,sha256=W9VWcEEMxuVYurwUFZ2kFwc1YCkkGLTin4BzeckXY8Q,832 +torch/include/ATen/ops/log_normal_meta_dispatch.h,sha256=lFHCEk0Y4Sbo7Q3KX4lHmumwjWdBLLHqWwecx90CUmI,832 +torch/include/ATen/ops/log_normal_native.h,sha256=yE6BkYRLaFdPhEENuXuDAkkGCP2VP0VVpF5QHjdD0zs,879 +torch/include/ATen/ops/log_normal_ops.h,sha256=epiSbDw_Hw2WoKwAMBFbqQI6zUN7T1cpg3LTRIeKoKA,2823 +torch/include/ATen/ops/log_ops.h,sha256=xZt9zqLugFFnS6OOnK17BJjht0_7QLq6zi_k-fILgcA,2046 +torch/include/ATen/ops/log_sigmoid.h,sha256=hsTHF7JYDflH9VKJd5n6vO1OSnNjhPRpcXiFJuJK9Zg,1093 +torch/include/ATen/ops/log_sigmoid_backward.h,sha256=9wNoLo4pO0F0cDYS4l-yB2EKWdcK_goLc3jtVEa0lrc,1598 +torch/include/ATen/ops/log_sigmoid_backward_cpu_dispatch.h,sha256=w389G_vvr8WMbDfILS6mrA5iAtPoBcffFPNPqwcqu6Q,1135 +torch/include/ATen/ops/log_sigmoid_backward_cuda_dispatch.h,sha256=ug6k4QhII2xSdE8Vspzn7JWPTnXmWORqkiUPOLQlA1w,1137 +torch/include/ATen/ops/log_sigmoid_backward_native.h,sha256=LSfYeJDNcR57usEq7IsRVM8dspe1YCujk5WYEFk7ZSw,1034 +torch/include/ATen/ops/log_sigmoid_backward_ops.h,sha256=ay_2edTZuG4L9vm6J5N6vy8IxzdvPTcQhLnt4Ps6tX8,2075 +torch/include/ATen/ops/log_sigmoid_compositeimplicitautograd_dispatch.h,sha256=gOZuTTko3JdjIJJcoS2OcZNKPrIQ9WPBEeMPcYZEMZs,961 +torch/include/ATen/ops/log_sigmoid_forward.h,sha256=17AsMlHC3OFm9fyhCZ-wjShcIYktXHaTEbDKh0M8Sc8,1430 +torch/include/ATen/ops/log_sigmoid_forward_cpu_dispatch.h,sha256=P_9hSV5NXT-D48fOkC0ZQi40YrFnpCjNFjdwm_0J-88,1068 +torch/include/ATen/ops/log_sigmoid_forward_cuda_dispatch.h,sha256=deNvfbB75RZp6y-2Nsp-Kd66lVQqDyDruyORNNgRGZU,1070 +torch/include/ATen/ops/log_sigmoid_forward_native.h,sha256=HRCOBKCVyuLmpi7Woq5eC8zhqJjoD3BFlRETChy1z5U,932 +torch/include/ATen/ops/log_sigmoid_forward_ops.h,sha256=PaXGchOqQ-IqPe9M-6fQ1NkbWc6--omMuvlCM8CZHXA,1928 +torch/include/ATen/ops/log_sigmoid_native.h,sha256=r5nyMuZLLCTAXh4xOknN-COu4vO3K5ORpEyQnGcimJw,586 +torch/include/ATen/ops/log_sigmoid_ops.h,sha256=-PjUS4h61--ECqqL0U5MH1sYjjiAPH2RQTQhERxCtPQ,1593 +torch/include/ATen/ops/log_softmax.h,sha256=GQb0wCvYfuKOB1LS2wMCFW7fnLfBHzl5LQjA9_TxYSo,1732 +torch/include/ATen/ops/log_softmax_compositeexplicitautograd_dispatch.h,sha256=UukHdvEvMZ7fmXQTbYeHSHDm-7JFy4HkfUvd7z04hkQ,1020 +torch/include/ATen/ops/log_softmax_compositeimplicitautograd_dispatch.h,sha256=aTTMpH0L6h6pe5CdeOitmKqlVHZ53isQp4dzwHeWEmM,990 +torch/include/ATen/ops/log_softmax_native.h,sha256=SWWJqLim87ykg6BjtUQXr_0AAie9m8CsrYgjq2zJ_9Q,836 +torch/include/ATen/ops/log_softmax_ops.h,sha256=GdPplNmBgVgpMHbihgIN0upDjYWAe0zPYoe_y7mLODE,2721 +torch/include/ATen/ops/logaddexp.h,sha256=YokFbl6br4g2GHx4fVuSq8SFj0ZyUh35F3-XJ57ED1w,1214 +torch/include/ATen/ops/logaddexp2.h,sha256=Ozovm8kU8LdWkvO_A67VGCJSmU6h5PZH7tVo_iL7bBo,1224 +torch/include/ATen/ops/logaddexp2_compositeexplicitautogradnonfunctional_dispatch.h,sha256=_bRu_kGwj81bPDAfBznZwAr2UnCU91H3wBarrIj6fow,843 +torch/include/ATen/ops/logaddexp2_cpu_dispatch.h,sha256=DOnYEX6DVT4QyiH7rNbrXn4n4nTAQpUeD3UhC3zTFIA,992 +torch/include/ATen/ops/logaddexp2_cuda_dispatch.h,sha256=lBEiTzjShIOdgPjvbqNYV2rWiyDBTjU4FvEGahJQYMU,994 +torch/include/ATen/ops/logaddexp2_meta.h,sha256=wnTfJNikeUqf_sZof-JjuKlRKxSByfI2qTG6LtGmxow,632 +torch/include/ATen/ops/logaddexp2_meta_dispatch.h,sha256=eQHbromfamm9LNpz7RM7-AWXt9sy87pdHTySpwvrMvQ,994 +torch/include/ATen/ops/logaddexp2_native.h,sha256=japKiIRPSvLRT80dHOAxwozgnQ9AgQa6YnldufSY1QM,657 +torch/include/ATen/ops/logaddexp2_ops.h,sha256=A2G-5z7EXbe9F2yX1w5F8ClJjA2pdJXRA8ZOgjZVh6A,1759 +torch/include/ATen/ops/logaddexp_compositeexplicitautogradnonfunctional_dispatch.h,sha256=r6ZEkNIW_O9SJkEtsq7LF3xKDfN0F2J61EHHCreqBuw,842 +torch/include/ATen/ops/logaddexp_cpu_dispatch.h,sha256=J3KMv4X1nMvzvPLuddqxTIbpKjzHHWBbeDwIdfYdUJU,989 +torch/include/ATen/ops/logaddexp_cuda_dispatch.h,sha256=vVgynp6ss53EUIfrOlJ017afE9rpMXIrmj-vAuc6awQ,991 +torch/include/ATen/ops/logaddexp_meta.h,sha256=Wm9S45qJfF5FJsfLYtNi9C1-xm59eDpOvarPtVJd6ss,631 +torch/include/ATen/ops/logaddexp_meta_dispatch.h,sha256=i1_lVQhSSjpPh3dQ0S08grECPt7lf92r_xM9Y5DWWDs,991 +torch/include/ATen/ops/logaddexp_native.h,sha256=Sb6LkfQK_8jn3ikjmr2bEfyWMkPhjESTjy9V3y7qCQ8,654 +torch/include/ATen/ops/logaddexp_ops.h,sha256=QavNMYwFK-91sITNfMMDNFeymdipI4apN2ELzTVMKsw,1753 +torch/include/ATen/ops/logcumsumexp.h,sha256=NWPDjWLQtY0SHy-OYRAeLaZBSVL6ycaZjSKyyG6hOQE,1930 +torch/include/ATen/ops/logcumsumexp_compositeexplicitautograd_dispatch.h,sha256=9khBfJcVPbyJEAJL8mSEsIOGYBJSIyo06XaaSf7MGxo,1003 +torch/include/ATen/ops/logcumsumexp_compositeimplicitautograd_dispatch.h,sha256=WCmx0AKiEU29tkWUz4mlnvQe7RFG4YLnp1DN7a8Dr7c,1015 +torch/include/ATen/ops/logcumsumexp_native.h,sha256=V9GBB8f1Zu9wGMTlmeANDb5Sv2jRS5M57DiJhcSUzI0,794 +torch/include/ATen/ops/logcumsumexp_ops.h,sha256=BHjNqZayve3QAmFj1xLB8fjv-g0OHG_3kfHZfLStYsQ,3002 +torch/include/ATen/ops/logdet.h,sha256=qZqBAkbABg4-Zl13pAO4PG1MqC03RTG9IBusq3lBo70,644 +torch/include/ATen/ops/logdet_compositeimplicitautograd_dispatch.h,sha256=ll6mmji_0ZuEuaAv8c-RB61n6vHoA7pzuHXm_HGnnZI,787 +torch/include/ATen/ops/logdet_native.h,sha256=-aBcRd3SPcX462xBqnWNzbRO2BtFSD7lY-R7IrPnOcI,497 +torch/include/ATen/ops/logdet_ops.h,sha256=zyfVoq-F5Yh-svWFg57wZsCKtp8kyP69sgv7YMG8UV0,962 +torch/include/ATen/ops/logical_and.h,sha256=ka1fxNT35kvpacmkapNkTFRhikWkgPiKlaIxwAPmuqw,1234 +torch/include/ATen/ops/logical_and_compositeexplicitautograd_dispatch.h,sha256=JTdsIPhezL2BGb_CH08uENjXW25f3JlsgORWNj10B2E,901 +torch/include/ATen/ops/logical_and_cpu_dispatch.h,sha256=G2NmF13Bv5jCSjy_NeTmAywJqL4hRYP4LzeAZNfK8t8,909 +torch/include/ATen/ops/logical_and_cuda_dispatch.h,sha256=vLFhEeFJTfgQt09snnRjc-0pOmsODIzVlBy_B7Cykew,911 +torch/include/ATen/ops/logical_and_native.h,sha256=9-QQSHSpEu22ZdpsnU-qUubf0pAmURCpwCG1SAU7EMM,721 +torch/include/ATen/ops/logical_and_ops.h,sha256=maHTOOrsGIkSHZqyK_bA7a4XSLWfQipCMcvaq2oYrZo,2376 +torch/include/ATen/ops/logical_not.h,sha256=A2Xw2ECXRJbOW-GarxB04TdBxd9csU8B-Jf244Kg-54,1093 +torch/include/ATen/ops/logical_not_compositeexplicitautograd_dispatch.h,sha256=eN_zb5FF-w8wa2kmMtKJ4VDTpMjhA0Wr4nR_4D408xk,849 +torch/include/ATen/ops/logical_not_cpu_dispatch.h,sha256=-0NeXyOgPP3X0hmORh4cMSqGzCbN5xvxr6rcaIM9IAs,857 +torch/include/ATen/ops/logical_not_cuda_dispatch.h,sha256=zhst5qE49Iqh0UZtW8qayyuHikhV_OtcRfJMRxUH90o,859 +torch/include/ATen/ops/logical_not_native.h,sha256=TtQxMLeHOLTwyf-1absEkEGsa8AOcW2ARYTOprMH6_4,786 +torch/include/ATen/ops/logical_not_ops.h,sha256=SxEq9olW2AqF4HIU9ftRgVHLk4Dl6ZoIXalX25iDm1E,2118 +torch/include/ATen/ops/logical_or.h,sha256=LlVQcxVipHuv9jNOVShWPECQvwrAjEXhJZgxmSVHf2Q,1224 +torch/include/ATen/ops/logical_or_compositeexplicitautograd_dispatch.h,sha256=9dDxtNwXtx60f4G0oHDjti_KvUGcVy-8A2yXfMgdwqI,899 +torch/include/ATen/ops/logical_or_cpu_dispatch.h,sha256=YepEaEDNWaZp9FpuFP4WA0OLQtZryN0ivrSTbwH2wg0,907 +torch/include/ATen/ops/logical_or_cuda_dispatch.h,sha256=S1xJfRroy2IkBNJp2IzuY9ewZV9VdiHteZpXIb9k9T4,909 +torch/include/ATen/ops/logical_or_native.h,sha256=gJMNSL24lxcP3a5IC1qyuhO8JAIG14J7Wr5dgmq_9ss,718 +torch/include/ATen/ops/logical_or_ops.h,sha256=iJQ8NM91wY63L9pvAe0pHvM3oL9eXersEtjXtZPKprE,2367 +torch/include/ATen/ops/logical_xor.h,sha256=WKrmSodPNAwspHKfsNdiAGltHycr6DejD230S9fBdpQ,1234 +torch/include/ATen/ops/logical_xor_compositeexplicitautograd_dispatch.h,sha256=DCSwtgLLBnSBChasP-0ei23_xcWaZxh9xRznYYZohlI,901 +torch/include/ATen/ops/logical_xor_cpu_dispatch.h,sha256=X_zoJQ3dLZEZ55TkQtcwnbZd1KlzM8E0j-03rvrfDuQ,909 +torch/include/ATen/ops/logical_xor_cuda_dispatch.h,sha256=_iG2mZcP7UrQH-_QyVLfXviDikhLEFr06PykWzA2qjk,911 +torch/include/ATen/ops/logical_xor_native.h,sha256=b2sEIwUZ1RZk0lk_yLpc6epOsSW1403npQcoFc6pX1M,721 +torch/include/ATen/ops/logical_xor_ops.h,sha256=nd812EMr2Fg_i1Xx2H6kARW6J_mXoaP4nvNAN4vg20k,2376 +torch/include/ATen/ops/logit.h,sha256=bmbYvMQhnMrBRq5X1W_Tv--heACvrpwF-qy_DAYXW9A,1426 +torch/include/ATen/ops/logit_backward.h,sha256=BlZLm6Av9W4KhEVJzethAk0oWk8LKOC0Qzk6aUJKLbI,1571 +torch/include/ATen/ops/logit_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=otuIVGsE9SpEmQhSyAA352bQ6MtgZdrE-vHoJrY8mYw,897 +torch/include/ATen/ops/logit_backward_cpu_dispatch.h,sha256=xBBRm0ICDBLNwCbvGr68S-ZQiXqd5K4HSczC1MyFGog,1153 +torch/include/ATen/ops/logit_backward_cuda_dispatch.h,sha256=uRpzMglkMAKYmRK_ccKzfJQx_CL_IBs68hC9FK58D6g,1155 +torch/include/ATen/ops/logit_backward_meta.h,sha256=PUS3etrQzg3wcsz9zs4q6SNDYUuYlgrnTJBqW2euxcM,671 +torch/include/ATen/ops/logit_backward_meta_dispatch.h,sha256=ezw7UGOr51vTrzuXUejPdg_UmvLDVeQIfF7FR-BAaDg,1155 +torch/include/ATen/ops/logit_backward_native.h,sha256=fItYvMEx9nSVwZDdGmhiSLLpT5_VdUUKdv4jia-nyIU,711 +torch/include/ATen/ops/logit_backward_ops.h,sha256=UiONM3XHwX4Cw8ywePXLH1XsWgC5bb03SNH3ECImWuE,2061 +torch/include/ATen/ops/logit_cpu_dispatch.h,sha256=AnAmNi1cE9EkidgK87xa97xLUYBAYYKrKt5l23MDHjw,1111 +torch/include/ATen/ops/logit_cuda_dispatch.h,sha256=SgCMhzm2bL8rX4uPln35cZHl072mIYytwf4kgweeUgQ,1113 +torch/include/ATen/ops/logit_meta_dispatch.h,sha256=TjwHhFT4b-HLtD3H_MHsaIVvFhYoYM3D-ipsi2aeNXc,785 +torch/include/ATen/ops/logit_native.h,sha256=Z4rY57caPltET-47xsxCUjvx23qn45mzzYzBvqi5VYY,742 +torch/include/ATen/ops/logit_ops.h,sha256=Uc3X9jkaDWSoQ_jW1GalwyxOSCqji_t6HydevGc60As,2364 +torch/include/ATen/ops/logspace.h,sha256=10cQpWwQYjytNEFH4paQivCrn9B2b-oAixq1gz4ksM0,7566 +torch/include/ATen/ops/logspace_compositeexplicitautograd_dispatch.h,sha256=pZdtvNemo-Uu4T13kTnDMbrgf-6YKX3y1YMmxu8lHcg,3154 +torch/include/ATen/ops/logspace_cpu_dispatch.h,sha256=xQ-ekKZMpFmvwp65krkaQyCRX2_68r-c2qKZ5_FEtps,962 +torch/include/ATen/ops/logspace_cuda_dispatch.h,sha256=hNxvc8l3tsaP1af4qWbkLwabEZKvKsYmSFIixXi0Xz0,964 +torch/include/ATen/ops/logspace_meta_dispatch.h,sha256=3k1mpi63_q4-5qWmvbjNsTO978WwaewmnWsw0TPvfUY,964 +torch/include/ATen/ops/logspace_native.h,sha256=eLwVSfK9ICVS5n9Y2_JjCSTMRfkwMj5LYhNsEUD-KR4,2205 +torch/include/ATen/ops/logspace_ops.h,sha256=ocXpSQ3iDRVHuqByuZc3NdT7hVcwEDDHO8mjlP0111s,8652 +torch/include/ATen/ops/logsumexp.h,sha256=GCFSsVP4MOt1sFWXZk6fxiL7NBzisdi0P2WwZIbZ9Fc,2197 +torch/include/ATen/ops/logsumexp_compositeexplicitautograd_dispatch.h,sha256=ypPcTNoS9GXGl76AZS1BSDiPbCLrMdKOPhA_xW5Fqto,831 +torch/include/ATen/ops/logsumexp_compositeexplicitautogradnonfunctional_dispatch.h,sha256=OLo0l7KHFMVs1GRquhk4lAz3EhKhRYifWT9ETEZnR8s,999 +torch/include/ATen/ops/logsumexp_compositeimplicitautograd_dispatch.h,sha256=UkryT07Ooiwmb-Byki2RG7TqOpQmM0rmLQNRxO4enYE,1072 +torch/include/ATen/ops/logsumexp_native.h,sha256=fySyJmwAzPxnGcgoSm_Da8qJMTrqiNM6KRWOiv13K4Y,874 +torch/include/ATen/ops/logsumexp_ops.h,sha256=aftHzIwxP3VqYHk5QoGDcnz5xxuy44mwcgQ7Xx3Bho8,3254 +torch/include/ATen/ops/lshift.h,sha256=7FR909k-sb4QVqjo5AkaoW63ZUXrSWyoT5_bpvuhhB4,2020 +torch/include/ATen/ops/lshift_compositeexplicitautograd_dispatch.h,sha256=IVFjsHQ-xrShrrWgGQrm2d3YbXNTfSKQTWGlCmjAEW4,1170 +torch/include/ATen/ops/lshift_cpu_dispatch.h,sha256=HLXZhQNRhSpma1uD2bbYnX35XFkPcAzhw0ssp7k34Bg,1022 +torch/include/ATen/ops/lshift_cuda_dispatch.h,sha256=jU2BZ-U59cvO8Dibc7bGWVcy-9v3QoS7Jq5AxhEZB8I,1024 +torch/include/ATen/ops/lshift_meta_dispatch.h,sha256=gyQmMB8g-91bG2N5WR4nBbEC8c6XK4GeQ7ZVnXt9A7A,854 +torch/include/ATen/ops/lshift_native.h,sha256=eElf2E15fHxcoiOylulRbmYYnOz--yh96ytkdCSl1I0,1008 +torch/include/ATen/ops/lshift_ops.h,sha256=1l18XxRHgJax39u6dqO_l1qvPgBV9-dzMGeBmfpCJUo,4405 +torch/include/ATen/ops/lstm.h,sha256=LySXLzwVO3SSU-2WJ7_PVd-UhqqmmbFo8yRTVa_UjZw,1625 +torch/include/ATen/ops/lstm_cell.h,sha256=_BojE-aVD0KkF6yY_t7gwz2gULdeqTMMAR6z5pZWwNc,958 +torch/include/ATen/ops/lstm_cell_compositeimplicitautograd_dispatch.h,sha256=vSDw6OHk196zhYNqUmKyTP6jtsYO4NJtXekBlPGRSOg,975 +torch/include/ATen/ops/lstm_cell_native.h,sha256=QzhU4E_NV6-NMjiDJU8yWrkyj9TgiCfVP2IWt_RW_Yk,685 +torch/include/ATen/ops/lstm_cell_ops.h,sha256=_a02CaTr4axhEgaSEKLJJ3uAy_mVB_7e6xLtOXAdWjA,1572 +torch/include/ATen/ops/lstm_compositeimplicitautograd_dispatch.h,sha256=cZ7MZKuEtdSca9qIpkhSmUN7A-qzBQMU-W7GoRvvuog,1215 +torch/include/ATen/ops/lstm_mps_backward.h,sha256=U2T4Aw89c05kRGM14kF14oWeFkqRJyyKzt_5-5AOqME,3691 +torch/include/ATen/ops/lstm_mps_backward_compositeexplicitautograd_dispatch.h,sha256=2jtNZLCm-YQGPXZjyUiETrST9V3q-eURdfRtaSCDMGk,1737 +torch/include/ATen/ops/lstm_mps_backward_native.h,sha256=Ph5Ou-mRd7fQsqhN9JD9ghVjQ6SGDgm_BFclWlZ7QCs,944 +torch/include/ATen/ops/lstm_mps_backward_ops.h,sha256=C_jvy9RsdwQyJujcY9WYDzRuwU8SiTa7LIPccM6eenI,4450 +torch/include/ATen/ops/lstm_native.h,sha256=EWd8gVe_kattHnvY2h8yMjXmFNz1Rcw-4cPNpVIhVKY,925 +torch/include/ATen/ops/lstm_ops.h,sha256=pVTSzj9GlinFm4a8TIWNMTk7unsjfkXUBzNcZKMi_0g,2773 +torch/include/ATen/ops/lt.h,sha256=hL07Z-vJH8UuHBPSnAup_v2k4zCjYxIjd0h1b0KmIBU,1872 +torch/include/ATen/ops/lt_compositeexplicitautogradnonfunctional_dispatch.h,sha256=cDcw01H_DNWYfPiJS0sMZ2rSwNuTkf20ReJ2VBMKtgQ,1060 +torch/include/ATen/ops/lt_cpu_dispatch.h,sha256=EJ0_MpyqdqLIKCFgO5I14K7CQq1jyI1obN7TpJt5gdE,1396 +torch/include/ATen/ops/lt_cuda_dispatch.h,sha256=GgJFuNMLI2GiseqhrB4BJ6d9NWTaiVKAm5hN5ZeNVzk,1398 +torch/include/ATen/ops/lt_meta.h,sha256=7K48qc2FeTZZNel_UhzKG4GgwJxlFHqdLItnMW6_ndw,783 +torch/include/ATen/ops/lt_meta_dispatch.h,sha256=ZzpTBPV3FovQ1L64_wouxVEWuaYgx59HBCpTiVmkpYM,1398 +torch/include/ATen/ops/lt_native.h,sha256=Ei-c_O9gE5BuAlEAIvgeNwEAJ-slPgfDVlHf7XusLG8,1235 +torch/include/ATen/ops/lt_ops.h,sha256=pjfy7nzvgh70Qs33SfEvBN70L61p47WsF_1_VSZYB90,4261 +torch/include/ATen/ops/lu_solve.h,sha256=fNxL77PISQIBDInBordibK4cn323TI80mbmQJQIM2Yg,1399 +torch/include/ATen/ops/lu_solve_compositeimplicitautograd_dispatch.h,sha256=5hDUimd7Tf8VkmDjrwJwj2oxiqq6XHhj_5KOEvG7kfc,1126 +torch/include/ATen/ops/lu_solve_native.h,sha256=E38YvEo_-VnMuWHKbqnILFjImLO9sEBF9GYwShQ8mdw,696 +torch/include/ATen/ops/lu_solve_ops.h,sha256=gSNyqpoxrghZsJ8dVqf8fdMHUjHpX5J3Gey1pkQsURU,1955 +torch/include/ATen/ops/lu_unpack.h,sha256=g-To4SNZeFRJHMkXcfKucL5fck_xSGBFoHUra6PyLZI,1963 +torch/include/ATen/ops/lu_unpack_compositeexplicitautogradnonfunctional_dispatch.h,sha256=MdZAjCKbNNoGJBIwmZtV-MrNv3PpqpIhj_aChJHcc1E,933 +torch/include/ATen/ops/lu_unpack_cpu_dispatch.h,sha256=x55j_aiHgX_d6qTHQLyNqLQ7I6zqGT1Wvnp2uHqHloc,1320 +torch/include/ATen/ops/lu_unpack_cuda_dispatch.h,sha256=AlBwXZ6afW4DlKDPKjxqGnpoPH2HSOS9trTjrP2tIAQ,1322 +torch/include/ATen/ops/lu_unpack_meta.h,sha256=AX5XA40eWrzjnkc690E3qyGUaRmnTQ_f85aCL3uiLJk,676 +torch/include/ATen/ops/lu_unpack_meta_dispatch.h,sha256=kLaQu5PVsxypBteAU2iN11zF33kDJVBe5cKNpJ6NSkM,1322 +torch/include/ATen/ops/lu_unpack_native.h,sha256=-fDYbJ5JrK8mNWZ-HUV92yUadER0aqaOfRJiw_CsjuQ,741 +torch/include/ATen/ops/lu_unpack_ops.h,sha256=hyOmEN7aI00S24iDhPxOHm174IwFsKaeQVXlkH-BbKo,2465 +torch/include/ATen/ops/mH.h,sha256=947sz8tm4WqTrFphZiVWgSPGzAKQulvbIS_L5mcbBJI,502 +torch/include/ATen/ops/mH_compositeimplicitautograd_dispatch.h,sha256=1wb7xnXxTFWICKpsB0BYmMjsGH18s0580IRMaozP39c,783 +torch/include/ATen/ops/mH_native.h,sha256=xRDtIdpSbRyMKGN9LhEfNdjPn5GXO8QOe4PXOC8ljpw,493 +torch/include/ATen/ops/mH_ops.h,sha256=2aZE0INCUqFJ1-bGNEcjak2d14YHPDCpgIN7q775g38,956 +torch/include/ATen/ops/mT.h,sha256=clv3TptivTUVnm08hLeaP133QpXHvBSUEJwA82eY71E,502 +torch/include/ATen/ops/mT_compositeimplicitautograd_dispatch.h,sha256=xKuANkqb7E40nATpR82x4SSUt-wiy5iaU7B7JMNrMOM,783 +torch/include/ATen/ops/mT_native.h,sha256=2vAIUsX-imNoUUwWKKJvQs2apSNL22miEYjaeesHcAs,493 +torch/include/ATen/ops/mT_ops.h,sha256=1uy49CVWZKB98A9bRd48wVZjlztf0YY5a6t2QrnDUtA,956 +torch/include/ATen/ops/margin_ranking_loss.h,sha256=djsp-NVCH8fjeaZM_5jFzDbDdye2P6uUxFvma1nZ5Xg,917 +torch/include/ATen/ops/margin_ranking_loss_compositeimplicitautograd_dispatch.h,sha256=t1YQVabL6kuGR9A-e1rJN7u4wyyL9U1maD6tLxjjjJo,914 +torch/include/ATen/ops/margin_ranking_loss_native.h,sha256=A_sA_Puf0ApNGO8MXge7Ha7K_Wk-YiEnP1n11NhlD-U,624 +torch/include/ATen/ops/margin_ranking_loss_ops.h,sha256=kazI8agS6koKpo8Fvfd59Azrr4EQyHgdtuT-LMv-ALY,1308 +torch/include/ATen/ops/masked_fill.h,sha256=spdy587nOGxxfGEQVGveCtyIaADF0RUNAGLfk57oeL8,2307 +torch/include/ATen/ops/masked_fill_compositeexplicitautograd_dispatch.h,sha256=msf_kxy1bIMu8w4JBLzsBrLmK1H5snFWh4GefLpKVTc,1496 +torch/include/ATen/ops/masked_fill_cpu_dispatch.h,sha256=53qRrvpKsdBZqKODkszPA0PywPBdPa_EvhqGmVpJi2Q,904 +torch/include/ATen/ops/masked_fill_cuda_dispatch.h,sha256=0MT5nuxalieqeUQ5RqeRalYwFZ7duQRwMko0-Fd5NvM,906 +torch/include/ATen/ops/masked_fill_meta_dispatch.h,sha256=9r0BpuWQggnQrtW72ZIv2o81kzakEqnd7-x2ibyEFfA,906 +torch/include/ATen/ops/masked_fill_native.h,sha256=ieDm93anRfOi8LeOUNX38CDmtBPgAJ94cghzF5GeyzE,2012 +torch/include/ATen/ops/masked_fill_ops.h,sha256=EzyJIVAamc8A4HIqnJbppvIkzOrO4x0aGDHQe4BnScQ,4921 +torch/include/ATen/ops/masked_scatter.h,sha256=WpnIMnmUMtMo0FklvEuiWNe8ke5tAuIypXHsH_aWjlM,1405 +torch/include/ATen/ops/masked_scatter_backward.h,sha256=ZtldmpBIpe7tPpHbGEGETu6EH6wNArLtHF3O2gK9uuk,1814 +torch/include/ATen/ops/masked_scatter_backward_compositeexplicitautograd_dispatch.h,sha256=TQTlQLDXYwA1vXJ_dOW3hJ4NVx3ddamvHeTWMnjB3Cg,997 +torch/include/ATen/ops/masked_scatter_backward_native.h,sha256=kGHDnLwxCEo2rdX1JwjIAi6U_nh8FLEaupMWq_KflxQ,580 +torch/include/ATen/ops/masked_scatter_backward_ops.h,sha256=ni1hptcLY1eFL9zWuXcEV5QfhMfiF4cTsXAA89id_dc,1208 +torch/include/ATen/ops/masked_scatter_compositeexplicitautograd_dispatch.h,sha256=5cdmUB6EbKaJJ1yrNT-BORDkHZwqSuVt9SvSzMDyxo0,1126 +torch/include/ATen/ops/masked_scatter_cpu_dispatch.h,sha256=P1Swoh3a_qxkUak-NwDQhyFvtR5YmuB8_Fb3njeoic4,800 +torch/include/ATen/ops/masked_scatter_cuda_dispatch.h,sha256=yqGUQrsEn4jYau4VGa59DnxxV11QhsaPZjhm0GG0rxU,802 +torch/include/ATen/ops/masked_scatter_meta_dispatch.h,sha256=dZDC8i36cbEJKBzPDSVs9eH3Y9MZAxVjj2bVODjtVMc,802 +torch/include/ATen/ops/masked_scatter_native.h,sha256=H1PB5PgoGTyUZIE_QfZr15BxeMolkUnAv3u1uGdxqa0,929 +torch/include/ATen/ops/masked_scatter_ops.h,sha256=qC37ObJU0YWlqo5Ns50-B66hw_NPOG5YdTmUKOtcipQ,2661 +torch/include/ATen/ops/masked_select.h,sha256=NqcM20u-WwiiD_F_Xq5xY43SMSl0Du2YByfVKPd5z6Q,1245 +torch/include/ATen/ops/masked_select_backward.h,sha256=DaaBF1Q4dg8REFzhQVAZZ0GV8ZCCbPZ0WvdBuvATd9A,799 +torch/include/ATen/ops/masked_select_backward_compositeimplicitautograd_dispatch.h,sha256=e3Jio-_PnMGJ5hSeNTReYDnpJ2suyE24vTqW1eO-tNc,854 +torch/include/ATen/ops/masked_select_backward_native.h,sha256=hrbh7ytULGW_E_HxiJA2nWNwHhIspHJarUxZJwHKl0Y,564 +torch/include/ATen/ops/masked_select_backward_ops.h,sha256=liabNuYs2tlObSGmNNIlvcgEneKIG7zLyTq7pVBq64s,1179 +torch/include/ATen/ops/masked_select_cpu_dispatch.h,sha256=4xnWkxQwGmLtyR--fM2nm1LQzTgUz048oP8-vZEmDF4,998 +torch/include/ATen/ops/masked_select_cuda_dispatch.h,sha256=bPFL9eK-avekNbM2gBkAOueUXGP6z4HOR8_J70EQS5E,1000 +torch/include/ATen/ops/masked_select_native.h,sha256=Mtg3pYaWBJKCDX0mQ8r3GH6P3PVsiypEqwIg18EJVno,856 +torch/include/ATen/ops/masked_select_ops.h,sha256=y_QbWiNzVbaUUrYhYU1UAM1sv4hWv1C3bD0Te52LL3U,1771 +torch/include/ATen/ops/matmul.h,sha256=dEzXAp4YToQonQGDAXDQt8v6cdKkUndbeEti5l58esk,1184 +torch/include/ATen/ops/matmul_backward.h,sha256=gcNUfwRfCHo6notlNKlddupiD_ktN0Ql_iOUVeQsFQw,1754 +torch/include/ATen/ops/matmul_backward_compositeexplicitautograd_dispatch.h,sha256=sG3wWCZm3YIijcPctAzRouMEay89FaVxuVOlLNrJGAs,1159 +torch/include/ATen/ops/matmul_backward_native.h,sha256=5gexnaMjl9k-Q3Xx9meE9olKyMGCzfbFuHeg1j8bnWY,829 +torch/include/ATen/ops/matmul_backward_ops.h,sha256=VkKNbDD4cqEQx9gzrWqnHlbt5kVn0p8PWkbvvPDjpps,2387 +torch/include/ATen/ops/matmul_compositeimplicitautograd_dispatch.h,sha256=CfD_8OUh7065VntU-CkWXxlxJi3_qTuLf819_OxFrmU,1024 +torch/include/ATen/ops/matmul_native.h,sha256=JAM0eTlhkeLmYbuHwajLXXzOUzB3GY6pIJDoxukk178,828 +torch/include/ATen/ops/matmul_ops.h,sha256=NN4x39NSfEcomdqZst7lsk8Kzai11gIj070ZATKUC4M,1735 +torch/include/ATen/ops/matrix_H.h,sha256=1P19bCA2OXfVby2Yt6RTQs9_abprHZr0QnmWUlo-K6Y,508 +torch/include/ATen/ops/matrix_H_compositeimplicitautograd_dispatch.h,sha256=fd0dIVE2Iy-AFM7wuhSS92-gSsZGcuedRmlr--bwn_4,789 +torch/include/ATen/ops/matrix_H_native.h,sha256=pLK6EUapcEPkPiv9r1Nw8bnMnJSEiL_FpCh_K8l0dkA,499 +torch/include/ATen/ops/matrix_H_ops.h,sha256=anCBAcdQHQejKwc3qa3BZ3M_A4QW0Zj9EoskHsweWjc,974 +torch/include/ATen/ops/matrix_exp.h,sha256=UDlj_-fZhvkcDdlDQjdQwtpIwgAAJg6K1WuOt6JWsRY,660 +torch/include/ATen/ops/matrix_exp_backward.h,sha256=9apyQo1oIKGkubR3B0MYXVdEMVpJNPdf5SfaFhmyCrA,740 +torch/include/ATen/ops/matrix_exp_backward_compositeimplicitautograd_dispatch.h,sha256=IsotoHFqQhRiLK0Z62hXToiNsqfnWGMS-su6oRJoMtk,825 +torch/include/ATen/ops/matrix_exp_backward_native.h,sha256=L6Lrj0z1JnyL8ZD-4eCCr04nJ91Dskf0Xj5RafhHrh0,535 +torch/include/ATen/ops/matrix_exp_backward_ops.h,sha256=4Ies4ZA9G4yS_8BNMNxpvDRxOm92wScfYqAjToTS-0w,1084 +torch/include/ATen/ops/matrix_exp_compositeimplicitautograd_dispatch.h,sha256=0ZRWpR0DFXtQ7BaVPg4lUHqQhtsnnzZ7fFja_VUD1To,791 +torch/include/ATen/ops/matrix_exp_native.h,sha256=q_AG-tZXKtfZW4GYKWxtpJcp1IK4RITYhUP7Y1dVw3w,501 +torch/include/ATen/ops/matrix_exp_ops.h,sha256=pNyeBpMJsubRurKGFj7KQAsg4WA_4AfH8XhvJF3TNcI,974 +torch/include/ATen/ops/matrix_power.h,sha256=B0PPMCKY7--Tw-CptQfhpZCGHpeCbbj9CjVzDA7ft7M,1166 +torch/include/ATen/ops/matrix_power_compositeimplicitautograd_dispatch.h,sha256=BuD4OYnvx8Es-BnsUfFgGc0TBmzgqCalitzL_RpCnis,997 +torch/include/ATen/ops/matrix_power_native.h,sha256=JvQ5lRN6NN6dAnVOgnVyQgrKlrhdg5JkGSpQGqt-I48,610 +torch/include/ATen/ops/matrix_power_ops.h,sha256=4iuy9TXbHQBRDHNoTdjHMTDfZ4m8kA6LrTGGx-yrURo,1675 +torch/include/ATen/ops/max.h,sha256=y4-ZcrwFFrbHzDwxSOoWGTP21nsn9sMF2KR5fBeA24s,3842 +torch/include/ATen/ops/max_compositeexplicitautogradnonfunctional_dispatch.h,sha256=D_fQlP5c3mb2Q08RJ1LAakKhFFkEeJPLk264Jp9mJtg,868 +torch/include/ATen/ops/max_compositeimplicitautograd_dispatch.h,sha256=NnpL0m8LU7Mtap-qmnKhyxNXhzZRVsAE6bI6xyM8Oo4,1454 +torch/include/ATen/ops/max_cpu_dispatch.h,sha256=D4WnrdBMLIVp0LCeuFr84rVoNOd7GIQMJVIO2MqljeU,1320 +torch/include/ATen/ops/max_cuda_dispatch.h,sha256=XXtJBH3JlDMa8AEjls55uqGC_-ywLak9_G3lsqZ6tc8,1322 +torch/include/ATen/ops/max_meta.h,sha256=U9wi2NbH24oEO_jkGW3pGc46Xy5E3-pkj5nxKCc5kN0,1116 +torch/include/ATen/ops/max_meta_dispatch.h,sha256=e2HZa_sfV8zapF_SJEXQnzaMA8G-1bPQBiS_mQWdfPA,1117 +torch/include/ATen/ops/max_native.h,sha256=ZQrQxlQY34WRXpW9wc900iUxFLZmLnUi-dtf2xarf4c,1528 +torch/include/ATen/ops/max_ops.h,sha256=oWidlrb_NwN1WB51z92E3JEAuRAAs3c3jIRSpD2faZc,6134 +torch/include/ATen/ops/max_pool1d.h,sha256=Uz0vZRm5Ff-KKDyxut30sTBU7fKPWWI1oRN1QxtTVTA,941 +torch/include/ATen/ops/max_pool1d_compositeimplicitautograd_dispatch.h,sha256=KlmC35wiP8Q1Ap_hzB9VI6KRKo8-czUlvSO1Ey_LRL8,924 +torch/include/ATen/ops/max_pool1d_native.h,sha256=IgQ4Fr6vbhuJmEX9hmVkX4FKOiLs_wEnNYssCOhuXoE,634 +torch/include/ATen/ops/max_pool1d_ops.h,sha256=0uCv3rHSSx4y5Gavm3a8qLYgRvvEbZVaOqxnkmAZkwI,1385 +torch/include/ATen/ops/max_pool1d_with_indices.h,sha256=z72AvHjXVGCIPiSLZz9IwcOBKML9KkaBAKJ9iTuSkJY,1028 +torch/include/ATen/ops/max_pool1d_with_indices_compositeimplicitautograd_dispatch.h,sha256=FTDkIcG7HhgjAHXbv5vcvnVboWfUutpxWr60OqJh0Ow,962 +torch/include/ATen/ops/max_pool1d_with_indices_native.h,sha256=GPgalqZPOHO7oNTthrvR_hKiJHnQzzIWVyrhw-9lSzI,672 +torch/include/ATen/ops/max_pool1d_with_indices_ops.h,sha256=TzPH18ef8wnoYoLuqQrTX078_XDLRuk9GHl5c-qkuLk,1509 +torch/include/ATen/ops/max_pool2d.h,sha256=mhMMFVQaKd0dfZV9cemn6Mlf09l2vishfvtA6CzrOwU,941 +torch/include/ATen/ops/max_pool2d_backward.h,sha256=EM0UxUwiZBMlvteJvw7OHbBoRCAKHYMHnQugq5jFAuw,2198 +torch/include/ATen/ops/max_pool2d_backward_compositeexplicitautograd_dispatch.h,sha256=8BacQx6lQXlh28ZzQhwE-aaO6y1s3AW1f-RxJMgTs2g,1234 +torch/include/ATen/ops/max_pool2d_backward_native.h,sha256=2sUgTIjVjgoe0ZMMsBcZJFBIEGz2miDaYXbSuFOZIYs,686 +torch/include/ATen/ops/max_pool2d_backward_ops.h,sha256=iuYzNukmQt7kGivIVmYVSFnyHeHDfn6SKlL6yuYbCrg,2671 +torch/include/ATen/ops/max_pool2d_compositeimplicitautograd_dispatch.h,sha256=2G0p5t_8oSjIbNPW4yckDFEPu_p46DtGRWqnUcapkgw,924 +torch/include/ATen/ops/max_pool2d_native.h,sha256=UfqeW2hvacIxqN2en8kjvWmK_ClOBo8EZnQFWXYfjMU,634 +torch/include/ATen/ops/max_pool2d_ops.h,sha256=DHWDHqmLjB2QVfK2OBTy1sWYTKXOerFEzxIBHlSwV8s,1385 +torch/include/ATen/ops/max_pool2d_with_indices.h,sha256=4ZhNnkCAgIDnKkOZxENAmeQZVDzvmGbyTeFFxeKdNcM,2262 +torch/include/ATen/ops/max_pool2d_with_indices_backward.h,sha256=2hwI_rYuvsMuwpu9pL2UFMWmIu1S6d_0vjzGN6WI3M4,2492 +torch/include/ATen/ops/max_pool2d_with_indices_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=8BqMcAXB_51-0odIBa-iaYqir4bs-YIwVzd2Ii8I85I,1019 +torch/include/ATen/ops/max_pool2d_with_indices_backward_cpu_dispatch.h,sha256=uXozHrmqI8_tJfc-U1myFuBR65Jxvp6i2iMymw1igjQ,1534 +torch/include/ATen/ops/max_pool2d_with_indices_backward_cuda_dispatch.h,sha256=-0jpfqzVRX4Ed6P1btLLZRjDfqBONWWzPfvbzhUlwak,1536 +torch/include/ATen/ops/max_pool2d_with_indices_backward_meta.h,sha256=YZB4A09-B3_MIgjIuLnESt-VNRCXZqfreHODMzCuR88,808 +torch/include/ATen/ops/max_pool2d_with_indices_backward_meta_dispatch.h,sha256=yu9X-Y4KFSEntpsi3HWR-UncvLfFuAh6hMCKxKT4wW8,1536 +torch/include/ATen/ops/max_pool2d_with_indices_backward_native.h,sha256=pjRLcHcZWXFyDDPEIUkspMqCAlw1Qhx7BpxGqb7lfqQ,1276 +torch/include/ATen/ops/max_pool2d_with_indices_backward_ops.h,sha256=E6h0ENce8b-gJCg0enwMB7T38wjH0VQebFudtVVgkN8,2949 +torch/include/ATen/ops/max_pool2d_with_indices_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Qhu2m98_qbSnsGKW5OYT0qGRYnzSLA3oTjd9hVU2zIY,988 +torch/include/ATen/ops/max_pool2d_with_indices_cpu_dispatch.h,sha256=H4KLrT-tbXF4yQP_bETNvyK3DZXauhUQLFlm9RmXZtg,1462 +torch/include/ATen/ops/max_pool2d_with_indices_cuda_dispatch.h,sha256=sqvng_Ha7Vl9JdM9vYFSXAizVkDwz9m7eE6K4OMzlkA,1464 +torch/include/ATen/ops/max_pool2d_with_indices_meta.h,sha256=Qxu2VyLddk00W-EMWrturymAR8SukVUwlGoLJPpaQKM,739 +torch/include/ATen/ops/max_pool2d_with_indices_meta_dispatch.h,sha256=iO8PoddnyK_-84zq0Hvw_mRLMIYaSM8caWIfwL3c1xA,1464 +torch/include/ATen/ops/max_pool2d_with_indices_native.h,sha256=YGsQjYhjyrDAeTDwUVZRaZkstFDu4hr_rC8i6LwDoqM,1153 +torch/include/ATen/ops/max_pool2d_with_indices_ops.h,sha256=ZQpsQLeElgrxZuiHEGP_U4-HPzoNy2FoFrIjBDZDJ24,2745 +torch/include/ATen/ops/max_pool3d.h,sha256=wUvTF93sHmNKKpSu5zDVUPwAODPAverAUSpIzkCvK_w,941 +torch/include/ATen/ops/max_pool3d_compositeimplicitautograd_dispatch.h,sha256=xNWBy9sxFjnWpjm2Jf3L6CN4wK6gvtPcDafkhm1xpHk,924 +torch/include/ATen/ops/max_pool3d_native.h,sha256=Daymi03M-s3y1pqMT_lBNCjHk5iHl0w9_qKnfm7Tues,634 +torch/include/ATen/ops/max_pool3d_ops.h,sha256=i0Fk2OKtDm4zhHL7hoCYdEea-0yh9PRfxPtEoam23-o,1385 +torch/include/ATen/ops/max_pool3d_with_indices.h,sha256=xnp73yJRxIfQijoLoe030-quGV3uXc7fCVQ0VXNx1Pw,2262 +torch/include/ATen/ops/max_pool3d_with_indices_backward.h,sha256=qO1dA-8uAJ2fniC926bYQywvqkcw3lxMhI122xYB6Po,2492 +torch/include/ATen/ops/max_pool3d_with_indices_backward_cpu_dispatch.h,sha256=JlRIrIDi-oST4ouPpC8upNKCVdVDL3Z3grsE29u2TiM,1534 +torch/include/ATen/ops/max_pool3d_with_indices_backward_cuda_dispatch.h,sha256=EJC6mKLGa7SE-dTeo_Sgitb6I0tIrdmb0xJPjiPAxOk,1536 +torch/include/ATen/ops/max_pool3d_with_indices_backward_native.h,sha256=0HaA0HG8LCdl1FZkf7oLBq4seQwFE-Z9bj8iWfgVCzc,1566 +torch/include/ATen/ops/max_pool3d_with_indices_backward_ops.h,sha256=SgnTpE6wltWadRK1124KfG9p_SfFCtX4zMyMksOpBNY,2949 +torch/include/ATen/ops/max_pool3d_with_indices_cpu_dispatch.h,sha256=sT0iToWPGjJwTn3xPbvmzI1zrHc3uQrcZdFH85s9D9Y,1462 +torch/include/ATen/ops/max_pool3d_with_indices_cuda_dispatch.h,sha256=BYqpgdfwAUUlaa3pvB7oaIuDRPR9FBV7o4LDgWTFsJc,1464 +torch/include/ATen/ops/max_pool3d_with_indices_native.h,sha256=OKXS0p_1JFoqbi4l9ZlOhHAgwPgyDY6fd5WfPCelrOA,1450 +torch/include/ATen/ops/max_pool3d_with_indices_ops.h,sha256=ogizhTkb4CY9Dx7bMMTFpc6IFYBOuu3yix7m_koGw1E,2745 +torch/include/ATen/ops/max_unpool2d.h,sha256=8EhgOrGWkPcJrUFLXRL_s0QlJDPhxEmzQbHxafvvRNM,4501 +torch/include/ATen/ops/max_unpool2d_cpu_dispatch.h,sha256=E9DIMisyGOiJ2tp_6tffB3j0TijMNVsMAw5KXtvzupE,1527 +torch/include/ATen/ops/max_unpool2d_cuda_dispatch.h,sha256=H3sFei4APQ8MA9eCElg15uG-gjh5GVdvDUTXokhhVW4,1529 +torch/include/ATen/ops/max_unpool2d_native.h,sha256=TYutRWxfhczy8Sx_jQu72elIFIN7OPv8O_VntU5coyg,1024 +torch/include/ATen/ops/max_unpool2d_ops.h,sha256=UfyieIrKuJPLcaFFbnLe3WZ7tU8jPFf4q9sZrL_7iwA,2003 +torch/include/ATen/ops/max_unpool3d.h,sha256=Yx3zDZ2awwoGEv0XwR0V7RbZnq1GDuMkfXdbd1PqECo,5479 +torch/include/ATen/ops/max_unpool3d_cpu_dispatch.h,sha256=MiLsgflzxD977edzsIoF629WfWmrKvEGBdkb63CHb1Y,1821 +torch/include/ATen/ops/max_unpool3d_cuda_dispatch.h,sha256=jE8kU55ohcyGB37Y5UOt6fyO3RwhQlZgIdH2TNdc5kw,1823 +torch/include/ATen/ops/max_unpool3d_native.h,sha256=l23KHv1-1mZM4L03th4W7xygUN1hxAza_1VYQRz6eV8,1220 +torch/include/ATen/ops/max_unpool3d_ops.h,sha256=LtRTRzua91Ba-cxEwXZVzUVIau6Lzq7Ugu6X1PXDJis,2329 +torch/include/ATen/ops/maximum.h,sha256=NDUZQWZSoH3DsaviGTphM7xNbNfISqa9etmS-kG1NBo,1194 +torch/include/ATen/ops/maximum_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Tqlg3mcod788vOcEf0TEkz6oyjssXZXOmWd0XwotlEA,840 +torch/include/ATen/ops/maximum_cpu_dispatch.h,sha256=1_qErKsDTcyaCJBIaIP_j7BZymedQpw6etPX1dQpvMI,983 +torch/include/ATen/ops/maximum_cuda_dispatch.h,sha256=JydSP3geHxs31YGQwhtCztfpXynsddgqVhZSs_V334g,985 +torch/include/ATen/ops/maximum_meta.h,sha256=Yk_rZPFKbL2_kSVBvnK1umxgJNeMbBI5HUJ-2umEElY,629 +torch/include/ATen/ops/maximum_meta_dispatch.h,sha256=gHvOPsorP2cRo4bnbwp5U-Ml1qc99TYVSyFqT4efWuw,985 +torch/include/ATen/ops/maximum_native.h,sha256=R6-7trKp5rnmppKB1bTPdoLlTNBg34w15BS5F_2gcqo,648 +torch/include/ATen/ops/maximum_ops.h,sha256=qfPCPZiIB9wvOTjSGchuWgPc1PDnx9taPmu_2l_x-T8,1741 +torch/include/ATen/ops/mean.h,sha256=EpsFiIkIQ9SJk0th_GmN1FR4udN2PPoPTPpw8qQIv_w,3419 +torch/include/ATen/ops/mean_compositeexplicitautograd_dispatch.h,sha256=GQutBEtudwzYr5zZ2buGKv-ztrgjNAD-azAsKzntXdQ,1087 +torch/include/ATen/ops/mean_compositeexplicitautogradnonfunctional_dispatch.h,sha256=w74-QXowirSUQjBAhzKFSgA6IwpSwjiMIFifQ29tW68,914 +torch/include/ATen/ops/mean_compositeimplicitautograd_dispatch.h,sha256=Fg4syyMsDpj860evLiN7l7RtJNKXBoSK1mmwWJxDzwE,1204 +torch/include/ATen/ops/mean_cpu_dispatch.h,sha256=0Ia0UbEg_Y1CdSU-fmcYMAgKUHVV18MG5DsUFj3gonc,1184 +torch/include/ATen/ops/mean_cuda_dispatch.h,sha256=uMhK68hPUZUM12007nt7rCHsYZfte9c1PNsWfj4Hc68,1186 +torch/include/ATen/ops/mean_meta.h,sha256=LOSTO6ta1mpbe0d9CPxt-qV-Vi016OxXbXdiV-EeNwU,686 +torch/include/ATen/ops/mean_meta_dispatch.h,sha256=-JxopXXJgxETUzVN6oWmeajHJHgGHPVbISPYuRXgVrE,1186 +torch/include/ATen/ops/mean_native.h,sha256=amrwR6fml8aLQ1ty4EmUam7IiiThHv80flqEm_7UIko,1570 +torch/include/ATen/ops/mean_ops.h,sha256=EVm_ShkjpuOA2pCpXNaCwSjGQ_f6iXT2Z8_sidEal2A,5204 +torch/include/ATen/ops/median.h,sha256=avNUK_yHpKHJqiQ4v9n_r3oFw-75a-4DsRoIvRYapL4,3261 +torch/include/ATen/ops/median_compositeexplicitautograd_dispatch.h,sha256=D4me7UQP9P-e4gdYSMfR4VTCv0HawVQDmgEzMg8ymrs,1004 +torch/include/ATen/ops/median_compositeimplicitautograd_dispatch.h,sha256=ap_jAjC6hbtFGROOeRlPdayFoMxiLIGQrFD5vS4xKMo,1180 +torch/include/ATen/ops/median_cpu_dispatch.h,sha256=QrbAbELG4ck4o8T1xLlMJ5dPOV4g4NutumXljWKi_eg,1066 +torch/include/ATen/ops/median_cuda_dispatch.h,sha256=1N3flrd0q5UikD4lTZSkpuPZV8B_Taek5bKR9gMtKS4,1068 +torch/include/ATen/ops/median_native.h,sha256=lkoJzz8kUHpDIvUvNTYY3MBBmo7nZfjwOCNZtIYsqxI,1357 +torch/include/ATen/ops/median_ops.h,sha256=p1ABvGUAVnh4axoiIB1XokntXnXySibcw-ScV-3ANpY,4905 +torch/include/ATen/ops/meshgrid.h,sha256=EbYCtEQftD64I9haCeTcA0JO2Jw4T-bZnODSrXBZ6FU,918 +torch/include/ATen/ops/meshgrid_compositeimplicitautograd_dispatch.h,sha256=8YPx5_UODIlB0bBgNxOA9kZlPpW_ee4eLaIjK-JEIbQ,901 +torch/include/ATen/ops/meshgrid_native.h,sha256=Kcw_4_L84nC7CQut6I9mGhad65d0bRAL-7JysoXh6Rc,611 +torch/include/ATen/ops/meshgrid_ops.h,sha256=huYbrlx1yPkYM4RXIpNheNR1j8YTmX_U64dumnbifcU,1692 +torch/include/ATen/ops/min.h,sha256=GsopFrxqLmm3mxMVFOq40U1wwmGp1XxQmluEbwjHGgU,3854 +torch/include/ATen/ops/min_compositeexplicitautogradnonfunctional_dispatch.h,sha256=wRNZodHAX1zcNia2DVgT5WWXRcijbkd-_NIhaPRALxg,868 +torch/include/ATen/ops/min_compositeimplicitautograd_dispatch.h,sha256=xVvGM2R8dNB_iTCq9hwdCIgT3_BsO9hjAGE7v67Jous,1456 +torch/include/ATen/ops/min_cpu_dispatch.h,sha256=fBRNi069wKS1eW67bOaFfI0Kcl3s5sh3s73JfCMAoNo,1322 +torch/include/ATen/ops/min_cuda_dispatch.h,sha256=xxNTwjiCDVfyKU1HOh43RCWe-oqcJyIPH002ocRcPa0,1324 +torch/include/ATen/ops/min_meta.h,sha256=FeQCQRbFuWP1yjF_1nXo0hKG7o05x6bQkr_g11mJEKg,1116 +torch/include/ATen/ops/min_meta_dispatch.h,sha256=PGhnRFWSHf9DKKClJ_JfeQ8vSHX0B2Phl0DNbG1QoVQ,1119 +torch/include/ATen/ops/min_native.h,sha256=tkOimfnAMbTot76DhL90GB_sk2HbAfN-C8Rbt0_OmJo,1530 +torch/include/ATen/ops/min_ops.h,sha256=gDBhvAiqgGwLPe6nMPJk1m5QPtsQQ7dyHoaLHqVErSo,6140 +torch/include/ATen/ops/minimum.h,sha256=KHWA2r9dS3FG108Wlya129Bwpd76CUbEL9ZgN8J6PGY,1194 +torch/include/ATen/ops/minimum_compositeexplicitautogradnonfunctional_dispatch.h,sha256=A_j8joDqI5clBn80z0T2h1Z6Pyvv88fKzopsSA5izoE,840 +torch/include/ATen/ops/minimum_cpu_dispatch.h,sha256=AlNXXhrglX_N2mOTjpu2ckoLbXKcLbrOUd6NSnB0rwY,983 +torch/include/ATen/ops/minimum_cuda_dispatch.h,sha256=QPSTaPpOD742WNVTCETlcXg_0fbOALkDp-PL7JHDnwI,985 +torch/include/ATen/ops/minimum_meta.h,sha256=GuCQY5xAxV07oBMgwrel5iOYRRmKAbqeGHCMHXyDwaI,629 +torch/include/ATen/ops/minimum_meta_dispatch.h,sha256=TfSthPrCLZT1_HU_Rng-Lum0ASNOxHh1ws-wFnNn-0Q,985 +torch/include/ATen/ops/minimum_native.h,sha256=5lERCD6sSSsFvEf7Nqg25gN4wms7_1T8k3pbiS5wAB4,648 +torch/include/ATen/ops/minimum_ops.h,sha256=k4zOJkN04FyYSyBcEgZDXeQo2jIvMwlzZWWbz74t7nw,1741 +torch/include/ATen/ops/miopen_batch_norm.h,sha256=O9b3guKM873i_bHUfG_WBVck6CmO8sJRdMjcGWeMw1M,2896 +torch/include/ATen/ops/miopen_batch_norm_backward.h,sha256=oeUmjAQ6lsZKAhQzWSP7zkCuPSDW4husJ8hYdWYYP6c,3037 +torch/include/ATen/ops/miopen_batch_norm_backward_compositeexplicitautograd_dispatch.h,sha256=2bbLOQ0TfJzED_-aOPS5-U_t6__hh3nTWM4xeHUrXMU,1625 +torch/include/ATen/ops/miopen_batch_norm_backward_cuda_dispatch.h,sha256=XNuliN158W8uxSDfUdOFD4ERoJmlVywBd5JYKM6rZN4,1069 +torch/include/ATen/ops/miopen_batch_norm_backward_native.h,sha256=T4Qo_K7N0zqn3WHEQ15lgTIpCjvTglpiTqIfYJnAVso,1267 +torch/include/ATen/ops/miopen_batch_norm_backward_ops.h,sha256=zZLqYo7G3qakdyMdYq32skYPTshD2t9k8bhQ0bDC6H8,3822 +torch/include/ATen/ops/miopen_batch_norm_compositeexplicitautograd_dispatch.h,sha256=Q6h_FEoH-aBWptqu7RUQgMIBuMA0D2edpIT78dUEaOw,1541 +torch/include/ATen/ops/miopen_batch_norm_cuda_dispatch.h,sha256=qfIwy-wX5RR27cj5uwJQY5zb-H-WNrrAGFs3R7BcKOM,1027 +torch/include/ATen/ops/miopen_batch_norm_native.h,sha256=o5R7jCcAV9Yp-j62Gmo08CQsyK-aIIbIIji-xpxYOMM,1183 +torch/include/ATen/ops/miopen_batch_norm_ops.h,sha256=iKA6T8U_zFFchcd7YN9sa3B4RTftJ9QLVmePEVcq4rA,3562 +torch/include/ATen/ops/miopen_convolution.h,sha256=3Gbcx4fcTIwn_Gd-qH1J0N1cpY4gtOb6YF5myLiUpPw,7945 +torch/include/ATen/ops/miopen_convolution_add_relu.h,sha256=aAGAVKSPjTrzVVJ6aHjwjVW69g61QQr92ss1lQk96M4,2996 +torch/include/ATen/ops/miopen_convolution_add_relu_cuda_dispatch.h,sha256=8Zb172m-ZzgIbjnSOoFE0lChFIsmd27MBXzc3T1zBA4,1315 +torch/include/ATen/ops/miopen_convolution_add_relu_native.h,sha256=MrH8FppW-GHc8W1okxM7G82wR2f00Gx_9NzEqT66L20,743 +torch/include/ATen/ops/miopen_convolution_add_relu_ops.h,sha256=-QtVP8uWPwwmzDKDp2fxV8g8l--LwvhdGTl0Pgg-ttk,1820 +torch/include/ATen/ops/miopen_convolution_compositeexplicitautograd_dispatch.h,sha256=_fYRarf4zKAYVtg-iomPGjaekNvUWjR_o1BJ0O-VUo8,1928 +torch/include/ATen/ops/miopen_convolution_cuda_dispatch.h,sha256=cPMdyM2LGctaD6NzILuGohkMmelem5qGyZg16xjNsyU,1239 +torch/include/ATen/ops/miopen_convolution_native.h,sha256=l11IDK4DCK3EaygPha4rK7PXncreBKNVnfPQkRcCEKI,1015 +torch/include/ATen/ops/miopen_convolution_ops.h,sha256=HSQG8Z2rHjTHjVFwyeXXYoz3ZInILFi6d0RwBlg6CRQ,3041 +torch/include/ATen/ops/miopen_convolution_relu.h,sha256=81tEieIUd9-bMWTbWerw4ctVWIYrgVdpvm-O9mjvEls,2602 +torch/include/ATen/ops/miopen_convolution_relu_cuda_dispatch.h,sha256=uKLftXuzcZqWiGthQwBp5D-nD0TT-K0BaTBx2fiee7A,1177 +torch/include/ATen/ops/miopen_convolution_relu_native.h,sha256=R8LuUSmFVz4R-jawUU6qz_37SHFPXY1aGXTKbXzJasY,674 +torch/include/ATen/ops/miopen_convolution_relu_ops.h,sha256=Vn3BaqxSZO52-e24a0n-rPjj7t4wGybEIf76r-EaLpY,1596 +torch/include/ATen/ops/miopen_convolution_transpose.h,sha256=eS4E8whhKmpFGHJfvayJph1XdbGIInlZ6OG-olDMSSA,9161 +torch/include/ATen/ops/miopen_convolution_transpose_compositeexplicitautograd_dispatch.h,sha256=ZOlKZxoV3kVBXFJIgSq9V-dFAadyQBLKlgoXGe9tbMo,2104 +torch/include/ATen/ops/miopen_convolution_transpose_cuda_dispatch.h,sha256=o9IvKY8z4LCkJgfdRo_f7pmJuC4QLajN3ET8e9ye1GI,1327 +torch/include/ATen/ops/miopen_convolution_transpose_native.h,sha256=isFSgulSFflpFxd_gSnJJRX-k5tpAKgkY4_VDGsLl9I,1103 +torch/include/ATen/ops/miopen_convolution_transpose_ops.h,sha256=FAqkH7auIsflfnV8L9mCzpMLSMzBszgSciI5U1aJAAo,3337 +torch/include/ATen/ops/miopen_depthwise_convolution.h,sha256=vcGWUkRhJwU7Lt0BpwvFz_dOYDhHj_zi2GvyEVWfVTA,8255 +torch/include/ATen/ops/miopen_depthwise_convolution_compositeexplicitautograd_dispatch.h,sha256=L4t7NPfqPUmam3LwHN_cH1e58cnUpr0SelXNJWr7HCA,1968 +torch/include/ATen/ops/miopen_depthwise_convolution_cuda_dispatch.h,sha256=Y-GXjuJAc6Tz1_OLmADDJlVgAw8SCrbTFI_VBz1CaDY,1259 +torch/include/ATen/ops/miopen_depthwise_convolution_native.h,sha256=ymbuCUeXgHhJowT0t5VS9CeMuBQLiyJaqgWZgidUsSQ,1035 +torch/include/ATen/ops/miopen_depthwise_convolution_ops.h,sha256=41O38hEReKRUX7vUSe-xyB-x89css5xfDZ93amiYxMk,3101 +torch/include/ATen/ops/miopen_rnn.h,sha256=OgeErDSGORSdruE3UpMjqjLK5aWp8kFrWIOIGDl0foc,3726 +torch/include/ATen/ops/miopen_rnn_backward.h,sha256=8_Vk9dbQmFpcbTC5XFMHttcDyg7E8niGqw_J29kMOgo,4848 +torch/include/ATen/ops/miopen_rnn_backward_compositeexplicitautograd_dispatch.h,sha256=giDHa6qBnGRYwBi8eWF-2cPCBLoGbJTe2bb1EbPactg,2163 +torch/include/ATen/ops/miopen_rnn_backward_cuda_dispatch.h,sha256=N9TECVtj2BWf8NqaB7d9mvi82CxzxqwUjjwgqHIkkhE,1391 +torch/include/ATen/ops/miopen_rnn_backward_native.h,sha256=SnFVKvhpbMk9yMX4fXOFlf_PVhDvh2237QjdaSwq8KM,1858 +torch/include/ATen/ops/miopen_rnn_backward_ops.h,sha256=FvKoo1FTtXUsj65M0XIGrmVoATTu28RmVKV1M6NiAtA,5763 +torch/include/ATen/ops/miopen_rnn_compositeexplicitautograd_dispatch.h,sha256=7nt1T4eHJ76Sm3S_E_KvSH76xvlr9eOGKen5v_vSuag,1809 +torch/include/ATen/ops/miopen_rnn_cuda_dispatch.h,sha256=xz_1zQGR84qmXhL0_7BWCpQhOM-oDHeKS7m1oHixme4,1119 +torch/include/ATen/ops/miopen_rnn_native.h,sha256=efyfRaJ-q_T9V2eXXkxRyTWuPM_vo0pCS-i2mCvYYag,1409 +torch/include/ATen/ops/miopen_rnn_ops.h,sha256=YspzR2fVYoBlRBKZP_YRxPdwuR-aCe3yVNgq88fgMzs,4370 +torch/include/ATen/ops/mish.h,sha256=OAT9UDzEhUhQrNb6Q6f0K0lvr5RlYHwNOHidyeVxIiU,1164 +torch/include/ATen/ops/mish_backward.h,sha256=x-xEyu4UdsysFjSD1-4FAtS1SK6vgpmndb7NOFi5nM0,737 +torch/include/ATen/ops/mish_backward_compositeimplicitautograd_dispatch.h,sha256=vCsagJYVX-cp5RI4Ri4q4BUZqbGCwZ-D_AH9neJ6VQs,826 +torch/include/ATen/ops/mish_backward_cpu_dispatch.h,sha256=eAUpLMSbwG8s1uEvYWY0qi7xrIk1NkI5eNh5CP7MUjA,782 +torch/include/ATen/ops/mish_backward_cuda_dispatch.h,sha256=xZRU6IrbVqK_qAWQN9s0hamIs-c-tGkngM4oBjdkpf0,784 +torch/include/ATen/ops/mish_backward_native.h,sha256=P8XIh4YHP0NQRQtzzo-4yHN1zidNh1QzxdqPZVAj5DE,635 +torch/include/ATen/ops/mish_backward_ops.h,sha256=8cWzqMoQ0uPt1TgFUBZbsyyGKNYOuua7KiVApXF5XZw,1087 +torch/include/ATen/ops/mish_compositeexplicitautogradnonfunctional_dispatch.h,sha256=GvNrZ3LK1UNy9r8BTQDn2C7osMamVWPbrdlIdASN6rA,861 +torch/include/ATen/ops/mish_cpu_dispatch.h,sha256=DQOEDLDM5gi0QVpUn3rdIjM9BxeJamv_H_EqY0X7kuM,946 +torch/include/ATen/ops/mish_cuda_dispatch.h,sha256=0pwH5YwK-HiQx7nEX0J3ONHqGoOHDWDLXAkeT2MW51Y,948 +torch/include/ATen/ops/mish_meta.h,sha256=3C4RdvC-reHhtXw1fbVCsVuL1FbHN52VPJh3_u7Cp7Y,600 +torch/include/ATen/ops/mish_meta_dispatch.h,sha256=BXA0U_805IiXqN0bfBbIyrjGHPuht4WmA0YF73xKBmQ,948 +torch/include/ATen/ops/mish_native.h,sha256=F4DwabGWW-NBSKXjCq02jAVchsABFyIZoxdcwi3VKFI,613 +torch/include/ATen/ops/mish_ops.h,sha256=efyr9ESqgdAEZRtVeyXpZLYWN302RVh0c1nZIh0yndw,2055 +torch/include/ATen/ops/mkldnn_adaptive_avg_pool2d.h,sha256=JIljpm4xIMGTqhs7wl04FmKwPbB_VtsPD4dbCLk5Nqs,1429 +torch/include/ATen/ops/mkldnn_adaptive_avg_pool2d_backward.h,sha256=J2K1Hragzn3Zm7oyC1b_DRF4x6V58hPNeajZLv-OEa8,1528 +torch/include/ATen/ops/mkldnn_adaptive_avg_pool2d_backward_compositeexplicitautograd_dispatch.h,sha256=Pz2xa4NPDZ-ZH1HoRhcIuuvsNKgj9OAu-jiezVJgkoM,1013 +torch/include/ATen/ops/mkldnn_adaptive_avg_pool2d_backward_native.h,sha256=cJ_Aqc-1HElP1vc8LNutvwkt13OOEmLYhqwEk6RADJM,698 +torch/include/ATen/ops/mkldnn_adaptive_avg_pool2d_backward_ops.h,sha256=pM50dBVRp96pTOZ8jPvltLnmezRVS_Sd8aTfhqFi5qA,1945 +torch/include/ATen/ops/mkldnn_adaptive_avg_pool2d_native.h,sha256=IvrAMWhEsCKW2JlnpOKswDBt7mO3dfn278eh7T2LA4o,674 +torch/include/ATen/ops/mkldnn_adaptive_avg_pool2d_ops.h,sha256=YAPC9uzlQQbZLjv_j871Ln-3hZqqwGV2C4zMKJZoJog,1873 +torch/include/ATen/ops/mkldnn_convolution.h,sha256=tG1OmNVzKWvKq9KBg5tEDtfSFwP-VoPDSOkihk9qfdU,6985 +torch/include/ATen/ops/mkldnn_convolution_compositeexplicitautograd_dispatch.h,sha256=6yS32cbM5RTW35AQbzC08SV1ZAqELcOzRcNLT4e-oPA,2261 +torch/include/ATen/ops/mkldnn_convolution_native.h,sha256=fde4dg-zbxxyP6J8lA5cJqonf_HtXrd3y1O99cDRB6A,943 +torch/include/ATen/ops/mkldnn_convolution_ops.h,sha256=DqU5XzlcUvQxReLP6E3hVCRZJseUY3ln0clGGHPBJaU,2801 +torch/include/ATen/ops/mkldnn_linear.h,sha256=O6NGRSDefv_RgRMSYrmhNO40ImkPL7jWDT5ahoOpiYM,1470 +torch/include/ATen/ops/mkldnn_linear_backward.h,sha256=NXfSHGXem0uDlmTAx0uece7XrJg7Vb4Buj-OhVe_sOc,2112 +torch/include/ATen/ops/mkldnn_linear_backward_compositeexplicitautograd_dispatch.h,sha256=bF5LHOAl_fw8wXld1x6FQL9C8IvJjFA5iqObCKDemcE,1267 +torch/include/ATen/ops/mkldnn_linear_backward_input.h,sha256=0VStHnWr7lqMzWLkVlxf9svmOAEClUlyXuioW27QNJs,1650 +torch/include/ATen/ops/mkldnn_linear_backward_input_compositeexplicitautograd_dispatch.h,sha256=8cLpNgsha8K1laGqWN9n6B6IFalR4Q5fSqf-9idjT14,1059 +torch/include/ATen/ops/mkldnn_linear_backward_input_native.h,sha256=6MC_CEjPGWU3O2tp3WYie6je3N7fJ4mJDkfjkX2iun0,744 +torch/include/ATen/ops/mkldnn_linear_backward_input_ops.h,sha256=LrW7ZGjFWC4LZfh_nvwUuWiPxIVwNcZcCkWllU_y7eQ,2097 +torch/include/ATen/ops/mkldnn_linear_backward_native.h,sha256=BP2N8JcGleDrjY6WV8rA11gI2shZtD15mPbTSzPlP3A,909 +torch/include/ATen/ops/mkldnn_linear_backward_ops.h,sha256=VgZPsMEzzjyjYkaqctJq2KsuatqO1BL0cpk9wpD-6h8,2680 +torch/include/ATen/ops/mkldnn_linear_backward_weights.h,sha256=D8YohG0U9A0NEV-1qH2MnyuTVhz7TUxNjBTeNg-Q48Q,2000 +torch/include/ATen/ops/mkldnn_linear_backward_weights_compositeexplicitautograd_dispatch.h,sha256=N_NMbHyzLDF6eoYYzmmhgcWl5YU3qj_1trLrfW1Y82I,1191 +torch/include/ATen/ops/mkldnn_linear_backward_weights_native.h,sha256=c6xV9Pe8J0nMBpMPMnj7dcMWrKf8sJUoXCXMiYXqjhY,854 +torch/include/ATen/ops/mkldnn_linear_backward_weights_ops.h,sha256=O0_H4rZ7UI0wbobVxkZIHjEYwjadfJK1SoisQfHa09g,2477 +torch/include/ATen/ops/mkldnn_linear_compositeexplicitautograd_dispatch.h,sha256=Vsab5Ndc8aCs62Rkz1Bw79Onrq_StCj2uYGXU7oWrZM,1046 +torch/include/ATen/ops/mkldnn_linear_native.h,sha256=RGva8XKAkGYOJ3GwiWiAnr_JOYDCym4Jr3ESc6q32BI,731 +torch/include/ATen/ops/mkldnn_linear_ops.h,sha256=HP-z5_GHivysrV_JK9KKysMpCZOhQuLe-hYljw7tboA,2063 +torch/include/ATen/ops/mkldnn_max_pool2d.h,sha256=Y4WVQVW6qpitzG4XUfAxmzup87rYw0t-yfDkn2Uo6yA,1983 +torch/include/ATen/ops/mkldnn_max_pool2d_backward.h,sha256=2t00EYYlo5zq1MSSGd9lEerbgDqSTAvM-I7ffaKsOwA,2427 +torch/include/ATen/ops/mkldnn_max_pool2d_backward_compositeexplicitautograd_dispatch.h,sha256=G183pfirZODZcEwmZoSu1muqKT-bvdSZbBmpzb-6FWE,1304 +torch/include/ATen/ops/mkldnn_max_pool2d_backward_native.h,sha256=yB5gacQmWWN8c5ehn2eNmaXQFgYNMVd34Agsa0fQf8w,989 +torch/include/ATen/ops/mkldnn_max_pool2d_backward_ops.h,sha256=JVF6HLzNZOxQNCYysiCTDYdlah77ZVArc8tD5Hhr3Q0,2897 +torch/include/ATen/ops/mkldnn_max_pool2d_compositeexplicitautograd_dispatch.h,sha256=eIQp6KlHCGGBlnEWVKAsMy7GccSCwETfrieN_xgC_o4,1166 +torch/include/ATen/ops/mkldnn_max_pool2d_native.h,sha256=l06WN4l-4ggqNCbv15IhbDmYGOj67hM3iiv6W0yfs8M,851 +torch/include/ATen/ops/mkldnn_max_pool2d_ops.h,sha256=SA3R1HIJd0Gos7QCV4-QeAFntJUMoI8wZC3iiS-xi0E,2451 +torch/include/ATen/ops/mkldnn_max_pool3d.h,sha256=iwoxp0tHBgeq731Ve9oyfhWJLZBaHoeZWFR1IQksDkI,1983 +torch/include/ATen/ops/mkldnn_max_pool3d_backward.h,sha256=hyCFOsGyH1DmxIxi_lCN6KXkusJzeH0cLT7moMKqJTs,2427 +torch/include/ATen/ops/mkldnn_max_pool3d_backward_compositeexplicitautograd_dispatch.h,sha256=bnddq_2pp-a_50RLIzpmQ4PmQHgDuc4s20Yd2oZwR6o,1304 +torch/include/ATen/ops/mkldnn_max_pool3d_backward_native.h,sha256=4YQ91xkPYQf19dn55lh0JGLPenAk02ZAqYK3p6PBlng,989 +torch/include/ATen/ops/mkldnn_max_pool3d_backward_ops.h,sha256=_gYVdkdl1ce4N_oLAwHM8-ehIEQZNPYJvx-zHfCFv_M,2897 +torch/include/ATen/ops/mkldnn_max_pool3d_compositeexplicitautograd_dispatch.h,sha256=UZSoOOmpsCeFXVsyg9wGOjwIkF7B_Uc4WA8u9wktbSE,1166 +torch/include/ATen/ops/mkldnn_max_pool3d_native.h,sha256=UzYOg42ScYkRw1HKaPcWR6ORy0aQ4ClV5OCJ2Z_UcA0,851 +torch/include/ATen/ops/mkldnn_max_pool3d_ops.h,sha256=YeXzOqrJRXB6MUDAEqk2uHMrkLLVrruwgoofESm_z4Q,2451 +torch/include/ATen/ops/mkldnn_reorder_conv2d_weight.h,sha256=O7xaUCmUVzEIxpkWxsOZP_-c-e9We3MlrZBXCZTDPCM,7833 +torch/include/ATen/ops/mkldnn_reorder_conv2d_weight_compositeexplicitautograd_dispatch.h,sha256=2L_3zA0SbMbtjcqpTXHOVGU9h_K96WvAQl13C58rAf4,1783 +torch/include/ATen/ops/mkldnn_reorder_conv2d_weight_native.h,sha256=Ut9Mc4cBsSElQ1hOD4SOWynBkgnMjh67fiOXj23CJ_A,923 +torch/include/ATen/ops/mkldnn_reorder_conv2d_weight_ops.h,sha256=ofrc8aLqNCqgtfpDvyTPAeKAo2RJoqddiayDxKE4ALM,2701 +torch/include/ATen/ops/mkldnn_reorder_conv3d_weight.h,sha256=qiAjnb5wS4SXvIonljokH48OjyqXVaQ0l1RbTyzwiWU,7833 +torch/include/ATen/ops/mkldnn_reorder_conv3d_weight_compositeexplicitautograd_dispatch.h,sha256=6Wn-XxlRusjrX2TYWKRs-5tAi_14GrYFHpGXqJJSmAg,1783 +torch/include/ATen/ops/mkldnn_reorder_conv3d_weight_native.h,sha256=kkvOoT9RBNi7m8Jrs2yndtJFMB8aFS5KuTrQ5aztklI,923 +torch/include/ATen/ops/mkldnn_reorder_conv3d_weight_ops.h,sha256=wAkeCrjMZYjUSXbqQ1CCoOlG-WYN3Fq1Lj-LHqBCqEM,2701 +torch/include/ATen/ops/mkldnn_rnn_layer.h,sha256=DS41wbDWXApsj8x_eXJeDIfGmNmphnvxvWvldbgkqqA,3771 +torch/include/ATen/ops/mkldnn_rnn_layer_backward.h,sha256=G9uUBL6Dbfrz1BcZvM3aKolwwfQc9jjQFBeypt1hPcg,5595 +torch/include/ATen/ops/mkldnn_rnn_layer_backward_compositeexplicitautograd_dispatch.h,sha256=CgEj_gVZPaNR3lerjqukxs7z_41mfGu-OrjnpkqgJt4,2489 +torch/include/ATen/ops/mkldnn_rnn_layer_backward_cpu_dispatch.h,sha256=X7EgMBSxz1kuKL3ngxVtTUf5mbjvh2HhBm74SRqpu84,1415 +torch/include/ATen/ops/mkldnn_rnn_layer_backward_native.h,sha256=Yf72se3Gb0L5v5BDyHieYjIHOQWxd3VUbdq-dX3k_K8,2047 +torch/include/ATen/ops/mkldnn_rnn_layer_backward_ops.h,sha256=gSbfDeA0Int_oMdmJTBvu5NvCieVu5LYvHq17nW6Jt0,6490 +torch/include/ATen/ops/mkldnn_rnn_layer_compositeexplicitautograd_dispatch.h,sha256=MELqzXu7GVpsr3RUmod-gJ-ULyV7K953388KzyWYVDw,1785 +torch/include/ATen/ops/mkldnn_rnn_layer_cpu_dispatch.h,sha256=oTfnWlRwNDYmuho6wy5bIr7XrI7oTOyRp6UACBwJRaw,1126 +torch/include/ATen/ops/mkldnn_rnn_layer_native.h,sha256=IF4d2R1HOEQBLmkgkrA5vm75yeIVOkkc0S7awZolJas,1406 +torch/include/ATen/ops/mkldnn_rnn_layer_ops.h,sha256=533LAlRlnNbcSKmDKkX3wo5nZOoJZke6ktbEY7j1Yq8,4353 +torch/include/ATen/ops/mm.h,sha256=QaVMKDkbNR65xoME8GABeg5XNzi89N_un_ca28AdqiY,1135 +torch/include/ATen/ops/mm_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ZtkYbsNxONSyV5zbRZCbXHubl7mPMIO6yxxbSOBnA9c,834 +torch/include/ATen/ops/mm_cpu_dispatch.h,sha256=M_KAe78i0x99QxlhCqytOlF531MMYGpUMLYLvehJne8,965 +torch/include/ATen/ops/mm_cuda_dispatch.h,sha256=vtvNh3AzQy82i6DruHcD79JEaFIPtHajrzqJ2brNjjA,967 +torch/include/ATen/ops/mm_meta.h,sha256=5XufHImUpYrReVR4KtPgqn3spsPsPTWdu5bYNwU2WLY,623 +torch/include/ATen/ops/mm_meta_dispatch.h,sha256=MfALu29g2Unr9yaTKbRzYBL3HEb71z2Y7xedXrHGTuI,967 +torch/include/ATen/ops/mm_native.h,sha256=PYu-PAvcgC2j24aq4Lx0_39Pn_vNy0TGaUtKYQkKbVs,1194 +torch/include/ATen/ops/mm_ops.h,sha256=bThdJu0g4Ga0HpkmOKvTPwZPMDYuGIZ0M1JohZxZ8Y8,1705 +torch/include/ATen/ops/mode.h,sha256=od7xIbU06cCK0SCWX7Ff7DERorNgKe2_6bv9qpqkmQE,2651 +torch/include/ATen/ops/mode_compositeexplicitautograd_dispatch.h,sha256=bVBeKSVlnpE4Qg1MBi7v83vR5il67LLM1IRfQH36LyQ,1054 +torch/include/ATen/ops/mode_compositeimplicitautograd_dispatch.h,sha256=WjdKh42UyE3UU_3DmXszQJM1mwvy2h_vqjMbH0kN09w,1174 +torch/include/ATen/ops/mode_cpu_dispatch.h,sha256=Z8NPTSoRaRxPXm0kU2zFJqf0KZsaiJld31UrsYKQxoo,802 +torch/include/ATen/ops/mode_cuda_dispatch.h,sha256=ZuudM0a2ykJx8NxQyER6OuG7OG96FpsDUfZcNlHrsDY,804 +torch/include/ATen/ops/mode_native.h,sha256=T8LmAze3u-hsh8gnNDbDjDY_NskWckLGklEeQk_zsp4,987 +torch/include/ATen/ops/mode_ops.h,sha256=0vUjNwcsQt7ftvn0YvnSl695zVRKEAaT8ShOTwGti_E,3731 +torch/include/ATen/ops/moveaxis.h,sha256=V14V9D70FBN4arZzwKnXTaRUTGjmxOB-2mBvWuWuZ7Q,1028 +torch/include/ATen/ops/moveaxis_compositeimplicitautograd_dispatch.h,sha256=_3FlhmaY7aVeMyCRdNsbbCvpLY2wQyL9-ZFcwZH4-fE,936 +torch/include/ATen/ops/moveaxis_native.h,sha256=F-qtU8obzu3o0TiOgU8RjXjh4DW2PcOECAdAmdmsLuU,646 +torch/include/ATen/ops/moveaxis_ops.h,sha256=eLfxnDVw6eBwqzLaJwkGfmZROetOnMIM-OOf8Va1C9I,1825 +torch/include/ATen/ops/movedim.h,sha256=tgMUyoW3kLtC76F790Sq8ikqFUh26_iU7C0-QijRjLg,1021 +torch/include/ATen/ops/movedim_compositeimplicitautograd_dispatch.h,sha256=ghIYm6Tod1vPAb_fjhQ5EB5UjWRF81i91-8AboaPC5c,934 +torch/include/ATen/ops/movedim_native.h,sha256=FncnYnWDIfIbnrsZks3iHU2gU3Uxx_7lqD5NcOYUhVo,644 +torch/include/ATen/ops/movedim_ops.h,sha256=ou94KPqU4J6K-SXXofFwaqd8FD-0gVdgmFv0hh_OZh0,1819 +torch/include/ATen/ops/mps_convolution_backward.h,sha256=OTN74I-oC7_1B1_OSROhxk--097sjia29cFp-FWoKnQ,9021 +torch/include/ATen/ops/mps_convolution_backward_compositeexplicitautograd_dispatch.h,sha256=P54U-B5_L0WpJtHlQSS0KKvTDhszTdHn5b31ztBXTwo,2220 +torch/include/ATen/ops/mps_convolution_backward_native.h,sha256=oetW6-rJAa8AwzbB1nAABIelcKAE1qBm3MImpKttSWA,825 +torch/include/ATen/ops/mps_convolution_backward_ops.h,sha256=wSdqbMYsF4-xx32eicnggqS-LIBorKQoLsOashF3pXg,3410 +torch/include/ATen/ops/mps_convolution_transpose_backward.h,sha256=zDz8AJi4jKFb4Z_b_yvxdLOOrtudiCPYSwsrb1NcAZU,9757 +torch/include/ATen/ops/mps_convolution_transpose_backward_compositeexplicitautograd_dispatch.h,sha256=0AEBQhB4yPaqSyYnQuF7fFU_zaTH17qjX8JmKZotajI,2268 +torch/include/ATen/ops/mps_convolution_transpose_backward_native.h,sha256=fLjUZgfwRoKfBSlUTlI0P_20VPcukXV8ON2_aOy1i44,839 +torch/include/ATen/ops/mps_convolution_transpose_backward_ops.h,sha256=E8p5J2fggXcuLOdOm6_ZD5VatSnuya04OCxPosr_Fjg,3545 +torch/include/ATen/ops/mse_loss.h,sha256=mZDKxbDoulm9pMjuJau35rORHeHiICkYRcsmOZo9JKo,1403 +torch/include/ATen/ops/mse_loss_backward.h,sha256=2P2HcBdiFjbl6qeBuBXJt2FkghhzbQ8nCXycNK8Afh0,1703 +torch/include/ATen/ops/mse_loss_backward_cpu_dispatch.h,sha256=tbXFyEbbFz7gE2t38-kuxcUWusfudihKIO3--JMJ_eU,1183 +torch/include/ATen/ops/mse_loss_backward_cuda_dispatch.h,sha256=nvtVCTGrcSUrzEyph9LXDj3XcFZ-a4aLf0-8nKVZVf8,1185 +torch/include/ATen/ops/mse_loss_backward_native.h,sha256=Nfxd_0wjNZ1YP_UZoQkDcOpHVK1071_iuvqmHeFBLaE,761 +torch/include/ATen/ops/mse_loss_backward_ops.h,sha256=N6jmo5c5vSvnpMGbYGnd_joNPzLX7A1pkBOo-AX2F1w,2181 +torch/include/ATen/ops/mse_loss_compositeexplicitautogradnonfunctional_dispatch.h,sha256=leqQk4-6YHal29s09U7Sx__HJmvhoU915MWRYYr2t3s,881 +torch/include/ATen/ops/mse_loss_cpu_dispatch.h,sha256=z9jtzaYFrNwqIFpE2qv6GkwGOS-dLipumxW87qyYL70,1086 +torch/include/ATen/ops/mse_loss_cuda_dispatch.h,sha256=ojPzdQK7RzOLAD9JqgNCLsi0PGKzMpUhsBHYeGvqYpw,1088 +torch/include/ATen/ops/mse_loss_meta.h,sha256=h5Od5Ykf5bwTVj3IcUg33tTEvrkup9dmVDQOUjl9t7I,650 +torch/include/ATen/ops/mse_loss_meta_dispatch.h,sha256=_PH7YqX1hMqduawcXWGMmo8HMqJCkajFRy2VIs3P2Cs,1088 +torch/include/ATen/ops/mse_loss_native.h,sha256=hrcOQrVr1gi2B5Wj8HlzdQItz57pIEBLhctNF_0ZUmc,671 +torch/include/ATen/ops/mse_loss_ops.h,sha256=VMqfPK68ITulg1fbyL2m4nyKn7idNrJ1Sm9AdwfCQEQ,1887 +torch/include/ATen/ops/msort.h,sha256=qHSJZBKq7ivCAlxHmGnqvkpeH6CMiChHS6Hjk8Djhi8,1033 +torch/include/ATen/ops/msort_compositeimplicitautograd_dispatch.h,sha256=9wNDMigughV69kuvPwYF0pAs82cHKj9oZ9ef7dciBSk,943 +torch/include/ATen/ops/msort_native.h,sha256=IvTLqcDSNuX1-zL3NUbjv0H91VFacYwcU3qi1kh33Og,574 +torch/include/ATen/ops/msort_ops.h,sha256=Ro9J-fytJOge-YkbIlKjbMMTyMY6fHZnLD-vkKDFgWM,1557 +torch/include/ATen/ops/mul.h,sha256=DsuLDav82A7AGnAktTL_ne8s7T6_gOcduKOfW_NaWtc,1863 +torch/include/ATen/ops/mul_compositeexplicitautograd_dispatch.h,sha256=nV2ntdpVKBKLfDh18thRz4xlzDL4azuD3AIklh__E4c,1090 +torch/include/ATen/ops/mul_compositeexplicitautogradnonfunctional_dispatch.h,sha256=X_6N9So06ZeT1tk39rPhxFu2lXxXF2rxn3JxooD461o,911 +torch/include/ATen/ops/mul_cpu_dispatch.h,sha256=ReW5kM10Lgdq4BogyUF_HU1JugdFslZ6K9tZhKZZYj8,1046 +torch/include/ATen/ops/mul_cuda_dispatch.h,sha256=zSrHJvlnjx3LqO6rNWAGG0Uzb7Vog3DrHuM98HdRz7I,1048 +torch/include/ATen/ops/mul_meta.h,sha256=Bj2yGtZt-Mp8i9qqJpaQxk1DXjsrQzXRjyR9bL4UG5Q,632 +torch/include/ATen/ops/mul_meta_dispatch.h,sha256=SD8Zlq6Ikoc6KBtkq0xMfYXMeipGTcd4JWqtblB94A0,1048 +torch/include/ATen/ops/mul_native.h,sha256=OoQoa41rfCqGyM0y1bB-w0WtU8TKIoTvXlYdiFNEh5Q,2527 +torch/include/ATen/ops/mul_ops.h,sha256=iMN6mLfthj93JLM2Nb9pDr9dKoNhee4AWn4Ik_v4u2Y,4258 +torch/include/ATen/ops/multi_margin_loss.h,sha256=Clwr_3bUMaHPO9JB8ygNhkIR5sGFjhQINO3_HrU94QY,1993 +torch/include/ATen/ops/multi_margin_loss_backward.h,sha256=4BPv5q8HHVh-YdupEN3yqQByaT1Ua_V3j-8IfUdlA4c,2328 +torch/include/ATen/ops/multi_margin_loss_backward_cpu_dispatch.h,sha256=Fn4IQIOwQ-fQ76IAd-sDlddEH6XzQV6V_2x1XkzEe60,1535 +torch/include/ATen/ops/multi_margin_loss_backward_cuda_dispatch.h,sha256=TbUwZ2-CpmKfPE9V9Oci4tQjfTUkmRjdIlQ3SiRVkeI,1537 +torch/include/ATen/ops/multi_margin_loss_backward_native.h,sha256=_s0EN-8CKuHDddzeBb9eUTPN6jGw_s2Rc4iDWiyZY2E,1552 +torch/include/ATen/ops/multi_margin_loss_backward_ops.h,sha256=ZCb8vIQWSI1b7qAfXEO13Cpyg4ljDgynsz_TjVSSQsQ,2863 +torch/include/ATen/ops/multi_margin_loss_cpu_dispatch.h,sha256=4X55-jWlfIbpIhhKDmxrrFwPjtMjdd6F5lfm1RKF_oo,1406 +torch/include/ATen/ops/multi_margin_loss_cuda_dispatch.h,sha256=IuyUUw63zViFiVA3TJBq58H-ROqTs1KHOrszsxA0hgc,1408 +torch/include/ATen/ops/multi_margin_loss_native.h,sha256=Lfqivs1Wf7R-ZaD1QbKgHrX4WPg2-ruypfiY0rinV3M,1382 +torch/include/ATen/ops/multi_margin_loss_ops.h,sha256=EBNtWCtqoCQ21pANG9k2yXWtvMA6MnfWQcRiw1blf0E,2567 +torch/include/ATen/ops/multilabel_margin_loss.h,sha256=3bdf80wNheIraixsS_mYDuTwZ0kyC4vG0Dord-OukjQ,1543 +torch/include/ATen/ops/multilabel_margin_loss_backward.h,sha256=lgrC1qI2rlZUIWyZhPxodFtVZQtyjefujp57OgNkjw8,2020 +torch/include/ATen/ops/multilabel_margin_loss_backward_cpu_dispatch.h,sha256=mKO1QMdT9m4_50Dp9TvE-9AsZeo-1WWadwIWKGx7cQg,1315 +torch/include/ATen/ops/multilabel_margin_loss_backward_cuda_dispatch.h,sha256=R9eIsylDDSCJL8rtn_d-tdqeWzn0zdXqT4NNuhY6lzc,1317 +torch/include/ATen/ops/multilabel_margin_loss_backward_native.h,sha256=wDJ4Ko4kC9N5L6qtkjDBY120yiI71daqcL4YV1raorM,1274 +torch/include/ATen/ops/multilabel_margin_loss_backward_ops.h,sha256=2vB5L5bj-claVhzrhXa1BrVr60ZWRTXpsJhgQa0TJls,2461 +torch/include/ATen/ops/multilabel_margin_loss_compositeimplicitautograd_dispatch.h,sha256=KmOC7Z7XI-hPlrPEWik9XYdpVUKKEEfpg3UoQrCu9qI,1172 +torch/include/ATen/ops/multilabel_margin_loss_forward.h,sha256=tCAHkioUbRHz-EH3wVUC10PyvB83A1Xd3F1T1-kYx54,1846 +torch/include/ATen/ops/multilabel_margin_loss_forward_cpu_dispatch.h,sha256=TgNrSExeuUvNMBLwTvPafZ6420tl2BbGqkdQLx8YCvg,1245 +torch/include/ATen/ops/multilabel_margin_loss_forward_cuda_dispatch.h,sha256=YBczlw1Dc7hPFd_FAp_T1wgUHrtxqFAo18HDOyJ4SqA,1247 +torch/include/ATen/ops/multilabel_margin_loss_forward_native.h,sha256=qPsxHc5coZ2TIAaekQTiMiO6WWTAiYs6_4bCWchtnH0,1166 +torch/include/ATen/ops/multilabel_margin_loss_forward_ops.h,sha256=wCMqm3nL8iVPHxFHRRIFJuLrJj33xR0q2Jv2THW4H0w,2308 +torch/include/ATen/ops/multilabel_margin_loss_native.h,sha256=VY0whCdEkQa0N8UYRoWLSkmDaDpluSWqh7s1XUPrLwg,720 +torch/include/ATen/ops/multilabel_margin_loss_ops.h,sha256=fa7hAjHzy64F4KI0mD2z1kSWle7qoleecHSDtNnBH70,1971 +torch/include/ATen/ops/multinomial.h,sha256=Wu94e6sBYyGss4jAavTuBf_pxtoVtMhspsCaGPrst3Y,1696 +torch/include/ATen/ops/multinomial_cpu_dispatch.h,sha256=SsqzfgcXMf_WypWKtiGsYAwiW8ZD2LRiB_exCwt3U7M,1202 +torch/include/ATen/ops/multinomial_cuda_dispatch.h,sha256=oOd4u2RmGH-ZRUd3BmMbt6glvIhLim-F7adD2pTiKBU,1204 +torch/include/ATen/ops/multinomial_native.h,sha256=-2BiLUECAdyH37ir_O48-FNOkcLAFuKfJBjGRMQ5iF0,769 +torch/include/ATen/ops/multinomial_ops.h,sha256=LwlITv316SSnYpe6IFJhDBg0ng1hB9z9iYd58fqawpQ,2150 +torch/include/ATen/ops/multiply.h,sha256=zyVL_97kjPAoFDN2S-MSFPJ8fAglCSJ9Y0RHRMt1OyY,1425 +torch/include/ATen/ops/multiply_compositeimplicitautograd_dispatch.h,sha256=T5E7AhCvlzCOKk8K3GSmcIXdXYf3f27F8P0G88tf6vs,1273 +torch/include/ATen/ops/multiply_native.h,sha256=aVVPloFAJHcd9hk4KH5IfEyGDEKE-o31FDiMEK3lpjQ,875 +torch/include/ATen/ops/multiply_ops.h,sha256=fpt_1myvkOau1W3zawRBJKTW6AttSSczTIKUjzzfV7A,3634 +torch/include/ATen/ops/mv.h,sha256=uU_2rITNO0CQ8WQrW82LcMCXBQbuPd2SO1B4NUVD6YM,1126 +torch/include/ATen/ops/mv_compositeexplicitautograd_dispatch.h,sha256=8AnES8ic5_9IUwiOJR1xw-Mz-Tgbwb7AKiMsSRwGZ_8,1006 +torch/include/ATen/ops/mv_native.h,sha256=LBBrnJBE-R5sfoynmRPagilvek-85xTcUbtUJwq68CY,698 +torch/include/ATen/ops/mv_ops.h,sha256=8cej0b25R2qqaJ4mpNwyB_yIhIFu7qTjSOoNXxPXa9k,1699 +torch/include/ATen/ops/mvlgamma.h,sha256=AnijYr9O4qZLeEm2ii_crzV8lodkmY3qxtTCKEBT5m0,1126 +torch/include/ATen/ops/mvlgamma_compositeexplicitautograd_dispatch.h,sha256=6Ez4onXMxwJbac6Z_MB89r5WFcoMTLQIDzmGqDTtI7o,865 +torch/include/ATen/ops/mvlgamma_cpu_dispatch.h,sha256=xGD5uqcvkT4sG5e8hdCpNwdbPH1U5x3bDTn5qiFygfo,873 +torch/include/ATen/ops/mvlgamma_cuda_dispatch.h,sha256=ciuW11TeqXcGR_tQNzqTClOUM-SfMHQhDo9RoVXfrE4,875 +torch/include/ATen/ops/mvlgamma_native.h,sha256=v-AtdMpP8rnOSlt35YBE2tphid35rgR6PLvjUpq4Uss,667 +torch/include/ATen/ops/mvlgamma_ops.h,sha256=YQwfNz_EzcpitboxxdE5M3TVrYB2W9j00KjdpcrqiHg,2205 +torch/include/ATen/ops/nan_to_num.h,sha256=G15oCrnqBZ33y8n-yXXH7MLx6bXuyu5r8hVRX50SLso,2061 +torch/include/ATen/ops/nan_to_num_compositeexplicitautograd_dispatch.h,sha256=2lTc67wiEkCcsXNdJFxfiu8MXhaNefAKzSds_Y1t1ck,1123 +torch/include/ATen/ops/nan_to_num_cpu_dispatch.h,sha256=6RJYIqFwHuNc_3VWIpbpyaTO-2JbNoWytXDFPhE8RQU,1086 +torch/include/ATen/ops/nan_to_num_cuda_dispatch.h,sha256=i8PAHh6JJ_wPZqiL82PlVWF5UCOI9MQFJOEaLS6WZQU,1088 +torch/include/ATen/ops/nan_to_num_native.h,sha256=xqwN7nbxoJqzjm-e3TzyIFlIMcfx_ogODWP08-bo6OQ,1597 +torch/include/ATen/ops/nan_to_num_ops.h,sha256=WsEIFhInX-hdmF0jBOGUXRDXrbus8ypjJafapIjNmXU,3063 +torch/include/ATen/ops/nanmean.h,sha256=ctgVkWmYtpmOTdBJwVZxp9q-SPamVqhLUOumdSVLTW0,1623 +torch/include/ATen/ops/nanmean_compositeimplicitautograd_dispatch.h,sha256=4qXIMF7oxcAjU_6imsqDzJTFqdO1Zw-hrcqgi3HHLQQ,1267 +torch/include/ATen/ops/nanmean_native.h,sha256=tZ1kWuVobm_KHsmgpFKcpikkdnb_JflhxPiRmsj-ioY,778 +torch/include/ATen/ops/nanmean_ops.h,sha256=4LxweYzWnZYAVuWxuCSSUzs20t2q884-J9PCb8Ogcco,2152 +torch/include/ATen/ops/nanmedian.h,sha256=U3jzViBuV4Z-Me73jA2mgMYzTL2FLR_A46YLlhbVWjU,3345 +torch/include/ATen/ops/nanmedian_compositeexplicitautograd_dispatch.h,sha256=wnkJTTV8EN5GRiIvZf6f8cM9J9GfHvgSSo2OsZ9T5bA,1013 +torch/include/ATen/ops/nanmedian_compositeimplicitautograd_dispatch.h,sha256=VbGdqWPc9bfpELES14_fOkyy4MphCj88yqfN7wCm2ms,1189 +torch/include/ATen/ops/nanmedian_cpu_dispatch.h,sha256=4cErTSAwj9-Cqqlgs5XmdcEQXP2ztjdtQP18_I3o714,1075 +torch/include/ATen/ops/nanmedian_cuda_dispatch.h,sha256=1ReZCv9H5TaiAiBB8EQvl4-V4Rzu60ZeLET7f61UiHQ,1077 +torch/include/ATen/ops/nanmedian_native.h,sha256=BnShBnD0pUMEjv9Su37OOSh9okkyfxlH0t6AihkLEqo,1381 +torch/include/ATen/ops/nanmedian_ops.h,sha256=tf0X6Z5_0fhLOZ780A-GMb42aNpA49tFbS2-Ikq-Ais,4959 +torch/include/ATen/ops/nanquantile.h,sha256=lqXOkEQjGIxmMPyC1s3DuqyUMcFk1fC_D1je1BA0lJ0,3024 +torch/include/ATen/ops/nanquantile_compositeimplicitautograd_dispatch.h,sha256=zfDouG3YmUTRyXo-UKa2pa19nFfwpezo68YiHb-McC0,1862 +torch/include/ATen/ops/nanquantile_native.h,sha256=p2vLzyrqr3emuXvqiWIktZQVz7FUQYbD2SCsy5t76ek,1158 +torch/include/ATen/ops/nanquantile_ops.h,sha256=1gZUkH2hUayi88y_4rx4DdfsSU7gNhnMqU3J50f4WmM,4064 +torch/include/ATen/ops/nansum.h,sha256=_Rl_9XX2GpSyOXn_ABaQrioY9qVYk6sa7eU79Al_hAI,1613 +torch/include/ATen/ops/nansum_cpu_dispatch.h,sha256=gaeoM_Iubr_9IjzbvCjjAPRkfcUhCCZaHTrmjbIKz8M,1220 +torch/include/ATen/ops/nansum_cuda_dispatch.h,sha256=yBzjytqvXa5OwG_mkqsGcv6dSh3aArg1FYVnWmkftrY,1222 +torch/include/ATen/ops/nansum_native.h,sha256=jNnox33T3qqFvOvbU3d_FGXeIUdtRD1nDifuWxhDVAw,776 +torch/include/ATen/ops/nansum_ops.h,sha256=UKnGu9Gkiv4B6qk8HTVywtmr40gguNSqkJy-_Q82VZo,2146 +torch/include/ATen/ops/narrow.h,sha256=Kep7U4QX3trmn33vPpyh1kDC5ymlxjRuxaMlF_j6ixI,2684 +torch/include/ATen/ops/narrow_compositeimplicitautograd_dispatch.h,sha256=uJ-aOjDQ9zq4juvb-iQsbKG1uHBpzU9CMlPPJlFHN6E,1176 +torch/include/ATen/ops/narrow_copy.h,sha256=x4YiSoPvQhImtVKjDR9IZ7Qb7takvre_laa5KQTHDNg,4152 +torch/include/ATen/ops/narrow_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=0TPt75hpdigkuizk7VwHI2XWlsqbUoEuc3GhdASx0N8,981 +torch/include/ATen/ops/narrow_copy_cpu_dispatch.h,sha256=n-MgWrGl-WrujkDhv3qcn5eZMCR9T86mLkbiyDMZYX0,1455 +torch/include/ATen/ops/narrow_copy_native.h,sha256=klxsY6FjXQcutmUWGj234rxSfmbaMavYmrSnUQpMjko,930 +torch/include/ATen/ops/narrow_copy_ops.h,sha256=08GtBFSJxKaVf7Sild3vVui3IIjIYYlbEy2OwlSSYoU,1947 +torch/include/ATen/ops/narrow_native.h,sha256=vyObbIRNWI1UKYCAxjTVs20oUdBF7HA8NspKdtGObNo,805 +torch/include/ATen/ops/narrow_ops.h,sha256=VFpNhqpSaavKZHzr5IpOmUeFKBrEyEtCN_rWjNGc0xs,1880 +torch/include/ATen/ops/native_batch_norm.h,sha256=CcyF-Fkw0KER4qEFDNBlTZBvwnXnQl7Bc0hk1fXZ5A0,2818 +torch/include/ATen/ops/native_batch_norm_backward.h,sha256=Re2K1HEadMctwlHeelbb211itrkZiiODWHi-WU_BF9c,3352 +torch/include/ATen/ops/native_batch_norm_backward_compositeexplicitautograd_dispatch.h,sha256=udPlOeodbPgIOBgV3pAI1emWeYKpvAoLDuLGHcRMhiQ,1743 +torch/include/ATen/ops/native_batch_norm_backward_cpu_dispatch.h,sha256=--g5n4dXL73oRdYFXyYzbJYELF9YzmQDIVYFRzM-Ax4,1126 +torch/include/ATen/ops/native_batch_norm_backward_cuda_dispatch.h,sha256=9nQwFg5oX4Qg5oBR6NmbF_bjz5NYgS1Qp_N4TMelF-Y,1128 +torch/include/ATen/ops/native_batch_norm_backward_native.h,sha256=WeeII-vh3dis20XVJy9FAqahsbzr9My7KVfpRpDqwS8,2256 +torch/include/ATen/ops/native_batch_norm_backward_ops.h,sha256=fo9vnXUdMrjNUWX9wet4xOJlwujtrEo196gdpMQm200,4208 +torch/include/ATen/ops/native_batch_norm_cpu_dispatch.h,sha256=igTLT25ZbZhQcsSkPyFfpQinC5kDfIZPMYB1oNb1zOI,1841 +torch/include/ATen/ops/native_batch_norm_cuda_dispatch.h,sha256=sx9WbbZuSC_qCa8FG-ePKaHithEfgus6GIGyZFfpmL0,1843 +torch/include/ATen/ops/native_batch_norm_native.h,sha256=bWtJLh70MurGCYi3JGEqZThrAPu3RlCrlEDwKmR6KeQ,2248 +torch/include/ATen/ops/native_batch_norm_ops.h,sha256=OUbmE3_lgRkrYk_ln-4Lenyced_ywlPAupMi6dG-JdM,3567 +torch/include/ATen/ops/native_channel_shuffle.h,sha256=28iNUXgW-4LS4PS2JNz-5B3_w8D8mOl-PL1VMJEISbE,1505 +torch/include/ATen/ops/native_channel_shuffle_compositeimplicitautograd_dispatch.h,sha256=OtxnhikaiMpQR6iVX2V8RlCbgqkJ2VSeuc9W8ZCcsXQ,917 +torch/include/ATen/ops/native_channel_shuffle_cpu_dispatch.h,sha256=4LOzc9znpF93JPtManCIGeUbYSevoOX3I7ZHd7_fO0Q,873 +torch/include/ATen/ops/native_channel_shuffle_native.h,sha256=cZlCKagnqFuDswbiEDGge4PvoHoHq2VVV5r78Tnr3WE,611 +torch/include/ATen/ops/native_channel_shuffle_ops.h,sha256=UVFPc0HspEFcBKYx28IR0zKq2OlWZQ9gHNT_T1FSz0U,1078 +torch/include/ATen/ops/native_dropout.h,sha256=emXbM3g5_jLr9ZG5mrtEUDbBlWVwbCZRi0DMBpU3sPU,1552 +torch/include/ATen/ops/native_dropout_backward.h,sha256=ycJBXN44uTl8GZJrSTVHks-oYxiSQ2bU92icn2E0AY8,1510 +torch/include/ATen/ops/native_dropout_backward_compositeexplicitautograd_dispatch.h,sha256=LLvjxWT0C4KByoBUdZPv5NHNGZfClRUM9YxsrMvnqgg,1017 +torch/include/ATen/ops/native_dropout_backward_cpu_dispatch.h,sha256=LpVapYLofIQyDkfs1PYs26VWTHkeglmc12lHFNZl0gk,806 +torch/include/ATen/ops/native_dropout_backward_cuda_dispatch.h,sha256=7YODmYuhWZQz5li55vCxZOtSDKBmU2ivr6o2bGeY2fw,808 +torch/include/ATen/ops/native_dropout_backward_native.h,sha256=BwpkptOqnsm9uiqxx2SYB6Xxx9Se5PLLg1GiXQVjcoY,825 +torch/include/ATen/ops/native_dropout_backward_ops.h,sha256=F13_UW19sXHYACyTpol_rlsc2w_MmvzwY4EcgaeMrKU,1971 +torch/include/ATen/ops/native_dropout_compositeexplicitautograd_dispatch.h,sha256=Q_bpVoLbvY5cszW3I4cH9j-Gd2S0PtrLS7cOjPeghuo,1081 +torch/include/ATen/ops/native_dropout_cpu_dispatch.h,sha256=B1hU2sX-j5hCGQRQwM8OIiJhGPTuc4hbTc4hzDNB0Ws,816 +torch/include/ATen/ops/native_dropout_cuda_dispatch.h,sha256=pv-nYW7zVyTxd1alc-hcxMj6yMJfTGYZtImTSDdzK9s,818 +torch/include/ATen/ops/native_dropout_native.h,sha256=Ral5_wcng0c5zMrR6-z9DAArP2SNnquAOgpqK0pQVU8,1016 +torch/include/ATen/ops/native_dropout_ops.h,sha256=Zqgio4Gk-iR2ISSwqMn9CgLHt8UKT_oLbYJNQUG7hU0,2131 +torch/include/ATen/ops/native_group_norm.h,sha256=PcTdB8KTUXxutriH7eMjBDow-pSFQyCpM-oZyvARFCQ,7280 +torch/include/ATen/ops/native_group_norm_backward.h,sha256=BoPIVjGLlXXiEHyeVXnKG-m4fsK3wITVnw75bfZrlOM,8789 +torch/include/ATen/ops/native_group_norm_backward_compositeexplicitautograd_dispatch.h,sha256=EOvW_TCb-oMCpyGEIGudXWdBCqQ1T1fqHsvePdGyGoU,2316 +torch/include/ATen/ops/native_group_norm_backward_cpu_dispatch.h,sha256=dfq8nnIbeH82tL0_TvwSdroaaswM_voFdv8ac2Te4VQ,1345 +torch/include/ATen/ops/native_group_norm_backward_cuda_dispatch.h,sha256=I98qf6yn0twXyenTOBVFt9soGh3Oh9LLLTpjRfGUmo8,1347 +torch/include/ATen/ops/native_group_norm_backward_native.h,sha256=dkFs6mGmSa0h9tNpH5PPpyTLPDVCqV0PjaPC5iHivl8,1166 +torch/include/ATen/ops/native_group_norm_backward_ops.h,sha256=r650Ft_iG2Jf7Ip8IZlIZqEgLNRC9vS62AJcqwErWfw,3558 +torch/include/ATen/ops/native_group_norm_compositeexplicitautograd_dispatch.h,sha256=MmX4X26MMcsO6lZdBrg0TqcDrWEmN5Mo2ac51XUNNSo,2565 +torch/include/ATen/ops/native_group_norm_cpu_dispatch.h,sha256=Q2D3L0s1j04E6Lh5C4tkGGKUwk9hfekT1PSn_OM2mbo,1209 +torch/include/ATen/ops/native_group_norm_cuda_dispatch.h,sha256=KgxvYpDvVGndged2LLc9vgUkBl4nl-KswCTHWOyiYFA,1211 +torch/include/ATen/ops/native_group_norm_native.h,sha256=9BLH5nGr9oId_PLELjcD1k69i4oZzMQX7KxDQyAejlQ,1279 +torch/include/ATen/ops/native_group_norm_ops.h,sha256=EILHiE21LRWKpgQcglze2QLNsRmqdMDEAZMl2igmYe0,3116 +torch/include/ATen/ops/native_layer_norm.h,sha256=BKkao2_z8np6rJ8ne8f7sOJYzVsSBmnVn3FnEHJ2Vf8,7100 +torch/include/ATen/ops/native_layer_norm_backward.h,sha256=YagAIXPJ_b7yVcLQax7V5SW67y-WsRHMwodsH3gVmYo,9269 +torch/include/ATen/ops/native_layer_norm_backward_compositeexplicitautograd_dispatch.h,sha256=tHnVYB1V8TynL_lvRoKiNXXgKZXa-_IAietoTWn9dvA,2404 +torch/include/ATen/ops/native_layer_norm_backward_cpu_dispatch.h,sha256=kRMpt8MeGyQ7uMd6e0owsNNkoa2Rwl5HG1U0XDWfw_Y,1389 +torch/include/ATen/ops/native_layer_norm_backward_cuda_dispatch.h,sha256=a_QG-I1EyKQvDRhEW6R0eYtHkG5g0FsdbLr_ytJesT8,1391 +torch/include/ATen/ops/native_layer_norm_backward_native.h,sha256=YYl9VhA9solojrz9MFvdlDG1o0K3U3I90rC0XF5l8-0,1895 +torch/include/ATen/ops/native_layer_norm_backward_ops.h,sha256=_8m5HWd7LOEWUhiByhbV1YqzRmR_RthlTwdVFx3DN5w,3646 +torch/include/ATen/ops/native_layer_norm_compositeexplicitautograd_dispatch.h,sha256=Agpt0eqHAEmkOBfeYpoj-PbH3HtMdA0Ntz0TqbgF4cw,2445 +torch/include/ATen/ops/native_layer_norm_cpu_dispatch.h,sha256=tB1lHF_kYFTwxHNDjs1JXygm7qCc7BE-p2xR2wgqnlY,1169 +torch/include/ATen/ops/native_layer_norm_cuda_dispatch.h,sha256=GN2Y8LW9tT7kr8C2Gagp00IHYw7-KxtRr8brmKu9xHg,1171 +torch/include/ATen/ops/native_layer_norm_native.h,sha256=7hefz0ZJ2pj8hI0r0oEOO_QayBILIsSkvGB-0rWxuEQ,1695 +torch/include/ATen/ops/native_layer_norm_ops.h,sha256=feApS4kY8LVDjcVnZccHUIVoi8_xl9zgmU_A04vPApQ,2934 +torch/include/ATen/ops/native_norm.h,sha256=QB4GFrGx2ABC-zv08Dvm0ZLHZ4NI-zYp47kWCKe5XlA,2491 +torch/include/ATen/ops/native_norm_compositeexplicitautograd_dispatch.h,sha256=w0i8r8REFV2SUJF2NDQgVoA8pTQmEVMGaVNWbl-WYYE,1342 +torch/include/ATen/ops/native_norm_native.h,sha256=KuY9nfiPGVCUbqHrmeamicoW84rNzh46N1-3gABPUCw,1022 +torch/include/ATen/ops/native_norm_ops.h,sha256=9wcr767GD2hq7jjkgy_kAz_Qi6Ij7kzCa8eCSSql8rE,3756 +torch/include/ATen/ops/ne.h,sha256=HYUo1PCRDVb1rswkKcBXLlWMrtw0xgMLMqNdxHosns8,1872 +torch/include/ATen/ops/ne_compositeexplicitautogradnonfunctional_dispatch.h,sha256=CUfSa3jdg2lMFyEeZTiY6-_33TepYJoE3Dt3mLin5TE,1060 +torch/include/ATen/ops/ne_cpu_dispatch.h,sha256=NCudWTUQ87Hxv-LkcWTH6fuYj304NRFD49ZHuIGvUvU,1396 +torch/include/ATen/ops/ne_cuda_dispatch.h,sha256=eyzj2oMaGt4USuTsB2QeoLEb6aZ5uJTDhv9ohByhhWE,1398 +torch/include/ATen/ops/ne_meta.h,sha256=cnNjc0Cl72BMarIZ9Kjr6TDYVYCdep1ef6JsyL_ZYfE,783 +torch/include/ATen/ops/ne_meta_dispatch.h,sha256=DzcY6_N-g1X0Uk5H-PDdJ-VZ2pM0n9rqCj-DC9WXagI,1398 +torch/include/ATen/ops/ne_native.h,sha256=PpJv2C33RvGZ0z-U5p639TVrk5dohVc_Mc21v1BgaQw,1235 +torch/include/ATen/ops/ne_ops.h,sha256=bmbx1e7-BMrd8v3hS0xw5dDHTqf3DL2A_rmZcZBWrrQ,4261 +torch/include/ATen/ops/neg.h,sha256=xECus_-bbSEMLVsGN5p2nRgyrsP0W7XLfjaecuqh8LY,1151 +torch/include/ATen/ops/neg_compositeexplicitautogradnonfunctional_dispatch.h,sha256=QyGOfBwB9wigvbcbVKEa29lgO9oqayyPdnkH9GUCfO0,859 +torch/include/ATen/ops/neg_cpu_dispatch.h,sha256=cuciUpSH9cchDH5m6u-GUdQPDsrY1q9T1W07pAke6is,942 +torch/include/ATen/ops/neg_cuda_dispatch.h,sha256=6swx_PyvOBQ-3jd5l7LmFqmPyW2clyhm0nysCmNshu8,944 +torch/include/ATen/ops/neg_meta.h,sha256=syV2vxjAGM6YLoyTJ3hDGRftwgT8J5siUI_xzFVWopI,599 +torch/include/ATen/ops/neg_meta_dispatch.h,sha256=KowkJguMJq7zexuWw877L6Lo2FRZL-YVVJtQ5G8ehw0,944 +torch/include/ATen/ops/neg_native.h,sha256=f2SxujFrqeAEUm4vto2AZYaMlU3j2QUeyXSOAWzeajs,1145 +torch/include/ATen/ops/neg_ops.h,sha256=puySY2iL8XwQvIpZEgwvqedQfJKPq5Gcx5XA6ob2vh0,2046 +torch/include/ATen/ops/negative.h,sha256=7_Y_xSrSWgJkgi2O9OBBgDg5hQCcqwweJiJkqU8HCMs,1216 +torch/include/ATen/ops/negative_compositeimplicitautograd_dispatch.h,sha256=O6cilrHxSlVSec2sW7xrAFDXDmT6PGsY2UqFAf626Iw,1006 +torch/include/ATen/ops/negative_native.h,sha256=ACqyULEYPpcy_dU3or7Pw-uME5xGheMMvFmSZDWyx-4,634 +torch/include/ATen/ops/negative_ops.h,sha256=UV3fLMGCjft4Y6s-gF1jG_do0ZCLKWRJPZz99GYKM0o,2091 +torch/include/ATen/ops/nested_to_padded_tensor.h,sha256=gINp7U1TyTkMdcuux-9jJIBYWF-KJnn2y-devyEEMyw,842 +torch/include/ATen/ops/nested_to_padded_tensor_compositeimplicitautograd_dispatch.h,sha256=2p0sZ-YMDdJWKsPe1vUQur16xDTHwQclYzTLhN8398w,872 +torch/include/ATen/ops/nested_to_padded_tensor_native.h,sha256=dz8LZzt8ukGqr7KF0xgHon4MO1g11FwaxOxhocSeP4E,582 +torch/include/ATen/ops/nested_to_padded_tensor_ops.h,sha256=dKj2xmn8hheg1yzESsYUT4902cWf3uBvThIGQHbIa0c,1192 +torch/include/ATen/ops/new_empty.h,sha256=KSJfOt_Y3ws5R-T6RZXiAaaKV9JMX6xBUxt-fsvE62U,4409 +torch/include/ATen/ops/new_empty_compositeexplicitautograd_dispatch.h,sha256=orZ9BemrjYYAstC9wyPmT905Hb_hODRpGj06tSga2XU,1864 +torch/include/ATen/ops/new_empty_native.h,sha256=NRJ-02WVdLMDhN6qey2RpqKxhS-X6m_H-BiNutNnE3Q,805 +torch/include/ATen/ops/new_empty_ops.h,sha256=rWrH6oqL7vFLaY8H6IlxIOI_EYU43eHnnG4NiOAGVJU,2253 +torch/include/ATen/ops/new_empty_strided.h,sha256=6-EA2Lm5xRapqX287egrDNy43Fs-GmlwDaBo7XV19OU,5273 +torch/include/ATen/ops/new_empty_strided_compositeexplicitautograd_dispatch.h,sha256=EHGMjtQpRaE0JQrsLxb71RsuKdrFj2Zl58FiNv6lt4o,1308 +torch/include/ATen/ops/new_empty_strided_compositeexplicitautogradnonfunctional_dispatch.h,sha256=a3EYEeN5JkfOtkg02Rby_bxlfuE6E6JnhMnKHJadEIQ,1586 +torch/include/ATen/ops/new_empty_strided_native.h,sha256=7PnkrzcQDoiDm9wWuVfZ7_-xhNFEztQOe_0rwTHXQyo,877 +torch/include/ATen/ops/new_empty_strided_ops.h,sha256=16xxxc_hXLfTx-Kd5iwBvhl76fBfVNhxSk6xKAJABnw,2489 +torch/include/ATen/ops/new_full.h,sha256=WHC_aSPo07-IkfHekghwKW8gJhQtyntm2Hh0qEjRI10,4972 +torch/include/ATen/ops/new_full_compositeexplicitautograd_dispatch.h,sha256=iho3OMy0Ob_IKV4tehjZ06HuFFIk8_44QEG9E_Cez_s,2104 +torch/include/ATen/ops/new_full_native.h,sha256=-kFhnf8X9NfdTP5nAxAt8u0oKTBTx7Yc6RmSJGvfAmM,854 +torch/include/ATen/ops/new_full_ops.h,sha256=x6eu8UOVPBpE9X6PT5d9RWGzSSf_e3SUc4JDI0OtkWM,2449 +torch/include/ATen/ops/new_ones.h,sha256=xbys76jsi3hRi6_O0fyS_UbYSRe8hDRWC3OEQsmv9Ww,4380 +torch/include/ATen/ops/new_ones_compositeexplicitautograd_dispatch.h,sha256=M7_pkIa1G8Ax--OTj4JUIjHgwR4cIfbqa5amwq0BbSk,1856 +torch/include/ATen/ops/new_ones_native.h,sha256=mPErXoINt8dXK5xWFo2iOy8E7wpqkFXxWvZZ9EgJKPI,792 +torch/include/ATen/ops/new_ones_ops.h,sha256=wmpiOTr_Etwn3LClx2CxPbc0A6z21Xhc9pgcdT6jMFk,2247 +torch/include/ATen/ops/new_zeros.h,sha256=YNBfwNULvmnWEtEnZ2SePJltIoiaTVzbWSsAQywzwbE,4409 +torch/include/ATen/ops/new_zeros_compositeexplicitautograd_dispatch.h,sha256=kDgBF5xx9juMMZeJUsIuQj1vKVGoAB5t9gSp2Hgw5VI,1864 +torch/include/ATen/ops/new_zeros_native.h,sha256=_HYr6gog3Nla6NjDx5rTMu2wqBmnyrLtSdh0dkKVCYs,794 +torch/include/ATen/ops/new_zeros_ops.h,sha256=e066_p6Q4g-auu1ChSZLii0BBthDNgD1GZvnk1zx294,2253 +torch/include/ATen/ops/nextafter.h,sha256=LMbi9HpdAzs0KQIIFTBLsQNGeBEE4-pdsD_bCXBv0dY,1214 +torch/include/ATen/ops/nextafter_compositeexplicitautogradnonfunctional_dispatch.h,sha256=xXSdqDz6ZvfM1vQK1CddiXVsSjsRPOhxEgStIavywpE,923 +torch/include/ATen/ops/nextafter_cpu_dispatch.h,sha256=xvO8NzNKXzK0pA4Lkbi6OoUVBAA3Pp_EXgnm5INVFSM,1070 +torch/include/ATen/ops/nextafter_cuda_dispatch.h,sha256=yJ_J4V1LywMvBLp5LM946JRDIDnZrO-6CaB3463doII,1072 +torch/include/ATen/ops/nextafter_meta.h,sha256=lyoRvtyoGhYCse3bv7tumn1mZghXKDvGvpaTXLt1lEE,631 +torch/include/ATen/ops/nextafter_meta_dispatch.h,sha256=mkJ0Q36UOKM_f3AZtEr5MiJDyMwg8ssJOpfpwpKS6Ao,1072 +torch/include/ATen/ops/nextafter_native.h,sha256=rEc6AUrRzjyb5IpoT34_VjbTsTS3Ws1omA1uAKyYme4,654 +torch/include/ATen/ops/nextafter_ops.h,sha256=4901k7ZxMVXldXUmcg5ZrAG7e02s-5KOZaqs9aB0yf0,2358 +torch/include/ATen/ops/nll_loss.h,sha256=uI2pXoRdZxPllhhLdSm_muAlvB6DSA9YRqPbcTKuQoQ,5591 +torch/include/ATen/ops/nll_loss2d.h,sha256=Guj-wo70L7b1SOStxR80mTDyE0B35BPbgnea7uyQG7I,5653 +torch/include/ATen/ops/nll_loss2d_backward.h,sha256=74QNGv93C10w_C081326-y8bEZ32NFlJzzfJ36NKH4c,7192 +torch/include/ATen/ops/nll_loss2d_backward_cpu_dispatch.h,sha256=s-rSK3XLq60O6UlsvGmoev9QWrQZ-Sl-eaKCO1sZzlE,2317 +torch/include/ATen/ops/nll_loss2d_backward_cuda_dispatch.h,sha256=0NhX6GOV1gG4xReO4IEMv0SRtfIQA_dVBA2Kq3ab_L0,2319 +torch/include/ATen/ops/nll_loss2d_backward_native.h,sha256=DJNX6qrvLXVSn0i3oQdJrQ2KLNxufs5ggg24NO9YhRg,1502 +torch/include/ATen/ops/nll_loss2d_backward_ops.h,sha256=M8HsyPQIrmJ1twDTe-cING7lfuTVycl72Z0Ks3pSVZY,2861 +torch/include/ATen/ops/nll_loss2d_compositeimplicitautograd_dispatch.h,sha256=VL6rhiTlJqnxgd_Vqmn1vv2crD2Of5Epe5DSe4SfJwY,2001 +torch/include/ATen/ops/nll_loss2d_forward.h,sha256=MmSf8s9-7vn7zhbjYlCO7XphLJ-DnjR_6PbjghVSf4g,6543 +torch/include/ATen/ops/nll_loss2d_forward_cpu_dispatch.h,sha256=aoTJN0FWNLDgnZKEkgtUAAGzVvrzGaDyaOeDmN4-0XA,2171 +torch/include/ATen/ops/nll_loss2d_forward_cuda_dispatch.h,sha256=xwze_GvQqQZ8dbcHZCVIxQj4np2PE-cStNstAk0Pf_s,2173 +torch/include/ATen/ops/nll_loss2d_forward_native.h,sha256=JkyrSxMqdSlqICa0zkv5qv-Q-k5wx0BjY2SDqQ0p0LY,1388 +torch/include/ATen/ops/nll_loss2d_forward_ops.h,sha256=ULSW8vyEK27eDCcJfU_JZNJY-KpOb4XO5S5uVe6zVKQ,2702 +torch/include/ATen/ops/nll_loss2d_native.h,sha256=nOiNAJz5hulGp3hMnArpjQKYbCZzZdjrLuz44atbJTY,847 +torch/include/ATen/ops/nll_loss2d_ops.h,sha256=w3K_U0GkuLjhDGiJvsESOv_F6UkylB5r_Dqp8OqKnQQ,2373 +torch/include/ATen/ops/nll_loss_backward.h,sha256=w-phYArVgN3e4sRS0NbSfigVl2lvi6iHXYvDj-0M8BY,7130 +torch/include/ATen/ops/nll_loss_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=XBEyiPiLBgKUhmJyafMYfZoC0O2DaxD8OtJ1I-JHz7Q,1255 +torch/include/ATen/ops/nll_loss_backward_cpu_dispatch.h,sha256=RiDGZibI3wpo89UjNlVAnOBQ2lLdMsfvIypXkXyVJIs,2305 +torch/include/ATen/ops/nll_loss_backward_cuda_dispatch.h,sha256=wqcK5zKQmk5EM7gSgdtRYGxmVVpXjbi_9c_AdlujzoE,2307 +torch/include/ATen/ops/nll_loss_backward_meta.h,sha256=JbP1KsxtsfEhPZv67Dw2L_uT679AnIHZ9GQ6ya7zjOM,776 +torch/include/ATen/ops/nll_loss_backward_meta_dispatch.h,sha256=dx3Rnzq4047puvLky7MF3uDPgOkQefBD0B3oQC4F8cc,2307 +torch/include/ATen/ops/nll_loss_backward_native.h,sha256=Eodz1BKL3JmZXNbQFZRmLLC_JFqft40aedZ2_1qiMis,1167 +torch/include/ATen/ops/nll_loss_backward_ops.h,sha256=7GVUZCam351VOJgEEUUX6R8e1HtPXoV5FPK2Mrn78tY,2849 +torch/include/ATen/ops/nll_loss_compositeimplicitautograd_dispatch.h,sha256=W9lIUwFovkjms068IajuXGYK9MvIy6r--1pYZR59O0I,1989 +torch/include/ATen/ops/nll_loss_forward.h,sha256=aYLnSsXSxSYgGV75jEAZi9zmV-r_vV6-BhQYbFykCyU,6481 +torch/include/ATen/ops/nll_loss_forward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=YYleFtt8SBl2XFir4AkKioODlKPlkl9YGkvVZfdJus0,1173 +torch/include/ATen/ops/nll_loss_forward_cpu_dispatch.h,sha256=5f5T4GsSY9uovSMdf4dV3bbhQ7v0LYJfq-GkA2lwFCo,2159 +torch/include/ATen/ops/nll_loss_forward_cuda_dispatch.h,sha256=P0e6Y6XmmC4SfKNb2mhn-4cnVKhBDPqv123b0Sga3VQ,2161 +torch/include/ATen/ops/nll_loss_forward_meta.h,sha256=7T1VSKnzZDx-xs4ndst2kgj3MMKq_brBXHAMiHWts4s,710 +torch/include/ATen/ops/nll_loss_forward_meta_dispatch.h,sha256=wbH7ydpwwjncTztTiIcbGWAJmDN1oqSBWW8LA2KoBbk,2161 +torch/include/ATen/ops/nll_loss_forward_native.h,sha256=AowgR3ngHY-M-6QE2-CyEKbfsaL35BLgtHxc9BntuX0,1090 +torch/include/ATen/ops/nll_loss_forward_ops.h,sha256=KSIJSoz2wVsKmHwJVppllW3YqZ5tTwMOVsThBjnu2hM,2690 +torch/include/ATen/ops/nll_loss_native.h,sha256=bmK4LM4QOGRuCe6d0PqohKeWb8Up8h5p34YM7mRk2ik,843 +torch/include/ATen/ops/nll_loss_nd.h,sha256=Ike0TBxKUQFLjcGYsjg4rx77FOZbk45mfTpZWD2b4l4,2146 +torch/include/ATen/ops/nll_loss_nd_compositeimplicitautograd_dispatch.h,sha256=JACaHb0pMgh-BCGOS0MYmo1WiLFjsMMRlbEpKewKcpY,1143 +torch/include/ATen/ops/nll_loss_nd_native.h,sha256=Jvl23wu0kiIBjh3vr1OawdIHSBW4xYcNpicTFAq1AeU,653 +torch/include/ATen/ops/nll_loss_nd_ops.h,sha256=mJMiz5ZgUl5-HBlm7pJkHtmd2_Cy9Ss6j5yfYtSkwA0,1370 +torch/include/ATen/ops/nll_loss_ops.h,sha256=MuCH4OjctIFU1aMrDxRfNYwdN061K9WK1XZ3vaZa744,2361 +torch/include/ATen/ops/nonzero.h,sha256=P9Nws4ivZaITKn3PXiM_g2VKUcVOVrKzfu1hMhPusz0,1053 +torch/include/ATen/ops/nonzero_cpu_dispatch.h,sha256=z_Y2AR6_00WoRlL7YcT5HXKBAJ1WxA_tUPVBYziAfyQ,905 +torch/include/ATen/ops/nonzero_cuda_dispatch.h,sha256=isXmPnweDW30bsL9e7LrGMgRQE5Pffav4DGP7J9eTvs,907 +torch/include/ATen/ops/nonzero_native.h,sha256=j9sAv5jK2jGSc6yUxcBz9uwtoPxGCKWc7q9xN9TMHNA,732 +torch/include/ATen/ops/nonzero_numpy.h,sha256=Afm2tUwff4C_0CN03poTZyZX8FADSSkYOBuv2mZuK7g,689 +torch/include/ATen/ops/nonzero_numpy_compositeimplicitautograd_dispatch.h,sha256=DW2mMwio4rRvPC7wSBYBtVr847pA-a5tziIc8qbsExc,809 +torch/include/ATen/ops/nonzero_numpy_native.h,sha256=Eu8-c15cajGbgTJaWA6XwYp4bo4UDqtYb8_ryqBvb-E,519 +torch/include/ATen/ops/nonzero_numpy_ops.h,sha256=H7Zl9QyU2K7HsXiSg710NRyZuBIz0C5-BXqCHjZBFQM,1030 +torch/include/ATen/ops/nonzero_ops.h,sha256=Ur7ZpjsTW2LGqiBSOcDcTRdYqypu6XcNlQUJcpPu3og,1569 +torch/include/ATen/ops/nonzero_static.h,sha256=TEu7kk9aaqMMDnipuUqGgJ6ikK8WDLQk_n4G8yPRS84,1375 +torch/include/ATen/ops/nonzero_static_cpu_dispatch.h,sha256=PDDuBjuig_IqxuaEDOgQbIao7rncuczF4aFeMOM-U-s,1034 +torch/include/ATen/ops/nonzero_static_cuda_dispatch.h,sha256=kCc7gw8v11fTUa4vbLx6wUP4aR3G_aeamvp4b658My8,1036 +torch/include/ATen/ops/nonzero_static_native.h,sha256=dWxMrtDdB_BpYj4gNylxBdNC8Wqo_-UgH5im9q_O5TU,902 +torch/include/ATen/ops/nonzero_static_ops.h,sha256=JaIZfYyFU3FoH1l9xrrDxo55mv7kq1HbCSqSzJAMgMw,1844 +torch/include/ATen/ops/norm.h,sha256=bJl-mMJbFe329zmj1MOvJpxln2BMptPdMc9jsCftpGg,6348 +torch/include/ATen/ops/norm_compositeexplicitautograd_dispatch.h,sha256=_yPpGOmKaI8uzCOmEpiTcP-iiiobh2mkVgQNDOcD1M0,1401 +torch/include/ATen/ops/norm_compositeexplicitautogradnonfunctional_dispatch.h,sha256=AzRO29YsTmUlZmhALIShRUe4JVksPolRx9-HhwDyTSg,1040 +torch/include/ATen/ops/norm_compositeimplicitautograd_dispatch.h,sha256=Jl7a6vGBnu1bhRq0QxRZiuyBeeUPbZD5BBga7FiTTZ8,1670 +torch/include/ATen/ops/norm_cpu_dispatch.h,sha256=Q4YoNXxDp6qJwyHX5VgBgvUFSZNZ9MAKAo-Q_tpgX4w,1626 +torch/include/ATen/ops/norm_cuda_dispatch.h,sha256=bL9p5xxkilVHAUR4hqFerFAoRoSOMVNH8U_3wQrD1-o,1628 +torch/include/ATen/ops/norm_except_dim.h,sha256=pNOGtKvdIrdUifcZLfNeir7B_sR7tKwjaavZOKgJECw,733 +torch/include/ATen/ops/norm_except_dim_compositeimplicitautograd_dispatch.h,sha256=-kS1bktk8zKrjaC6KExKnaCvu3nAm61dVDU2UBlfVZ0,823 +torch/include/ATen/ops/norm_except_dim_native.h,sha256=YHev8E-7famAcRby9G_wg6nnGlBS2YLBzJiFdG5hQrw,533 +torch/include/ATen/ops/norm_except_dim_ops.h,sha256=xtDB6mE8gKyiF2tvKGGz9C-Q5oAoM1MFfZDmgo0OcDo,1072 +torch/include/ATen/ops/norm_meta.h,sha256=k_niskIp5wOHeFnX3QoOsszs-FlkuyOMFW2GCAejz_U,897 +torch/include/ATen/ops/norm_meta_dispatch.h,sha256=9E1BuqkfeouW764qZZKLqXIF8hrAjrU3oiOuoeF2EOQ,1628 +torch/include/ATen/ops/norm_native.h,sha256=7lsQoioyi0lMHXWSkbZbZYX_buWLdZJKblni1xA2zaY,2294 +torch/include/ATen/ops/norm_ops.h,sha256=EmApac7_J7atZv1I6rg042q66-DZFiGuSqENXGr5Jg8,10376 +torch/include/ATen/ops/normal.h,sha256=OXpLYqNxdGEJDHR_naYIZXRGWIMDGdIAUsIap_SOpz4,11807 +torch/include/ATen/ops/normal_compositeexplicitautograd_dispatch.h,sha256=NSHfEeKd4zAZItIC135dS8wrgnQ5WZ67jRQK28va8X8,2700 +torch/include/ATen/ops/normal_cpu_dispatch.h,sha256=lL2yATflB7ivMB-qC4QAey-t2Pb5zMz54A2UqerqThU,2084 +torch/include/ATen/ops/normal_cuda_dispatch.h,sha256=Ui6Qx6d3KqUjznktmz_kRdKEU5VTJFyc-a6bBYm-Hyw,2086 +torch/include/ATen/ops/normal_meta_dispatch.h,sha256=5YnKjk_lZzYtdKdYbk-G2-iq3yIgGEaHOLam7eKV6yU,2086 +torch/include/ATen/ops/normal_native.h,sha256=FHsnsdD7Z8aNT2RAiwKTGYBifwE7WwJPHRDiDPvTp5M,3373 +torch/include/ATen/ops/normal_ops.h,sha256=u2j_X1nQ4IbVO6jogJh5VP8Ev89CNWBw3uSzb8hNo_A,9749 +torch/include/ATen/ops/not_equal.h,sha256=uGBhHkijz_7iuPuLQys5puePiD_BG7dQPVXQvv1vXhA,2005 +torch/include/ATen/ops/not_equal_compositeimplicitautograd_dispatch.h,sha256=Z6ssIqH5PM5q2XBbm_uh_B5asTIuO8maIKDOMUFxkgU,1496 +torch/include/ATen/ops/not_equal_native.h,sha256=vfeTQ_zto-B_6Qg7rN0U4avJTUfkjQfn4HrLG2an-MI,988 +torch/include/ATen/ops/not_equal_ops.h,sha256=4Rhk3TKBM0KkdtCbRF96H4nXbR0T_kBbQ2JVUbpE-nU,4387 +torch/include/ATen/ops/nuclear_norm.h,sha256=-GbltSnBj1UOVpTO8K_5q8-oG_wWo4-DIrGhYRtIs68,2116 +torch/include/ATen/ops/nuclear_norm_compositeimplicitautograd_dispatch.h,sha256=j3tjiK_pMW-g9fiD3kQoNX73SGAuID4VzWpz4RsZg50,1367 +torch/include/ATen/ops/nuclear_norm_native.h,sha256=08aC2xeTpoHII0_h_VltfR_nB5vlZi-9ZqKfhZpt2gw,844 +torch/include/ATen/ops/nuclear_norm_ops.h,sha256=RHo5VCHamuIYae1n84PVnREs-lfIcXBKXaIxjtaJF5c,3128 +torch/include/ATen/ops/numpy_T.h,sha256=tMagRvSShdL_ZYbNiHOot-LSaZ7JLjlokCHp_IBQqio,507 +torch/include/ATen/ops/numpy_T_compositeimplicitautograd_dispatch.h,sha256=-16WHMpDEKttaKzSkcr7_HasEnlimpKjGqhV9hZ07q0,788 +torch/include/ATen/ops/numpy_T_native.h,sha256=wUP2mwRYSHKyFbKfWr53OaMmZ8jyUfziQ4DGL6k4jWA,498 +torch/include/ATen/ops/numpy_T_ops.h,sha256=bprtG8yRoTtx2PUB_FOWLoDlRtT30oPsphpBgiNJTUE,971 +torch/include/ATen/ops/one_hot.h,sha256=MecL3SuTJU0Aj_8O9yoE9ZovEZfnERqUFubXwF7--OI,705 +torch/include/ATen/ops/one_hot_compositeimplicitautograd_dispatch.h,sha256=w3XA9Z7UdSC_I3hLer8y645lX_Zh2kR8nemuLpgDy88,812 +torch/include/ATen/ops/one_hot_native.h,sha256=_hfF-IbrhcOO0BXwun3Xhw_B4BATTT2lWpMhSxA9EPM,522 +torch/include/ATen/ops/one_hot_ops.h,sha256=bbqmjXy2ZwLggybMYXnuzuNrE4U0aQpyKZvurFulz6s,1036 +torch/include/ATen/ops/ones.h,sha256=Jm4Jmv3oJMSUnmzwkJt0fPGI7YraluxhYVgGDrwptrU,6937 +torch/include/ATen/ops/ones_compositeexplicitautograd_dispatch.h,sha256=66gtK4veAMkCbe_ST21MwOZ5s6lRZCN7yGto7BswlLs,2208 +torch/include/ATen/ops/ones_like.h,sha256=G4AVtzijWDKD0AL-PbopRMD5q283P96m4SFpZFspDrQ,2228 +torch/include/ATen/ops/ones_like_compositeexplicitautograd_dispatch.h,sha256=QfVHhsOk3k2ogqWtvdZimRlThgXU0ySQEtYVpx0R1PI,1414 +torch/include/ATen/ops/ones_like_native.h,sha256=_WgjH2yGCVFmTz1VCXfVYNIJHH6vwS2FyNoPwSMI-mE,852 +torch/include/ATen/ops/ones_like_ops.h,sha256=WQ78yAHdkVZu9X9tqTzuh6nO_Lle2wmLk7PfUzdT_gY,2411 +torch/include/ATen/ops/ones_native.h,sha256=wSeAuUbvqcBgClxB0InwK2AdRXl7PMfp-dfGWFvlLU4,1090 +torch/include/ATen/ops/ones_ops.h,sha256=wM1DYAJPE_fxHb6dAs-eT-cxI370q5GP_LtOeb-HpSA,3932 +torch/include/ATen/ops/or.h,sha256=LzMe-qOXWxjZpK8C3xw71UwJ1ezJzx18wflIwiarjAA,902 +torch/include/ATen/ops/or_compositeimplicitautograd_dispatch.h,sha256=OZSJ3zUZYPekwgEc9OdNiydFLc7HSfuEPe_y-mngDmA,1050 +torch/include/ATen/ops/or_native.h,sha256=Q3DmNr1Jx-ipL9HxCOX8pkpxWrky_8Cysm8KDNFl2Pk,760 +torch/include/ATen/ops/or_ops.h,sha256=spDUzVV6bdMHH073MMEpZp0IiiyyAtnpJoeo44-hzQw,2917 +torch/include/ATen/ops/orgqr.h,sha256=u8ft12lZ7QxhP5lNLbyEQsNs40hOXbDjuGHpcH-OW_U,1183 +torch/include/ATen/ops/orgqr_compositeimplicitautograd_dispatch.h,sha256=D8SRqIzZwr2K8VHkzeEWgvcFZtOz54IaNoqIl_OtaRY,1024 +torch/include/ATen/ops/orgqr_native.h,sha256=crQS7Wl45ygfuBTnhnO7bPpdxhQzFjGrCfBOTuXpT6A,628 +torch/include/ATen/ops/orgqr_ops.h,sha256=oBSPe3i5cyv8ktaarpmr-2XcAZ9UtL9ZEELHb5CbhCw,1735 +torch/include/ATen/ops/ormqr.h,sha256=nouBfOAvWfS3OVyhZOLSYBnPrN3Wlb5uvqy5kSdPqeQ,1601 +torch/include/ATen/ops/ormqr_cpu_dispatch.h,sha256=Si5ZEZV9ts81RTdIRuNWO06fZcAH3CSoEugY_HtwPSE,1164 +torch/include/ATen/ops/ormqr_cuda_dispatch.h,sha256=V8RHSsK9OuGTVIssvB80tZkGqCnPqLRiaXAH0i3q3IE,1166 +torch/include/ATen/ops/ormqr_native.h,sha256=-JQyL63-HDhA5lMQ8OxxqEr5djkY9LsV7KJ6YhDDKXs,747 +torch/include/ATen/ops/ormqr_ops.h,sha256=zdPzBWy7fFDqqmXMzEQLrdxJUaI1ioX8OQtkTdRJxxw,2121 +torch/include/ATen/ops/outer.h,sha256=d6RgoctYPyCMFZhk8FQz7tR4XcrQKX18KIweQ0vBXME,1165 +torch/include/ATen/ops/outer_compositeimplicitautograd_dispatch.h,sha256=cCi0gOIt4wksjCKp1O4hAdZLDXa58xMDxyat2BApoH0,1018 +torch/include/ATen/ops/outer_native.h,sha256=Tuw3noufgbij6FIGttvEfsnt1FmAFckrr5seu68MgeM,624 +torch/include/ATen/ops/outer_ops.h,sha256=tGr128TG5rs1_1oZiZnGWJ4qtbSJwvydTuaQHd-ZTAs,1723 +torch/include/ATen/ops/output_nr.h,sha256=rYClqxg2qdcMOU1KGwTJWa6zHjQWT1-kcUCO7P764l4,509 +torch/include/ATen/ops/output_nr_compositeimplicitautograd_dispatch.h,sha256=6Gd4RS3mhcrWv6hSuOxxNFNrBGdsseJcV-xeCM9MM3Q,787 +torch/include/ATen/ops/output_nr_native.h,sha256=P4PJEmrzf9BmmOyZyea0Mjr1LYM2CZTncxj-Yr7Y6iE,497 +torch/include/ATen/ops/output_nr_ops.h,sha256=lzMURsjPpxZENlraikYmEjeQenjj5B6JYTSfkf6PL6g,959 +torch/include/ATen/ops/pad.h,sha256=dXYVZM0nEU7R37WdbyJJpm_AYvg9APWQLcUnpRoYeRc,1806 +torch/include/ATen/ops/pad_compositeimplicitautograd_dispatch.h,sha256=wD4D2RLz1mIbcBldgD7ONQNt0DgancfOnAkiziThwPQ,1049 +torch/include/ATen/ops/pad_native.h,sha256=k0HjgvuMVZaVc7-vuL7bCet8mzcVa3uDuf0Od8FwHLM,606 +torch/include/ATen/ops/pad_ops.h,sha256=_NmQGab1hUHg3eqiO3-xk-psSh0fVj8zmS5YN95KWqE,1231 +torch/include/ATen/ops/pad_sequence.h,sha256=qXa3FDciq3MQxEt86MiKhScwrr9U4yXv7qF0KFzfnmQ,887 +torch/include/ATen/ops/pad_sequence_compositeimplicitautograd_dispatch.h,sha256=mXaBDlkq0NbS8iFNbY8OcsLzMuI8ktpCps7CiG7i4aU,883 +torch/include/ATen/ops/pad_sequence_native.h,sha256=TYDNyL8_bLT7fzDKgAJGoeldqRVqxUIGeUAg2jsBOe0,593 +torch/include/ATen/ops/pad_sequence_ops.h,sha256=7lTNzm6VGYD_jRp6w_knI1LH4GmZ9Tu_I8yE2TW3ni8,1236 +torch/include/ATen/ops/pairwise_distance.h,sha256=NVtofGxTH5mBz9jFnVfUFhviBzxApGbl22klluPj8Mg,835 +torch/include/ATen/ops/pairwise_distance_compositeimplicitautograd_dispatch.h,sha256=CTs4SzZVTH8VUD7fvGMmrxcj187HYfaasTbRmlGvoAU,869 +torch/include/ATen/ops/pairwise_distance_native.h,sha256=B9UwJqG1mT7PMzGpY1eFQ4BAE9DI2hVXyRtX92RTY5c,579 +torch/include/ATen/ops/pairwise_distance_ops.h,sha256=WrsiI0qSf1c5F7800dunwPYhqbTlOekBMH4oXLtX2Mc,1208 +torch/include/ATen/ops/pdist.h,sha256=ioGTM2soBl_A2BRgNZsns5T_EiFAUvI0Iqc9Mmsg-vs,666 +torch/include/ATen/ops/pdist_compositeimplicitautograd_dispatch.h,sha256=Z5l2UQRGHeMDSkAqrbM-2TvBEU-okClhqFmb7exwU4Y,798 +torch/include/ATen/ops/pdist_native.h,sha256=tsJbyXCmZxnb14SVh9ixSnC8s9li-F40NAx944tAFDg,508 +torch/include/ATen/ops/pdist_ops.h,sha256=rxBMJuMblQiA2EK84x09abHLrDCqrflaDaxgh6X0VnA,998 +torch/include/ATen/ops/permute.h,sha256=c7y_lPFFAN0gSEck8y6bVhyRWRBw09zLc7oZDDlbep8,694 +torch/include/ATen/ops/permute_compositeexplicitautograd_dispatch.h,sha256=LDhMjhEuPcE7l03g4j9zh3C7Mdw3wg6X_G9iKMdxT9s,810 +torch/include/ATen/ops/permute_copy.h,sha256=oOnU2gg5Eh11s_SF9wKMBxznGH_oq6Cygz7LjghOrJg,1223 +torch/include/ATen/ops/permute_copy_compositeexplicitautograd_dispatch.h,sha256=qmzsx-m1zyTL1K-avvVCNL7AzT3myogL0BRqhmA34Uo,947 +torch/include/ATen/ops/permute_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=CoKAIx2eu66YtL8zZuNwAQQpTyyx1JYDCyDIkJKblgQ,841 +torch/include/ATen/ops/permute_copy_native.h,sha256=Iu7vDmUk9pvYSQRABucdEJxs13uTrAqHfhGleuQloz4,632 +torch/include/ATen/ops/permute_copy_ops.h,sha256=Z5bKDRsWCvFFeLNF503TUVRXD63S0W5DsFCyXjpNbKA,1745 +torch/include/ATen/ops/permute_native.h,sha256=5HLPzSVULjfBNRwjDPN3VWLfKZtb8B35VyB-uKVtvqk,609 +torch/include/ATen/ops/permute_ops.h,sha256=OVMdknQtKzNqZKe5-pLYIc0rY-9iRqEERcyiIOAoUfI,1044 +torch/include/ATen/ops/pin_memory.h,sha256=r4ieNgIJ88NS75WXpnRecgyRRE3dyL6LLOZ9fi724WE,510 +torch/include/ATen/ops/pin_memory_compositeimplicitautograd_dispatch.h,sha256=mWjPCKQeX6zM_RQjLGjsa1dulmuFEiVxAz2nPnZF2r4,842 +torch/include/ATen/ops/pin_memory_native.h,sha256=gFya2QYwb5Tfmr7SHNwguURyBPnbQhc5RqIynvDui3o,552 +torch/include/ATen/ops/pin_memory_ops.h,sha256=K1c14rBeNy49Clke7uAsvoZ99fwpiGz0Jfm9g947DBo,1102 +torch/include/ATen/ops/pinverse.h,sha256=F4jlvfm9BRCtgUe572fTXPQpQstHPScD9xY9I_0sYIA,698 +torch/include/ATen/ops/pinverse_compositeimplicitautograd_dispatch.h,sha256=btPvs_wjlW0lL0Buig3MmagP9ei8MLwCKK_AzqGJaac,809 +torch/include/ATen/ops/pinverse_native.h,sha256=Mrkbydotym1h_Mv26_cMhZpEW9KYyrGwXT6SiYOqOVg,519 +torch/include/ATen/ops/pinverse_ops.h,sha256=-DcujXReTZZbrez7XaKAxoyqlypcA6t5b50D2GetvU8,1023 +torch/include/ATen/ops/pixel_shuffle.h,sha256=x70Jmh7ckQ0YwFHAzm_buTVUsMAQPiQUW7sdAtmoUiA,1293 +torch/include/ATen/ops/pixel_shuffle_compositeexplicitautograd_dispatch.h,sha256=6WqVv4Wljk2AwvgwEA-_ND-Y47xfoMoHUvB9rj1pgvc,953 +torch/include/ATen/ops/pixel_shuffle_compositeexplicitautogradnonfunctional_dispatch.h,sha256=5hprYUBkhGF3CP0Fy4hBR5axgRStzIn_mTOfd6ikxJU,844 +torch/include/ATen/ops/pixel_shuffle_cpu_dispatch.h,sha256=Opd0ZXNZEdkhWFzJ6Ow0u-tEibkI4L6xeE6MFwzOWLk,774 +torch/include/ATen/ops/pixel_shuffle_native.h,sha256=umhie6T_zhRU56dPQKWbYoZNcsMaFdDZ1OKyytWZkw4,733 +torch/include/ATen/ops/pixel_shuffle_ops.h,sha256=nRJEMH0Kw3aUxf339W0EMmpBMRLyJ5n1UNdIm8M3KpY,1759 +torch/include/ATen/ops/pixel_unshuffle.h,sha256=8zSvtOo6O80CDX8zH52338JRjLCrkK4o74I0B4A53Q4,1331 +torch/include/ATen/ops/pixel_unshuffle_compositeexplicitautograd_dispatch.h,sha256=WIUyo04ziEP-jxCu0fuLFApUwcsYUa67A_SgubU4qBA,961 +torch/include/ATen/ops/pixel_unshuffle_compositeexplicitautogradnonfunctional_dispatch.h,sha256=4ffMTIU27j8BwdoVUT8b7tTHvuZaayfi4yfv1ZooxhI,848 +torch/include/ATen/ops/pixel_unshuffle_cpu_dispatch.h,sha256=-6qAo3bsgA644mDrEDONNNxiF8SKMXMoP-bnnsUSEA4,778 +torch/include/ATen/ops/pixel_unshuffle_native.h,sha256=v8ZVhayX3_ex4ZbbPVcuzaEaf4oM5oL_aoXOkGJM_AI,745 +torch/include/ATen/ops/pixel_unshuffle_ops.h,sha256=6fS0Ifn3MG8MVPoEDGFh761SyvSEuRtUO3n3F-FHk-E,1783 +torch/include/ATen/ops/poisson.h,sha256=buVTl3kFn5aNleYOJeHWANJK1-_d0ZmLfdI49oHyYaQ,1323 +torch/include/ATen/ops/poisson_compositeexplicitautograd_dispatch.h,sha256=vzMJsJJ9uKoY1paN-SI3KZblGDg2tfoV4-obAENFOEM,992 +torch/include/ATen/ops/poisson_cpu_dispatch.h,sha256=IF9j3pMqbP9SplYslWTNx8SXIl0cC7XiNfFsp9WNQEM,801 +torch/include/ATen/ops/poisson_cuda_dispatch.h,sha256=_xXZ9BzG2am5LU-7e6Ue0PAoJrKo1PgC3ZF7dfCP2Xg,803 +torch/include/ATen/ops/poisson_native.h,sha256=hXvrOGRPzcfeNHsVeRoIlj7FFlOnMgEk3KqG6Tnz5jw,805 +torch/include/ATen/ops/poisson_nll_loss.h,sha256=K9P7NWZxOHcs0QRPm-5Lsn7f4_MhMcHCfhoNLKKd-xE,881 +torch/include/ATen/ops/poisson_nll_loss_compositeimplicitautograd_dispatch.h,sha256=4w01Wz35l9U_pKMDA_yvcNGdAwykWnEdpCbWuA_L66k,883 +torch/include/ATen/ops/poisson_nll_loss_native.h,sha256=AuGQ-U76Ic05Kczr00qw6659Xo5yHm1LlmORxLLPME0,593 +torch/include/ATen/ops/poisson_nll_loss_ops.h,sha256=GZDkhZ1uMAhLAownctOmqdxGqy6CknNEkobQ07Csl_s,1282 +torch/include/ATen/ops/poisson_ops.h,sha256=uHa3zHACFpjyPxHZ2I6V8QcwWRhFekLLYWdlXfs5Uc4,1855 +torch/include/ATen/ops/polar.h,sha256=NPQ8t8mLDEqdhQq2BFHZ7frdvQ-3TwsEvl5GcD6s4ao,1165 +torch/include/ATen/ops/polar_compositeexplicitautograd_dispatch.h,sha256=W8FF6dIA6QPw2l7FsSFQz1No2EI8qVceUU5KFJcFXKM,811 +torch/include/ATen/ops/polar_cpu_dispatch.h,sha256=zGm4TAKI-7Nia9k1ZD0eeiiIQTtYPUj-mi2eEbT2V04,895 +torch/include/ATen/ops/polar_cuda_dispatch.h,sha256=XNf3QYZ62yzfFYD0v5YLYe8QoCKU8V9wzG8R1nE2CFw,897 +torch/include/ATen/ops/polar_native.h,sha256=b1wAxwwaMwAM6hldZioLyKjLX-_OulWPoEEKDJqMgXo,624 +torch/include/ATen/ops/polar_ops.h,sha256=ElQMmQZDT5Jq-RUpJI_zvql6XY0NXT4-APkMHTEFpd8,1723 +torch/include/ATen/ops/polygamma.h,sha256=ytGIZuSvDRjNmsRZrMhokZKIcmRwxIK3qx_v4-ZDR-o,1136 +torch/include/ATen/ops/polygamma_compositeexplicitautograd_dispatch.h,sha256=ecoi_p_ArZ0gv9KPPpjgvl8Z9Lar1_oCPbKqcQ7SGDE,798 +torch/include/ATen/ops/polygamma_compositeexplicitautogradnonfunctional_dispatch.h,sha256=kFSv2CzlrZnPGRkpHGVbERMCIWGv9UdEFtZjxpcWkJM,827 +torch/include/ATen/ops/polygamma_cpu_dispatch.h,sha256=-zEHbD1zA1qturI2Pr5_ZsaxOc3mMEuT5pSt_mMQlow,944 +torch/include/ATen/ops/polygamma_cuda_dispatch.h,sha256=8itUXUnYnAwF9duQ9QlwLxDML4c_QdwTCjxX_hgcnfo,946 +torch/include/ATen/ops/polygamma_meta.h,sha256=Q98qE1FofQ0S1rQLiWM7eoAG48SvUtiTb0Q9aoQ8GyY,616 +torch/include/ATen/ops/polygamma_meta_dispatch.h,sha256=8m1yi7O8GDRVYAiwDACxqi3kTMF_IV3Fdzv83PLgGSI,946 +torch/include/ATen/ops/polygamma_native.h,sha256=f_00PMXq2TvKzC8YxI6vDJCm8B8qoaeXHgOESnWokxQ,705 +torch/include/ATen/ops/polygamma_ops.h,sha256=0S4kw2IrM4Hav9Joh1OxNeNChG4bdpnAmRegUW9Nlf8,2214 +torch/include/ATen/ops/positive.h,sha256=fykz1gVHMpVSxbYyYgNxWeMsBQhDHS6BJh44M2CAMGQ,658 +torch/include/ATen/ops/positive_compositeimplicitautograd_dispatch.h,sha256=GOiEADQKnI7rHdmuG09mVA8sfde29kdZiL_mXjpEloQ,789 +torch/include/ATen/ops/positive_native.h,sha256=cN5ja50kqlPcAcE37U9WE202LAxc0BasTu36KkiTcPU,499 +torch/include/ATen/ops/positive_ops.h,sha256=HjWz6ERgVNyiwRkPRuGofMvOqoxL5pm9SrxXf3KZTsw,974 +torch/include/ATen/ops/pow.h,sha256=pLcsvd21xuITRqKFoiw76Q7O3qJow3rNIO-tPYXrv00,2751 +torch/include/ATen/ops/pow_compositeexplicitautogradnonfunctional_dispatch.h,sha256=JJzYhl3lAX1MsPqtCazt4awU3uAoJ4EIiIqqEhTmxMk,1157 +torch/include/ATen/ops/pow_cpu_dispatch.h,sha256=ryy24PGCMyCt3jjcDxizj_xVN43_80MQVhal-bOte7E,1720 +torch/include/ATen/ops/pow_cuda_dispatch.h,sha256=BLZceOx1gW_mDOEdfhi7wXM7zawEyC7fms_NxyHYXL0,1722 +torch/include/ATen/ops/pow_meta.h,sha256=F6AZISs8bvTSUZwMBTcYkjbT-8kxV7Syqrckfe7QtC4,961 +torch/include/ATen/ops/pow_meta_dispatch.h,sha256=ggZDVcwPTxjd3wVG70bQAUzfES2VOmyU4G8NXxiTyJs,1722 +torch/include/ATen/ops/pow_native.h,sha256=mwpimvcT-B3xOohDiQF9d1fy93g6may1YMh0qFm5Xrs,1257 +torch/include/ATen/ops/pow_ops.h,sha256=S_ZcNJNJESfkl-ILDk1CcM_PI1Ysa1v9SYo6y-ZhQcA,5742 +torch/include/ATen/ops/prelu.h,sha256=hqVD31ircQ-i6wRktw_cAOIiYBsHRVooDae20QvSGeA,690 +torch/include/ATen/ops/prelu_compositeimplicitautograd_dispatch.h,sha256=KG2DXixtW9F6UdLAvHrbwEF4oPNKMAvnwD2o5ZJe86A,813 +torch/include/ATen/ops/prelu_native.h,sha256=HuwdL1M64HhicZkqxyJ-92xhyfTj5ad2HsHhi2ar_Zc,523 +torch/include/ATen/ops/prelu_ops.h,sha256=AF15_IT92ByT-HPUAsoFFT7J8vtuYmMVeyoCtrElH70,1048 +torch/include/ATen/ops/prod.h,sha256=y4qo3_Rk3APwCMzAZsV3pfUJjWYCHXoitSZSORgFUvQ,3350 +torch/include/ATen/ops/prod_compositeexplicitautograd_dispatch.h,sha256=rn3WS_UKI-V8PgkTVKfknI2OHXkm4KrjzJeCSQSSYWQ,980 +torch/include/ATen/ops/prod_compositeexplicitautogradnonfunctional_dispatch.h,sha256=HZF7vg6O0C2RTerq9FhCFem3WLKNrD4ab1p8_4JaX0g,898 +torch/include/ATen/ops/prod_compositeimplicitautograd_dispatch.h,sha256=-Tdqh_6P0YnVbHG3M_X57lodFSvafQKZaWpovdaXq3U,1192 +torch/include/ATen/ops/prod_cpu_dispatch.h,sha256=yqhHXezQ4U9wpxplGQt9ujDcrhor004U5tEIdJUnl5c,1243 +torch/include/ATen/ops/prod_cuda_dispatch.h,sha256=AvvVaDem8lk7uvcMO6IwW3kCD1pwj8pQbtMXSx6YkrU,1245 +torch/include/ATen/ops/prod_meta.h,sha256=K8NETzw3FS9Q8WXVxMKoj7Yo41o2j2_BZby-yIfgSBk,674 +torch/include/ATen/ops/prod_meta_dispatch.h,sha256=BAYVv3isupIc5lnCQaM0frogN12bE09qCtQ6u1B1dJE,1138 +torch/include/ATen/ops/prod_native.h,sha256=qiWIL9KGpDAFSKcNoQGRQl_K8otY2cqg66wcY3ksXno,1201 +torch/include/ATen/ops/prod_ops.h,sha256=Qg3-uMIiSgUQiwAMjxXyPeBFVGXWME_i_GOnPnKOnFI,5088 +torch/include/ATen/ops/promote_types.h,sha256=2QdRbwdgDT_Cge_5dWmDSNuO-3ShaHYEo1sz1xzbenI,730 +torch/include/ATen/ops/promote_types_compositeimplicitautograd_dispatch.h,sha256=RUh0RQinWZOw76uundTAbZGNpNNQjzw4pShOeqGCz40,817 +torch/include/ATen/ops/promote_types_native.h,sha256=6F8rJtK9VCd3580QrhVNq2-mkg9uhf7vamYNduiTSBE,527 +torch/include/ATen/ops/promote_types_ops.h,sha256=D_HF1TebkdkFLct2Ik5X52vrY2M9pB9PN9nN2gbh3n0,1072 +torch/include/ATen/ops/put.h,sha256=gEwzyzGtKtVPLkPGLJQa4BjvnTXJTTzNRlx5_sokX0o,1472 +torch/include/ATen/ops/put_compositeexplicitautograd_dispatch.h,sha256=Cp8PbYQ8va7pdBTQoRPFHG8g9lyIY0sCLiaDyPGYVJY,1159 +torch/include/ATen/ops/put_cpu_dispatch.h,sha256=HtfqDYPihnK4zs3rdcnU-fAkO2JDZCYSIc2h9piP8h8,813 +torch/include/ATen/ops/put_cuda_dispatch.h,sha256=MX7mRZPNDJOCRPfwcVc06D1vBfE2nRYKEZ_sjEBSh3g,815 +torch/include/ATen/ops/put_meta_dispatch.h,sha256=2oMmTGIYrsKv95FgtW46oJIMCVoH28M7h7k1yR_vMpM,815 +torch/include/ATen/ops/put_native.h,sha256=aAppfwzdBaq3dF5UTsYYV0ZSePAkSeW-Hw_uHnoK5c8,841 +torch/include/ATen/ops/put_ops.h,sha256=_wrskUKg89oNnwmz1qxqjWhZZIIGOLfpDyc6udqOZyQ,2760 +torch/include/ATen/ops/q_per_channel_axis.h,sha256=t0UxfwAslbTmyvJnb_gtO8xRagiJWVTsHLCEAEQhzaM,686 +torch/include/ATen/ops/q_per_channel_axis_native.h,sha256=OrprVoZ0VHoGq1eMQ2Dga8Kb1Q2kv8kqzaqKx5puWcM,506 +torch/include/ATen/ops/q_per_channel_axis_ops.h,sha256=mvAQ7xdynQYiLqLwJ1C2SMUpXnzOL2ZkajIWP3zIVhw,986 +torch/include/ATen/ops/q_per_channel_scales.h,sha256=9RpOU_8U8k1GElxhNHek2oi7y1WpHD7GK9uco0kiLuE,1183 +torch/include/ATen/ops/q_per_channel_scales_compositeexplicitautograd_dispatch.h,sha256=hUgV1ZiSaPhyTUCHjj_EQnNK30CePctPP23Edb5IH8U,919 +torch/include/ATen/ops/q_per_channel_scales_native.h,sha256=RW5RQWJcofvGTvLe0d_zGU209g9J8mf5naNwDZtZWmY,604 +torch/include/ATen/ops/q_per_channel_scales_ops.h,sha256=xjgGRmfcJtOygiQwScVigjJUztcTvm4_XC6nqdkX9c8,1647 +torch/include/ATen/ops/q_per_channel_zero_points.h,sha256=ehh3jr3cYeGu_cGcq0WY9c8stelEOOJmnKy5HVmPHwU,1233 +torch/include/ATen/ops/q_per_channel_zero_points_compositeexplicitautograd_dispatch.h,sha256=8HYV2QCu7iKZCkHdyD5b_S49GKPtyRAmeic1AUQG3io,929 +torch/include/ATen/ops/q_per_channel_zero_points_native.h,sha256=WS7eNFaisMZX_45DFxQRlOhYwudUkv_eIgEwBI4DXTA,614 +torch/include/ATen/ops/q_per_channel_zero_points_ops.h,sha256=afaHhaA7iskNq8iOz802v6EYIkd53PidCpKZdV4xp8M,1677 +torch/include/ATen/ops/q_scale.h,sha256=zheC6tCSHUy0QPIeT6ZO8YE1VDg4N0JDRCCneLXeNxs,643 +torch/include/ATen/ops/q_scale_native.h,sha256=x6lpYgRZ6nJPC66mIhlfy093sJNHoplxYaxiujHX05o,500 +torch/include/ATen/ops/q_scale_ops.h,sha256=qjXS-jZbSqxwAL3pQOzUPnEbBe6fKNJB3ZjYMclQNf8,952 +torch/include/ATen/ops/q_zero_point.h,sha256=QIcfgAnhcz_JKGAPYtq_rMa3bOICs-YiqXsKtCwqfYo,662 +torch/include/ATen/ops/q_zero_point_native.h,sha256=agx0Ar88aEhHaoHI1bOySghFF_omj7c_yYX_PIYEU7M,506 +torch/include/ATen/ops/q_zero_point_ops.h,sha256=f-LilIWHiRWjBXk9kk1NESB6NdICAqx-c2BDvTD6gN0,968 +torch/include/ATen/ops/qr.h,sha256=97CIgPS6f_om3jCq4KBDjiKWt6lVlKy-U_SZ1672fiU,1287 +torch/include/ATen/ops/qr_compositeimplicitautograd_dispatch.h,sha256=F8E0h1WE4cPhe41ZYbKwkkKB32H7w3n5GuBoGS0Q_7E,1084 +torch/include/ATen/ops/qr_native.h,sha256=LSMiJ6oObOj1sjW7fmZXBv1aLyyic_CLzugKAYKmTL8,661 +torch/include/ATen/ops/qr_ops.h,sha256=2rU3wEwQaebH0ICh3Qkw4Lh27N5zI1CRjbgUk8HwiuQ,1863 +torch/include/ATen/ops/qscheme.h,sha256=WGrQfpeUmJrdXdbp5aDEISHYNmSF_aiD32n1xnNYhIU,507 +torch/include/ATen/ops/qscheme_native.h,sha256=Zx1VOhBb-LJBES1HbXRSVY32xXTWsAhC5EXJuX9Wkj0,505 +torch/include/ATen/ops/qscheme_ops.h,sha256=3VlcYMnXx2SIKz2QdGuv5wue4OjZ-cg3Nvp9OG8Iifw,969 +torch/include/ATen/ops/quantile.h,sha256=xiNm4Hma6vMQMLxTCA6kHuyDL0HR1_JHBGzMn56YCwQ,2967 +torch/include/ATen/ops/quantile_compositeimplicitautograd_dispatch.h,sha256=DJ4HbWwaI3bhrPj2rkOzeHf5TA6l-6vXECjVvmBjZIw,1844 +torch/include/ATen/ops/quantile_native.h,sha256=HayYd5NRS-PiTwPzJfPuBVgQ-RmqkOiYpEJkvewiTQU,1146 +torch/include/ATen/ops/quantile_ops.h,sha256=6Qev30bzRAO-oVhU9Yrv7f5DLWtl3EqBI8_GHaZ_fC4,4028 +torch/include/ATen/ops/quantize_per_channel.h,sha256=9Cj3F8WCU2eJgydyv-jRqZ3ypKbKx-uIpVZdhrJJqM4,1759 +torch/include/ATen/ops/quantize_per_channel_compositeexplicitautograd_dispatch.h,sha256=RebNwmadWc_DU7QzSTibSP1nuRUL9hl8tCDsASqkiI4,1109 +torch/include/ATen/ops/quantize_per_channel_cpu_dispatch.h,sha256=DceOqlAQ717PDE_jx-H2SnhAbHOXmoOh_ubKOWu5XQg,852 +torch/include/ATen/ops/quantize_per_channel_cuda_dispatch.h,sha256=kYB66OSBW9Odrj0yPVmGzniqQqaZ19PtUiMwGvDYb3c,854 +torch/include/ATen/ops/quantize_per_channel_native.h,sha256=MdQyjGYYeCFfyPNuRqdyiCtGDvY60xIdnyh8uyJ7cMI,794 +torch/include/ATen/ops/quantize_per_channel_ops.h,sha256=n5IYPT0E3ve9R0VdRU19olj4T4UE20d0y6s3zBTa_W4,2283 +torch/include/ATen/ops/quantize_per_tensor.h,sha256=7Ild1t74c5BPG9NP1Lix3BHfGLStMmRJBU0vCcs3Jyk,3978 +torch/include/ATen/ops/quantize_per_tensor_compositeexplicitautograd_dispatch.h,sha256=2mOCYYWVxgBXrXSFnFLp1JLq0xZWHmNIuKn3mUwgbOw,1705 +torch/include/ATen/ops/quantize_per_tensor_cpu_dispatch.h,sha256=VgXn0rRFcRlWUfmx0XkWdbV7UQ-svsBo_ENu-30kyCo,1122 +torch/include/ATen/ops/quantize_per_tensor_cuda_dispatch.h,sha256=OMCfAtqpr37YckMAnQZzT5CFeVzznLqh7xFQd4XIW-g,961 +torch/include/ATen/ops/quantize_per_tensor_dynamic.h,sha256=vQQdJhtFHscnUMLoWy9sex7tlD-jmYwlcMduOl6On20,1550 +torch/include/ATen/ops/quantize_per_tensor_dynamic_compositeexplicitautograd_dispatch.h,sha256=Xl0aEMMckDu-PTk3_k08Jdtuk3oUY5lCG9vQWzfhm_A,1015 +torch/include/ATen/ops/quantize_per_tensor_dynamic_cpu_dispatch.h,sha256=T5JG1McI_stUq_-zwgEcUhgPPxOyEBi7A9bCVUfeiYc,805 +torch/include/ATen/ops/quantize_per_tensor_dynamic_cuda_dispatch.h,sha256=vLlk2lvdxOXLnWL93LWgkDFvrFaIzS5hZ8hifn8qmOk,807 +torch/include/ATen/ops/quantize_per_tensor_dynamic_native.h,sha256=-2mDTx8vcYWNH1hO-ELVUt2xCho-X3y632FDGDC1K0U,700 +torch/include/ATen/ops/quantize_per_tensor_dynamic_ops.h,sha256=eqda9nJgSjmd_AJ85Pb2hADNrx0U0YwV0WdN3b48gL0,1971 +torch/include/ATen/ops/quantize_per_tensor_native.h,sha256=xvdXmGaHpxb_Kd-VJQw6jIi0d9AOgPKPL4GCGGtuoms,1408 +torch/include/ATen/ops/quantize_per_tensor_ops.h,sha256=ISG0ATX5dG3_olEdkEUWE52PDuIkXulW5gOCnVw4RJk,5634 +torch/include/ATen/ops/quantized_batch_norm.h,sha256=vQSeyQn0txEkyLhxOyvbXEC-FgsK8bxjKx_W1Ly9Dks,2293 +torch/include/ATen/ops/quantized_batch_norm_compositeexplicitautograd_dispatch.h,sha256=IwsCU81eHBBcVBx6IjhXj8x_Hb2zK88euHT96opqZwE,1311 +torch/include/ATen/ops/quantized_batch_norm_native.h,sha256=wAsfffgy1H_SQhvhM92XSYZN0mMCZTZZ2O5dxyc2ZXk,996 +torch/include/ATen/ops/quantized_batch_norm_ops.h,sha256=_q-aZjpXwfkQ57ukzQahPiddFsS0mnY5YMBfFTcwdNg,2929 +torch/include/ATen/ops/quantized_gru_cell.h,sha256=gWPVQfHQBt8_k6EMiUxLz66BfCUYKVYQrHrhrj3mGBg,1429 +torch/include/ATen/ops/quantized_gru_cell_compositeimplicitautograd_dispatch.h,sha256=4DG7qhQlnCaCquNnpfeMN-F4zHPIacI-gwE7s1_4dyA,1179 +torch/include/ATen/ops/quantized_gru_cell_native.h,sha256=iiLC9znP5mAICCr2sbVVfIjVpn8MecdNFhaPu7K_Kys,889 +torch/include/ATen/ops/quantized_gru_cell_ops.h,sha256=pJROrUVkyc4Grlfe_02Tl58SnZRuKa9wP97L0fRdALk,2242 +torch/include/ATen/ops/quantized_lstm_cell.h,sha256=ZJRIU5bfptmGRFt1fS0wQk2bo9Q1XuOZe8PEc7JxOXk,1466 +torch/include/ATen/ops/quantized_lstm_cell_compositeimplicitautograd_dispatch.h,sha256=mfVeVk37Ha_ba_536IMyke930nqIG-j9HmFEPR56fYQ,1201 +torch/include/ATen/ops/quantized_lstm_cell_native.h,sha256=akFcsDvivsp6X3J14hBDyJdk5bWogDf7FSpFCRP8xjk,911 +torch/include/ATen/ops/quantized_lstm_cell_ops.h,sha256=TgdecKw_3cXJHJrfHu9H2j7iipuObMjOniVBH9nqvNw,2320 +torch/include/ATen/ops/quantized_max_pool1d.h,sha256=ACFdHc8EwvhOrP-smoAW19qdZ_sHTl2IdQ8v61mILrA,2013 +torch/include/ATen/ops/quantized_max_pool1d_compositeexplicitautograd_dispatch.h,sha256=2F6PwvpgpoBPQbNVYn8ZsO58PczCbSDVlrQ8tOEjwUs,1172 +torch/include/ATen/ops/quantized_max_pool1d_native.h,sha256=W1r_94fU_OQOftYNQC9Z134hq4Kgf78DRHNdFYsZ-q4,857 +torch/include/ATen/ops/quantized_max_pool1d_ops.h,sha256=tIpz2gHBhm6LCY8eH7eHpoAkoCFUc-W1hpTgR2IGfF0,2469 +torch/include/ATen/ops/quantized_max_pool2d.h,sha256=OIMOuJa95REEciHbu3iRiFqbTvlcQpx42KIhKE-xjRE,2013 +torch/include/ATen/ops/quantized_max_pool2d_compositeexplicitautograd_dispatch.h,sha256=2z1bvV9tQfvDxrBjfROoUXFPXvmc2HwwlC-DQRvxLFM,1172 +torch/include/ATen/ops/quantized_max_pool2d_native.h,sha256=pwcafPocpPx3O10riy_egZuPccAj0qykkMNvVsm6YZ0,1065 +torch/include/ATen/ops/quantized_max_pool2d_ops.h,sha256=HnN1OBD8sAB2XQjoKh5BocxBJRntZZQ6o8WrYNSRB-o,2469 +torch/include/ATen/ops/quantized_max_pool3d.h,sha256=6gFlujKu_hO0utNxZoTZVNqcp-1sOg1Xm3HNSz1iA7Q,2013 +torch/include/ATen/ops/quantized_max_pool3d_compositeexplicitautograd_dispatch.h,sha256=rJdzl1d_IsSshFYu8m5ZRg-qRHit4l0ASRkR9sTpeJE,1172 +torch/include/ATen/ops/quantized_max_pool3d_native.h,sha256=HSkN0ye1rpNKb0MbaTLLCkkwSM7bspkr50n5v9tiH3s,857 +torch/include/ATen/ops/quantized_max_pool3d_ops.h,sha256=75hJZ1BNd6Zesmed3ZIMl6I38Zr0cbutTGWCm77VmrY,2469 +torch/include/ATen/ops/quantized_rnn_relu_cell.h,sha256=S6q4GzCoOHU6fQPH8O5ElCRIKDuMWqOVIrKNIqQssdc,1449 +torch/include/ATen/ops/quantized_rnn_relu_cell_compositeimplicitautograd_dispatch.h,sha256=_5xk3Ttc9020YtinGdpo5jbnqWuHwTjxTv03z-XEU0E,1184 +torch/include/ATen/ops/quantized_rnn_relu_cell_native.h,sha256=uzGwD2JmNZucHofgLBLfNtBoERavDEun9XZzUM0xw0M,894 +torch/include/ATen/ops/quantized_rnn_relu_cell_ops.h,sha256=g2sh39RWV3mFT1OVAJBJ5yUmpAUXKuZSmvht5nbRrtI,2257 +torch/include/ATen/ops/quantized_rnn_tanh_cell.h,sha256=z6hnUSpz3cqE-iuf3PXQ3zaJnZUhWIbPlqK0NT7DdwY,1449 +torch/include/ATen/ops/quantized_rnn_tanh_cell_compositeimplicitautograd_dispatch.h,sha256=nWird6MrFdEV8-u1o5q4puCtrTA8yfMkzMgTBUWGucg,1184 +torch/include/ATen/ops/quantized_rnn_tanh_cell_native.h,sha256=uhc-NtSVxvet-yBI--vbjYj-DBY1shT3mw1--hzYIbw,894 +torch/include/ATen/ops/quantized_rnn_tanh_cell_ops.h,sha256=lkaKtL_7gIkPFY92vLhwipRsqWli79GFbKkwNa_DjIE,2257 +torch/include/ATen/ops/rad2deg.h,sha256=5lQRn6umwUDroOHE1EBVP9Pet-lu5h4WgWm0T8liWkM,1203 +torch/include/ATen/ops/rad2deg_compositeexplicitautograd_dispatch.h,sha256=Ax7MoEMsDK0iKcEXm4giP3ivzRgmjNFfQPRMKmXYDcM,1002 +torch/include/ATen/ops/rad2deg_native.h,sha256=uakaoH7TLiAZmt1roQdPaec27a0y-mNyAUdxE2GkOq4,1063 +torch/include/ATen/ops/rad2deg_ops.h,sha256=R5KQo87PajnH-TC8DcjV-Jo63gs0KwgKiZQPCOmnGXY,2082 +torch/include/ATen/ops/rand.h,sha256=9rrWpfJAobGCbpFHKbvLmeOopHWbVoknm9rAXCuSqj4,25118 +torch/include/ATen/ops/rand_compositeexplicitautograd_dispatch.h,sha256=U44wJ7s5jC7dWUt8qpwHZBB8CDrz2URd19GQDX6vpuM,5124 +torch/include/ATen/ops/rand_compositeimplicitautograd_dispatch.h,sha256=9J956eskSCdAicz2MSvqa4vOkaAxqflQaKX-ADSjikA,1220 +torch/include/ATen/ops/rand_like.h,sha256=169wR6pGHNqZFPf3cYyBqcX2-lUBL4D521cJn7JYnok,2228 +torch/include/ATen/ops/rand_like_compositeexplicitautograd_dispatch.h,sha256=NBYk_jM86U4RyELzgvIOuaoY-wuAmOZOkcTtU4lwaP4,1414 +torch/include/ATen/ops/rand_like_native.h,sha256=5C9vDd0RJNYx0IEZvc9c4JwbJXe0OnWUBJRUBtMAIps,852 +torch/include/ATen/ops/rand_like_ops.h,sha256=QUsnSCDG6ACu_WbD071687Ji8_mldy9panRFnoIa3X4,2411 +torch/include/ATen/ops/rand_native.h,sha256=Zd7AikPBdzN9-pa3jnVyjSGWeSkaG-R9Zs4hQv_z3Wo,1943 +torch/include/ATen/ops/rand_ops.h,sha256=zstmKfic0KVbpiBpqM46Wio1PjU44mqSN84lGNCvB98,8174 +torch/include/ATen/ops/randint.h,sha256=JjQGCv4dgqvNdBxmUmCU8roES8qyWB1RifZT0Q71q3c,26361 +torch/include/ATen/ops/randint_compositeexplicitautograd_dispatch.h,sha256=MEHenKoEnlD_YmKT-Om3wGfeOI9s7Bea5Y1ja9ndC1s,5876 +torch/include/ATen/ops/randint_like.h,sha256=Kvlib44CmoDiDljeK6SJbSlm4sX4TNKyEIF2f4FNlXo,15622 +torch/include/ATen/ops/randint_like_compositeexplicitautograd_dispatch.h,sha256=gVSli4wj_FtVoKTFvdEP54w-hyRDnX7V2sGogIeEkYY,3940 +torch/include/ATen/ops/randint_like_native.h,sha256=7cVXoM2eHAjed13dIO7T-FnxfmKQfJqRBuQlZcmOjcU,1392 +torch/include/ATen/ops/randint_like_ops.h,sha256=irgLDAK5a7G-Hw_6rWRKbCUjOU46UkHsSrvr2WhvJkE,4832 +torch/include/ATen/ops/randint_native.h,sha256=ymxxibwmrFZ7FNnkRpj2FZCkAooYLTSFJFFQRqI0oak,1922 +torch/include/ATen/ops/randint_ops.h,sha256=bNgwSk727lBb-3Dydraxq65lA389loYWHuDpPtUfbuk,8396 +torch/include/ATen/ops/randn.h,sha256=PMYvfJdBAlLOjjErRwx73ft3edvOYWPdq0-VuDUemzY,25279 +torch/include/ATen/ops/randn_compositeexplicitautograd_dispatch.h,sha256=qKEMXjI21CPOR4Km_xeqd3mvuJovBDfg2-2oj_9JflU,4828 +torch/include/ATen/ops/randn_compositeimplicitautograd_dispatch.h,sha256=dVwNQu4LCk40iGtRcm-T4KVWHeNrHROW9Fo37WXJN3A,1548 +torch/include/ATen/ops/randn_like.h,sha256=0sZFO4G0rkJVaQb9ibyMLyFes-JzGsWkasFI53x9V8I,2241 +torch/include/ATen/ops/randn_like_compositeexplicitautograd_dispatch.h,sha256=fuMe2ipJAjjBobGLyL5VcrbBC8AN6yXZtoDnar8xbPI,1418 +torch/include/ATen/ops/randn_like_compositeimplicitautogradnestedtensor_dispatch.h,sha256=mnnNLeel7DqBTkrwb3-U1ZhjKXmt2KfpBVGO7qtIHmk,1162 +torch/include/ATen/ops/randn_like_native.h,sha256=wEDA96M5DIX5USP9OPwbm5voxqxzLqdUAgH2FN3V0qo,854 +torch/include/ATen/ops/randn_like_ops.h,sha256=Sav_VjRla9jK2P4ygeGVUWNxoX6bUElMuRniLMEHhp8,2417 +torch/include/ATen/ops/randn_native.h,sha256=VHa6UOgQcXxeX86iIEwzqHUlb6tX-ZoLZvccrnpmpX0,1951 +torch/include/ATen/ops/randn_ops.h,sha256=9xQU8QHMJltG4TonjrEZ3sYcDSc4wXfgiYpyhTFWvzA,8198 +torch/include/ATen/ops/random.h,sha256=GFgmoWtub3n-7MIQuvn5xiePzQI60KWS7r3jVisH4RY,3276 +torch/include/ATen/ops/random_compositeexplicitautograd_dispatch.h,sha256=5yu2VG1rjfUEuKPTLtNkCNvLE9Cdo7EKJXLxxYrWPeQ,2007 +torch/include/ATen/ops/random_cpu_dispatch.h,sha256=F3lO0hW3x-FUCF-nRZ3dXL3m_Zyao1_4BgNyMlMli44,1070 +torch/include/ATen/ops/random_cuda_dispatch.h,sha256=bsw6VugSsiAb4DNK2STcpCO-k-4rxWU3dMh0aT2c8Tg,1072 +torch/include/ATen/ops/random_meta_dispatch.h,sha256=hE_7JTlFyAdPuAPvs0LKBFDdf8HWHLcieN8qZSsneLU,1072 +torch/include/ATen/ops/random_native.h,sha256=pdn09lH-Vh9l5inWM9CvrEcNs9Sri3yll2HOqNiLCBQ,2038 +torch/include/ATen/ops/random_ops.h,sha256=qokFtozjySWE4086JF_TzluSsQoq9EUmyElaakx64Kg,7233 +torch/include/ATen/ops/randperm.h,sha256=bS3bUhqAW-YyrIw5NXRxXHwFKZ9ME0zNDsKt76-7SNg,11146 +torch/include/ATen/ops/randperm_compositeexplicitautograd_dispatch.h,sha256=msr9b7zbP1wtbQRb10H9mn048l0M3W6D_Dxty-6A_ys,2308 +torch/include/ATen/ops/randperm_cpu_dispatch.h,sha256=6PbFxH3ikG3wgm4y5B1QXofR7nOXhqiItWH5kLPA_wA,1148 +torch/include/ATen/ops/randperm_cuda_dispatch.h,sha256=k7ygHJJPlXRH9a1CShxViwQwQlu0yDx2gOOSH8Oll_Y,1150 +torch/include/ATen/ops/randperm_native.h,sha256=Bu1B9H34_dQqIW_9lgF8a44mAt3UytmvMc1MFgSqyfM,1178 +torch/include/ATen/ops/randperm_ops.h,sha256=64D7XUl7cYFY-r8r9nsZPadCDAkLv3-rZhI6HXXdskE,3906 +torch/include/ATen/ops/range.h,sha256=fwSOMsyR4kdRpgaTXKxFXeU4w-k2F2HcR6opSY12Kv0,3431 +torch/include/ATen/ops/range_compositeexplicitautograd_dispatch.h,sha256=xEgI-hH-muDduxvPM_fj9X2gf1hVSSMnF2j7_5dLg5c,1657 +torch/include/ATen/ops/range_cpu_dispatch.h,sha256=iotevuOTQKiMHiDcXHIp3GsOA_mOZ7d8kRcobmb5pR4,945 +torch/include/ATen/ops/range_cuda_dispatch.h,sha256=q1fDPIZ3F0os8pqBpykAIXd1tDzIR_GviKzrjwe26aM,947 +torch/include/ATen/ops/range_meta_dispatch.h,sha256=S8WW9rrbwePxDUroTnBQeXrLYRgn1doBMX2DTr4aBhc,947 +torch/include/ATen/ops/range_native.h,sha256=Hmg8UTHPcwtKIO_1ZExTB5X8S5VNejcnbHjxvf_qtig,1313 +torch/include/ATen/ops/range_ops.h,sha256=9Ixw3t2jX6PzNRSc3vBfvP6UgNJhlIS5z5MauSYIbOU,4174 +torch/include/ATen/ops/ravel.h,sha256=_TOy5Sz8iIJ5kDtulRll7j3WQiWlO_Zi2c3iEqjuyQw,646 +torch/include/ATen/ops/ravel_compositeimplicitautograd_dispatch.h,sha256=cFGqUv1uJaer_wvAmVn4yfW3sOHdkfIBQpL4JNY-XiA,786 +torch/include/ATen/ops/ravel_native.h,sha256=S0zJFTwaVAlVfwRFWvjw1ISdbYZ-mOIQaFL4tWtaK5E,496 +torch/include/ATen/ops/ravel_ops.h,sha256=xCaBu0GEZeRWrRTBcC3jGhgPi5_NPzICzUScC4anpUI,965 +torch/include/ATen/ops/real.h,sha256=1BxBA7sjKsnFSOd6i9VKypFoZP9hwMK3nuiL6ijfnXE,642 +torch/include/ATen/ops/real_compositeimplicitautograd_dispatch.h,sha256=deGUVtTHkCpsEgllWZ7u3zq_ftqNGU8GN660NvPIOJM,785 +torch/include/ATen/ops/real_native.h,sha256=OSm_TBJE3j43ol5GI2gFf8nqCKWZbYpKP3-VEXp7H_w,495 +torch/include/ATen/ops/real_ops.h,sha256=YYO4pEBFdcKCdy_9zEaFFl8uvJhotk6v-_uJL097tuY,962 +torch/include/ATen/ops/reciprocal.h,sha256=-g6il-UCdD3Csz5UnuUKa3CWOpDN5DWwuCmQ0yCA2C4,1242 +torch/include/ATen/ops/reciprocal_compositeexplicitautogradnonfunctional_dispatch.h,sha256=7vn9674AL5mvaGRodUgnzu5YHCSkaHzfDnLiomJv6ss,873 +torch/include/ATen/ops/reciprocal_cpu_dispatch.h,sha256=nHSXwkzxamFVil8g0ql8t8lbq6ypCjDDEjyIWGv_j40,970 +torch/include/ATen/ops/reciprocal_cuda_dispatch.h,sha256=G-b9PklcSqFz21_MZ1bo42RVSyz-bprJr8MCI0m2hfg,972 +torch/include/ATen/ops/reciprocal_meta.h,sha256=dkF9_ZLelQP_dM09NFYJJzZ_686KLIyw4LUFgv9s8ks,606 +torch/include/ATen/ops/reciprocal_meta_dispatch.h,sha256=wsDeoSHhK13aoGDVwJ8XWacy8aMxbBN-JDxkM4EzxtE,972 +torch/include/ATen/ops/reciprocal_native.h,sha256=9dNylgspbgGZ_tUrX9_ZBOQ5ZFS1h1mKYP9QABksC3w,631 +torch/include/ATen/ops/reciprocal_ops.h,sha256=bFAcAlAIowNfkhmpTEzlGnn6vFySqKunvZaH2XNa59A,2109 +torch/include/ATen/ops/record_stream.h,sha256=VJq5rAWDKfokSdrDluo86ESSz7nk0fiu6G4_XGT7VZU,513 +torch/include/ATen/ops/record_stream_cuda_dispatch.h,sha256=bF9GDL4S9dSswTPNiImc32TOGy0jsGScyVbWLiagJXU,754 +torch/include/ATen/ops/record_stream_native.h,sha256=SwJdXLLj2ws4sTr3c7dMwpHVdGBJLmSDPV3KMXVJ-FQ,511 +torch/include/ATen/ops/record_stream_ops.h,sha256=ftRbxRcTzUsiDXf3T6BBXuPPUR0GBfinpltf6XJxOIA,997 +torch/include/ATen/ops/refine_names.h,sha256=gwjqUgeJbxXd5_q3z5zXaUkMRi4KOKwBEMnPZagG3QE,512 +torch/include/ATen/ops/refine_names_compositeimplicitautograd_dispatch.h,sha256=ocxupGOJ5bLnlwkC0xmlZWE5jDWnTmlhhvwABF3IsJQ,816 +torch/include/ATen/ops/refine_names_native.h,sha256=djvuv2071xuxbNk77W8F417qqV5aIYDOgmiEeWHkQ4k,526 +torch/include/ATen/ops/refine_names_ops.h,sha256=MdAi30-q5BGETJ5lrG0zhCh3BplOy-554vJC3aiXCJg,1066 +torch/include/ATen/ops/reflection_pad1d.h,sha256=wt1GMfyJzaZjBi8mN7ehgrty51xzLPe7qR_0mLlo0rw,3965 +torch/include/ATen/ops/reflection_pad1d_backward.h,sha256=3X3T0V03mPtnqrYnHx_2Y6H4t5V06w5Vx8NH3lCuZXA,5128 +torch/include/ATen/ops/reflection_pad1d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Byl7cED3fAPXxYRInIcysRYLfGxaTlIbKEGJ7yIhASA,1031 +torch/include/ATen/ops/reflection_pad1d_backward_cpu_dispatch.h,sha256=wN0WJPr4iAS8A6HAj3DvdGFQ-C9AgD_pQu6EysIdWr0,1633 +torch/include/ATen/ops/reflection_pad1d_backward_cuda_dispatch.h,sha256=GZHAmHImVX_ZhH4LptiiJMDlxbVqr-PcTZBoeCVV76s,1635 +torch/include/ATen/ops/reflection_pad1d_backward_meta.h,sha256=PKyKV5o99evag3nlk3njR_OqyyoUW6Jl3KX4dZiZuis,684 +torch/include/ATen/ops/reflection_pad1d_backward_meta_dispatch.h,sha256=Ls7cDz7Z3jUjRwev_lMxdKvbN_3U5O3XO66T8Lnut9E,1635 +torch/include/ATen/ops/reflection_pad1d_backward_native.h,sha256=gIQC-unAl0-qOFuDmSJMmUB6rm8thTmXQoAtTpcYYrI,1007 +torch/include/ATen/ops/reflection_pad1d_backward_ops.h,sha256=8dCXjATihIXNNJp6R2EGS-CWP1c1sxH5bJbQaqiemZo,2123 +torch/include/ATen/ops/reflection_pad1d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=XUhasiO_t8hilvYVzstAKeKUmtVyxZz3hBImpTXJlZc,949 +torch/include/ATen/ops/reflection_pad1d_cpu_dispatch.h,sha256=RUkSheQMZs135ZoMRGPcZBjJTbC0tiAN5LKmqQlTQZ0,1359 +torch/include/ATen/ops/reflection_pad1d_cuda_dispatch.h,sha256=J8TzOpOuMi7df8YJQeeyQmTC9oZk-JW0cXauCm0YsEo,1361 +torch/include/ATen/ops/reflection_pad1d_meta.h,sha256=wdgOTcDcnT95rwmGH6WG8WwRM3PL6ODZ0qVFlRSHm8I,643 +torch/include/ATen/ops/reflection_pad1d_meta_dispatch.h,sha256=AtEzPt6MVFO0CUl_S7S1iqA7gaM04Mj53WOWiwdFrS0,1361 +torch/include/ATen/ops/reflection_pad1d_native.h,sha256=DcC8NzOD90LfB9QwEI1n9YA6gBG_A--trkErrnjcbpQ,1012 +torch/include/ATen/ops/reflection_pad1d_ops.h,sha256=SYQYgYkGbWrKurnRbKniZA2ZJApU2glI4CQIn6HG824,1819 +torch/include/ATen/ops/reflection_pad2d.h,sha256=9KSrbjGx6eUIyj-R-zH3uLqPyjggWsuEvR-pfwJmH84,3965 +torch/include/ATen/ops/reflection_pad2d_backward.h,sha256=8pokYM6vTMO9KMXjy0HlWoHFkUDID2nba7bvgXDFOCw,5128 +torch/include/ATen/ops/reflection_pad2d_backward_cpu_dispatch.h,sha256=kOw45kGu3AdimCNHfSKx2QwaocASAcvd7alEHVS39rk,1633 +torch/include/ATen/ops/reflection_pad2d_backward_cuda_dispatch.h,sha256=pfoKgAM3v3SzJAYmcAUarea96CYuqUqV3b9jQhytNl4,1635 +torch/include/ATen/ops/reflection_pad2d_backward_native.h,sha256=ucjZThzNCqDwA7T8NVcjv163tW4khdUFCfxGwbjI7O4,1046 +torch/include/ATen/ops/reflection_pad2d_backward_ops.h,sha256=_IBQ6b85HGKrSTRENWSQfmfuYXw-nTODd9QwSuYX6tM,2123 +torch/include/ATen/ops/reflection_pad2d_cpu_dispatch.h,sha256=gpM-SnLKU3SoEycd6G1Ej9IkjfHR0bJqar3XHZBgxtw,1359 +torch/include/ATen/ops/reflection_pad2d_cuda_dispatch.h,sha256=NU50HMaOu383ZQxmG-vzNiEjvAtdraN4tPI9aCIoqFY,1361 +torch/include/ATen/ops/reflection_pad2d_native.h,sha256=dfmL386aQl8CaCQxduqw2C71TW8CWq4PXw2op-32P7w,972 +torch/include/ATen/ops/reflection_pad2d_ops.h,sha256=VMF-1K9r61ZbK5FzKkjYTWF2JCvupKkzKP-2P6GgoP8,1819 +torch/include/ATen/ops/reflection_pad3d.h,sha256=TBMSWYffffuEOAC6B9dqPdGFJDfBx0S5Ro_KpCoy120,3965 +torch/include/ATen/ops/reflection_pad3d_backward.h,sha256=cmjVYkrQeyOl6pAoypbrELnOIYc_lxWZKHor7rrRqIk,5128 +torch/include/ATen/ops/reflection_pad3d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=nBtitBWGDZ2qQ0Qo0Lkm17QODnK0bBpkjjCEj9T80rA,1031 +torch/include/ATen/ops/reflection_pad3d_backward_cpu_dispatch.h,sha256=PAaZe6TdL5Eu3x5s4MgDLoKc0rwePvC6cPdMXlwk3Ms,1633 +torch/include/ATen/ops/reflection_pad3d_backward_cuda_dispatch.h,sha256=NWzNx5BGLm1jEaAXxlCzGRMR8ldc8RmQyWvEEF3G-aw,1635 +torch/include/ATen/ops/reflection_pad3d_backward_meta.h,sha256=HY6FozTvnCYGeWIUeh193Zp5mtBDdnEDJV7aknccVtI,684 +torch/include/ATen/ops/reflection_pad3d_backward_meta_dispatch.h,sha256=5TZeR9IC193c8cg8dKTef05f5_DYMtDirI_DpiFJNyg,1635 +torch/include/ATen/ops/reflection_pad3d_backward_native.h,sha256=4a6czlEONj5Dm_h0rnMuih8JJBNr9pwplJUJ5Jca0N4,1007 +torch/include/ATen/ops/reflection_pad3d_backward_ops.h,sha256=sSqwQ0-Os9yaxd7E8HqfWGVvX345mEH8ErkJuDHRIJk,2123 +torch/include/ATen/ops/reflection_pad3d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=OSpqx5it7a4vav0xvNsH51QafhozveUJvZFPxzab_lw,949 +torch/include/ATen/ops/reflection_pad3d_cpu_dispatch.h,sha256=GA9g5wyRmbQa7G4CYehGoriYwIq6MzqnWHqOqUqzfag,1359 +torch/include/ATen/ops/reflection_pad3d_cuda_dispatch.h,sha256=xvtO4KYmd3BAn51BGp9q9P0DlG6paQ09SJ5xLDaHBko,1361 +torch/include/ATen/ops/reflection_pad3d_meta.h,sha256=NjYulb_YHtPbdVBGf4oQXSaOdXUGH2oZbI3DULEwVsI,643 +torch/include/ATen/ops/reflection_pad3d_meta_dispatch.h,sha256=NZwKo5qslyydPIpDWlnD8x9wqfgwfXv7WBqdv2tNT-0,1361 +torch/include/ATen/ops/reflection_pad3d_native.h,sha256=wmpODccG2ohVTlLNkBf6dHuNcGlVayskowqRixPEdZk,884 +torch/include/ATen/ops/reflection_pad3d_ops.h,sha256=0vZdC9GFzbwrbk9Dtta5d6UCbG1Ybz_tscLRJivirSo,1819 +torch/include/ATen/ops/relu.h,sha256=nILnflKf6a91XYuH49Xd26ms2Apdcp2lQ6TdCIeXkPo,1164 +torch/include/ATen/ops/relu6.h,sha256=mnyIM6O42_igV1jRUhynFm6t_SaNqma0lgOawka2iY8,784 +torch/include/ATen/ops/relu6_compositeimplicitautograd_dispatch.h,sha256=o7j3GMc0Q0CAT-12Mtk19aJxd7ApTnkJ6TgL78JFMmk,837 +torch/include/ATen/ops/relu6_native.h,sha256=MJQKjJo4uAGuSohzjQa04dbEc0-VVTOpEnLku2ruRZA,547 +torch/include/ATen/ops/relu6_ops.h,sha256=CeYhJLXdw3TCSOm2hfzqHTDiThbdMsBcn_UlVvcBJe0,1466 +torch/include/ATen/ops/relu_compositeexplicitautograd_dispatch.h,sha256=6WIocVBNENJzDBVRjw9bi9sxQ7YE-JlHVxuuo-zLOSQ,887 +torch/include/ATen/ops/relu_cpu_dispatch.h,sha256=T5XFC7pBfvoQPW1ZfEF23lVVTAqwqKJnj_CwaA5hlMQ,791 +torch/include/ATen/ops/relu_cuda_dispatch.h,sha256=fD3Rvtw95YHBz0OOmRi1lfAZF8eH9DwAimP3gozZj4M,793 +torch/include/ATen/ops/relu_meta_dispatch.h,sha256=Pjslh42_99Lkq6IFVc7LruPqXuyidnB3LivzQVHCMxI,740 +torch/include/ATen/ops/relu_native.h,sha256=uVeD5_ozOum_ho5Ji8AC7HryOkZtN62vaOPardLAvYA,1374 +torch/include/ATen/ops/relu_ops.h,sha256=i7dOgVUC22zm_hAiX5K_Pv73h30vKXkPccAgGDCwZ4k,2055 +torch/include/ATen/ops/remainder.h,sha256=rMJ5Ic12kiw_w5NMZfY8HGD5JeYcn2XQLBLMa7hbSm0,2796 +torch/include/ATen/ops/remainder_compositeexplicitautograd_dispatch.h,sha256=CNIASKgZRkWEOVOAVgfKIRVAM5c68p4vne-CJl6BPoM,1331 +torch/include/ATen/ops/remainder_compositeexplicitautogradnonfunctional_dispatch.h,sha256=bFSakTqxx1OQ2WmqDq3LYeBrFPPh_hmOFEJr2ej6iqI,923 +torch/include/ATen/ops/remainder_cpu_dispatch.h,sha256=ICI3KUUdxQkCx6-mVjYaI0AvcRvcSu1yRvpMeH2TuHo,1154 +torch/include/ATen/ops/remainder_cuda_dispatch.h,sha256=1ZH52unDh2dvCW_-63eRr2I7SA_lXRDetb1XO7updAw,1156 +torch/include/ATen/ops/remainder_meta.h,sha256=HOgeSu0aUvBkuCisheJEhPNoqUBZWvTTmXoJrKUmJ-o,638 +torch/include/ATen/ops/remainder_meta_dispatch.h,sha256=5V68epEnsg-8Us4nisUDtFFMKHUMCKKqWIZ04XmAf9M,1072 +torch/include/ATen/ops/remainder_native.h,sha256=MfDS1Pjm8fikfTjflwasq5hHpb-5kAKlyF-xuSVyneg,1140 +torch/include/ATen/ops/remainder_ops.h,sha256=izQBQi2mWkzcC8F1DNxyukg15zkVDYDhAXhBhL2xh0g,5772 +torch/include/ATen/ops/rename.h,sha256=UjSi8U6AZ5_82vpPi9VLINGhwwQYYgFXieGWuv9sc0g,506 +torch/include/ATen/ops/rename_compositeimplicitautograd_dispatch.h,sha256=fwk5sa0UbZnc9e-Ksq2AsOBAI3405G3EbXqO_A-548I,919 +torch/include/ATen/ops/rename_native.h,sha256=QWXcFnu3C_9BzTNSaz8F2qMzG-54TeE0Bf45xGjjN24,629 +torch/include/ATen/ops/rename_ops.h,sha256=m-Ygk_TujvGFh3X6PytlzXn7msFmLeRjBEQIo04AFm8,1742 +torch/include/ATen/ops/renorm.h,sha256=Qj2MItCEMq46Zq30Db-9uB_W9EoZejP4t2HFx4EmsXs,1388 +torch/include/ATen/ops/renorm_compositeexplicitautogradnonfunctional_dispatch.h,sha256=TblYjtM0sWzBvg5QmConnzmBMr1BDvpPU8HOKmVZGCs,991 +torch/include/ATen/ops/renorm_cpu_dispatch.h,sha256=UF_4KVtUg9Z1q5YwwLW4TovA--A2MpUP5bTGx04gz80,1206 +torch/include/ATen/ops/renorm_cuda_dispatch.h,sha256=TG3ZCBuLGr-9Txj4H7o4Z3yCweJP0MDewXvj5xjAPHI,1208 +torch/include/ATen/ops/renorm_meta.h,sha256=aEJQC9gj2qjDKIljpOkpVRlV-NjbXQRdz_Ca19ZxBq4,665 +torch/include/ATen/ops/renorm_meta_dispatch.h,sha256=fCgUhpk3JmbPbTTwKsUf1zrzh4pI4t-1hwYFA9Y3wGI,1208 +torch/include/ATen/ops/renorm_native.h,sha256=aq1dP2C4rIP34YWbpeva5yViMTnSa2HJfIXFxPQNSlY,682 +torch/include/ATen/ops/renorm_ops.h,sha256=QJpO1gNVGYzpbHAPnTX9vVLg36BducdeoNCCFfgRwXg,2703 +torch/include/ATen/ops/repeat.h,sha256=OFTQhXgoF_n_vOK2cR1OEjtBKk-OTqbKFVeqya4pP7M,3232 +torch/include/ATen/ops/repeat_compositeexplicitautograd_dispatch.h,sha256=bSl_-wRwUAh11tSFVMmHdAHXmPxL2W6dQj0CWkkW8og,1343 +torch/include/ATen/ops/repeat_interleave.h,sha256=RQGGrguW1XIOyFMwTKq2MNlSxCoL383w2jHC0cWjUnw,8390 +torch/include/ATen/ops/repeat_interleave_compositeexplicitautograd_dispatch.h,sha256=9LAzkSRCYA-oJ_Fb_MmzONhbpf3Yz4djQedxkO5rIkM,1310 +torch/include/ATen/ops/repeat_interleave_compositeimplicitautograd_dispatch.h,sha256=O2dIH2-kSX689aCDPLlRZKkZ9DupddfHhQ0852JpTW0,1504 +torch/include/ATen/ops/repeat_interleave_cpu_dispatch.h,sha256=9Iww8eFEmAz5jX7j1mVgK1p4Xx_aXLAygK7xHsrOvAA,943 +torch/include/ATen/ops/repeat_interleave_cuda_dispatch.h,sha256=7IAXkPY4NuEVuYwq2De-qOXsd-t980GrrtjMJmMnrrA,945 +torch/include/ATen/ops/repeat_interleave_native.h,sha256=3n_037uiniieTx4ROPJJ2nXkt-gygAdHPauzEw34Dwo,1243 +torch/include/ATen/ops/repeat_interleave_ops.h,sha256=0KeCwcP0RHblsyxjPga7VQoNLWkJIwxBjPyOd4vEWdU,3771 +torch/include/ATen/ops/repeat_native.h,sha256=HWGEp0zOvGUNCem_Y3g1fpI1FdScrLV2KPTAFSgieOo,637 +torch/include/ATen/ops/repeat_ops.h,sha256=XQzggvmow8T2C1iNTGnJqhSSSVzyo207HF8rfC1f0Ck,1757 +torch/include/ATen/ops/replication_pad1d.h,sha256=5aZGR5P4VJjZqJXdUwVIClwN-91XHc5a0wXzoxhPdSQ,3996 +torch/include/ATen/ops/replication_pad1d_backward.h,sha256=L2xyHdcHw5q4dQgaKz0OA_p-f7CG76NIf0JwTpRK72A,5159 +torch/include/ATen/ops/replication_pad1d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=2IEkw4pcU81FSwrxLMVi0L3bexcM451kKgvn0Te5kik,1033 +torch/include/ATen/ops/replication_pad1d_backward_cpu_dispatch.h,sha256=g1P-RnTqVgXdTjmZsScSxoQoGcJ5gzzynEVNQFvwZ4Y,1639 +torch/include/ATen/ops/replication_pad1d_backward_cuda_dispatch.h,sha256=HfkSXEHw6AhLD1YMiGR_g8KY5OB-E6ghM711j_9QJss,1641 +torch/include/ATen/ops/replication_pad1d_backward_meta.h,sha256=aJ3vglRSMQ-jCs84YlHbqPQn10ZBNNP1uHQmViMXzrg,685 +torch/include/ATen/ops/replication_pad1d_backward_meta_dispatch.h,sha256=su06XgbaOXcY55GzyQ1TiaB0cpaTc6ex9gci6LrRWdc,1641 +torch/include/ATen/ops/replication_pad1d_backward_native.h,sha256=bPIi3HFCz_kCln5uIjYhAaNAjSbrsnCGhuptQOcCX8M,1012 +torch/include/ATen/ops/replication_pad1d_backward_ops.h,sha256=jk40WjDlHhyOWiCY2JxzKW6ASMq12uHr_E2jh75A_rg,2129 +torch/include/ATen/ops/replication_pad1d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=B65JiyhUGwLAnrkHNxR8llunN0ylFPrpWIn8Ngt9w3A,951 +torch/include/ATen/ops/replication_pad1d_cpu_dispatch.h,sha256=5vdngUhGxgt891yzbZd-M99emyv6mY_fE5b6OltuQfg,1365 +torch/include/ATen/ops/replication_pad1d_cuda_dispatch.h,sha256=_udK4vTyifhNc0cc5GVPLh5hjw31KosQlmkw3kB5sPo,1367 +torch/include/ATen/ops/replication_pad1d_meta.h,sha256=xg8B22oWuRmgBLHyGhu4jSBNTOJ98p-_UZf9QTbvffk,644 +torch/include/ATen/ops/replication_pad1d_meta_dispatch.h,sha256=TpDplJz7jNziT26DF77bOWhyNoh6ijGsMUbOeDqM1sI,1367 +torch/include/ATen/ops/replication_pad1d_native.h,sha256=Er2DOyuWpTexlRz3-7bFgO3qw1ZBlWpKN8zV-o9HR8Y,889 +torch/include/ATen/ops/replication_pad1d_ops.h,sha256=xq5w160to2A2wHPeyDNy8jOKSKWxvYywj9plLaqK7hY,1825 +torch/include/ATen/ops/replication_pad2d.h,sha256=_3ziBzDYuGwYsQpeh2_Y6DXSbRVyI2wqClEtT4MC6V0,3996 +torch/include/ATen/ops/replication_pad2d_backward.h,sha256=_uuAYDdnLQ3HzAFkH8oRv15dZ-6UY-IgjAbSxqO0FPo,5159 +torch/include/ATen/ops/replication_pad2d_backward_cpu_dispatch.h,sha256=Dw6PYIcyv9IxZKPzOFcTllzs1z3XZQCx_w7klPZSDOE,1639 +torch/include/ATen/ops/replication_pad2d_backward_cuda_dispatch.h,sha256=GCtcIAU3AoYsUqbiN-nY7HsM1UbLAnI6rbs_yMUITX4,1641 +torch/include/ATen/ops/replication_pad2d_backward_native.h,sha256=OrjSEmLY5tL8HICCN8Z8FP4FgN0uygkymqjeMTG4Zbs,1050 +torch/include/ATen/ops/replication_pad2d_backward_ops.h,sha256=LQV3vGhmEM2WHe-UjOV_mUwJvQ9Y6tWlzNyxckDjrc4,2129 +torch/include/ATen/ops/replication_pad2d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ieD7ss5o_Cu4l5VIZpZETrYsyhiF7sHxPWk72HYFNqU,951 +torch/include/ATen/ops/replication_pad2d_cpu_dispatch.h,sha256=-j36OH3yeO21cAtSh_l4oZkY8yGZwx1m9AfZlnuQAKQ,1365 +torch/include/ATen/ops/replication_pad2d_cuda_dispatch.h,sha256=A9yW4i1d7IxrTtmUvXKFD_kbNBeH3NEt9bIyxp84jbo,1367 +torch/include/ATen/ops/replication_pad2d_meta.h,sha256=e8u5WnTmDUCRTi2ILMXHDZisnMt4K4uXFznGW5et8XE,644 +torch/include/ATen/ops/replication_pad2d_meta_dispatch.h,sha256=ALbtt_vHvSBIaYwv2LK1jTuMZDqJW409nGQsrQuyMo4,1367 +torch/include/ATen/ops/replication_pad2d_native.h,sha256=gQ-yCMjVLSBRTSnFO9bhWJb_0zvPiiBH9M9wcOHtkrk,889 +torch/include/ATen/ops/replication_pad2d_ops.h,sha256=ujsbrOp_wkxvuGifQrPbn8lxxbFCFqgt8yJ4JgrJtKk,1825 +torch/include/ATen/ops/replication_pad3d.h,sha256=20Rycdwpvd9pdZQHeZWRC7Q504RVRqV_GNPpIClODQw,3996 +torch/include/ATen/ops/replication_pad3d_backward.h,sha256=_PcOKg7gD2EZsNYPY6vRLfFBQ3U19zhQKwCHiy8FQ_w,5159 +torch/include/ATen/ops/replication_pad3d_backward_cpu_dispatch.h,sha256=kKvQDDx_qJR2tgOhHm3ZaPvBq77hqD7wGcOdP4mYxvU,1639 +torch/include/ATen/ops/replication_pad3d_backward_cuda_dispatch.h,sha256=vodXlWgk52TaC7u1jLaHnYamjLzPeKGy97AbSOgfLwg,1641 +torch/include/ATen/ops/replication_pad3d_backward_native.h,sha256=sjG8i2GwjwkplR4DUv1rz9mMJdqYNKbsCawzSwa4StA,1050 +torch/include/ATen/ops/replication_pad3d_backward_ops.h,sha256=kP18JDVGEZzox_7O5DtdgUsJHRp7DU046BSHMwntHhA,2129 +torch/include/ATen/ops/replication_pad3d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=uyDfqY4gHGlIRN_LQpC26nKgaOy6GPGLf4BJlMPV9bg,951 +torch/include/ATen/ops/replication_pad3d_cpu_dispatch.h,sha256=VZ8-mPbxZ80KQBQD7PzD53AP_6PHBom1BBgv04ZiK1A,1365 +torch/include/ATen/ops/replication_pad3d_cuda_dispatch.h,sha256=OdqfuiAva2JDhI_V0MeBfJ63UwtoyuWZcf0FTAPFavU,1367 +torch/include/ATen/ops/replication_pad3d_meta.h,sha256=BqF3R7uF2oziW78XMVdFjoEY39buzBZ-iF_zuMljQcc,644 +torch/include/ATen/ops/replication_pad3d_meta_dispatch.h,sha256=kcnE-uKqbCg6-zRfXEfXxu3CzNJmMvvsp1ndGV4RQos,1367 +torch/include/ATen/ops/replication_pad3d_native.h,sha256=txYTNugIWFg4ahwkVDaRJny5_SnsAD61bLCwDSmXAE0,889 +torch/include/ATen/ops/replication_pad3d_ops.h,sha256=LiNnBwm-ACJ4hQIto-u99IB3rUjsfeeuut1T1L95TPs,1825 +torch/include/ATen/ops/requires_grad.h,sha256=3zVQ1Wt7ykg-Ogdz18ZHW474JbUBHuDCgxp0qvN6my8,513 +torch/include/ATen/ops/requires_grad_compositeimplicitautograd_dispatch.h,sha256=5oR2_i_vOVo_IpmKxtVG5qN8okWrUxmROxB0P7A1Z80,816 +torch/include/ATen/ops/requires_grad_native.h,sha256=9TmSk9awhQk0qhlVYMpjgyR_MXTT9c-SQo_nP9NDRoU,526 +torch/include/ATen/ops/requires_grad_ops.h,sha256=zrnfAyRwi-nuPcH5jtqFLSOEbZjZ0rJX8C-dQcXbFc0,1053 +torch/include/ATen/ops/reshape.h,sha256=rO5i1pLuYrgTZPBDjsq1EWHiT83ixc5MB_c0bVP6R8Q,1430 +torch/include/ATen/ops/reshape_as.h,sha256=8GQgp29-e8GiNY88_lWaI6lHFEjsq4uhX9w2yn9FdHc,510 +torch/include/ATen/ops/reshape_as_compositeimplicitautograd_dispatch.h,sha256=6KJfys2fTlzKd9weK25Namh34-wemqwUNZQyeR7kJQU,817 +torch/include/ATen/ops/reshape_as_compositeimplicitautogradnestedtensor_dispatch.h,sha256=P_wDS1fckul4dTBUCIqlFgRSJrcS4jNKbeIset92--A,841 +torch/include/ATen/ops/reshape_as_native.h,sha256=DSL4ix21iueVatYsPX0Sv05yUz8M_JH7rs_m28FnoaQ,619 +torch/include/ATen/ops/reshape_as_ops.h,sha256=teb_50mwgFhmRYvECCTIqRkT98U5-NSimg_w3OxiR7Q,1066 +torch/include/ATen/ops/reshape_compositeimplicitautograd_dispatch.h,sha256=d4BpregJxyrZ1vtH3p3Rr2Mht7jLIJSbJK1XeB9Ho6E,901 +torch/include/ATen/ops/reshape_compositeimplicitautogradnestedtensor_dispatch.h,sha256=g_DVWJvHI9RUAfT44-NtUYnxvL77l640TzA1xe4afns,925 +torch/include/ATen/ops/reshape_native.h,sha256=gIcLO7foUhRAe6dRaQwUC7dNHBIG1vIyPdQv5vXlJRg,629 +torch/include/ATen/ops/reshape_ops.h,sha256=2E5DiCKTeMBfnRdUogb9Xwsz3zPYAqNWB2xfLJIj8RI,1062 +torch/include/ATen/ops/resize.h,sha256=BHHq8m89m2QlJ1sudCJzUQijAyLbfImFwWnkQLrQutk,5425 +torch/include/ATen/ops/resize_as.h,sha256=sytP-nWBEdVUxKTWjgtb7MUJbIbk9i0S4EBZcR27SFA,1980 +torch/include/ATen/ops/resize_as_compositeexplicitautograd_dispatch.h,sha256=rmjutVfOXQGFgF_m2rm9M1ZMNo8OxUPNJcsYavpoaNk,1419 +torch/include/ATen/ops/resize_as_native.h,sha256=KSh9nyCiCfN54GQE4MM6ewrDEItDpZaT6MYZe9VwZ8w,937 +torch/include/ATen/ops/resize_as_ops.h,sha256=tWpq0reeQ4ajP0wT7idy9DVLXWM8UCxQrKEatce2ECs,3000 +torch/include/ATen/ops/resize_as_sparse.h,sha256=TQVGvDsjLWrUr2QuVyybK3votI-Yw9epSbtnx_Z4aUw,1628 +torch/include/ATen/ops/resize_as_sparse_compositeexplicitautograd_dispatch.h,sha256=VN3KGWf4HBfVrXi055jmnU9JCaLdYlUqM-Ud5MXIkBw,1099 +torch/include/ATen/ops/resize_as_sparse_meta_dispatch.h,sha256=KBlvgmPomonjCHAvh0yyQzpEVGIRKBGJ9e3KIUiHyjM,797 +torch/include/ATen/ops/resize_as_sparse_native.h,sha256=a0XH1I9oNkGq0VCsB9KEFxRPhQ1kPgg9BIiM6wJjQBM,899 +torch/include/ATen/ops/resize_as_sparse_ops.h,sha256=RzzzkaxyhVjmMAUMJf6eQX0autSmThCwViVOl3M7tUA,2556 +torch/include/ATen/ops/resize_compositeexplicitautograd_dispatch.h,sha256=jL-R1XjCrF1pbPDwoxi8r4jAYkmNTMqIF1CX-RLoZHc,1727 +torch/include/ATen/ops/resize_cpu_dispatch.h,sha256=z2YYp43CbFN9a8kh1EN4zYsGNMgHaK5qOXAJ5Yls7Co,999 +torch/include/ATen/ops/resize_cuda_dispatch.h,sha256=syZ3iBk7kyS6a3BotfqhmUHvjOUbDtl4A2VL97WYsO8,1001 +torch/include/ATen/ops/resize_meta_dispatch.h,sha256=XvDN7UnG7huDN4Mu-mmcKcWpUZ0_aHQoYwUwTc_OaWY,1001 +torch/include/ATen/ops/resize_native.h,sha256=82By7TIpXQraVRfo3pdnRrV7eTZa2lOevfvjWmYDxPU,1558 +torch/include/ATen/ops/resize_ops.h,sha256=et0BPj0W3D18tcaY1MQFzuUT6K-s5pUN94ALiPXqc6U,2916 +torch/include/ATen/ops/resolve_conj.h,sha256=As5YeW0jGZjsR6fiuSBpXZQlycnv12VbDRNIwqaeKT0,674 +torch/include/ATen/ops/resolve_conj_compositeimplicitautograd_dispatch.h,sha256=89u4evnzkK6yEmsmmLbvbDGhh5_HMkFsnS6xc-Qy22g,793 +torch/include/ATen/ops/resolve_conj_native.h,sha256=jWLdpUYVVQr9481XkT1q49NI4f0kjCYpVinF-ykJ9S4,503 +torch/include/ATen/ops/resolve_conj_ops.h,sha256=x0a1V-bX9D7Alv94FAW-DobSdRE8SuEphsQ973mk-XE,986 +torch/include/ATen/ops/resolve_neg.h,sha256=4SwvY94Q-7YHvk3rTdTSQ4EKNHGXZM2FXm-btBIUzbE,670 +torch/include/ATen/ops/resolve_neg_compositeimplicitautograd_dispatch.h,sha256=YaSIg0nSU9sVfbTawcx2MCmKk-sJuzkLYp_0Oz8zJuQ,792 +torch/include/ATen/ops/resolve_neg_native.h,sha256=rKY0QwMNcKDevdbMOnnrZgt2zYrp4exgIwSw5uppW7c,502 +torch/include/ATen/ops/resolve_neg_ops.h,sha256=CDDyi1ObaC9BMB1rZ4in8GDYgQzuh1-1Z3fWhFoc9AU,983 +torch/include/ATen/ops/result_type.h,sha256=qo5Q9u4LU9PaJHhpC8l8QIOhbrtiCtkWlUl7vwiH_PI,1469 +torch/include/ATen/ops/result_type_compositeimplicitautograd_dispatch.h,sha256=7NkrhBuWg5dmakLhZpL35auR7bMB2J1hZ_EUh0jpRBI,1104 +torch/include/ATen/ops/result_type_native.h,sha256=hw0siWa6Sz9_hm_3TH28snlwfERVv0DbSQjehqVjha4,814 +torch/include/ATen/ops/result_type_ops.h,sha256=0ZT6vlLoxcyshwZCKHcTs-9b1g46UQy_qOoWLIHW4f4,3121 +torch/include/ATen/ops/retain_grad.h,sha256=HXCtRZCSr8d-tweXfixpIqkDOlw_ReMASJzQlBHpNQg,511 +torch/include/ATen/ops/retain_grad_compositeimplicitautograd_dispatch.h,sha256=PtpQz0uG2TEDifP5bfFpRqpfSIWtoKNCTHyQ24UZS80,780 +torch/include/ATen/ops/retain_grad_native.h,sha256=gTPBYxlEiYGiIbjPmS-botVR5xYINn5vEnN9bx2dZ2w,490 +torch/include/ATen/ops/retain_grad_ops.h,sha256=_KU9TtbjYvT9rNkxwByNjUF-YYKOMCMKvTcehosfV9E,941 +torch/include/ATen/ops/retains_grad.h,sha256=zcfsKmo6RZjDS0SxOn9t9GK2vLlEayrDJL2xfCqIpoM,512 +torch/include/ATen/ops/retains_grad_compositeimplicitautograd_dispatch.h,sha256=ZGDxL9qCba_6x1GAuA-y_kM2wtxrnJWg2ntvL4iqL9s,787 +torch/include/ATen/ops/retains_grad_native.h,sha256=hBB3QyEi-JPqVALMAPdrNmlAzkko5HHubHFRxPD0Rbg,497 +torch/include/ATen/ops/retains_grad_ops.h,sha256=NIVtfyTY1pA5KBW08Ky_vUPr8L0WiNr2503KbMQVkAs,960 +torch/include/ATen/ops/rms_norm.h,sha256=bB8HpjDlbs0jlwO1LDkReK1UEB75PM0VXDUjq1L6QGA,2041 +torch/include/ATen/ops/rms_norm_compositeimplicitautograd_dispatch.h,sha256=FfI7PMpXc5SOaR-I1Dyqr2N-fF6AtGZpUo26TqzVPvU,1109 +torch/include/ATen/ops/rms_norm_native.h,sha256=03LmpLqskSbpDbcxqCdFKaIWtsHVMhLcIqgM4rPkFtY,636 +torch/include/ATen/ops/rms_norm_ops.h,sha256=uTwKDvMcCU5vFZdCN0D07zMvskDTpVY9_eZc9mtQPQg,1341 +torch/include/ATen/ops/rnn_relu.h,sha256=tOk7aqXq9IUzjSmNUdZ2E968MwIMQNAcn08Vu-iD1Ns,1619 +torch/include/ATen/ops/rnn_relu_cell.h,sha256=KbuRQFbQqal7RNcYf_UBWTf6chLvTWoqVLz2kqY-O-8,941 +torch/include/ATen/ops/rnn_relu_cell_compositeimplicitautograd_dispatch.h,sha256=LQB705mlfXRhl-HLyo-arGYJ2zhej_fE5-RLf4mq2ms,958 +torch/include/ATen/ops/rnn_relu_cell_native.h,sha256=5_272rTJLycyC-IXz6TZrp2nPwB-vzLZITsv54pur3k,668 +torch/include/ATen/ops/rnn_relu_cell_ops.h,sha256=r3SIQC_ZR0mVYqUGP9_9s4WGSGjHU05K9gxnYmGbcKw,1509 +torch/include/ATen/ops/rnn_relu_compositeimplicitautograd_dispatch.h,sha256=QEhKjkcPZ_rs_AITUt9a3saS21BK7bySzPcT6hpziwA,1209 +torch/include/ATen/ops/rnn_relu_native.h,sha256=ILTcVdJNCl67yCsJNzmtg4L9IIXcqusQCvY8JZxhtgs,919 +torch/include/ATen/ops/rnn_relu_ops.h,sha256=8SotEnIIOyhmG-lXT2_pI_5HXdQ0EmLtN_SRvhKD37I,2735 +torch/include/ATen/ops/rnn_tanh.h,sha256=6X8v-3oIHWd4rGZfwmp-d3Z0eN_MCbi08EjoCmZmQmc,1619 +torch/include/ATen/ops/rnn_tanh_cell.h,sha256=GYLTRZFFiuS0pWIWmmC5gxy9SOtJxiFwsnH10QoA2NU,941 +torch/include/ATen/ops/rnn_tanh_cell_compositeimplicitautograd_dispatch.h,sha256=VSKkFI4rHP79cDWFK9nPu6s-UV-NGjhLGXXPVXEdvkI,958 +torch/include/ATen/ops/rnn_tanh_cell_native.h,sha256=RzNhrwZowtrn3kqLPxem1YYTqmGQgJ-Jv9fxQ0tgVSw,668 +torch/include/ATen/ops/rnn_tanh_cell_ops.h,sha256=fVQvmoxBi4QjqaqidiZQVYRzwc17JQSGtoOkF5f25Uc,1509 +torch/include/ATen/ops/rnn_tanh_compositeimplicitautograd_dispatch.h,sha256=QBhr1BMt1nuT7DyvwOIWqbiqQRt-L08L6a0YezzIdOk,1209 +torch/include/ATen/ops/rnn_tanh_native.h,sha256=89yeoQfrWDXYsMIAhRXxWz-ChT1JG16kkRX1Cx_h0ls,919 +torch/include/ATen/ops/rnn_tanh_ops.h,sha256=VK-fp1IZkaXuu4XiVromt-rKUTD9YHNbL513OwdruYw,2735 +torch/include/ATen/ops/roll.h,sha256=nXtvE55phwUyOnTaJx7lrA0AOwYs-VcVfm0FMxsP580,4019 +torch/include/ATen/ops/roll_compositeexplicitautograd_dispatch.h,sha256=yrtY4WiHi1xO9rWZXhIH_39VEakvwKUFaXRi29YXa6E,1254 +torch/include/ATen/ops/roll_cpu_dispatch.h,sha256=PDmrHaeEUD1lf9TfxfHkgAUgyrm1Ny1jV4IaNun3ORA,903 +torch/include/ATen/ops/roll_cuda_dispatch.h,sha256=oEOrE5DO1Iw5lOyLSUwUFUV8mdfojzDzoPC9y3SQyHo,905 +torch/include/ATen/ops/roll_native.h,sha256=csY-AbP8e6o2POiw_PXQMIFxCZ_yVqNdphvZ0XulodU,785 +torch/include/ATen/ops/roll_ops.h,sha256=suc3chikxGDz7plQqhHhQ9Ho3cHAc15tSEE1x6nNieE,1895 +torch/include/ATen/ops/rot90.h,sha256=sktwONtHwB70g3R4CGGqfQW-K4hlK8SWlz5f7YtTZUI,1256 +torch/include/ATen/ops/rot90_compositeexplicitautograd_dispatch.h,sha256=jas3PD2vMVc9a85pOvaLfNI90-AKIqNZ5vrQ6OEQHvs,1058 +torch/include/ATen/ops/rot90_native.h,sha256=GPlcBDR0tFry_yNuB49tQTPZZUi_KXU0QAcICkiw9js,648 +torch/include/ATen/ops/rot90_ops.h,sha256=OV_Z0pGexYMWa23Kbya8eErGs3ju606GM-Y1w1XDcxg,1795 +torch/include/ATen/ops/round.h,sha256=S9eG3int4om_YP4Jut-kZbSN8uGRTAecxs8oORNsbSQ,2097 +torch/include/ATen/ops/round_compositeexplicitautogradnonfunctional_dispatch.h,sha256=1t6qSTHWo_ZoZILO00bcGcDnxDrzNVQvDiWjV2uQNr8,1004 +torch/include/ATen/ops/round_cpu_dispatch.h,sha256=HDNNMLc0ECrEwPUw29zyiTfb2j4NQCELr_V1UEdnmes,1284 +torch/include/ATen/ops/round_cuda_dispatch.h,sha256=NmvxGlPyUgytKrOEdS08Htl2IBugLbufMRPWCUq_EBM,1286 +torch/include/ATen/ops/round_meta.h,sha256=l3jdBsBcgls_-o3vkl9XiNPDXAJJS2efLA7UUoXF5sM,750 +torch/include/ATen/ops/round_meta_dispatch.h,sha256=A58V5gtB4TRJkie5L7315368RnW7Q35UztM-THpySH0,1286 +torch/include/ATen/ops/round_native.h,sha256=ZbnZSEsXtROM6I24MKeTRWS85NwPH0c2sgU3SZz24Jk,1214 +torch/include/ATen/ops/round_ops.h,sha256=TMmsMTZzf_I1eyyCKhhpqjK46jcDa5KYQqpy76rbFUM,3939 +torch/include/ATen/ops/row_indices.h,sha256=59r5UIwUAbDyr6HqnJDy2BFTbWqYrSCRFbN8UcC4ex8,511 +torch/include/ATen/ops/row_indices_compositeexplicitautograd_dispatch.h,sha256=YO359IT0Ukg7n7g0OhYYo16MBwbMdX_goHs8bsJKC2w,792 +torch/include/ATen/ops/row_indices_copy.h,sha256=wymyS0v7w_2sHENzHj8Y9bx6KD5xK9JAgyAhCkCDUnM,1143 +torch/include/ATen/ops/row_indices_copy_compositeexplicitautograd_dispatch.h,sha256=L2gWzJkjmO4U8r0yWunLyICuhBZEPvB5BItqiEFnFcI,911 +torch/include/ATen/ops/row_indices_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ZziPSFVL2rjWHgVTVvgRVqm2OjDGw0YF8BzDiyn6u3o,823 +torch/include/ATen/ops/row_indices_copy_native.h,sha256=9JiiXshsGu_ESg4jK1vt4NvbaJZRSgsBWVfX3IzvGDY,596 +torch/include/ATen/ops/row_indices_copy_ops.h,sha256=3yvdGsqwlWT4u_7mf8WOUId39DA6gqCzHAoidadWRH0,1623 +torch/include/ATen/ops/row_indices_native.h,sha256=HUMDPFZskaDTwD4uQnlzJfS03ljthg8D9tDRK0GdQcY,581 +torch/include/ATen/ops/row_indices_ops.h,sha256=oEOaPTTIHKvnUh8JR3GnT5B3BLMgGxllrKqRB2Lw4Z0,983 +torch/include/ATen/ops/row_stack.h,sha256=po2ap6iE_L7MOFArjOBWa8DyakyTwp6MKIetaYH2T-k,1094 +torch/include/ATen/ops/row_stack_compositeimplicitautograd_dispatch.h,sha256=gJhE5x0cUwVQIDjpoY3daPmuONWQ_M9yrHsXnKTCW0Y,952 +torch/include/ATen/ops/row_stack_native.h,sha256=XNi-YxaMjyWqv83JNhYriSpZ-iBkk5at_PUske7Pw58,580 +torch/include/ATen/ops/row_stack_ops.h,sha256=9TMz_sGl24rtxwbOHJkNPvUrAp-LKSLtw68TjQK6fls,1579 +torch/include/ATen/ops/rrelu.h,sha256=CcL9xE10kQlODzzT88yrFB_yC101jt_h1bdAt1SE_1w,1366 +torch/include/ATen/ops/rrelu_compositeimplicitautograd_dispatch.h,sha256=GLecglCTWRtPPmzNO4J3NAoc-xxbzUlrRX4_TxqJYS0,1147 +torch/include/ATen/ops/rrelu_native.h,sha256=Qzwtj33mXnW7m_J0_LuIQq9YsLmE0Xc0MdlJSufgagU,857 +torch/include/ATen/ops/rrelu_ops.h,sha256=cEiW8k2mYgnza8AEhu4H_LdgT9XX4fUEqJaAOhVBgw4,2260 +torch/include/ATen/ops/rrelu_with_noise.h,sha256=69N-un9fJcV-zRZ5CvU0pGMfJSDFMBN64Wv4PccVP4Y,3204 +torch/include/ATen/ops/rrelu_with_noise_backward.h,sha256=w-ZGfIU6QuLHFZjfQnRTP6AcE3EOMYuiG7pTcFLn6x0,2145 +torch/include/ATen/ops/rrelu_with_noise_backward_compositeexplicitautograd_dispatch.h,sha256=PhMavetigluvtOjyI-vGrTMfGUFhElstlmiMaMdW_U0,1441 +torch/include/ATen/ops/rrelu_with_noise_backward_native.h,sha256=Lv78oSiv-ydMXtB5a4Lv0JQ9qT-Y5NbYoJGQvEIPPvo,906 +torch/include/ATen/ops/rrelu_with_noise_backward_ops.h,sha256=posRGo3RSaaX0Q0XxE-JShPXulOQW3w0gDLMhmm-3Vc,2641 +torch/include/ATen/ops/rrelu_with_noise_compositeexplicitautograd_dispatch.h,sha256=k9qDCBZf_qPtmcWP0wJ08P46wPW3JqfkLibqNL7yJPc,1014 +torch/include/ATen/ops/rrelu_with_noise_cpu_dispatch.h,sha256=5UEegohjITdG2YDzvEv_bkNKkIHlhk-3nHoBF-TQpzg,1648 +torch/include/ATen/ops/rrelu_with_noise_cuda_dispatch.h,sha256=NC7WktDY0Z2HFO-ajX9N1QrcS3NIE5Ty5kOj7Cz68ew,1650 +torch/include/ATen/ops/rrelu_with_noise_meta_dispatch.h,sha256=NP09QLgnocB1izCoSy_u2hNb1m4Y46nWfPgr5_1Cf3U,927 +torch/include/ATen/ops/rrelu_with_noise_native.h,sha256=gzrE__QQsqhUmhzrKBI-r_jQgKpAl2C0EK5g0QrdREY,2141 +torch/include/ATen/ops/rrelu_with_noise_ops.h,sha256=wbWGmp3wSHZ5Xlta-9d-R-mPLIsCQ0QirJM3QPV_tqo,4722 +torch/include/ATen/ops/rshift.h,sha256=TcxyjjmguclXt09hbxIHFOPScQUF-xkIUUI7wv-LPj4,2020 +torch/include/ATen/ops/rshift_compositeexplicitautograd_dispatch.h,sha256=YFO00F9wjVnVIkWULrGI6ud-xaybWToxDVFFTLipJ4w,1170 +torch/include/ATen/ops/rshift_cpu_dispatch.h,sha256=9PKqZkNCEVT4FURnSdvS528c5OeE4F0s1pO-_tqARdU,1022 +torch/include/ATen/ops/rshift_cuda_dispatch.h,sha256=CTPl2vuMOh7k6-4uaPYOnPHD4aU-ZEGltPZvy2X6Xoc,1024 +torch/include/ATen/ops/rshift_meta_dispatch.h,sha256=xLZS95waZ2419o8RqNvJ1rXPdhX7GM2YdqcBJNhSQKc,854 +torch/include/ATen/ops/rshift_native.h,sha256=eoDBEabqjm-kHukDYvyrof90kLDlOU_ggoGAwKESEe4,1008 +torch/include/ATen/ops/rshift_ops.h,sha256=jW7lleNYZWlZ5lEAT8U0cZ3cMP8Dwt7Vk-yAg5Jn_uA,4405 +torch/include/ATen/ops/rsqrt.h,sha256=sBtOTQ-d_fDG-h8aofMHlFpy6GwtXO0xW0-eSFWu7Sw,1177 +torch/include/ATen/ops/rsqrt_compositeexplicitautogradnonfunctional_dispatch.h,sha256=l1mem_aMqs_afxBZsDUbquO64zmkGlgV0Inlsb3AkME,863 +torch/include/ATen/ops/rsqrt_cpu_dispatch.h,sha256=GePx4o9SZLmTZbSjNcQ0qmxO0Q2Xk7cJXtkM1WLwXfg,950 +torch/include/ATen/ops/rsqrt_cuda_dispatch.h,sha256=P-o_2zmpROnucF19yGkY3JAyPK6T_zresWBsypd0SH4,952 +torch/include/ATen/ops/rsqrt_meta.h,sha256=ykRm6vvvAx3TD9uujiqvyyN8GDYaT3ED4kcMPXvnRYY,601 +torch/include/ATen/ops/rsqrt_meta_dispatch.h,sha256=2935-LHKnzpfRGNNw-vrcvsGeLA_meZe8MWXyZ2_Jw8,952 +torch/include/ATen/ops/rsqrt_native.h,sha256=kk3Mh45bxv4kV2YP6zTBQVglzNeBxUgicO-QzXBJPPs,616 +torch/include/ATen/ops/rsqrt_ops.h,sha256=ixQaAfTsDly3APpWaGG47kjwtD4_05OgWtSZOx0veKM,2064 +torch/include/ATen/ops/rsub.h,sha256=2JkJORkks9Za96r9ukVVkDYAYQMxYRmc4SKJiADB0xQ,2215 +torch/include/ATen/ops/rsub_compositeexplicitautograd_dispatch.h,sha256=9lzFdUliNLT73X6u57rafXkMb08gK00w_iz47v9F0dQ,1361 +torch/include/ATen/ops/rsub_cpu_dispatch.h,sha256=irEbnAGTq_Cn8Dz9pNEOBnKuDrifR2jqdA1i9TJszZw,795 +torch/include/ATen/ops/rsub_cuda_dispatch.h,sha256=lgqWSCQgBrVI8BHgevGCHRib_gRUt7EcGgeZ8gxeNCY,797 +torch/include/ATen/ops/rsub_native.h,sha256=NUtc-b6761x1sm9Vij9xsXRTGD7PXFRDiu0sLhydIB0,928 +torch/include/ATen/ops/rsub_ops.h,sha256=c3oU8BX1VslLQaHd6SalB5Zcb5WFA_da_-ggNpc3CdU,3432 +torch/include/ATen/ops/scalar_tensor.h,sha256=FsNox1NzDeTFvzED83aPJD2XzG1s_90fSxiCOt1DNFY,1754 +torch/include/ATen/ops/scalar_tensor_compositeexplicitautograd_dispatch.h,sha256=Rao6xrRx8xxMFu4RY3qN1dykkC82BznOhrOlWp0Qi54,1192 +torch/include/ATen/ops/scalar_tensor_native.h,sha256=0Eik6ePV-P8ldXYhCcrGFVH_PpIH7GwXfhxD78v92CU,741 +torch/include/ATen/ops/scalar_tensor_ops.h,sha256=-YORw98CBXvTteKkWCEOpZTZMx6HWnGSyTW1iDFjIqM,2083 +torch/include/ATen/ops/scaled_dot_product_attention.h,sha256=SywMr3lh2TgNJt2q3VWbSNMAelqauNiL7To5hFtHyQA,1150 +torch/include/ATen/ops/scaled_dot_product_attention_compositeimplicitautograd_dispatch.h,sha256=FASSQTwwOQdibzMz7gLkQOXY9ftotKerhb8OGJy0LvE,1023 +torch/include/ATen/ops/scaled_dot_product_attention_native.h,sha256=dANKnDD_FUB55ltsVjep64-EBEINCUvw42BHH6958t4,733 +torch/include/ATen/ops/scaled_dot_product_attention_ops.h,sha256=1w_yH_Xl6PB5GiFbI2v-2ltV6vNxQaULtgO4gqJb74A,1649 +torch/include/ATen/ops/scatter.h,sha256=0AQ5vgBoYWcdqOs7DRugnNSyKFlVusRRTkP0rpqIETM,5159 +torch/include/ATen/ops/scatter_add.h,sha256=Mt_cmQL8tqY9-ejLI8rYdDgzrygYfj0Jxk5iVCbKgGs,1732 +torch/include/ATen/ops/scatter_add_compositeexplicitautogradnonfunctional_dispatch.h,sha256=hFx7ZrOHsNpUAg3X7O0FpPh5_fU2av3tLId0W4Q9VeQ,1001 +torch/include/ATen/ops/scatter_add_compositeimplicitautograd_dispatch.h,sha256=plN1ytGq59571OExjIZcNEwX45tjGXkVBsQ5Kugk5ck,859 +torch/include/ATen/ops/scatter_add_cpu_dispatch.h,sha256=bksw10tFnUptBPKmIevIsRoQas2Pj1F-C5SIuA2QAL4,1226 +torch/include/ATen/ops/scatter_add_cuda_dispatch.h,sha256=FF_AWAbvyfw5fFWAMvDVucjl4kxAV6LK68rt-UQZMig,1228 +torch/include/ATen/ops/scatter_add_meta.h,sha256=xtX-SjbjmkqAXtqm-3p_rq-KySf3M-SNBhR6NQIPIVk,670 +torch/include/ATen/ops/scatter_add_meta_dispatch.h,sha256=xYEVlhTCzji49Kpi4QM_A3NTsT0aeziZxZS1gR697TI,1228 +torch/include/ATen/ops/scatter_add_native.h,sha256=9E-hTfs92pqPcV_WdppDBCq5vM7ft9DSAEQCYoVIHSk,820 +torch/include/ATen/ops/scatter_add_ops.h,sha256=ZNIcmog-qGykXw7bhnG-X2LNm72_8LIDH8DC-4I7jFk,3523 +torch/include/ATen/ops/scatter_compositeexplicitautogradnonfunctional_dispatch.h,sha256=sDtD6r_KDb4pV2Dk_-30-a-XQBXO7s5cJ9flXDIDDS0,1806 +torch/include/ATen/ops/scatter_compositeimplicitautograd_dispatch.h,sha256=BGdDFhMPmflHZKUBtPZbRk2K9jK6EkvtbiJ7U0nJhxQ,980 +torch/include/ATen/ops/scatter_cpu_dispatch.h,sha256=dHHW9SyFRFRg0SWf20hlFac7lsIsHim8VxeWKvJ4mSs,2992 +torch/include/ATen/ops/scatter_cuda_dispatch.h,sha256=CK92Em57PIW54wpf8qBNs2mze5w4mOo7N6rNu2vqe64,2994 +torch/include/ATen/ops/scatter_meta.h,sha256=p1KvYOv-b9N1oE_PPvchc6PR_Ia5BJw2EJgSx2r2HLU,1311 +torch/include/ATen/ops/scatter_meta_dispatch.h,sha256=QTgWFyR_a425NODLTH--hntLOTnB-8wxeOIIx9uQw0s,2994 +torch/include/ATen/ops/scatter_native.h,sha256=oxNsSK84NWt-XN76ivK6k1RdCoebvfH0oIwT8FDiT4U,1674 +torch/include/ATen/ops/scatter_ops.h,sha256=hlBRd2ZhSV4hDsv9w-CrQ6Nprc_wFNIEyfPK69QiGv8,11847 +torch/include/ATen/ops/scatter_reduce.h,sha256=YUr-95nNjbxFkqYguS1PFcOouH-l0CCNEbhtTdG3b-A,1811 +torch/include/ATen/ops/scatter_reduce_compositeexplicitautogradnonfunctional_dispatch.h,sha256=7ASqyPz7YoMfo0UTzi1Tf-4hd4niAV11d5hSt8kquN0,1105 +torch/include/ATen/ops/scatter_reduce_cpu_dispatch.h,sha256=qsbCWmuMD70tjMUIYRxSjxyQaeJRrlgHMPf51EUwWdE,1429 +torch/include/ATen/ops/scatter_reduce_cuda_dispatch.h,sha256=h_7clnLho8Q7RZO2tUe4HObZLVpGe8HLvS95LPiF6zw,1431 +torch/include/ATen/ops/scatter_reduce_meta.h,sha256=2t37y1easR4mYzGCp_NnS5ffrwMIShSUnJtwimMhI0A,721 +torch/include/ATen/ops/scatter_reduce_meta_dispatch.h,sha256=QexjL4BfAZFJ6sG0_1tndIECGFo57JvnQgX9UTkesFA,1431 +torch/include/ATen/ops/scatter_reduce_native.h,sha256=47Hye9q5nc-r4Z3fw7CGPrZDmU4ZR2cKLd2oHLbj5WY,754 +torch/include/ATen/ops/scatter_reduce_ops.h,sha256=C_c9MV5k_OKDgQjHlczwcNjMoESw7EcESK1qgpdoWSc,3259 +torch/include/ATen/ops/searchsorted.h,sha256=cvszUv-hFUIU3CoPWG6bwfe5sfIT5bwdHix4K2w2AMM,3694 +torch/include/ATen/ops/searchsorted_cpu_dispatch.h,sha256=eEL3a6obq8YIBVabk_kJ-y9c-PjRUjWpY3091i4KD-o,2160 +torch/include/ATen/ops/searchsorted_cuda_dispatch.h,sha256=d2aqY5TccIeNVfHEXFdIaIM6bRfhJeV1EdfsJpuSxSI,2162 +torch/include/ATen/ops/searchsorted_native.h,sha256=oIwJYrMOaJGWu_ALJ-KlRGw_8lPkiCpdIObXArI0Ei4,2366 +torch/include/ATen/ops/searchsorted_ops.h,sha256=RuEOrfoYnQKXI2rRM1Pv4GQr6HUunO14b4qchcfB5Hw,4839 +torch/include/ATen/ops/segment_reduce.h,sha256=eFULu3kS3gucgWV7jabvGNNVdmAhgrlrfkKIPrt8_s0,2453 +torch/include/ATen/ops/segment_reduce_compositeexplicitautograd_dispatch.h,sha256=DwlhdC6g58yw-5laa8ppIWUQzlCe6Ub4UNIL4KRWx4o,1403 +torch/include/ATen/ops/segment_reduce_cpu_dispatch.h,sha256=TVEnN8qkIciGgIAY1pDJYGkcohuGdR9-jCGPkIvyZiY,1015 +torch/include/ATen/ops/segment_reduce_cuda_dispatch.h,sha256=k2xKNQLoZ5xcOTHxXIVyLhrW1zmqmkQdJbAEXzm96nA,1017 +torch/include/ATen/ops/segment_reduce_native.h,sha256=7XFKVT5vRfUQu_YZQqwuto0AMoOE8-ItSagpd8a5_EY,1095 +torch/include/ATen/ops/segment_reduce_ops.h,sha256=iVUGkw5aWYwO09DMpyqlVZwgcfZ6JyuXOLLRLX6trCo,3166 +torch/include/ATen/ops/select.h,sha256=UDvB3_leZ7iODkmNgn2iDN6tc10RmTfJ6-2e1KDmqIw,1675 +torch/include/ATen/ops/select_backward.h,sha256=AOiuWVvcTA1fti5GeVOOiuBQuR6a2Opxmbpu-NTppA4,4900 +torch/include/ATen/ops/select_backward_compositeexplicitautograd_dispatch.h,sha256=Y8wVIf7YGWxdmxsJ8hvZ9z17lti7KR-nBpQ-Hbt5aVI,1372 +torch/include/ATen/ops/select_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=i95_jWByM6PQ9GAz3OpzPeawoa2UYXO1FeQmP0J-ZXw,1029 +torch/include/ATen/ops/select_backward_native.h,sha256=xUC_bm9rKrN3F-K4ZSFnUv4njIJs9o42SDBMV3-rzKY,752 +torch/include/ATen/ops/select_backward_ops.h,sha256=mK9AodLUf1T8SdOXjSupOHa0k-ZqWkH9k0WEdEQT4As,2095 +torch/include/ATen/ops/select_compositeexplicitautograd_dispatch.h,sha256=iIB-luWpV-QvqBoy4D9JHmM13_uDIdn9pa0P2fQNOWI,909 +torch/include/ATen/ops/select_compositeimplicitautograd_dispatch.h,sha256=hEZSEQ0w_rWfgU2qIS7FzfMYaPfnpQf9TkYZi4hSzM8,819 +torch/include/ATen/ops/select_copy.h,sha256=LnHXdBVKfYHLKv9UNr2HknK8GZ3-GfwSWmfIzG_PJ-o,3822 +torch/include/ATen/ops/select_copy_compositeexplicitautograd_dispatch.h,sha256=caDojXT-M_fcmyX7vX7IfF1oXZ_M516X0a4QnzmrSJI,1204 +torch/include/ATen/ops/select_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=rs8f-fgmRKCOfsGST6tyv8a2s-SZru09aSQlBZMOBJQ,945 +torch/include/ATen/ops/select_copy_native.h,sha256=9k7rRxTFVDIXJCQ__Np148VZZJ0tGhfHQ5WFWR3qIKs,767 +torch/include/ATen/ops/select_copy_ops.h,sha256=0P-DwAHOXGC603NOg5FIt-DBQcyjksxmub7I9rminYQ,1834 +torch/include/ATen/ops/select_native.h,sha256=6ExZUVuG8BqDbGs7D300EcAxCCoxo7MOQNstoIVcjjE,807 +torch/include/ATen/ops/select_ops.h,sha256=Y_AV0-z9-Ule9Q_uSwLNxM32yBJWAbVMXf72FupdBME,1738 +torch/include/ATen/ops/select_scatter.h,sha256=fgC2gPXp2NOLhuLcy9iQxpvi_ZWpXZ_GtwgcR102N4w,4263 +torch/include/ATen/ops/select_scatter_compositeexplicitautograd_dispatch.h,sha256=8ShJCdbJHHORah1ndh575akqsGNQPINvBBYDEsfbJa4,1312 +torch/include/ATen/ops/select_scatter_compositeexplicitautogradnonfunctional_dispatch.h,sha256=n2YQu7k-wO0oGuTo_zVWsBdN0IHdWy0wv4Vm1bL0Fxk,999 +torch/include/ATen/ops/select_scatter_native.h,sha256=UT2WhbyojPmVvQDAlSXTPUGQ1e8esL7F9AXd3fAzfyI,718 +torch/include/ATen/ops/select_scatter_ops.h,sha256=_yZvPQpCKCCN_VMBoYnsTgB2ChnDdMZ7CNWTNG4fBWc,1989 +torch/include/ATen/ops/selu.h,sha256=i1hOd8qnYMaGCL9xXJjEpIQDA-WetpWS6H_zYJ8Sm5c,777 +torch/include/ATen/ops/selu_compositeimplicitautograd_dispatch.h,sha256=nT2E4vcqiQzt9lg7CAfWyrIyxPF8auMDl5e3wFWGCEg,835 +torch/include/ATen/ops/selu_native.h,sha256=we_HpGftFuhEs2lPKBIGNEB7V7p-JiG_I1A5d9cNIAs,545 +torch/include/ATen/ops/selu_ops.h,sha256=Xbvi3QaAzZcamLPINoQGIhjavKb_7SEzNmBBh0Z_O5g,1460 +torch/include/ATen/ops/set.h,sha256=rl15OGw4XudmrcEjg2OqMXfN3cZB2xpK6qch__cLp9g,9348 +torch/include/ATen/ops/set_compositeexplicitautograd_dispatch.h,sha256=Kt-Euf2J5DU1-meA2Jnq5PRorFvflpvmvjAsgwc8xyc,2507 +torch/include/ATen/ops/set_compositeimplicitautograd_dispatch.h,sha256=PYvyFsbyLBxGWDQ7RrkKHzbf1ihcpb7hbV9a8uLt0sg,1049 +torch/include/ATen/ops/set_cpu_dispatch.h,sha256=Who8oSiMtiQ6j9xO71zkDgLdlWOSz7mC8p-q8y2hVV0,1185 +torch/include/ATen/ops/set_cuda_dispatch.h,sha256=IqEyt87MRnBWBGwov6q3n-tSP93Gw8qiGiuMqylcD8g,1187 +torch/include/ATen/ops/set_data.h,sha256=D_zt93jv_CAh4K00rcY21e7DXK-cuiIg2mSgoqhZqGU,508 +torch/include/ATen/ops/set_data_compositeimplicitautograd_dispatch.h,sha256=EIQk67In4TuRySETNt2AO4Aw5ZTFQsu5JhZxH1QB8kY,806 +torch/include/ATen/ops/set_data_native.h,sha256=UzJAKiJsnYsJ3wIHdqxfmm34HXpFjapgmLFENlbUgGQ,516 +torch/include/ATen/ops/set_data_ops.h,sha256=WmR7zCGM6etqVk-m6kKDpm4pkLKEIGh0lv71iE8i42A,1027 +torch/include/ATen/ops/set_meta_dispatch.h,sha256=JLs2gmZ1qej7u3Q4GSO-ZG9uuX4_bHSSjHNaS8YL8_0,1187 +torch/include/ATen/ops/set_native.h,sha256=pgtRlSLxR37j8oSzX91w0W8l3gMrrmtdhXqLtOilTR4,2452 +torch/include/ATen/ops/set_ops.h,sha256=KSN9ioeio0nLVPq4Ug3tC_gI5N9_j_hgm5dhnLLeDhI,9821 +torch/include/ATen/ops/sgn.h,sha256=atneIiRHxPsXxsdS8gRVt2yG1l0a4-E7AGxAKIYpjKg,1013 +torch/include/ATen/ops/sgn_compositeexplicitautogradnonfunctional_dispatch.h,sha256=pGWfDhE4fs1m91TWDUKYFNmkXXjozs04EFY-ebb5wqc,859 +torch/include/ATen/ops/sgn_cpu_dispatch.h,sha256=seBrTjeyfY1tVRS8n4u2BnyqixBa6pAbIxgmQ3_Y8M8,942 +torch/include/ATen/ops/sgn_cuda_dispatch.h,sha256=--BS9N162Q09rgwWK0493czXryDwZFaurpGILhdKDtw,944 +torch/include/ATen/ops/sgn_meta.h,sha256=lrJmxNFFK0hEewwa0uH-Y3JkD6yHPXr3FBXJYnwNgjU,599 +torch/include/ATen/ops/sgn_meta_dispatch.h,sha256=MJo8OB8xdY1g_Zv6wZYNVr5Edekj22N4Ig4EX7DmAeE,944 +torch/include/ATen/ops/sgn_native.h,sha256=pEF--F2LaJ_0IcKoeOunOygUoEDieVsvBmGMKUpCDyo,1145 +torch/include/ATen/ops/sgn_ops.h,sha256=EJOFmtVxtr5rqBJpM3tjFrhYEo99lrOwi3lZoaISk_Q,2046 +torch/include/ATen/ops/sigmoid.h,sha256=a69PujisG1N1u-DslLGaRvUV6qlu1b_KSmycOdjDlDs,1203 +torch/include/ATen/ops/sigmoid_backward.h,sha256=6CWuPzcwi2TxilFw-aF2YldP-VDAYeL5gVeT1KjbKU0,1426 +torch/include/ATen/ops/sigmoid_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=42GDXAs3SCt_yepmTvlq6WO5RAnBLBGrRbMhajZaYxE,857 +torch/include/ATen/ops/sigmoid_backward_cpu_dispatch.h,sha256=HAPrWsfGIt8B3zSq0Tec3MpGZPYb3mgUF6u8kn64t88,1048 +torch/include/ATen/ops/sigmoid_backward_cuda_dispatch.h,sha256=3Ubuhsqn9or07XJ7svk0CXTyPxuVEFT_LQXTpotsFdI,1050 +torch/include/ATen/ops/sigmoid_backward_meta.h,sha256=JobOhxbNAtpqOlOUE84ABj0FFT0RhuUjBMpPdj6gWas,646 +torch/include/ATen/ops/sigmoid_backward_meta_dispatch.h,sha256=XGBhGd-kEj4akQJ8gS6BndioRUALbI1eB6I9uNp7eEw,1050 +torch/include/ATen/ops/sigmoid_backward_native.h,sha256=g2soqpGMhl2dFb0SpmMR0JVDhN5juIeY9lZPKtWnaQI,690 +torch/include/ATen/ops/sigmoid_backward_ops.h,sha256=4kZI3dRizZ4GIgeJhMp4TYj2NEaTxvLVreQ4yBgkW1c,1885 +torch/include/ATen/ops/sigmoid_compositeexplicitautogradnonfunctional_dispatch.h,sha256=FfAj29uB7rzgoAJwFWEodwa-g1rgAKdpCUYfVNH83nQ,867 +torch/include/ATen/ops/sigmoid_cpu_dispatch.h,sha256=zS_UWwaVs8oS-1eHcdEyeQ2ShQG7hgWW-xI72Gqkw7U,958 +torch/include/ATen/ops/sigmoid_cuda_dispatch.h,sha256=0vHCWe5GNB8uzU4u08S7GacsUFUDZ07aCgn7kCtAF84,960 +torch/include/ATen/ops/sigmoid_meta.h,sha256=uQCLMhjmLTXQNkuwH7R3Hj_0vCVHAzmquyCGl4CfGXQ,603 +torch/include/ATen/ops/sigmoid_meta_dispatch.h,sha256=fIbjpruY-l5wjzLT_z-yfSUc1jWmwoACNeqwaz-7aAs,960 +torch/include/ATen/ops/sigmoid_native.h,sha256=N9UfY47FiC2m5iyJ898CjBN1dmzy-Q9PxiN0jtJX8PM,815 +torch/include/ATen/ops/sigmoid_ops.h,sha256=YUzEZtBG2Y5YjKkVevGDgFtkq2z7dCN6Gm0_dCXOa8k,2082 +torch/include/ATen/ops/sign.h,sha256=zC0b9h8_jO9JYSqt8siVsjl30i-c_gCu0YzTzwEt5x0,1023 +torch/include/ATen/ops/sign_compositeexplicitautogradnonfunctional_dispatch.h,sha256=AnBZXob5ALWDtzx4eiR_uP5hMhc1XLfzoD3sjzR9ous,861 +torch/include/ATen/ops/sign_cpu_dispatch.h,sha256=oDa1M77F6eKBD5nVA7wjJTOqjWAhI6CtYIChfib_zXk,946 +torch/include/ATen/ops/sign_cuda_dispatch.h,sha256=PJUqmBKPFTY-AenlW-4F9Yi7oOxPDOCry8WDyj3hSBs,948 +torch/include/ATen/ops/sign_meta.h,sha256=m93iqvYsfsagOiq21SdiggwUPOIxIj71KP4NUMzOvQM,600 +torch/include/ATen/ops/sign_meta_dispatch.h,sha256=aSqGVPDn6xbyq-u7a-HHOMtsxrNfahlmGDgkdDlnRBI,948 +torch/include/ATen/ops/sign_native.h,sha256=LMNowOtX6HpbhcR_eX4vv-9WzCxG7Z9ks5QAp2w664c,1027 +torch/include/ATen/ops/sign_ops.h,sha256=LgYYP9Pjf9leXF7KflqsuhCIlJDi8IA8K0Nyy5McZNI,2055 +torch/include/ATen/ops/signbit.h,sha256=nSoRPBgYcmh2wEtQNXIoigaCceMbe_LpG2Drmgoij7o,1053 +torch/include/ATen/ops/signbit_compositeexplicitautogradnonfunctional_dispatch.h,sha256=kKkf6NEQlaKGRzulQrVAhF9ZWhjI6rj-jYbaLwOkq9M,814 +torch/include/ATen/ops/signbit_cpu_dispatch.h,sha256=qkGA6e4o6la4M0065hToJVhaRy_iI-dadLcoRVV2DGs,905 +torch/include/ATen/ops/signbit_cuda_dispatch.h,sha256=x17JnaigaUK4m7C7tcBt3Aybh8P89HVYZevbxkNsJTc,907 +torch/include/ATen/ops/signbit_meta.h,sha256=2dhoEdhczA-_GcbqMZiTf6mRgujvjqA32kCkm5nIkGU,603 +torch/include/ATen/ops/signbit_meta_dispatch.h,sha256=nTr-bE0pB6hspIiVh8E9BCePbZsXu12fYqA_UQ4onm8,907 +torch/include/ATen/ops/signbit_native.h,sha256=X84CpnbwvbCC0nNpg2hDOcDk4IKD-KJOUX1LAZsfYpQ,930 +torch/include/ATen/ops/signbit_ops.h,sha256=8nNUpxaNBQB65hYMcmtgvOJgySwW9oFaIRkG1NvxTN0,1569 +torch/include/ATen/ops/silu.h,sha256=meyLZsZWK891mfxX5ifJOl2C02Oep_S7Z5gHIaCGbtY,1164 +torch/include/ATen/ops/silu_backward.h,sha256=obZynfYPaksLwmy1ERdmISfcv2NgpjinQYZ8LjGV_Z4,1378 +torch/include/ATen/ops/silu_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=WDQWAKpJvS5IRD5_OHuriYHqdmUi_ptO4LCRA0ch1D0,852 +torch/include/ATen/ops/silu_backward_compositeimplicitautograd_dispatch.h,sha256=M2KdmsuX_Om2MTHEmEOdptwcVur1Nj4wdO7hMmG-FMQ,826 +torch/include/ATen/ops/silu_backward_cpu_dispatch.h,sha256=6X-0w_-no5bxw0soCFV5kUAEejP1X4X0AFt53dsmIVY,1033 +torch/include/ATen/ops/silu_backward_cuda_dispatch.h,sha256=hLG28Pe4xw-U1EqTb-8_NmAW1Rp-DzGMu1PclYRO2fA,1035 +torch/include/ATen/ops/silu_backward_meta.h,sha256=4FJQsva5uEMRYnGvpGsvjaZTva-9TpcO8fv4Pi06Y6c,641 +torch/include/ATen/ops/silu_backward_meta_dispatch.h,sha256=f3i3UBNc2kZe-t5G0rI8ToVoWHCaQzhmzsa3CLz8PYk,1035 +torch/include/ATen/ops/silu_backward_native.h,sha256=G5YlEMK-MTPi3uGbj2dShepj0ITwqSLvcCQEFKFrw6Y,879 +torch/include/ATen/ops/silu_backward_ops.h,sha256=fWoq0J0-0JjZlhzXao009EAuc5YCG0L_fazNN4HzmcE,1855 +torch/include/ATen/ops/silu_compositeexplicitautogradnonfunctional_dispatch.h,sha256=KYlf324Dl5Ubv0YSFCHqw7kHsrDZtbwTVXmv3AgUQdk,861 +torch/include/ATen/ops/silu_cpu_dispatch.h,sha256=VVVytfdv2ozfh6FOdE6WsYB0mnKNDwZBRaZmHjChUak,946 +torch/include/ATen/ops/silu_cuda_dispatch.h,sha256=JW9B2cFf2HwVpfrHc4gMOjN6omnH3KDgQTsIrnjc71o,948 +torch/include/ATen/ops/silu_meta.h,sha256=d7Vgclo6demWlzusp-C-keR3iVBovb1Z6jObutn2s2I,600 +torch/include/ATen/ops/silu_meta_dispatch.h,sha256=OFG_xdztLHQ3jjodKRT-mkwp_flc1wtHAd7gdSh5q7g,948 +torch/include/ATen/ops/silu_native.h,sha256=KiyoPbzDX_yD2xF3AItJOsaIIE6p_JUNPpVivBnYzRA,742 +torch/include/ATen/ops/silu_ops.h,sha256=3SfwEMJwaBCcGwqlslOvZBbpviGRm8YvxOhwDoYAmjA,2055 +torch/include/ATen/ops/sin.h,sha256=LEUVyz7OwVNROTh4l2_AY7x2OYUw8HRaGsczwLl4h9g,1151 +torch/include/ATen/ops/sin_compositeexplicitautogradnonfunctional_dispatch.h,sha256=cnq9P9Vnz2au5qnpyE7ijvoevE4cZaphR14UWRpiruI,859 +torch/include/ATen/ops/sin_cpu_dispatch.h,sha256=Nj7xfYwSi6fbQYi0OAwthr1-O-qoDX21yVSNDi1W36E,942 +torch/include/ATen/ops/sin_cuda_dispatch.h,sha256=L_S8610gXfg-Yy-7oK1Y7bAADRLiMEMhPACyxArpWv4,944 +torch/include/ATen/ops/sin_meta.h,sha256=JSJVahrZHrAWgF7EH7X1ZZEiDzFdGjuV9WQ7vvbPd9w,599 +torch/include/ATen/ops/sin_meta_dispatch.h,sha256=aX5zQysyspQGluhVAGFAcoxUytjkwRNAXH-U-hgugoA,944 +torch/include/ATen/ops/sin_native.h,sha256=stYK0sVlFZuFPpEQwDYzrta1t-uyYdOdeO3pRjLnVe0,1083 +torch/include/ATen/ops/sin_ops.h,sha256=8DUOk_sCAGItDu8Zj_qK2XwDWpyahSw5VDmfdRqBbl4,2046 +torch/include/ATen/ops/sinc.h,sha256=NW6pB7lq73nfgjySzdJXqiKeNnoV8NSHPGpp3LzMF9o,1164 +torch/include/ATen/ops/sinc_compositeexplicitautogradnonfunctional_dispatch.h,sha256=10fQqH2382lL_kVUYmIRrUT8dt_9JTQ7rbWe8kEQImg,861 +torch/include/ATen/ops/sinc_cpu_dispatch.h,sha256=VShegRl72ajRWh8ThOGtiRLSsZA2K4vTD0YSLLxT-SY,946 +torch/include/ATen/ops/sinc_cuda_dispatch.h,sha256=aMhBlVquVEAx9WekdypmZnFcf-5wx44OVjG0Gx8F3Oc,948 +torch/include/ATen/ops/sinc_meta.h,sha256=zOPLcOgUOWFZnZ8dx_v0xwAuQveb1m1QE6IRsHk8OgA,600 +torch/include/ATen/ops/sinc_meta_dispatch.h,sha256=ADndZIdsYR9ZrGqGuXe_4U2eCPIdD7VZYc36UQdcxW0,948 +torch/include/ATen/ops/sinc_native.h,sha256=oVq3v7XARRZu_Mok-d6X-nnNWm9a7-k6I65h7kuOCQE,613 +torch/include/ATen/ops/sinc_ops.h,sha256=RKGJ35yfSFi-bNz79qsrDhxYq5rE7ZbafqfB7K6oYnc,2055 +torch/include/ATen/ops/sinh.h,sha256=tfvcOCyjA-lf5Gveow8LR0dK8OoX9MwpC8XjcU2JBdc,1164 +torch/include/ATen/ops/sinh_compositeexplicitautogradnonfunctional_dispatch.h,sha256=TvOtiln_zo6hHlDxbFan8sKTIb3aujOhT5EhMPJGWnY,861 +torch/include/ATen/ops/sinh_cpu_dispatch.h,sha256=3dBxH4yZtunoGa8Krfiw5H-u4W9JwIjbInyfEiaAVic,946 +torch/include/ATen/ops/sinh_cuda_dispatch.h,sha256=0jlG3zlN_vP8_UOQ6x1GvhsjXKDqsueJ-CzwEyS3F2M,948 +torch/include/ATen/ops/sinh_meta.h,sha256=I5RbecuM4bndIT3BWBblzb4b9mmiO8Nl1HbduWxUXVA,600 +torch/include/ATen/ops/sinh_meta_dispatch.h,sha256=_NdcKiIcVyAtnGiNaOPg9yLpE0-PyKpt9v1fC4a54MU,948 +torch/include/ATen/ops/sinh_native.h,sha256=fhw2ULdDy61Hf74S3LWxpDBWLMrjjQ6ILBiBNU5EA5M,1027 +torch/include/ATen/ops/sinh_ops.h,sha256=FizTdc2iL0wkBUpH5dcdKLykv4qgHQHuczFcwpjPYE8,2055 +torch/include/ATen/ops/size.h,sha256=oo4leVdLmpNwh-MstKIrahQIji04-ViX8_p_QepEqZs,855 +torch/include/ATen/ops/size_compositeimplicitautograd_dispatch.h,sha256=YDVhtU-Cvf84yZDS9Nff5Vlm8YikwrAzyuf2rN57BOY,862 +torch/include/ATen/ops/size_native.h,sha256=sm3YmpyzCKupefd5_CARwXv9YyzxkaGKp0loFY28EOI,572 +torch/include/ATen/ops/size_ops.h,sha256=gpCjW3m92SgJYOwIkQPhC544Nc5_t2G8xXnedVldF34,1575 +torch/include/ATen/ops/slice.h,sha256=W5xiStNfhgTO60SFZR2j0fS9o721c8QCRJ2Y8YK1g00,2262 +torch/include/ATen/ops/slice_backward.h,sha256=pbu2gk_GFrj3VHWRAEYO4kO0PxcgBPj1CFcyGpSxGPo,5523 +torch/include/ATen/ops/slice_backward_compositeexplicitautograd_dispatch.h,sha256=j0gMzryZEjUnSmpMPwKYPnzDl6Tg6ll3o5Y_QN2h_E8,1823 +torch/include/ATen/ops/slice_backward_native.h,sha256=O2vMibLyNNZWY8mwEpU1ldabeHRuM4u7g3qpBnsMNZA,797 +torch/include/ATen/ops/slice_backward_ops.h,sha256=3WBdWJbnMnCr9ZYOKJ8r6he09kAxdgICC4ks6EXWbNg,2331 +torch/include/ATen/ops/slice_compositeexplicitautograd_dispatch.h,sha256=O5EfT3h-5LWs2WSYu6HyxqEA4gyMoV5LoDBSrgPaXAM,1105 +torch/include/ATen/ops/slice_copy.h,sha256=-l04xpBl_PxF2zJxGMdRfp-MOJOsanARsbEJUIVofos,6139 +torch/include/ATen/ops/slice_copy_compositeexplicitautograd_dispatch.h,sha256=Qy-8D8M7aXnyhqMag6NbdNvSzmElSCc_4UZc-6caZzo,1528 +torch/include/ATen/ops/slice_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=rZI0WMrk2oPm2x4VHimocrW04Gl6rEg2FrwqBXSNV9s,1141 +torch/include/ATen/ops/slice_copy_native.h,sha256=ydbr3_0fUqt7e30cN4bFBsazHXM3ftcp5CuwHyrr-gw,848 +torch/include/ATen/ops/slice_copy_ops.h,sha256=CB5iutojNjY4TOwTx6TukV_ebAPpkKrH0VMi0IeqnS4,2324 +torch/include/ATen/ops/slice_inverse.h,sha256=Xr0s5aRyJUzMg7mMeEDtV2gdgKYYDQBsjp4W0CNzhiA,2448 +torch/include/ATen/ops/slice_inverse_compositeexplicitautograd_dispatch.h,sha256=PSLGj5I2d6wdKxxeMWYY1Zz_YAU3xkGetoq4YsydepI,1169 +torch/include/ATen/ops/slice_inverse_native.h,sha256=zwEUS0Zj_vw6IWzIB7dJFRKKu6861p9t-JeE5wR8pCw,670 +torch/include/ATen/ops/slice_inverse_ops.h,sha256=DGqIeVn70Bsu3YlY0VsAa-OVUfZKpnedtRUJdnmAYwI,1417 +torch/include/ATen/ops/slice_native.h,sha256=xmBqiWhcTKJQG6qqYOnkKGVPAzPVPfAGRT2LOLi5Apc,619 +torch/include/ATen/ops/slice_ops.h,sha256=tvnuqMn2a4_d9amogPXUnZOrhI7oy1JeP2WDRgrYD9g,1333 +torch/include/ATen/ops/slice_scatter.h,sha256=yVKDT4VOMcBcmnJRVJUGeI1R3HhPA9HcKok46Q3nAZk,6526 +torch/include/ATen/ops/slice_scatter_compositeexplicitautograd_dispatch.h,sha256=QSYvdbAfg2nVW5MESrWdhrLq6BTV4_d1YRL0qi3Tt1M,1636 +torch/include/ATen/ops/slice_scatter_compositeexplicitautogradnonfunctional_dispatch.h,sha256=KBpi-oxq8ojk0eVgtVoKbQhGKmEyv8Olh3HVC2SauCE,1195 +torch/include/ATen/ops/slice_scatter_native.h,sha256=OLBGLeYNqmDG9WvsQ7n6ieu5TqHwU2SzHC7KngMc3WU,869 +torch/include/ATen/ops/slice_scatter_ops.h,sha256=S0wNbYFX8S0YzlAxt20erWpRYEmVAkWuNLyAoFYFuBU,2461 +torch/include/ATen/ops/slogdet.h,sha256=xb7s6qqPjEHCSA-t-g3ys1YrRAOPzMGDSSdZVQXuS-k,1335 +torch/include/ATen/ops/slogdet_compositeimplicitautograd_dispatch.h,sha256=9RfMj5L5LEmhPb6Sf8QeN4rvur645HGMZbeTkZMxIbs,1078 +torch/include/ATen/ops/slogdet_native.h,sha256=bC7wMsDWYbWRspVXQZ0VjfIH1wF_r5MnRVlVHMqjWpw,655 +torch/include/ATen/ops/slogdet_ops.h,sha256=C_EOi3wZklgk5LGiE9YdsQgF6kwZT80Xht1ya1CsRoA,1866 +torch/include/ATen/ops/slow_conv3d.h,sha256=a-Y28k9on_nM3uwagy5f-7QbHTb3_zvk_GhqKFSQ3N4,6688 +torch/include/ATen/ops/slow_conv3d_compositeimplicitautograd_dispatch.h,sha256=PQS3mzlMvibAJLziIsywSom2Y1HIZ9J2hQfsQp8q9ag,2209 +torch/include/ATen/ops/slow_conv3d_forward.h,sha256=sbsZAs3BOqqzHZZ53X-hZmldUt0JpQPoi-ipxsFR_PM,6818 +torch/include/ATen/ops/slow_conv3d_forward_cpu_dispatch.h,sha256=IUFa_5bokTc2ab1WHRrrzM8e6foEqt-DsU9OAutI7Uk,2145 +torch/include/ATen/ops/slow_conv3d_forward_native.h,sha256=spLemcAair5xcyJoPBX1q1bkjI87Ns2WyDS8viQCHbU,907 +torch/include/ATen/ops/slow_conv3d_forward_ops.h,sha256=1suS5VGDbpciADF8paMK-2l16R6BUhWgVRArMutejGs,2713 +torch/include/ATen/ops/slow_conv3d_native.h,sha256=Q-HYVHv4mLEYxFLfSUia7ztkeD4pwjJBoxkCMOXtVrA,887 +torch/include/ATen/ops/slow_conv3d_ops.h,sha256=6LHzmFy6moXpVA1ZX5Jy6a38s2arsi37tHMw6Egx1vc,2665 +torch/include/ATen/ops/slow_conv_dilated2d.h,sha256=LBIUKDDrz6E19cDH2fnE5u0cSnliytGBBmAu1X-7j3c,7748 +torch/include/ATen/ops/slow_conv_dilated2d_compositeexplicitautograd_dispatch.h,sha256=Cc_92NcXIMdUwkDTx4PN7bnvJkLXuMH15sDgtT7sJfw,1897 +torch/include/ATen/ops/slow_conv_dilated2d_cpu_dispatch.h,sha256=VofbzGb39PBdV0HkyHneEz-vS7o9wShuhAleZGIE7-Y,1250 +torch/include/ATen/ops/slow_conv_dilated2d_cuda_dispatch.h,sha256=KVcTtmcrF9ubVzHP7SK70BPxwyCIvL21lNEYrSsQwe4,1252 +torch/include/ATen/ops/slow_conv_dilated2d_native.h,sha256=xWC2gPUeX1flJwx56AZldl5dJs3s-qX9gMZkxCX2Zns,1239 +torch/include/ATen/ops/slow_conv_dilated2d_ops.h,sha256=R7qDS10OhYV0Hz6Sa4pVbqfBgop3_n3l3RwCP2H8u_U,2919 +torch/include/ATen/ops/slow_conv_dilated3d.h,sha256=fYXxVIyruYsvlad9fUlLthXLB16wnv9HjABFR6jxI9w,7748 +torch/include/ATen/ops/slow_conv_dilated3d_compositeexplicitautograd_dispatch.h,sha256=d4Y5DRvuGb8AYJg3aUlTpJZM-dQ-SpACH8rMD2_li78,1897 +torch/include/ATen/ops/slow_conv_dilated3d_cpu_dispatch.h,sha256=yipL5yhxgEcjpSrdIbctuOj8uEMUK0D9TrLr7FZKX9Y,1250 +torch/include/ATen/ops/slow_conv_dilated3d_cuda_dispatch.h,sha256=E6QM7xm2A9lPMZT7PSOmXL2MmFpXv4JmdChN1xhRt1c,1252 +torch/include/ATen/ops/slow_conv_dilated3d_native.h,sha256=8PnLL7vHZYpmihmgNOwgdmdh-MYwQFS3GHdhly7ja28,1239 +torch/include/ATen/ops/slow_conv_dilated3d_ops.h,sha256=W-8DqO6SufqKWX8LrGP0pO2ecALLbydnigIt7adxFYE,2919 +torch/include/ATen/ops/slow_conv_transpose2d.h,sha256=yrgI3YniNL-2AfNjWSWlFAZclASHli81tAjbtGOxnX8,8802 +torch/include/ATen/ops/slow_conv_transpose2d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=YeTE5ZM5NY4c2tNr_1YQDz4N6G12TvtWEIcpp9YLwAM,1409 +torch/include/ATen/ops/slow_conv_transpose2d_cpu_dispatch.h,sha256=nTYWQyu19B3-2pXyWLSwHCd6FjR6_It-NP-yW6oGevM,2665 +torch/include/ATen/ops/slow_conv_transpose2d_cuda_dispatch.h,sha256=IP4LBA_wstWz27hEzkfQbDtSzae4Q5qNirYlrQN2_rk,2667 +torch/include/ATen/ops/slow_conv_transpose2d_meta.h,sha256=Z_JeYG-X_1dSTtuaTXtOLj5T862dlDD5lItZipijfH4,838 +torch/include/ATen/ops/slow_conv_transpose2d_meta_dispatch.h,sha256=jBljmP5hB5IEhiQ5Iqzc4lEOXIle2xM8qWZaNzAywaA,2667 +torch/include/ATen/ops/slow_conv_transpose2d_native.h,sha256=wb-4wYdq_-MKWzgUMbRl8hTK12TTz2gkGq1onlQRp9Y,1303 +torch/include/ATen/ops/slow_conv_transpose2d_ops.h,sha256=TBU1ZaYGa2AqS7Sgit9U-O7onSrqV59_jLYwtIeTQQo,3173 +torch/include/ATen/ops/slow_conv_transpose3d.h,sha256=ze74SR5U7z0CAMbsVZ5PrNZ9ZH0Gr4mb93gRQs5IsNo,8802 +torch/include/ATen/ops/slow_conv_transpose3d_cpu_dispatch.h,sha256=Zc94BANrG5M65FWjA8CT6XoZD6bFyAOKRcBj7n-70l4,2665 +torch/include/ATen/ops/slow_conv_transpose3d_cuda_dispatch.h,sha256=xJv1IVvAf-2KcLf0_bPU5QjqXlq16zygxKvAmcVA_v8,2667 +torch/include/ATen/ops/slow_conv_transpose3d_native.h,sha256=U6wfcLGky_qVbZ-1PNCJZik8qY7ztk60m5yil0OyNBA,1630 +torch/include/ATen/ops/slow_conv_transpose3d_ops.h,sha256=GGy1I_gR8iACnFcMoVCIx2HsZ0xMFc5EqKrgswu0as4,3173 +torch/include/ATen/ops/smm.h,sha256=Ci3D_bp_j78VmQon_azh8iw2HfkvYetZn4QLBKR4EsI,676 +torch/include/ATen/ops/smm_compositeimplicitautograd_dispatch.h,sha256=H5EKA1qMBjbEedUixyhLaLo4OXfXrLVanvt-zjR4c-c,809 +torch/include/ATen/ops/smm_native.h,sha256=X3sRMNUC7N_9GqkNPr_6lq-GDVC_uyGdEEEra8Xo8PU,519 +torch/include/ATen/ops/smm_ops.h,sha256=yqUqI2v7N2h9mhOUsXloMBNbR0lDjQfdHNFQvwJo4XM,1036 +torch/include/ATen/ops/smooth_l1_loss.h,sha256=y0xnY-eGfLRLJuwPJKQYVvy4h3amtDqdBivkF8d3Dmg,1576 +torch/include/ATen/ops/smooth_l1_loss_backward.h,sha256=8Q-NeTYOt_Mg6qbEBDdnN805000Ezoka2YrhjRdmyQA,1856 +torch/include/ATen/ops/smooth_l1_loss_backward_compositeexplicitautograd_dispatch.h,sha256=b3SH5E_yTpekwRVXxlVh26pNpe-krvSb5lORv52RByQ,895 +torch/include/ATen/ops/smooth_l1_loss_backward_cpu_dispatch.h,sha256=4No7vocgq616BUYLkXPGzr9zvNI8csE3mcvEARGd3pU,1077 +torch/include/ATen/ops/smooth_l1_loss_backward_cuda_dispatch.h,sha256=oBSQFUP4fDG84-NAh_AVAYWsqITscYvHnMAf8NbwL8E,1079 +torch/include/ATen/ops/smooth_l1_loss_backward_native.h,sha256=aU2c3TwtYMAWsRuG29ODktwPhHqSku4ViXAl6TPJuDk,799 +torch/include/ATen/ops/smooth_l1_loss_backward_ops.h,sha256=KaKlTCpo4zZl5cBVvwTtf1-heoX_IMlUGYp-gYVnKvY,2309 +torch/include/ATen/ops/smooth_l1_loss_compositeexplicitautogradnonfunctional_dispatch.h,sha256=X54sGX8vSXKvCfFu1F0IGj1oh0P5BQl7DegrJh16WSE,904 +torch/include/ATen/ops/smooth_l1_loss_cpu_dispatch.h,sha256=RyZvulnhfDQ7jPb0kfjXwG3lajx8_FYBSLCQdXLRx7k,1151 +torch/include/ATen/ops/smooth_l1_loss_cuda_dispatch.h,sha256=zfYOK9mcV6jtT1DtMozXHWXnptnkK6T7OAog64VHHug,1153 +torch/include/ATen/ops/smooth_l1_loss_meta.h,sha256=4gh857HRPY0EENWmSS2W2_bAMjGkBBLOMMkRGG0sQnY,669 +torch/include/ATen/ops/smooth_l1_loss_meta_dispatch.h,sha256=sROiG49UogJcWLDhqYJiEOF_kwBT2aiIDkqDUgKIwJ8,1153 +torch/include/ATen/ops/smooth_l1_loss_native.h,sha256=m7eSQwL9MC38CtXzJzo3b0fxS0HqNb9olQ1gr3Nd038,702 +torch/include/ATen/ops/smooth_l1_loss_ops.h,sha256=rDi6Ss3iRUA-ra7KofMNbY80_LazMxlDUn-MLHpm7TA,2023 +torch/include/ATen/ops/soft_margin_loss.h,sha256=cZb4-Uyx3ItbVnjC9d8W3aDb4eQhKrqF3QHhm1nvaQ0,1483 +torch/include/ATen/ops/soft_margin_loss_backward.h,sha256=M2HQ2AMNsYNL7iFaQ8pl3lG8NosQsvtiiJV5PMIL0GA,1783 +torch/include/ATen/ops/soft_margin_loss_backward_compositeexplicitautograd_dispatch.h,sha256=Xinuqb9JVo3ulOPyB3nk5aaG_pHSj6t5NHPE9_IXdDw,1251 +torch/include/ATen/ops/soft_margin_loss_backward_native.h,sha256=Dpb1OwNn_vPakDVrzod5ZLI3UmCbL8mW3PFpTM4iUx0,777 +torch/include/ATen/ops/soft_margin_loss_backward_ops.h,sha256=ohnQNrmZvh-v_LojhOZZtD26-fbyyQwJaCEzYTH0sG4,2229 +torch/include/ATen/ops/soft_margin_loss_compositeexplicitautograd_dispatch.h,sha256=28lPz-uwng0aUtuC400EL_Uqkr__iKoWQskPbB6elu0,1154 +torch/include/ATen/ops/soft_margin_loss_native.h,sha256=Gdp3hAZ_AFZMKH2yXWEZNOjY98elyl7P4C1FUDXpmaA,708 +torch/include/ATen/ops/soft_margin_loss_ops.h,sha256=2h4E8IxHoe3ilBFbOVn2FwVaqbpt7fPFF3lAYfqAYuE,1935 +torch/include/ATen/ops/softmax.h,sha256=FH-Chyhwi_XcTTM37KV_28HUxYp7p_cuBBixzl6HCHU,1680 +torch/include/ATen/ops/softmax_compositeexplicitautograd_dispatch.h,sha256=8UfWBlYHfb7dLmyZs4sintXvpcRPzK4N4Isr-SwNB2o,1012 +torch/include/ATen/ops/softmax_compositeimplicitautograd_dispatch.h,sha256=KEtFpx3k7Zc0a2u2Eev9Bxtvc15kASVwecQn64Q-yCE,982 +torch/include/ATen/ops/softmax_native.h,sha256=uX5jDx8OCmZ5bJKWVagCTO3iJ629umG1L3zG7rRgDgo,824 +torch/include/ATen/ops/softmax_ops.h,sha256=MZLRLf4DFZY2bqJ54zFz-vt7EiqjrcQQiFWd9CAyFPQ,2685 +torch/include/ATen/ops/softplus.h,sha256=HQCDLsudLZYusx_SUTOxc2pI0BjNnpX6EkO7dBQ-d_c,1397 +torch/include/ATen/ops/softplus_backward.h,sha256=xGLjMmZwBWfp6ZMfwxjqLJe4cjBEsWgYU7Zfv6mj91Y,1727 +torch/include/ATen/ops/softplus_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=jHCzG-UIFlWHsnobwepMox8pesK8XTCKfMqWDjC2dPE,911 +torch/include/ATen/ops/softplus_backward_cpu_dispatch.h,sha256=flEvb3ak-jp93nUW_0mg89xaAT8yba8FgaXhnq7MYXg,1210 +torch/include/ATen/ops/softplus_backward_cuda_dispatch.h,sha256=YX7lbRJtljm91oqPRkl6j7lc93jX6iHx24zF6lrFRTM,1212 +torch/include/ATen/ops/softplus_backward_meta.h,sha256=a_dFtaw1CHDGFI0ciNvw1tkCXaEmM9RXXwSwIxpZWig,700 +torch/include/ATen/ops/softplus_backward_meta_dispatch.h,sha256=gAlrKDXX6Fr3vmF4JZoZJ9hCZyYOSIek5qqaFRBYVqI,1212 +torch/include/ATen/ops/softplus_backward_native.h,sha256=9csbwF9HvC9LLY4PsnyrJcj0Rh1Oc1R4sVbW704NjsM,746 +torch/include/ATen/ops/softplus_backward_ops.h,sha256=9gGh4CEnZMNNnUW-_M7uncTWPa18gVLLnjgQiOZZSGA,2241 +torch/include/ATen/ops/softplus_compositeexplicitautogradnonfunctional_dispatch.h,sha256=7u51NFc37ioyX4zXVBR4vLkwlyj9VZ7NgG1yZ_vsCW8,875 +torch/include/ATen/ops/softplus_cpu_dispatch.h,sha256=mjRB1usA9HrtTjvtjaWwukir8iaBj0BzzPz-C50sl0o,1083 +torch/include/ATen/ops/softplus_cuda_dispatch.h,sha256=keuVZOtBV0IuFlQt_ArXUWkIbPxJWWkBAaZcIVpHWHM,1085 +torch/include/ATen/ops/softplus_meta.h,sha256=4GHPwBWV_khAaI-R99PvSmjxxoEjQrFrzV6jcx3xFeE,659 +torch/include/ATen/ops/softplus_meta_dispatch.h,sha256=o4j_A5uOrpGMHGl5cN_LfpEkDnBZSaNpXl8_SbjXWHs,1085 +torch/include/ATen/ops/softplus_native.h,sha256=7BWh4bpfP4z5fuOVRVi6Sf-9DDiGonUhQYogbsYJsGc,680 +torch/include/ATen/ops/softplus_ops.h,sha256=6XOeLzT3oEugkg-hlsvDExqtJ7KXNgqX8Uu_JtY207w,1947 +torch/include/ATen/ops/softshrink.h,sha256=Co6r0yvzUmj17Y4ZqP4TvVRIKGIFYtxZXYW-XO60b6Q,1244 +torch/include/ATen/ops/softshrink_backward.h,sha256=BKUkvYMDiJDMiH43vKMB0ER4-VlUCOVLBdjqiB_D88g,1579 +torch/include/ATen/ops/softshrink_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=qvwqbb4gIsgK0qs3T3V2_SYrRBU01iqZLVS34LmyU8I,884 +torch/include/ATen/ops/softshrink_backward_cpu_dispatch.h,sha256=SpdisQ-EgzR-mhQa9voGZ6whUUefbuEjgy3YSZPAKig,1129 +torch/include/ATen/ops/softshrink_backward_cuda_dispatch.h,sha256=aJz9quoJ8gfWRGaz8-PoI3DErKei2zH6LN0PKml2JnI,1131 +torch/include/ATen/ops/softshrink_backward_meta.h,sha256=Ic5F8Yio-mXwx-3oDDxVv1tJHLzRR_Ua7lDPGe6iUL4,673 +torch/include/ATen/ops/softshrink_backward_meta_dispatch.h,sha256=HWpwGhkX59-TTCTd5iBkX_b0MZFddRhuzsg9D_pNKiQ,1131 +torch/include/ATen/ops/softshrink_backward_native.h,sha256=eP2Qj6k68V5kb-1wuFaVF2VDXB5uqht9jFR7Sm41B3I,723 +torch/include/ATen/ops/softshrink_backward_ops.h,sha256=RTdKsYNhBzJrVrIlJJRkzzLrzMm2HgDi9wJQvLSGwAI,2063 +torch/include/ATen/ops/softshrink_compositeexplicitautogradnonfunctional_dispatch.h,sha256=sSyizCuwigPqlHFqUb-Dr_8a5Jh8acuNQFJXOswmdg4,847 +torch/include/ATen/ops/softshrink_cpu_dispatch.h,sha256=t1c9PxSa5Vbgvs-906ccOaP5x2TCOATOy1g44R3nv1Q,1000 +torch/include/ATen/ops/softshrink_cuda_dispatch.h,sha256=e9Ocsm1uFQGFOS4cg--pxZmW776TYDHBr8v0iHH-Eh8,1002 +torch/include/ATen/ops/softshrink_meta.h,sha256=LIdFMNKfWNLGrIrCTEOHUSDcitj8vw8Np5B66WWBucw,632 +torch/include/ATen/ops/softshrink_meta_dispatch.h,sha256=3RnwuCWIdVap7lDkeb-ztwvxSHcEPhVTKR5RI1js0wI,1002 +torch/include/ATen/ops/softshrink_native.h,sha256=lixXU9Nc7m67OwFrCyrINjkGYOiA8-AqSREa10NwFCI,657 +torch/include/ATen/ops/softshrink_ops.h,sha256=7YuNfoa2M42aMpmae-ozt3X4VhQIQjL72jRHJ4HmSmo,1767 +torch/include/ATen/ops/sort.h,sha256=PzeYpjvnGHEVjq-PZuRREJc3Fcy_DvzSs9ZeOZnFvBQ,5334 +torch/include/ATen/ops/sort_compositeexplicitautograd_dispatch.h,sha256=Gh3eGud158L35fxOgsG5b3_yv-IdT9nWfhvGoKx_1UA,1177 +torch/include/ATen/ops/sort_compositeexplicitautogradnonfunctional_dispatch.h,sha256=FVStsb7vcurrACX1RvS8HMhEnJ1nkJomgeB_-NI35UE,905 +torch/include/ATen/ops/sort_compositeimplicitautograd_dispatch.h,sha256=oRroBHbJbXYkvO4mHH-B3nmPoNYw-UnTDQ3drgtPn3o,1724 +torch/include/ATen/ops/sort_cpu_dispatch.h,sha256=GL-8gcTCMa1m638VkmXBBqRyhTqAI9iZVFzfgdu4xSo,1223 +torch/include/ATen/ops/sort_cuda_dispatch.h,sha256=cg411idtXI-n27amYelXTvUzgkGvXhcy8e0Wl8y_VP8,1225 +torch/include/ATen/ops/sort_meta.h,sha256=D1YPcJBategHmzYB41rt1VyxUjZLnLYJDD2Yc1Qk3TY,667 +torch/include/ATen/ops/sort_meta_dispatch.h,sha256=dKhrqY6LpOnfTVkTs1DC_pvu-GrHYQNU3fiu1ZDgzDo,1225 +torch/include/ATen/ops/sort_native.h,sha256=mxxSRs2fM0mWNRmZQfbPWNn3eaUH3lqSxwzK7BX2u0A,1784 +torch/include/ATen/ops/sort_ops.h,sha256=wyNK2hNpsoqwsKUTbVR_3rIftV9X6msyVzxQJIyZLCc,7578 +torch/include/ATen/ops/sparse_bsc_tensor.h,sha256=EtZ25dz5BidDtsc9myWemck7hlNWyhR2ho3yMf_nr5s,3013 +torch/include/ATen/ops/sparse_bsc_tensor_compositeimplicitautograd_dispatch.h,sha256=k6szkAAeacNf7EFJt0dkok6PKv74Cx1JECE7SEdmzbc,1652 +torch/include/ATen/ops/sparse_bsc_tensor_native.h,sha256=Ab4sFQ0JZAf9e_lOZxWrW1wBix3pv82L5KHlmJM4oIg,1044 +torch/include/ATen/ops/sparse_bsc_tensor_ops.h,sha256=vtXuezqDhhnQ9Fnh8eWS2GvdpuhyFwHH-kgbxvSNan8,3143 +torch/include/ATen/ops/sparse_bsr_tensor.h,sha256=Fka-C8Alp6kDHIsVCJ5qXV8j73Ul3P6tnmQQQ-kYDRU,3013 +torch/include/ATen/ops/sparse_bsr_tensor_compositeimplicitautograd_dispatch.h,sha256=_F57OhMbWDpHu-0y2Aph8Lp2GvvUzTYEIzvgrFfBldE,1652 +torch/include/ATen/ops/sparse_bsr_tensor_native.h,sha256=e54re-cPqdPp-ffT--__hKtnjnYZ1mKoIr2PJ6Pb9qI,1044 +torch/include/ATen/ops/sparse_bsr_tensor_ops.h,sha256=_LFKzDzSKzx3qMe0JCPqsKMNO5dN5swI-KhbnU6l2M8,3143 +torch/include/ATen/ops/sparse_compressed_tensor.h,sha256=iABCcdAmNzDgohZsjAWzE3YxUi39Ah7vDWYI33Jazak,7025 +torch/include/ATen/ops/sparse_compressed_tensor_compositeexplicitautograd_dispatch.h,sha256=uLXM6vGy_5eF19vGw-YWGeU2T40Oatau2rfvp7M2r94,2246 +torch/include/ATen/ops/sparse_compressed_tensor_native.h,sha256=_ZXHUozQlcaxFNiZL0RHYpkffZ6NnfUjXRtjvws-3e8,1074 +torch/include/ATen/ops/sparse_compressed_tensor_ops.h,sha256=qM3LNllP440-3v-1koNerEbIgk_By8BZr_8uxDH22tw,3260 +torch/include/ATen/ops/sparse_coo_tensor.h,sha256=P6SxzNp-W76eR6noyTp3VFDPsUKm2mBuuLdgYYyP-RQ,4319 +torch/include/ATen/ops/sparse_coo_tensor_compositeexplicitautograd_dispatch.h,sha256=26Ha9SgVxIS8HTlcg2Ajv8yBmZrGJ4HjD5o6Xc0Fkus,1205 +torch/include/ATen/ops/sparse_coo_tensor_compositeimplicitautograd_dispatch.h,sha256=RMrVUPggBbUBB9dTi_a8wMgmNvaGrQiYmFRuhmz13Xs,1684 +torch/include/ATen/ops/sparse_coo_tensor_native.h,sha256=RGwaopQdIyAbLPvPcS8wcoOfF3ix9Bsa-e6Jm-XXkHA,1384 +torch/include/ATen/ops/sparse_coo_tensor_ops.h,sha256=sbDKPHz-YTKVeA3_PzGee9Z3KMbUCGcgo4Ge38jcZOE,4785 +torch/include/ATen/ops/sparse_csc_tensor.h,sha256=bjHvtNIemioOkzzHgpJ1EVSnCW99_rOOHwRFSA83ZC0,3013 +torch/include/ATen/ops/sparse_csc_tensor_compositeimplicitautograd_dispatch.h,sha256=huZ-todArSn7pWDWA2HqDJmYcEeDiLkS-bnwYSoXXJo,1652 +torch/include/ATen/ops/sparse_csc_tensor_native.h,sha256=TwUnFfhw9pbWH2kqCuQu6DEp9ERdBpKY03q3Rneur2Y,1044 +torch/include/ATen/ops/sparse_csc_tensor_ops.h,sha256=V1C4CQM8eZfSuZmZT5C4quC45lpZAp5LfQPxjjijzHs,3143 +torch/include/ATen/ops/sparse_csr_tensor.h,sha256=hkirNZhlVpvBn6j-7KL_O3biG1eiBJQYC3qsYUExuo8,3013 +torch/include/ATen/ops/sparse_csr_tensor_compositeimplicitautograd_dispatch.h,sha256=Htnq-HeY5uBngJjkX4NdXCEpT9Vi06_moQmB7CZhQBc,1652 +torch/include/ATen/ops/sparse_csr_tensor_native.h,sha256=4gh5eut-ZGmIE3LR0or2DKYQccM1kVcN9WipijqCUkk,1044 +torch/include/ATen/ops/sparse_csr_tensor_ops.h,sha256=eUgITRgqiVLaC9Wc6fg28wAxc6iHpErrdcRzTfTLQOM,3143 +torch/include/ATen/ops/sparse_dim.h,sha256=FsDgFYa9en1dcjFVwFTTy3GLonlGgNe1jgcxu4Fc3nU,510 +torch/include/ATen/ops/sparse_dim_compositeexplicitautograd_dispatch.h,sha256=rE6VSXwXV0AIc9C3HhWItRBL-k5fWWKWULj0pB8_eiY,788 +torch/include/ATen/ops/sparse_dim_native.h,sha256=Okb_oc5qO5wOEO01lJ0XEpDfLL0ixKtOxXWSI63ZsfU,636 +torch/include/ATen/ops/sparse_dim_ops.h,sha256=2aBOhWbfKnq5m88TusUAQExIK3IUyjyeU4scByFnqok,962 +torch/include/ATen/ops/sparse_mask.h,sha256=5TQxDEYfLC4TBNvMMgsyD6auiCDNXSpdaaxYFsn9mRw,1026 +torch/include/ATen/ops/sparse_mask_compositeexplicitautograd_dispatch.h,sha256=U9BVzA6zY1-tnHHcoCBl_Ul211q91SmvTx0fYXf_YB0,951 +torch/include/ATen/ops/sparse_mask_native.h,sha256=6Da3NC7j12rb9DehbNQWlBxVHamp3jFpzJBphUKDOS4,739 +torch/include/ATen/ops/sparse_mask_ops.h,sha256=9OAgxhfdbK7_64p4UtXCap03Ez8GPeA60nwCw0GR5QM,1759 +torch/include/ATen/ops/sparse_resize.h,sha256=KyMXkbWpKeoXFJcgTzvKYSmtBy2obJ3WnatCCSWa37w,1536 +torch/include/ATen/ops/sparse_resize_and_clear.h,sha256=s8CHjk2WdwQCX8K4YrVLL4_N03jz-dlV5dTAvIOPleg,1636 +torch/include/ATen/ops/sparse_resize_and_clear_compositeexplicitautograd_dispatch.h,sha256=3ob1S4Tq9BvQWe2tgOeDeZM-qGtnOEsgE_CimNYYE98,1204 +torch/include/ATen/ops/sparse_resize_and_clear_meta_dispatch.h,sha256=YOV7FGes2j0XepBqVR5K9r_DaN0O1NwG0owK2xcWmwY,832 +torch/include/ATen/ops/sparse_resize_and_clear_native.h,sha256=GmjbvteX71JZiLOSeIXn5uJXOQT13ZnX6Sj_fZRceV0,886 +torch/include/ATen/ops/sparse_resize_and_clear_ops.h,sha256=10VAfBPz0WhQIYG1Ze8GNuoL0_x_Tbu3N4-krl24Xdo,2898 +torch/include/ATen/ops/sparse_resize_compositeexplicitautograd_dispatch.h,sha256=9FvFIfnjWmw_YrRSo5_HKLCR58Ywu4IOj3ObpGCIuMw,1174 +torch/include/ATen/ops/sparse_resize_meta_dispatch.h,sha256=xkVCZV_WdTtdTL7PQ7G29xhq3IeQ6BW7ndFyGOrCVVI,822 +torch/include/ATen/ops/sparse_resize_native.h,sha256=v6GjBwNnVH4aUuQwLfXBpqKJz-ZXFNKUnZkt0XlNkDE,856 +torch/include/ATen/ops/sparse_resize_ops.h,sha256=yga5dK-7zKAENm9zTTOtJnp4nEnEHKwNIiChrIomGrE,2808 +torch/include/ATen/ops/sparse_sampled_addmm.h,sha256=GmZp2uNnOLJZRy1S9CSV8GckruPaLY_3cgzquzk9joE,1743 +torch/include/ATen/ops/sparse_sampled_addmm_native.h,sha256=7mWdupa07zj6MET0nH2bfsctwC7q4VAsvQF13avjcEY,1240 +torch/include/ATen/ops/sparse_sampled_addmm_ops.h,sha256=SgCZi6xvYPxPDWcjPe-7SHFMb4ubxnIxkOo0y_XZ6T4,2328 +torch/include/ATen/ops/special_airy_ai.h,sha256=QaMGXX2BYjWPCwHoRH3Wcyr9zbSskcTk7CIvCF37dQg,1106 +torch/include/ATen/ops/special_airy_ai_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Amv4wP2VqL4D8ot35ScjxKmabAK7mB40c7sYntF1Hb8,819 +torch/include/ATen/ops/special_airy_ai_cpu_dispatch.h,sha256=KwxeOB29ZYH6vqVZwfRoR4pCQbHIq3RNzGPimOJXW6s,920 +torch/include/ATen/ops/special_airy_ai_cuda_dispatch.h,sha256=-ZXm68gsSx9xJY7yiHocwk_qXaVPnK52ubTCNaN8l2c,922 +torch/include/ATen/ops/special_airy_ai_meta.h,sha256=5INWbaq0VnfAlxenGaYXE-EPdjRIOrDmQFv1cd3oYJE,608 +torch/include/ATen/ops/special_airy_ai_meta_dispatch.h,sha256=CZ4oNieL1263yueO04_ZuP5pTJd0k28LTaoU0B4QRIw,922 +torch/include/ATen/ops/special_airy_ai_native.h,sha256=hT1nZd_FCAE197mfoatN8fcxCPVe3eLv5KaX8IA8Sl8,643 +torch/include/ATen/ops/special_airy_ai_ops.h,sha256=I3oA_TkK4HM474lrHdGyxTXoCdwkU1UuEKcd8wttLIk,1599 +torch/include/ATen/ops/special_bessel_j0.h,sha256=qhdtsU_4PmDE_e6oXedsMxLrO1VAnqLEc3KJ_nMK4U4,1153 +torch/include/ATen/ops/special_bessel_j0_compositeexplicitautogradnonfunctional_dispatch.h,sha256=xtwonixHyzG6Pjd6avl17DEerDTXuWWOF_EZ5k__LB0,824 +torch/include/ATen/ops/special_bessel_j0_cpu_dispatch.h,sha256=i2sqMzzra49LRN7tTSdNZzLvDduc1r1asl9DEtZJC1E,935 +torch/include/ATen/ops/special_bessel_j0_cuda_dispatch.h,sha256=EvqgP8ENPN42-IpfjZgLL2y9-igY7XnRuxirLPY1g7c,937 +torch/include/ATen/ops/special_bessel_j0_meta.h,sha256=YCtQf0f6exzD8CIboa77vH77DgvwIH1zA4xS3OHLBrE,613 +torch/include/ATen/ops/special_bessel_j0_meta_dispatch.h,sha256=QSTrxKsnimBJsabuoGlzu207x4ryQ5APvfnJrqI_NSU,937 +torch/include/ATen/ops/special_bessel_j0_native.h,sha256=t5a9BoPw66sMt4j37jR-JsfA6igh33wIQ8t7AoM8Zu8,652 +torch/include/ATen/ops/special_bessel_j0_ops.h,sha256=CdiE5fxpqfCXPYd3REJ31qj9ffuSRAYqbpjp7dtAkgE,1629 +torch/include/ATen/ops/special_bessel_j1.h,sha256=NS1lOdh4WO3eoaHIEdHCQwvZ0txc6SHRx-wNoJGisPc,1153 +torch/include/ATen/ops/special_bessel_j1_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Vy0maUtz0KesRWYxuGXeNSlq8qDWEOOOvvXKgh7XeiE,824 +torch/include/ATen/ops/special_bessel_j1_cpu_dispatch.h,sha256=l3E-Ag7Veq4a11u-zO7-QW_hmm44rsNj3Y3WPyUxN6M,935 +torch/include/ATen/ops/special_bessel_j1_cuda_dispatch.h,sha256=QmmkgBNWB7M0YI3lO-13i5FGv5fNSBXK93Dvpcyvgp0,937 +torch/include/ATen/ops/special_bessel_j1_meta.h,sha256=z3WuEPVAZYytMo0bF11ZcFcFf__OAT2ugjuEbIQ3UyE,613 +torch/include/ATen/ops/special_bessel_j1_meta_dispatch.h,sha256=6UIQkYz3b_AIlva5gHawBpfHwlPWLGZflcqXLKRkd7g,937 +torch/include/ATen/ops/special_bessel_j1_native.h,sha256=sfHT2IwWeK08NwpC2AFQWHLVyV0zV5XDJ76Z01-Hffk,652 +torch/include/ATen/ops/special_bessel_j1_ops.h,sha256=UgNgF-XtxCAtEOofwCCkBKz5hfNQYHwRJCBN-QXbs6U,1629 +torch/include/ATen/ops/special_bessel_y0.h,sha256=aSjE6pwIyt5CkDIA-8FlXrLLhzDNZbjW9ZRlbwXNrW0,1153 +torch/include/ATen/ops/special_bessel_y0_compositeexplicitautogradnonfunctional_dispatch.h,sha256=iV-ALV78i7IRtSAb5a1oLX759nQRWQ7rnWcoYYemiTA,824 +torch/include/ATen/ops/special_bessel_y0_cpu_dispatch.h,sha256=ft0jCJCL8kgE9t9EpGDfBhLobsSq9Apdn78tKcHerKs,935 +torch/include/ATen/ops/special_bessel_y0_cuda_dispatch.h,sha256=gNcFocQeaOYzJlQvNaZv4IuC3sZWUpD6Em-60idytL4,937 +torch/include/ATen/ops/special_bessel_y0_meta.h,sha256=TwIZSUEqBJY1PPHh9MXZwIE2dqK12VrTyqpq97nXnJU,613 +torch/include/ATen/ops/special_bessel_y0_meta_dispatch.h,sha256=lbD9DODjgu0isIwRbgSPOscwl9fgXB92HxgPrlr01y4,937 +torch/include/ATen/ops/special_bessel_y0_native.h,sha256=IkP9vHRTK1ggx6AKBSUop6siOHqFcAUzsBTjcj5pgO0,652 +torch/include/ATen/ops/special_bessel_y0_ops.h,sha256=uAET8cic0neXUSufJwSga5TPPfRxUhcmbpyfkrFDy4Q,1629 +torch/include/ATen/ops/special_bessel_y1.h,sha256=YTNZQ7by-lUYkvM0G2-AwZsOGB0WVB0z1HJKrADe2_o,1153 +torch/include/ATen/ops/special_bessel_y1_compositeexplicitautogradnonfunctional_dispatch.h,sha256=POr8He4--UU9eveTGUjZ3GEtIy0nTRr-SPTtm31x6ug,824 +torch/include/ATen/ops/special_bessel_y1_cpu_dispatch.h,sha256=iWuuuNJOjKZwTygVqAN6PZyF_XzPV-noHl5VJP-UKs4,935 +torch/include/ATen/ops/special_bessel_y1_cuda_dispatch.h,sha256=oL8g-OIfR0iT-FUXksiTzEGFtVgt4CsmGrXHvQUmq4M,937 +torch/include/ATen/ops/special_bessel_y1_meta.h,sha256=xq_SYQPP9Wl9JWX7ECfxRlXP3KIYgcJSHsFppCccDVU,613 +torch/include/ATen/ops/special_bessel_y1_meta_dispatch.h,sha256=Jc30zvSKbpIAuAFWgFEJk53w6h1IPtN7QGgwxT2o5KI,937 +torch/include/ATen/ops/special_bessel_y1_native.h,sha256=U4lJC9awq20iqtl2gFSm-gfmUcdC4MPIzYbZ8V7NxKg,652 +torch/include/ATen/ops/special_bessel_y1_ops.h,sha256=UioNjEyjgT6HxBdeR4DSltwmqhq2eHR0kq0EqIoolp8,1629 +torch/include/ATen/ops/special_chebyshev_polynomial_t.h,sha256=niLpPjjs3T3DFShfIrtpc4lB1jrk50rNVhKSUd0Tx7s,3135 +torch/include/ATen/ops/special_chebyshev_polynomial_t_compositeexplicitautograd_dispatch.h,sha256=o5NQlgET_c6mio0oc0qmWCULcI0L7X067bDf_L8CVgg,1418 +torch/include/ATen/ops/special_chebyshev_polynomial_t_compositeexplicitautogradnonfunctional_dispatch.h,sha256=d_lN-f_nTVmZX8zQilY0vf4BZPMqezFRkVjmjjBbp10,856 +torch/include/ATen/ops/special_chebyshev_polynomial_t_cpu_dispatch.h,sha256=TEPuTZj8iShv5Ahxl0g7sxSXGR8x5AoUhJcoMsUwvgo,1031 +torch/include/ATen/ops/special_chebyshev_polynomial_t_cuda_dispatch.h,sha256=g5tgqGci_VoX8lb229tsYUGUhUve5Q0Z3m1jfldjsdA,1033 +torch/include/ATen/ops/special_chebyshev_polynomial_t_meta.h,sha256=hC9k_0FeJd12qwRh4Ww7KWJZFL8bhfig6jT39sOxmUo,645 +torch/include/ATen/ops/special_chebyshev_polynomial_t_meta_dispatch.h,sha256=ksziK7OPv9cZHpWAwazGiNiD4NnYzcleiSN6FXn-ZpU,1033 +torch/include/ATen/ops/special_chebyshev_polynomial_t_native.h,sha256=QVYILjyggytVpvTcMVU6FKVdook3Uh4hLkjCYWJPklQ,1150 +torch/include/ATen/ops/special_chebyshev_polynomial_t_ops.h,sha256=rVaXQcCBghcZ46wmniqW4LmYhh4VPkYSU8lOEXX-OkA,4715 +torch/include/ATen/ops/special_chebyshev_polynomial_u.h,sha256=W7UPxLolEO8L9oY2X5TeNrVBBlPNkNGpPM4LM4Ca9jk,3135 +torch/include/ATen/ops/special_chebyshev_polynomial_u_compositeexplicitautograd_dispatch.h,sha256=I9PNS9nuS1-W3l8DNVWTkhNX4dCazib4oAP8U8dVbSA,1418 +torch/include/ATen/ops/special_chebyshev_polynomial_u_compositeexplicitautogradnonfunctional_dispatch.h,sha256=LqVAqo6TpjFk2c4iRRDkrQkFfhgmfens_1zqnRSVHwA,856 +torch/include/ATen/ops/special_chebyshev_polynomial_u_cpu_dispatch.h,sha256=achPgrbVjEnBw1_affjDGyw30BUyBE__Daa73TunGb8,1031 +torch/include/ATen/ops/special_chebyshev_polynomial_u_cuda_dispatch.h,sha256=IcRaLmuetBq9N6wNqm-aXGT-Us87SSpa83x1OxRxzFs,1033 +torch/include/ATen/ops/special_chebyshev_polynomial_u_meta.h,sha256=MbdLbtsGtY8YbECasYqkmDiIFkS3qEhMnl0I3C58ofs,645 +torch/include/ATen/ops/special_chebyshev_polynomial_u_meta_dispatch.h,sha256=aH6JAMBnTxSi9sjBRJo9emWN8gIOPK696OF1PC0AFlE,1033 +torch/include/ATen/ops/special_chebyshev_polynomial_u_native.h,sha256=MbzoQ8vZUphAA7pm0CBJOeAf3FJsM6VTMVGImj9ArC8,1150 +torch/include/ATen/ops/special_chebyshev_polynomial_u_ops.h,sha256=kMmrSd90wmkXmj2xxpwDtRIjhDeTZSdKAVAAE10f4yc,4715 +torch/include/ATen/ops/special_chebyshev_polynomial_v.h,sha256=2-2DWBHvksoGjtKdwRENlDRz4qmn7Bvsqbx7ueQZ_Kg,3135 +torch/include/ATen/ops/special_chebyshev_polynomial_v_compositeexplicitautograd_dispatch.h,sha256=k86OAeY4aHkvfLH4pcDcoK8f03gY2usfhO8vDHfEqBI,1418 +torch/include/ATen/ops/special_chebyshev_polynomial_v_compositeexplicitautogradnonfunctional_dispatch.h,sha256=lzrlZRdDCBIWmiQinwZCVWA1XAPpS0XvDiwBV6Ka1kU,856 +torch/include/ATen/ops/special_chebyshev_polynomial_v_cpu_dispatch.h,sha256=pdJqsvuGG3nl4gTYJ1fKJ6AA_WTVV2e5uqppcmcU6fM,1031 +torch/include/ATen/ops/special_chebyshev_polynomial_v_cuda_dispatch.h,sha256=nfWcXOOs1thZTlcZmPpxBvIUgT0Tb9tQD2VYko_J5KA,1033 +torch/include/ATen/ops/special_chebyshev_polynomial_v_meta.h,sha256=2sN2VoMKuiNh1QsTyzC7g4CFmQ2pPqWoTyHbclXjviQ,645 +torch/include/ATen/ops/special_chebyshev_polynomial_v_meta_dispatch.h,sha256=0qpJS5xKqFV5aNRk5GfiMLprf5N_YehO--FDmnx4HPs,1033 +torch/include/ATen/ops/special_chebyshev_polynomial_v_native.h,sha256=2gzib64fH_Pzap68Vf5zUalFN58pFG_gDR4Tyk5KXSo,1150 +torch/include/ATen/ops/special_chebyshev_polynomial_v_ops.h,sha256=2vRfH_UlDwqg_-KbAqZd41EADNj5YRXvPvRhAcq9wTc,4715 +torch/include/ATen/ops/special_chebyshev_polynomial_w.h,sha256=PhRn02lAlYIUvD9LOz0pHjAUF1RVAr-O4W_UxzaZ39w,3135 +torch/include/ATen/ops/special_chebyshev_polynomial_w_compositeexplicitautograd_dispatch.h,sha256=2UbQSITM63dPybbqOKHES24vpuuYyBVvoTHy73NG52c,1418 +torch/include/ATen/ops/special_chebyshev_polynomial_w_compositeexplicitautogradnonfunctional_dispatch.h,sha256=OYEwJdFmbajf_uuCFtFpH6bq1VYM-WG3_MwO5YvCC80,856 +torch/include/ATen/ops/special_chebyshev_polynomial_w_cpu_dispatch.h,sha256=cL1cea3menyNfAAzTVSEjS-6ozNE8wf5FlAbyWux4QI,1031 +torch/include/ATen/ops/special_chebyshev_polynomial_w_cuda_dispatch.h,sha256=Uu0TNIyZDUGlLSz_-OWsjq-pMsUbk9MWtKhDChVdR9E,1033 +torch/include/ATen/ops/special_chebyshev_polynomial_w_meta.h,sha256=WNFBh2-OgD2sSSm-1Mcyysciz3HARdJHVz1oMAj78jI,645 +torch/include/ATen/ops/special_chebyshev_polynomial_w_meta_dispatch.h,sha256=0apF3r7baWfNbB4Da6OboDmGqGlyyomgZx470fWrmmI,1033 +torch/include/ATen/ops/special_chebyshev_polynomial_w_native.h,sha256=G2CxrUOD2bB24c-V4D-QC3O51dDLOhI-e3E0BZ9o9Ew,1150 +torch/include/ATen/ops/special_chebyshev_polynomial_w_ops.h,sha256=3k35eycWqcHsWfaByKzV7Of6JOidYePm-oYPFYqr2wM,4715 +torch/include/ATen/ops/special_digamma.h,sha256=O1CQBMa_w_PQYWhCA02LH01dNADFpO82I8GFkIu3ZkU,1133 +torch/include/ATen/ops/special_digamma_compositeimplicitautograd_dispatch.h,sha256=03ESh2gs2HmvVUySN3E62x9_lMG5OQMEMtJ21phBUrA,973 +torch/include/ATen/ops/special_digamma_native.h,sha256=1BD2enGwP52YPckpemOSbSsB6Yzf8Ha3WcjQsyfX34k,594 +torch/include/ATen/ops/special_digamma_ops.h,sha256=G55AkYOF1kiBIWE00DutvaIGj2Rx3LA_pzl7JDICI4w,1617 +torch/include/ATen/ops/special_entr.h,sha256=IVLBzdfJuzV-kI2ihBrKcu0TYPBbnql79eKnpp0nz64,1103 +torch/include/ATen/ops/special_entr_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Oy-xOmQ3j37y5j3SFONqL7JrUhvUb6tLbDrBAa2l34w,819 +torch/include/ATen/ops/special_entr_cpu_dispatch.h,sha256=yDKFRIOIyB-wml14UzDgGnywrDH0Myr4-0bcrIGGp3E,920 +torch/include/ATen/ops/special_entr_cuda_dispatch.h,sha256=wkfA777S2tPmi3Nanqn_qkcBCp7Ha6wYEWmRNunRFK4,922 +torch/include/ATen/ops/special_entr_meta.h,sha256=BubabodHfJphf25VkU8wN4aAWqleE8FMGdQY3wYwyN0,608 +torch/include/ATen/ops/special_entr_meta_dispatch.h,sha256=WLjAIUIRyR6L_1UMu3jTcOLAbgiEDl_ZsiXyXoWZ9p0,922 +torch/include/ATen/ops/special_entr_native.h,sha256=YUecCsy0_l-BjTv_c6rN8Vsum6tenDcVufEV2Y1br74,637 +torch/include/ATen/ops/special_entr_ops.h,sha256=6oyW19CnFOLHJSCqLt-619bZTmJ5kre24ip8OzwnHfU,1599 +torch/include/ATen/ops/special_erf.h,sha256=3W6fCX1oFIqyhDOeLvPvk5IwMlIUX_x-DaS2tM2wQss,1093 +torch/include/ATen/ops/special_erf_compositeimplicitautograd_dispatch.h,sha256=QVpsjLg7s4fQkssVX8_UWYfSXTXhojFaH5E9_c6FT5A,961 +torch/include/ATen/ops/special_erf_native.h,sha256=3tfd9NCihuuY-tybbetazkayt3BbhqVzuYcG0VW49CA,586 +torch/include/ATen/ops/special_erf_ops.h,sha256=82wLjSltVqRei0iKEzErUkcMXvOeR93ti71ubMrshpw,1593 +torch/include/ATen/ops/special_erfc.h,sha256=_dFNzP-_EWXD2LqTXk8um8eK21OVmbqiGxzn6VIxddc,1103 +torch/include/ATen/ops/special_erfc_compositeimplicitautograd_dispatch.h,sha256=VFwe4o01vVZ-BuJ7VcZqwURekptbIPik_zLpQu9r6mc,964 +torch/include/ATen/ops/special_erfc_native.h,sha256=LI29SsPZ1zTMvu2UFBM1nluIJx4DVmimaKCTMTJzAnw,588 +torch/include/ATen/ops/special_erfc_ops.h,sha256=DUymUxsNHl5NioYEeqMRFkNd4AZXGeWb1rBuKVDOGGA,1599 +torch/include/ATen/ops/special_erfcx.h,sha256=jN2zfrbJvKoAvxc4TUssED1njkU9pYFRNImc69DwVKg,1113 +torch/include/ATen/ops/special_erfcx_compositeexplicitautogradnonfunctional_dispatch.h,sha256=0E5g1TSsxS5T8OerMgfuKTdomLELg7CWV_wTrSExv9M,820 +torch/include/ATen/ops/special_erfcx_cpu_dispatch.h,sha256=Med4-1_SOi3r_N_Y-i-8jcpMyevjsPCQCH-F51OOPig,923 +torch/include/ATen/ops/special_erfcx_cuda_dispatch.h,sha256=bQAMEBZ-0UMAgRUKRlxl8j348buMF-zkBOKZMokGAwA,925 +torch/include/ATen/ops/special_erfcx_meta.h,sha256=YqJT2glXzPJbpglvU_5XExXraXINv4HZWe7A7Uc2DMA,609 +torch/include/ATen/ops/special_erfcx_meta_dispatch.h,sha256=RVMpV2Ahi0SRQcLW9-BwhJJOCrAfDRzo1X-w1lcZAIU,925 +torch/include/ATen/ops/special_erfcx_native.h,sha256=8aw28JM9mvi3EEkXHt7GjV_3a7D9PPZ1AnpQjz39EOo,640 +torch/include/ATen/ops/special_erfcx_ops.h,sha256=dniiDVhCvsvL9xuqSsclR-YbR609HNRIceznyw2uUTc,1605 +torch/include/ATen/ops/special_erfinv.h,sha256=zT61BaQVRohGH4RrMJ4SKmJf35Bdj0SeeKSjOjZw_vY,1123 +torch/include/ATen/ops/special_erfinv_compositeimplicitautograd_dispatch.h,sha256=pp6IewOxXdAARvT6hoJ3DNWwox8tSHVkTujbnlab34E,970 +torch/include/ATen/ops/special_erfinv_native.h,sha256=U6pLVT6dPpFAYILcEbyVaxYeiY8iUbG-yryxrAVCCso,592 +torch/include/ATen/ops/special_erfinv_ops.h,sha256=ljd_pNwnzPrOHIjndpPiuPTnNDxl721fGwldRgF7u5Y,1611 +torch/include/ATen/ops/special_exp2.h,sha256=nCn4sweyE6yNeIk8VLuaVGXz2VixSHa_PgRwoY1CE24,1103 +torch/include/ATen/ops/special_exp2_compositeimplicitautograd_dispatch.h,sha256=hZnvss0K63Fo52WOgh_ibNLaikq6-FhQljxkOYtCduI,964 +torch/include/ATen/ops/special_exp2_native.h,sha256=uLb9nVXSaDbdlzBvLhMJujbIAIBM4QWWwt3VqIH8hdo,588 +torch/include/ATen/ops/special_exp2_ops.h,sha256=YRSPfALLHKTOPOZ28LrIPLETE9ontQ-bNLOzyVt7UlI,1599 +torch/include/ATen/ops/special_expit.h,sha256=7VyNqRZVO-ITEy0ByZvQIdvz4iXz1LJHZcArt1gEqDI,1113 +torch/include/ATen/ops/special_expit_compositeimplicitautograd_dispatch.h,sha256=JhR3dpoZ9a84JCTod3FYbQI_Ggy3PDeOLyz4MrRZru4,967 +torch/include/ATen/ops/special_expit_native.h,sha256=HtaiqUmnDSCgPxPogRqn_I2xKIwZMbNtXh33AZ1l0IY,590 +torch/include/ATen/ops/special_expit_ops.h,sha256=XUojevEIewhQQKDpvAN9XDviPwiohj1nf3KFQAY_BwI,1605 +torch/include/ATen/ops/special_expm1.h,sha256=F9ppq1oSoJwFfjiPJU-_uqQsIU84eoMa9imDaz17OUs,1113 +torch/include/ATen/ops/special_expm1_compositeimplicitautograd_dispatch.h,sha256=pYMcUMtD8YKQYGdsnIqMq0RKlA-KwLmpFbOZL-qwWK8,967 +torch/include/ATen/ops/special_expm1_native.h,sha256=HpiQHi7vmG4heH9mHdUkMpH3fNknkptyyid73_rVcBs,590 +torch/include/ATen/ops/special_expm1_ops.h,sha256=51SZiIEcoWW8pTsDQISZObHiZDHQJrkIMvO5nL3hXQw,1605 +torch/include/ATen/ops/special_gammainc.h,sha256=XfVQIis7YBtg55i12numWtxvJKz9XclzC1BYrnGnQfU,1284 +torch/include/ATen/ops/special_gammainc_compositeimplicitautograd_dispatch.h,sha256=61VLuIzi1XD6_5I6YrdVgRny2vxvUthEUNsykTIPr-Q,1054 +torch/include/ATen/ops/special_gammainc_native.h,sha256=wQYBWI7SWae6Kkd82fpd1vVgYtcwsoTS0fzcvYKHOCQ,648 +torch/include/ATen/ops/special_gammainc_ops.h,sha256=6mv8t2kmVJ2Ar48RE4jaDIPl4HvYYdrBlPmwa6Fv55o,1795 +torch/include/ATen/ops/special_gammaincc.h,sha256=tC6EvBDWi3r4bqOkCORRaS2Am49g0kWna0EOA0fBxLo,1294 +torch/include/ATen/ops/special_gammaincc_compositeimplicitautograd_dispatch.h,sha256=jlzhPVr9SbBo-cGY_tQfwjIytOpMRGd50Mfh_qbNeRs,1057 +torch/include/ATen/ops/special_gammaincc_native.h,sha256=KqGABq_4mbeonTxONz-0UnAkqGuRAL7NUhJ92pABB-8,650 +torch/include/ATen/ops/special_gammaincc_ops.h,sha256=YK5D7Y6VXn5JZgDOB5Imwr25F5HxYnPU-Wu3rUKvbo4,1801 +torch/include/ATen/ops/special_gammaln.h,sha256=neA8PeOjzEqI6Eh-yEJCL0fVwTIdizJ7rEAw4XZWjFw,1133 +torch/include/ATen/ops/special_gammaln_compositeimplicitautograd_dispatch.h,sha256=93PnW44IoHNeQ1FeCJlDIVseTFilsAEACrDLtZyKl2E,973 +torch/include/ATen/ops/special_gammaln_native.h,sha256=Cyfiaphgt8p8Y_lW0-Okpvs-k9DzUouU8DvnNM7wVMU,594 +torch/include/ATen/ops/special_gammaln_ops.h,sha256=gLlz2A-5ktQY-nuVXYIIpm-NDxc4wUrJuee_O-roMa0,1617 +torch/include/ATen/ops/special_hermite_polynomial_h.h,sha256=2j55akEToiTAFNrKIi3qgj72n3635SUMbKdA-NP2tD0,3079 +torch/include/ATen/ops/special_hermite_polynomial_h_compositeexplicitautograd_dispatch.h,sha256=m34rp6ZBPI6epQnmdLHiYHLuddKzCLitDKFgXlryGf0,1406 +torch/include/ATen/ops/special_hermite_polynomial_h_compositeexplicitautogradnonfunctional_dispatch.h,sha256=60JoAAzdf2LgmVGzFBxmsv7lHWDrucWjR8nFENjgisc,854 +torch/include/ATen/ops/special_hermite_polynomial_h_cpu_dispatch.h,sha256=ubk5jtZk2q5VxeW2jYA9z7pVKcxvu1jBthns0LRFIKs,1025 +torch/include/ATen/ops/special_hermite_polynomial_h_cuda_dispatch.h,sha256=GyMAxLj5NuwvxbugJW_jGFFUVxCvkrktSF7XJnh7pQ0,1027 +torch/include/ATen/ops/special_hermite_polynomial_h_meta.h,sha256=RuL6aXGy87RV2GNVsJbmKhUeHDROYoGCfOdTNncmK3E,643 +torch/include/ATen/ops/special_hermite_polynomial_h_meta_dispatch.h,sha256=gA9rW32q1h8inVN2oISfOoK9YX14P23yQIK6TndVfQE,1027 +torch/include/ATen/ops/special_hermite_polynomial_h_native.h,sha256=X6mgSTVysVWfV-bRGCcfIlZlAFaqOIa5ViAKNr9cGro,1136 +torch/include/ATen/ops/special_hermite_polynomial_h_ops.h,sha256=22NjhjeBsJoBPM_4B9SeF0xxsuI1x1CKjpsaXG29j5M,4679 +torch/include/ATen/ops/special_hermite_polynomial_he.h,sha256=wj0kn6m5XPbZ7xFnmguuBBG8nTTdvb0ZoWOiPueKmzk,3107 +torch/include/ATen/ops/special_hermite_polynomial_he_compositeexplicitautograd_dispatch.h,sha256=aU2KbNhiEmMn9wcwz-LRWQHPSo9C8pmbzsNgCaLnbnk,1412 +torch/include/ATen/ops/special_hermite_polynomial_he_compositeexplicitautogradnonfunctional_dispatch.h,sha256=fKWSoFCUB9kdz6KP8n_HG6xqSORirw8kXQMTGS1ZQe0,855 +torch/include/ATen/ops/special_hermite_polynomial_he_cpu_dispatch.h,sha256=gYExlZI8zn2ECXPj8jPXC4plZwQPBQP-GnEv6yz1IAs,1028 +torch/include/ATen/ops/special_hermite_polynomial_he_cuda_dispatch.h,sha256=aiNvwdxbZ4NATDE_FoRZPPnlwwoyGJPqeaeLntselvI,1030 +torch/include/ATen/ops/special_hermite_polynomial_he_meta.h,sha256=wHjum8DA2pDK-MYLnqsJBb2UQFauDRMo3Bp0_C4A4S4,644 +torch/include/ATen/ops/special_hermite_polynomial_he_meta_dispatch.h,sha256=8XofOfwjbkKKheqe0Usa2sUaYzDJKuqaDRqEkixsv2k,1030 +torch/include/ATen/ops/special_hermite_polynomial_he_native.h,sha256=prnGDutz0vEH5QBu87vXot-IwWpEIulJPtV9sJHtmcI,1143 +torch/include/ATen/ops/special_hermite_polynomial_he_ops.h,sha256=76WMyEXuYSSKnJo6p3Krq7QqNaX3FktXj3i3aWYzBBI,4697 +torch/include/ATen/ops/special_i0.h,sha256=EsbOA5tlEq0fSSwdi_MwrWIX7zN9vcYsSRHJJl_v4oY,1083 +torch/include/ATen/ops/special_i0_compositeimplicitautograd_dispatch.h,sha256=FC6bK4L6wzaCsmEQJVuqZcrLWzpgrI5POwy00I3TwKg,958 +torch/include/ATen/ops/special_i0_native.h,sha256=twbgtEHl0sGVFkSyXp4_AQTQ3v-3EUE5jGlhTvG5dsU,584 +torch/include/ATen/ops/special_i0_ops.h,sha256=1srdeKaJOmUiGk4Lct658TTZ7--n76m12_q4ZpagnJA,1587 +torch/include/ATen/ops/special_i0e.h,sha256=w4Owhmvnb5lEN9CFbahCNPkKlIAETpYuEaZJUF9lz5k,1093 +torch/include/ATen/ops/special_i0e_compositeexplicitautogradnonfunctional_dispatch.h,sha256=chO_hOoalTlL3kPdpnZSh0LYr6rwF9pofLiqWyfUkPI,818 +torch/include/ATen/ops/special_i0e_cpu_dispatch.h,sha256=ekD85aVu3HBLP-BsWcz4OyPgzGUTz0EhNDzN8U9zX4w,917 +torch/include/ATen/ops/special_i0e_cuda_dispatch.h,sha256=s8FGpKr_lTSKZna5TWmbmryFBCsEbQH6P7IicWTc8-U,919 +torch/include/ATen/ops/special_i0e_meta.h,sha256=SsgrCH-e82lDHVjy_ZVoxZnTj-me5ig3Vh_kiU62F4s,607 +torch/include/ATen/ops/special_i0e_meta_dispatch.h,sha256=dDR_9rUN3kQKpAI43dvb00LckS8ocpZbz-DNxXEDRdk,919 +torch/include/ATen/ops/special_i0e_native.h,sha256=OYILZoPced01TBC4WOQKLU0zcD7yAaijgQ8IFQHntJM,634 +torch/include/ATen/ops/special_i0e_ops.h,sha256=KlZ7Z5xvyqhXiX2gfa3kGshIf_hDN7D5K0ilvzTiM3A,1593 +torch/include/ATen/ops/special_i1.h,sha256=pnEKuc4aHmnGgl9328cgqCC7__LP8dRepikYvyXrYmo,1083 +torch/include/ATen/ops/special_i1_compositeexplicitautogradnonfunctional_dispatch.h,sha256=LIx9ZthxW8-0o3XrkxYEPh16GfNHIrVMOFOAOVNKFnw,817 +torch/include/ATen/ops/special_i1_cpu_dispatch.h,sha256=PUDzyuHZ3iUzxVxRt6M7n3iIq27t36wQNSdFg-uBk0w,914 +torch/include/ATen/ops/special_i1_cuda_dispatch.h,sha256=D3jwyxVD1DZf89IAqJeTdG6Dq78M2FobqI6CYPSABec,916 +torch/include/ATen/ops/special_i1_meta.h,sha256=W346PCH9bGqZF8snxODm7sSxWeaO6p_uxBndyk_aHOk,606 +torch/include/ATen/ops/special_i1_meta_dispatch.h,sha256=Inh9FdoL_PTsYd2HKGfIhrOn3bmKHOA9Pd1kP9f4_S4,916 +torch/include/ATen/ops/special_i1_native.h,sha256=Lb8kD1IKgD5xGWCqWAfgqEiw-WQ7Z6ZqfaUjfrkeZXg,631 +torch/include/ATen/ops/special_i1_ops.h,sha256=lHtlqTRuR1UXV7ozxHeILsQJGZ-z5OeDlWkdS4_uK4g,1587 +torch/include/ATen/ops/special_i1e.h,sha256=DD3nSSvljn9TjXVyiWhVK6JmfJpTIs6hjlxMfukRxMo,1093 +torch/include/ATen/ops/special_i1e_compositeexplicitautogradnonfunctional_dispatch.h,sha256=rvPb5XLD3XPMo1qePzdSVgiKEKTrXNzK3jxUUqOTaUY,818 +torch/include/ATen/ops/special_i1e_cpu_dispatch.h,sha256=qce2bKa9Y3t9HTlAWHITSQ-4IEqsrMfD53oSIujAyTw,917 +torch/include/ATen/ops/special_i1e_cuda_dispatch.h,sha256=HlPCLJpath9non9qW1fWOmZGa_mibsqRYIohFEvhNZM,919 +torch/include/ATen/ops/special_i1e_meta.h,sha256=yoF4k_rRs_FGa11oVWwiB302c9pwKBrSpWBtu1TjUyY,607 +torch/include/ATen/ops/special_i1e_meta_dispatch.h,sha256=Rpfvp6cXDBQ-o3XkRNBGot0O8UwZ3WdLbfR30peXJTY,919 +torch/include/ATen/ops/special_i1e_native.h,sha256=LwfjbH2L5eNHWf3d0EEgYlZj2vhA_dbeMq32mEH7dnI,634 +torch/include/ATen/ops/special_i1e_ops.h,sha256=I3TytKyqNH8NVlw5gKy8PFobTe8i1kl-OHiPGLwrAZU,1593 +torch/include/ATen/ops/special_laguerre_polynomial_l.h,sha256=DY-UquarD0HsYnopRYdvraIhyGKfE7XYpbLC25SN5Qg,3107 +torch/include/ATen/ops/special_laguerre_polynomial_l_compositeexplicitautograd_dispatch.h,sha256=CgA_yMdzdjAsprvwsoxc0u5WRDLnly0VxqgrHLzY_GY,1412 +torch/include/ATen/ops/special_laguerre_polynomial_l_compositeexplicitautogradnonfunctional_dispatch.h,sha256=JLt2LI9rwhhhMYtS11cs-gg1It5VCbDxAonYbsUBiXA,855 +torch/include/ATen/ops/special_laguerre_polynomial_l_cpu_dispatch.h,sha256=qEEXSJturtKrdQplLfCAiFS9pICaPT5hb7GxE5Psvhk,1028 +torch/include/ATen/ops/special_laguerre_polynomial_l_cuda_dispatch.h,sha256=Mbh9lT1KVycQnrQaFm13vYpNoav4P29piE-JLhQqQd0,1030 +torch/include/ATen/ops/special_laguerre_polynomial_l_meta.h,sha256=B-yn9nNGH8CWL4GNz4jO8XvJbaRxrhLJaw-HCpWdkdw,644 +torch/include/ATen/ops/special_laguerre_polynomial_l_meta_dispatch.h,sha256=riX_XkQtauQqIN8eFvO2yaie0fxPRAgmxxlz5TfAMoU,1030 +torch/include/ATen/ops/special_laguerre_polynomial_l_native.h,sha256=8VKvXluwL6-2ePUuFE5OnUMiPDHebccwmRxHZvmx904,1143 +torch/include/ATen/ops/special_laguerre_polynomial_l_ops.h,sha256=v_SjS2w8qssu1i5JZcM9-38UsjRl5LyChfc7MV1HF2c,4697 +torch/include/ATen/ops/special_legendre_polynomial_p.h,sha256=ygUy7zyXZr-HPj6r8nbl-PL05RvcuE4BmvzNxOhXebs,3107 +torch/include/ATen/ops/special_legendre_polynomial_p_compositeexplicitautograd_dispatch.h,sha256=lHeiCP-1VV6AOZ0O2JTH8apLew_e-jPNpeYPBJVYWM0,1412 +torch/include/ATen/ops/special_legendre_polynomial_p_compositeexplicitautogradnonfunctional_dispatch.h,sha256=mVKKg2KBQY1OxtgdlKG1pWncJ4PHddqYldqhENox9FA,855 +torch/include/ATen/ops/special_legendre_polynomial_p_cpu_dispatch.h,sha256=QdAiR8INLjbhX9kEOJGMO1MCil77TvYSEiEJeYIVYQA,1028 +torch/include/ATen/ops/special_legendre_polynomial_p_cuda_dispatch.h,sha256=Ty5fI1_M_A_aQZmwO19bz3zJfV5e_LzOpETu0Yu6GLM,1030 +torch/include/ATen/ops/special_legendre_polynomial_p_meta.h,sha256=WpJ7igJGRutAUiwspGVJOoS8aNfwcxIO0ZVtbBnxApw,644 +torch/include/ATen/ops/special_legendre_polynomial_p_meta_dispatch.h,sha256=9Q5vqvo7O1hCHqHpkoRME3Im23UEHCczgumeBZ5B144,1030 +torch/include/ATen/ops/special_legendre_polynomial_p_native.h,sha256=tdNia9pLk9PGQJG8sroB_62LjI9gIlC0ODLMaWFn6nU,1143 +torch/include/ATen/ops/special_legendre_polynomial_p_ops.h,sha256=r8XW0yEP9QWhBX_oIyRj8jtzazc8c37uCMef6vQrbGQ,4697 +torch/include/ATen/ops/special_log1p.h,sha256=W40KlCerTTJDTlWI9z5OIVCoKfb2ZYGN9mUfCSl4zNY,1113 +torch/include/ATen/ops/special_log1p_compositeimplicitautograd_dispatch.h,sha256=zk3JiSnn-97kWqZPcJjqJpICCCVH-Odo-vtXAOVt-2g,967 +torch/include/ATen/ops/special_log1p_native.h,sha256=7mtZ0gXOBEaXZK8ckZmasagwQv4YGmKw6cA2Jcda338,590 +torch/include/ATen/ops/special_log1p_ops.h,sha256=ayhx0BPW1Vf1KgnJUYdRwDfTDp03jc8_yOnvXcvgtmw,1605 +torch/include/ATen/ops/special_log_ndtr.h,sha256=SbDEYCgP6bv8Pa1SQhRbyt3CJQlE-Aa1hKY3B8bf_RI,1143 +torch/include/ATen/ops/special_log_ndtr_compositeexplicitautogradnonfunctional_dispatch.h,sha256=8oKqlkHU-NKTgWRB7TPG3jTbBAhJpSRSo2pMYHuDmQE,823 +torch/include/ATen/ops/special_log_ndtr_cpu_dispatch.h,sha256=XTarxK9BvS44LHH0qDFbbRkez_3QSxYiakBLdBY_EpU,932 +torch/include/ATen/ops/special_log_ndtr_cuda_dispatch.h,sha256=93LhCOD56gz2r8pdlP1zk_YvrmpF-_ArJAlYX8Rwu6k,934 +torch/include/ATen/ops/special_log_ndtr_meta.h,sha256=oYSmAWpjgtr2jqoHNx8oRP-5PlgswCFXhKyLzf_Y2Zk,612 +torch/include/ATen/ops/special_log_ndtr_meta_dispatch.h,sha256=UwSpn0Uqsbu2ymIymg08r_TZOEtyKiRSgDbsMFW08Ow,934 +torch/include/ATen/ops/special_log_ndtr_native.h,sha256=rhJxlc3w0KqiNfCSd7-BSQzWFIqFaY4j_1Vq2atE7gw,649 +torch/include/ATen/ops/special_log_ndtr_ops.h,sha256=D3h0IZk30Ta-316C_H-klHX8KwXIrdzKOe2R5AGIFWM,1623 +torch/include/ATen/ops/special_log_softmax.h,sha256=YR3XK3naQ4Icpqt_rXandtRtS7NExnUMl8xgLnVETyI,811 +torch/include/ATen/ops/special_log_softmax_compositeimplicitautograd_dispatch.h,sha256=NBglBi1rPNIvn72a6zQ89FID1P7oN3E5S_YrYQkphgs,867 +torch/include/ATen/ops/special_log_softmax_native.h,sha256=X8wgQ9eQ1PYbZZzOHLgTB5hnvpu5VpnQtmVSM1xMvgU,577 +torch/include/ATen/ops/special_log_softmax_ops.h,sha256=0L8PWdG8hC1puyweIv8vdbRwwim2nwgA29AVP0-Unkk,1183 +torch/include/ATen/ops/special_logit.h,sha256=yB9UwZ7Z_YK7Lz7PAAGwj1Gh9siVMggrFHdB9CoRMHo,1296 +torch/include/ATen/ops/special_logit_compositeimplicitautograd_dispatch.h,sha256=9Z7bIexen-mhp_WlmyFfxiqFvIJPKmA7pngXtkqxgw8,1084 +torch/include/ATen/ops/special_logit_native.h,sha256=eaCFzR8j_bqFCt1MVkAbQeOurrrHIqtvzAG16u8xvtU,663 +torch/include/ATen/ops/special_logit_ops.h,sha256=nIPBoavC-ZiijAQdHQp92VFaTXj-wGAcxzs6r1ySWOo,1805 +torch/include/ATen/ops/special_logsumexp.h,sha256=BehVlDZtPMN2DZPT7ZpK_pn-_Qi5_6QcG_85nj-mb6Y,1408 +torch/include/ATen/ops/special_logsumexp_compositeimplicitautograd_dispatch.h,sha256=ke_moF6RRCcEhVGtB9v620hpcnQkboPWYrWQdIEA8XI,1096 +torch/include/ATen/ops/special_logsumexp_native.h,sha256=Ys90h-vWRTmP-c5yujfEPDeDBZ9ESr5UV7s7ntyd7P8,674 +torch/include/ATen/ops/special_logsumexp_ops.h,sha256=m3afTbNrLG3ZNWcK67nnmIGvRaQly6H1lcel31bMknk,1879 +torch/include/ATen/ops/special_modified_bessel_i0.h,sha256=DRDCZx4FjeEJpzTFBqApOudfoX0pN9Nrx8T9VdVvIJI,1243 +torch/include/ATen/ops/special_modified_bessel_i0_compositeexplicitautogradnonfunctional_dispatch.h,sha256=HLFgSX3hXs2AI25wV8KKLj1AI8lyQOTUS7Xt3vnAGQA,833 +torch/include/ATen/ops/special_modified_bessel_i0_cpu_dispatch.h,sha256=bEHaFoQYTdY3hwd0FH9bySWtowMW1JZ6XojAVU78zMg,962 +torch/include/ATen/ops/special_modified_bessel_i0_cuda_dispatch.h,sha256=gTf9VGiy4d-UefNxyiB6xzCl560f3xZQMVwpKKzUk-4,964 +torch/include/ATen/ops/special_modified_bessel_i0_meta.h,sha256=vcb0ob5O7dy9gj6o0HXx_gNiGX5rERBTssGp0-bkwaA,622 +torch/include/ATen/ops/special_modified_bessel_i0_meta_dispatch.h,sha256=OcIDqLXl7jlNd3izU_bU_JWO7ImZnZhsBX5jkQcyGKc,964 +torch/include/ATen/ops/special_modified_bessel_i0_native.h,sha256=kJUcJRXLWOWtC6-Kof0tx6IhMnP7PzFqVnpiHl_DVQo,679 +torch/include/ATen/ops/special_modified_bessel_i0_ops.h,sha256=bJrZGKz4JTCIMX6W3419mYhGdgbc8YerWjndUsNHpxQ,1683 +torch/include/ATen/ops/special_modified_bessel_i1.h,sha256=cnI7QuhFz0_maE4WsqjT4rfGtC0rs0ehiOtIryVwNM4,1243 +torch/include/ATen/ops/special_modified_bessel_i1_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Ck8I9hzGPUgtTbSRW7mJ9pD4XQuc5qkiszpEx7HLJjA,833 +torch/include/ATen/ops/special_modified_bessel_i1_cpu_dispatch.h,sha256=N-rQJyt4ZdoBiCE6ausT0F0M9dmnJpNSDHSZarx3DG8,962 +torch/include/ATen/ops/special_modified_bessel_i1_cuda_dispatch.h,sha256=TdJQ3WsWlOMwC-6PxlECEIiAhaUzodVa0vfUSdW2FC0,964 +torch/include/ATen/ops/special_modified_bessel_i1_meta.h,sha256=GbVCZeM4MhTAAFRDv2UDsVzvNASVUZKK41N4qtmk848,622 +torch/include/ATen/ops/special_modified_bessel_i1_meta_dispatch.h,sha256=7K-fZGJnS0YE54xZ_qo0WARfQ0gaKwsRJmuPbUwTC9I,964 +torch/include/ATen/ops/special_modified_bessel_i1_native.h,sha256=w_pw3gN2cqmOXybEDSydIsc_y3TT3Nc-3c9T5HsLc0s,679 +torch/include/ATen/ops/special_modified_bessel_i1_ops.h,sha256=nvIScE2cFNtH5NDYDdJvuz-ZDDJahNq4-veKIX4sm6s,1683 +torch/include/ATen/ops/special_modified_bessel_k0.h,sha256=7yQ6HbMiDDaa1ImggUxMpXps-dpJeLznZbgGCM_DpOs,1243 +torch/include/ATen/ops/special_modified_bessel_k0_compositeexplicitautogradnonfunctional_dispatch.h,sha256=f0QDgrhWVXgtv04LJdN554JdjRrUL6M51GhGzFs4_ss,833 +torch/include/ATen/ops/special_modified_bessel_k0_cpu_dispatch.h,sha256=-YbLqF2OaRMhBqIK8IrbPGgUzARGC5WkNYWFNfFw_-w,962 +torch/include/ATen/ops/special_modified_bessel_k0_cuda_dispatch.h,sha256=UkXeGXKMQOwCdNuH-gl_857nTBMhdSINJBlOwRlAR-c,964 +torch/include/ATen/ops/special_modified_bessel_k0_meta.h,sha256=eAxQPQb_kwmPN_lBbuNh-UGfYkIPcUAbjEpLYI_9jiA,622 +torch/include/ATen/ops/special_modified_bessel_k0_meta_dispatch.h,sha256=-E3m5VNU8JcGlfcnl5N69El7ui-PUIs7KGYFnENXilY,964 +torch/include/ATen/ops/special_modified_bessel_k0_native.h,sha256=mqdCWljmVF0u3C5ittkdSQiZ6WnFY3G9bQUs_UPe7IM,679 +torch/include/ATen/ops/special_modified_bessel_k0_ops.h,sha256=AXp0YUDeQpr9RNWacBEkhwjTCl0-9I6rbAj_XjeqV1g,1683 +torch/include/ATen/ops/special_modified_bessel_k1.h,sha256=qJwslatNrhk_wK9l2KSPKctRCl3xP_msoTNjL6Migb8,1243 +torch/include/ATen/ops/special_modified_bessel_k1_compositeexplicitautogradnonfunctional_dispatch.h,sha256=xkAwVlLp-20POLv-NHC90QzjtFR8HjZ2kpyye5QUl2g,833 +torch/include/ATen/ops/special_modified_bessel_k1_cpu_dispatch.h,sha256=ZVQOTEOdwzHGsipmpPYkWX2dBMzneam5FAmFxQE9evE,962 +torch/include/ATen/ops/special_modified_bessel_k1_cuda_dispatch.h,sha256=c0lvUewSlPo6QOPNn0YH39WONqhm4TIplsFMX1xyJ1c,964 +torch/include/ATen/ops/special_modified_bessel_k1_meta.h,sha256=DPfkawHR98j5VUMaQlgwGuPfaQ3ey5uTVDg3GZ5iDP4,622 +torch/include/ATen/ops/special_modified_bessel_k1_meta_dispatch.h,sha256=UIlwV3b26LR21-mHnnKp6TfKGsH-Llhm_KroDLDbC1g,964 +torch/include/ATen/ops/special_modified_bessel_k1_native.h,sha256=5jUOk_md_I8ybo9X6YvAbGUyj0XBXgsV72WMECSanTc,679 +torch/include/ATen/ops/special_modified_bessel_k1_ops.h,sha256=xcrRMd2U3yCRXKxpV-OLe0xoLUKkkz46EE3z5i04YS8,1683 +torch/include/ATen/ops/special_multigammaln.h,sha256=7KLwA2_ZboRSLSFVDxZVfZc05gfaJi45M4kY6K4evOg,1246 +torch/include/ATen/ops/special_multigammaln_compositeimplicitautograd_dispatch.h,sha256=hw4w5SO3683IsxpZfn-nlhu9nW3PdW3YundExJpENdI,1021 +torch/include/ATen/ops/special_multigammaln_native.h,sha256=R8WWg359ahp-83flG74a60tNP6j9Pg_0z4CNzTm14zI,626 +torch/include/ATen/ops/special_multigammaln_ops.h,sha256=RRCXyzNJ20WQCY_JXvJf3jO3jVegDQ5M3Qm2ZoImWXg,1723 +torch/include/ATen/ops/special_ndtr.h,sha256=7U0eREoxdD1HLoxupX8UEq6DPIAECxIv6d1OzxhDhzU,1103 +torch/include/ATen/ops/special_ndtr_compositeimplicitautograd_dispatch.h,sha256=uz__akHrt5feWbS2u6YANmHnMnuTOKujB4nBjgyrbq8,964 +torch/include/ATen/ops/special_ndtr_native.h,sha256=0pS-nh7oqpEQtOtO38AG-8VS6y4BOrli-JSJW_rBfqM,588 +torch/include/ATen/ops/special_ndtr_ops.h,sha256=nyucApfLzXul6qzyUOULhL_pK7epewhCEsBmW_YEyIs,1599 +torch/include/ATen/ops/special_ndtri.h,sha256=ZAz9Z49jAmtSIWOy6jJymW2ll6Pqj7ZWgV_lxx3h2Y8,1113 +torch/include/ATen/ops/special_ndtri_compositeexplicitautogradnonfunctional_dispatch.h,sha256=3_szt77ivZTtWepJ6PBoWTJro81aZ0iadfEggWAriHw,820 +torch/include/ATen/ops/special_ndtri_cpu_dispatch.h,sha256=8eXCICWXcrPFKNoa4o5Vwa_e1AsE8gW3yhFSpxV7AL8,923 +torch/include/ATen/ops/special_ndtri_cuda_dispatch.h,sha256=erHw-2Dtfcarv90QLeHgYt-Wr108P6H_PZHqP_LDlLU,925 +torch/include/ATen/ops/special_ndtri_meta.h,sha256=EzAOon-ud3bxGQ949vqqMmLBR30lKI4D7gK-Gw1O5-M,609 +torch/include/ATen/ops/special_ndtri_meta_dispatch.h,sha256=0Pp986Bqidq7tBPrZEzXJEx9O6UWSWubSto4tzC2IRo,925 +torch/include/ATen/ops/special_ndtri_native.h,sha256=RdtJTqOtBBjWj2tuKJUqay6b1aGdaDyswXF6Ut25UhI,640 +torch/include/ATen/ops/special_ndtri_ops.h,sha256=rWtvX7aHmcqcVAjijbq9PECCxU4tWFO6V9xnxIPOGLg,1605 +torch/include/ATen/ops/special_polygamma.h,sha256=-QSdLvBjk0I-LYGp68X6Mz9tzZPyfx4pH4tWNVaWgAM,1216 +torch/include/ATen/ops/special_polygamma_compositeimplicitautograd_dispatch.h,sha256=j4645TzA4mKHJpSl0oIq3i6RqrpyCHS8bmPC9wzZ0dc,1012 +torch/include/ATen/ops/special_polygamma_native.h,sha256=qM9vyK6NkZ6VOuWmkH6mHKiOja3cLy2tc9Uy4E9LkUU,620 +torch/include/ATen/ops/special_polygamma_ops.h,sha256=X3QUFA5BnFWJ7hRiHEABYsLFy0WLzN6AFH9pmWCEt1Y,1705 +torch/include/ATen/ops/special_psi.h,sha256=G1AHN1Z3LlhJmm9sq4YhGaKkXp-CUcy886yHggINbDU,1093 +torch/include/ATen/ops/special_psi_compositeimplicitautograd_dispatch.h,sha256=pOocDEYPQrWvFsHVZTwNkAAdsb8zZQwTMp14jYB7Wg4,961 +torch/include/ATen/ops/special_psi_native.h,sha256=riOrdFH5B6_LzT1D0W6b8DxXITPtl_WXXJVueVvnzRc,586 +torch/include/ATen/ops/special_psi_ops.h,sha256=JxsBIhVzIq9tviGtVvnMvWSW41b95HXerJuQxVfngTo,1593 +torch/include/ATen/ops/special_round.h,sha256=ZScyYeCTnBBZ4JhIO0Qzv3VppBqg6nGN16yO0LLvM-w,1252 +torch/include/ATen/ops/special_round_compositeimplicitautograd_dispatch.h,sha256=a0BcChLXvbz0RJTnP9im6d9hMRkaIbdNvnbmUN-zZ5M,1025 +torch/include/ATen/ops/special_round_native.h,sha256=7se-8MosVes3TE5czgcJpObg8Iv0abtHPbkVxBZR4ys,628 +torch/include/ATen/ops/special_round_ops.h,sha256=2DnfAuiGHP_7HZz1-uoaJiNsIObQSXWIYCiP1HGS7lk,1730 +torch/include/ATen/ops/special_scaled_modified_bessel_k0.h,sha256=jZSDKn3ph1XlT7Aa6cNgQeBUyCVNJRE_UGD9OUxSbdo,1286 +torch/include/ATen/ops/special_scaled_modified_bessel_k0_compositeexplicitautogradnonfunctional_dispatch.h,sha256=SBZ8i8FnC1JoLWfVjd4Ol99rBHfwCxJPF-II2m4G438,837 +torch/include/ATen/ops/special_scaled_modified_bessel_k0_cpu_dispatch.h,sha256=gzcQ65b7jMXF8sQNvXpOYr16LaAXZyIXkjM8rLjJPNM,974 +torch/include/ATen/ops/special_scaled_modified_bessel_k0_cuda_dispatch.h,sha256=Ic7kI5AbclWH_2gEZmaMBqcKuPpK7SnwU7WJsSPWUX0,976 +torch/include/ATen/ops/special_scaled_modified_bessel_k0_meta.h,sha256=CEs1rfZryznoUZ8ZOA8gR-pOd_qmTmBhPQ-1AUlINXY,626 +torch/include/ATen/ops/special_scaled_modified_bessel_k0_meta_dispatch.h,sha256=V_QrMBXBBz6wm3RSJmS2UQOX4vTcHaEuI9awHoeeXRo,976 +torch/include/ATen/ops/special_scaled_modified_bessel_k0_native.h,sha256=aUZkdm8FcQhmGHTG8Ili78NoD5Py6zXs-nGPE9EbS1A,697 +torch/include/ATen/ops/special_scaled_modified_bessel_k0_ops.h,sha256=fNAkyGQIN4tYCHzKQD5eGDuMqaggrVM7Aoi16niCDkQ,1707 +torch/include/ATen/ops/special_scaled_modified_bessel_k1.h,sha256=OCxy78YBwP3DoFNzmufsFm_qEeQj7KjlRY_2-jyWdQY,1286 +torch/include/ATen/ops/special_scaled_modified_bessel_k1_compositeexplicitautogradnonfunctional_dispatch.h,sha256=9QMCHdywUDHzGC5szyx_e2nd5Cu5H-8Jqf4WRDllhDg,837 +torch/include/ATen/ops/special_scaled_modified_bessel_k1_cpu_dispatch.h,sha256=h4FivR1kGh6iKEjdf96rR82UugIRty6xd05AXN4EIyw,974 +torch/include/ATen/ops/special_scaled_modified_bessel_k1_cuda_dispatch.h,sha256=gz_V-Foo2SpW0MMoDlP_weFj1Uu-TnRxEIQrrg7oDJg,976 +torch/include/ATen/ops/special_scaled_modified_bessel_k1_meta.h,sha256=JW2FhlNtK6IM2J8OJSKtg2m0xV6xcNdrxX4kMLdy1z0,626 +torch/include/ATen/ops/special_scaled_modified_bessel_k1_meta_dispatch.h,sha256=fljmUHgB0viruo7LhV402XsXv2gabuuJLCbM3A7Ku5o,976 +torch/include/ATen/ops/special_scaled_modified_bessel_k1_native.h,sha256=shXMTkuyGV6syiPFoJJTjiN_nSCOPcWla5Xl4tHvZmU,697 +torch/include/ATen/ops/special_scaled_modified_bessel_k1_ops.h,sha256=A5mKAvilp-1F9NZ9cwRS1RMbVHtyFFvmXl1Nk_vDQz8,1707 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_t.h,sha256=xVnYv8Nfh29EpqmBJBreFU4trAQqHAPTWklGbXZql_k,3359 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_t_compositeexplicitautograd_dispatch.h,sha256=eFengWdPsvAZ2e-PxHoovEY0oKhT0L_xVljlNkR2RNk,1466 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_t_compositeexplicitautogradnonfunctional_dispatch.h,sha256=zzJ3QItu3SxJSd3k-mcZ3-4gta4Xkp2fULX1w8tkC2s,864 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_t_cpu_dispatch.h,sha256=-CQz0IzawK4nMDLrWry1CMj7bgEHsntq9iLmbTjQD3g,1055 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_t_cuda_dispatch.h,sha256=wWga4OxxD9GII8-xXFa8JQjRFaE_qAEc202lHCnaxnQ,1057 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_t_meta.h,sha256=ZSPD-E_pcjd12M0Mew_0-pNVhH9oJYYCU3X594dgzlI,653 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_t_meta_dispatch.h,sha256=oEGzr1eXiOXq5iOVteIvtLuPaIg2tUfzIfbe_peiNTU,1057 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_t_native.h,sha256=CWbYK27l1YwSN5QAf337Xv335C4zsnzB5VoRoPbceJI,1206 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_t_ops.h,sha256=vVkIve2BO2o16LFC1XK7t_zidv-lpenAM59FdSmv4n0,4859 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_u.h,sha256=-J2Jyoxm_mhAD4RrjIQmnU1GWpYr095JqSUfCYgblkQ,3359 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_u_compositeexplicitautograd_dispatch.h,sha256=482jPanh3BYjKxpL31E6kNMQKi9Ntq7QNp7y3-SOjQ8,1466 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_u_compositeexplicitautogradnonfunctional_dispatch.h,sha256=d9JIdjUDzRMfBBe1LM_0K1gTnEDNMdDNKJtg279Q-5E,864 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_u_cpu_dispatch.h,sha256=wpiZ2PtPxV5cSBq_NaUCNJijKCrUFUgBNtpfSCzJ1KA,1055 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_u_cuda_dispatch.h,sha256=8Ypz42d_ITJoa27mh-uAXnu9P7wC5NQQgSvaKAq458Q,1057 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_u_meta.h,sha256=rYWXOo75ja5WWYCTfxw84dLMyfGiNW5kO57z9aRHGIw,653 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_u_meta_dispatch.h,sha256=JFdVKox_TJaDCcqI5pchOJ2_gF8fLcG1-RZlH36zvu4,1057 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_u_native.h,sha256=KUfnMNwjZJ6a98y5N-66PVA-XsL6N6Tm5gvX6fw3GpU,1206 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_u_ops.h,sha256=Rjdf82ds6rLFxP-Je2t5fqjoZIg21BQgbqWtyDoH0rE,4859 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_v.h,sha256=AwRZYacjIdXnGQALjwakcOmwN-vB7sVBAcieDDg_VRE,3359 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_v_compositeexplicitautograd_dispatch.h,sha256=K7IDndJCkZ5lOXmukVfOhczVJ7wUNgw5auFD91DbAGo,1466 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_v_compositeexplicitautogradnonfunctional_dispatch.h,sha256=2xJO2h_L4jVezkHzVtqr4cFpjQJuk1rdRoQR9DXsugM,864 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_v_cpu_dispatch.h,sha256=3LfxAC2fZII9vDjbwuhVFTfRGge4_EK5yfkmLDsZVSU,1055 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_v_cuda_dispatch.h,sha256=aM25RZTvjIo_rgo0oCLAmxqg8vyt31tna7UT29oyVlU,1057 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_v_meta.h,sha256=9cTyMXwln61IdLpzgAssR_U_qW5-qNSOoFTfV9m-Szs,653 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_v_meta_dispatch.h,sha256=6p2EHjmhU_X8PpmC4Je8bkimF_j0xU87rn39J5U-NFs,1057 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_v_native.h,sha256=zvRst_Ki2rOrdAdYzYg7DOaaJI8Ckrd8THQ3cbnraB8,1206 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_v_ops.h,sha256=v-8CVe7THL4TueRB2UoAP7sIsdIaVLC4hvRxnNKVHr8,4859 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_w.h,sha256=gFV5K0YcZZ0L6BfUxjKT7koo2zy0m9MP8ZafsgVrYB4,3359 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_w_compositeexplicitautograd_dispatch.h,sha256=lRD6u4ghpDcncwY-G97IfUuDUAEadQkDX2nhKk4bsOo,1466 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_w_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ZFmx2Kp8LXhrU9rZuGCZlughdkdUhaonKTGsjknaxZw,864 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_w_cpu_dispatch.h,sha256=lAIJo1aI1hhmBwM1dDEQg6cWlngAhlDLx3pQxVfM9oA,1055 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_w_cuda_dispatch.h,sha256=wpV5mueRkYMLGxbPmRN7YtTto9TBixK_uToGUkJo0YI,1057 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_w_meta.h,sha256=UN6Pp7ruhgPKvaQfRNveMyVKA0ENhuj0uwJkjuswLoc,653 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_w_meta_dispatch.h,sha256=ck8wVnYQ0qlQCXQGecxlCu0OM8Ev1QiQSHg56FTa-Bs,1057 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_w_native.h,sha256=NMLwCGvuxMguSR0RXki1Cm7qG5h8-ef4wO5z1YkidkQ,1206 +torch/include/ATen/ops/special_shifted_chebyshev_polynomial_w_ops.h,sha256=6s9EQghM8E1-hAKc2zgh4rGsjz_n1t96RxyyWCgECBM,4859 +torch/include/ATen/ops/special_sinc.h,sha256=_gtHQc_xog36HdQxcBglNq1To6LDi6C9eYXiTE3wfwA,1103 +torch/include/ATen/ops/special_sinc_compositeimplicitautograd_dispatch.h,sha256=Pig8xw-Mvozz3Nv5ATew1PrK7Tus-q0CJqGavKChbN4,964 +torch/include/ATen/ops/special_sinc_native.h,sha256=YOH0kxAUQhnjDdUG-nowe0mjwk50ld97uElbGNB0-H0,588 +torch/include/ATen/ops/special_sinc_ops.h,sha256=vLU9ukprtSt3SUhk3fHpysz4o7Y7BO7vn5LBvsVTURc,1599 +torch/include/ATen/ops/special_softmax.h,sha256=3tuOa1NPvwv_roUWF1RpQPqM2jaWDkmDAGFkDIo_pls,792 +torch/include/ATen/ops/special_softmax_compositeimplicitautograd_dispatch.h,sha256=OhjDEi8LPlFac84GAS_RcNBpmxNUrKmxXz2vxqQcIfc,863 +torch/include/ATen/ops/special_softmax_native.h,sha256=oODjhQsxxOl4pHVaHgAwUmg9V-Arm-sbl3pEWgimZd0,573 +torch/include/ATen/ops/special_softmax_ops.h,sha256=st2NvcjZyIDs9-yTiT9M266OyRo3LEf2ZtqDBEyUocQ,1168 +torch/include/ATen/ops/special_spherical_bessel_j0.h,sha256=uPn8RP6lnqM9ynqqtPJj_kGyox1kbEoaqWMyqaBpkzQ,1226 +torch/include/ATen/ops/special_spherical_bessel_j0_compositeexplicitautogradnonfunctional_dispatch.h,sha256=CLbmwUwKPr6Tfg0iyysDxUN7Ak66xLgZAShZGsi5wkM,831 +torch/include/ATen/ops/special_spherical_bessel_j0_cpu_dispatch.h,sha256=Htud9A5I-95D7avL5hBOd7hZPXlwO93_jNl1C9JVckU,956 +torch/include/ATen/ops/special_spherical_bessel_j0_cuda_dispatch.h,sha256=5IcW2tHIDGb7YidRR3wPXhI2lsvkskiN5N64q1owgkk,958 +torch/include/ATen/ops/special_spherical_bessel_j0_meta.h,sha256=PQLRXwfz4tagc3Q-OGF6EnuXve_Fezy798ng2-SAkrA,620 +torch/include/ATen/ops/special_spherical_bessel_j0_meta_dispatch.h,sha256=fVbQyjaU6OZoPJABz-TzjK2KJaYg3g_cfTnQKzmvFto,958 +torch/include/ATen/ops/special_spherical_bessel_j0_native.h,sha256=ePSwyP5xWCBCLnsleViOhyJjEf3med1Bv4TiJmGGdA0,679 +torch/include/ATen/ops/special_spherical_bessel_j0_ops.h,sha256=9hriV6oHJObDm0wN_8JgMwBmVyaWPSQ95D-aGk3mpk4,1671 +torch/include/ATen/ops/special_xlog1py.h,sha256=M6do9hCpTgvd8TiT8ypPtmT34gHX-kFlDqzJ00Dd2iM,2946 +torch/include/ATen/ops/special_xlog1py_compositeexplicitautograd_dispatch.h,sha256=L0D6xcx27G99rgNk-oCKcRiutuo7X8Ayy4v_o7myJDs,1370 +torch/include/ATen/ops/special_xlog1py_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ToFOTXv3U74TODdVmJw2a7PqvYYjmBnQ565ErBsHP5Q,848 +torch/include/ATen/ops/special_xlog1py_cpu_dispatch.h,sha256=Y5hjl4ThSuaSHcnxb7L5tCOAFZF6A-PjbHNsDthAbi4,1007 +torch/include/ATen/ops/special_xlog1py_cuda_dispatch.h,sha256=R4wS-SaSmp0-KBsEgG-9sqS4iB1dGToemgxL-1wij-M,1009 +torch/include/ATen/ops/special_xlog1py_meta.h,sha256=cHireGF4wxHYKeUhntvc-DGWU48WFCKNp2Vy-zFvrkg,637 +torch/include/ATen/ops/special_xlog1py_meta_dispatch.h,sha256=1lw4xjjbzVxZRcR26SC2QSIarZJlGzDP37SLUtwRy44,1009 +torch/include/ATen/ops/special_xlog1py_native.h,sha256=JY8C6Y7rwN1d2Sk4JyC8wg9yCwzwimS1u35Z_7CqmuU,1080 +torch/include/ATen/ops/special_xlog1py_ops.h,sha256=WICwpZLUGjoHaoZtFDW9jkyIGs5eeZ3YUBaYhKb9yRg,4613 +torch/include/ATen/ops/special_xlogy.h,sha256=GR_KPGqiajhVkODno1-ZGiX7ec8CukGF-YPHXIzSiCY,2890 +torch/include/ATen/ops/special_xlogy_compositeimplicitautograd_dispatch.h,sha256=RfCswV1fxJwoUg8vNyInd95B9bpdu6vn0GqALEyoHps,1671 +torch/include/ATen/ops/special_xlogy_native.h,sha256=7ie24EzC77ueKyLan4GRQOmwtXqGvgJA8spCBarAWwg,1042 +torch/include/ATen/ops/special_xlogy_ops.h,sha256=PsfWuVnLI-ql9mLQbj_mnerbg9x9ml4nAdpfQEvPGwY,4577 +torch/include/ATen/ops/special_zeta.h,sha256=sgENEz77fbwVD9aEe4xdpSN10Iu3pD7IXri9poTpyyU,2862 +torch/include/ATen/ops/special_zeta_compositeexplicitautograd_dispatch.h,sha256=z3tfbizWWEeAbY40USOMykQo-5CUO5RYFAiWnNzQ9VY,1352 +torch/include/ATen/ops/special_zeta_compositeexplicitautogradnonfunctional_dispatch.h,sha256=kAUD_m68jxgfMqzs4AJsTK2MXfj5TsL8Lqd9UfdtSIg,845 +torch/include/ATen/ops/special_zeta_cpu_dispatch.h,sha256=ZrjIc0US_ul8CuL4Q08s79k6Xn9kb1iXSDgYc790iec,998 +torch/include/ATen/ops/special_zeta_cuda_dispatch.h,sha256=RLgaIA4thDMt-ujTZwHOU4Z1FsnAIfz0IaGYNqAvXs4,1000 +torch/include/ATen/ops/special_zeta_meta.h,sha256=tTSDD6nIahezLgOPWnV7SNhIk4dMQuNXHHttgXTmHe8,634 +torch/include/ATen/ops/special_zeta_meta_dispatch.h,sha256=r2kF_JR5SyrMO-byaAOpsWJC6sBfaD8xMrUX4rMK97k,1000 +torch/include/ATen/ops/special_zeta_native.h,sha256=uQSdJHvGDVI7QVWN3UoLxsOYudWRNp5anZbBr6Cv96o,1059 +torch/include/ATen/ops/special_zeta_ops.h,sha256=B3U8g2zJ1PsTmd9dwnnbKZC_i8hPzky46iCuLliJPeA,4559 +torch/include/ATen/ops/split.h,sha256=xhX5S0BzrFpebWntrJLdN1ahgzsCvyUahst79f92KFM,2755 +torch/include/ATen/ops/split_compositeexplicitautograd_dispatch.h,sha256=KTpCl0gjkeXxMx1X86oDiJkoGAc9mLuCmexo6-LVDEs,951 +torch/include/ATen/ops/split_compositeimplicitautograd_dispatch.h,sha256=8x1M9RicuUjx-r2IzayYR79lN2Ots7IdKSO-3X7P3y4,967 +torch/include/ATen/ops/split_copy.h,sha256=V92EcSbObta3sfJiNSt99gfu65UYqJqL_anSH83FV6Y,4015 +torch/include/ATen/ops/split_copy_compositeexplicitautograd_dispatch.h,sha256=gR73PuZTNwcSSnMBAGGkmrV8ekqEtAG2k-DEDhRkhF8,1200 +torch/include/ATen/ops/split_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=5Byu1HwXDM9au6wdpRcE_GaJ-Kd9ZnG_27jWWPT2GfU,987 +torch/include/ATen/ops/split_copy_native.h,sha256=oQ_S8jj21TrDmqEdA7IveQL9hyM6z01n85i8KYjRVzE,686 +torch/include/ATen/ops/split_copy_ops.h,sha256=kfBpcO3sOJ4ecQPsFRS3Sl8p9YJtUG4gB5IrzD_3i0s,1903 +torch/include/ATen/ops/split_native.h,sha256=FkYhfY3Zy--vRRKqy13-ww0_4wc91ynKr78CzhM5SkA,669 +torch/include/ATen/ops/split_ops.h,sha256=qDt9lf1pzEYW00Iv9CAD99BDIz8hKcLT0Rj8iXot5lE,1898 +torch/include/ATen/ops/split_with_sizes.h,sha256=nVcnDvk1qTIp0XkA1A5YQM3S5b4H_9iXv8xxJ8feZRE,1765 +torch/include/ATen/ops/split_with_sizes_compositeexplicitautograd_dispatch.h,sha256=K74e9PyyuQTNtLe10vaqzfwixlXUtsU4usXfFu8ujn0,991 +torch/include/ATen/ops/split_with_sizes_copy.h,sha256=WAO4X4l4r4g9RJ2CU9PCRSQHv2d6jJiHTcySKUpH-jc,4524 +torch/include/ATen/ops/split_with_sizes_copy_compositeexplicitautograd_dispatch.h,sha256=l8OImAAcFMwN8rbDWua7xgkUCg7oA9SIVCpQ2pAU3TE,1280 +torch/include/ATen/ops/split_with_sizes_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=j9GHV6yWQRzA2jG7W9RqloV3J_CMGaFyAzC8bD789_0,1027 +torch/include/ATen/ops/split_with_sizes_copy_cuda_dispatch.h,sha256=LroLQJybFIfI0agZBxwLhHc3VEExQHHej52UYY6OKmA,1238 +torch/include/ATen/ops/split_with_sizes_copy_native.h,sha256=zcVU3tcW0h_3wPisjPnnFs6TMnR2HtDWruay5KsopLs,847 +torch/include/ATen/ops/split_with_sizes_copy_ops.h,sha256=t1FGv1aAsWCpB1wdkhftNIWfZmTf_H131xA9h80OdwU,1986 +torch/include/ATen/ops/split_with_sizes_native.h,sha256=-nAMhd1riJED6Vn2iUiijruY0cPawzbK3HhK-ciRs04,697 +torch/include/ATen/ops/split_with_sizes_ops.h,sha256=_OAGra5zkhw2p6XCRdTjc9fVPljPni3o1PFWsLHXDLI,1205 +torch/include/ATen/ops/sqrt.h,sha256=tOsAnErbzc7ye6An3jUWb0Yz9gNvu74pDzEw2GmmK-8,1164 +torch/include/ATen/ops/sqrt_compositeexplicitautogradnonfunctional_dispatch.h,sha256=QTqXs_SxcuKDLV-CIwIOZJg5CxlpAtuSuh-6LBXXPJA,861 +torch/include/ATen/ops/sqrt_cpu_dispatch.h,sha256=xDERcizmbnhFj-XzQy9iLNNwBc032VfLBZqNheoEwx8,946 +torch/include/ATen/ops/sqrt_cuda_dispatch.h,sha256=q8mEolLONkn2r1QG9q12_xSNlN57nHYRpyJb84pdaF0,948 +torch/include/ATen/ops/sqrt_meta.h,sha256=HGhLodVkOMVkY5zdpvB8XVQicoNhFe8W38uxqgfqPbo,600 +torch/include/ATen/ops/sqrt_meta_dispatch.h,sha256=jeBk8tAUY6yMPuwllKNpn8wzTokIZ7VSCR0tUoGle1w,948 +torch/include/ATen/ops/sqrt_native.h,sha256=Hnx2cPsD284EJXFMylByhktu7UR1rpdWnk1Fzj0CKIU,1093 +torch/include/ATen/ops/sqrt_ops.h,sha256=gtsJ6qAxL3v9cpjJcx6fF-JuLt9iyUKLANuBRYHom4o,2055 +torch/include/ATen/ops/square.h,sha256=yU-8M8whFTY-b6Jp4JT_diC3t3RYHLqT_XRzyejCs_c,1190 +torch/include/ATen/ops/square_compositeimplicitautograd_dispatch.h,sha256=FQI127UPL6GuNgFX_7zp2RK-Oc1w8FrvXSNVqd-vCKw,998 +torch/include/ATen/ops/square_native.h,sha256=ptF847iYH-zKvHO15-xsGoWgLcflniS1-78mT6yFNOA,628 +torch/include/ATen/ops/square_ops.h,sha256=6lJh-rb0pwrrSHqqQs622Z3qeBgWTeeBSDMn_Zd0o-A,2073 +torch/include/ATen/ops/squeeze.h,sha256=eMeUiib5AtUQc2P_qHgxxqUEt-j3jF1Cy5czcwdNLEE,1234 +torch/include/ATen/ops/squeeze_compositeexplicitautograd_dispatch.h,sha256=nJ2h24X44PKWfSFVb9ivWT-NoaLM4sVOeDnpJvOSmLI,1127 +torch/include/ATen/ops/squeeze_compositeimplicitautograd_dispatch.h,sha256=YQa0AQDbokuxGIt3VY5htPMX2Th7oFAFS5aYLktU3n8,875 +torch/include/ATen/ops/squeeze_copy.h,sha256=myQ0pOtgCCk-AKBjNpei8V-27t5myt-E7s4dfWs9k2g,2535 +torch/include/ATen/ops/squeeze_copy_compositeexplicitautograd_dispatch.h,sha256=WA0GcLBGi3tbDYKdYFudmF5WTEDoDJohcNqvCoICjO8,1313 +torch/include/ATen/ops/squeeze_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=8ldT8yCEs8zO_0M2FwEDmUOxslTqDkU60Vypu6F6lS8,975 +torch/include/ATen/ops/squeeze_copy_native.h,sha256=G1R-1z1f5ZEY8w4HhrGsVEuAttKbjQLgH8nYKkZI-z0,966 +torch/include/ATen/ops/squeeze_copy_ops.h,sha256=1d9MoaiMvgB48hspZjul8-Oe6lFNwM4G76wSVEBKetY,4175 +torch/include/ATen/ops/squeeze_native.h,sha256=dS5RyQlYy7mKTIDYo3AEpxgyT8IQ1mGCcvEVKDI3F84,1443 +torch/include/ATen/ops/squeeze_ops.h,sha256=Qy3CU8DaOaoCpE9YS4cxgTKiYaO0C02rFo1x50I1w6M,5027 +torch/include/ATen/ops/sspaddmm.h,sha256=Mz1VfzD86rxYFTx6VhWgp_D3RCrk1nhs-9EdzpoA41g,1623 +torch/include/ATen/ops/sspaddmm_compositeimplicitautograd_dispatch.h,sha256=7taBNpNI3vjCYffW1-58SRhFeRatB6nrRr5R_by0674,894 +torch/include/ATen/ops/sspaddmm_cpu_dispatch.h,sha256=Cq7ZjM8zBltKxYimHgAvn1HheG0qcVl_xjBbtroUaJw,1057 +torch/include/ATen/ops/sspaddmm_cuda_dispatch.h,sha256=UeoJBvARDr6NndrsHanRfMAxHizElTxoQtBar7AEs7w,1059 +torch/include/ATen/ops/sspaddmm_native.h,sha256=F8Akt-sUpEmohdtLldJjNuWKaMFiL-5qD3_duyD7rYg,1374 +torch/include/ATen/ops/sspaddmm_ops.h,sha256=8j1YR6ocmsfSdA1HhwEoegXHRFe2eUvNrv9ERLTokjg,2256 +torch/include/ATen/ops/stack.h,sha256=11P8K6X6Kv0rQZrizSTkp_EMEBXb0sLmggWZD_om02Y,1145 +torch/include/ATen/ops/stack_compositeexplicitautograd_dispatch.h,sha256=FGeWHMT47DqF8bHUaZ089oPkdjKAVrzG_FU4lMhO-5s,983 +torch/include/ATen/ops/stack_native.h,sha256=mt6smclalD-vwdoqDw33XANLjUXtNRDGmxY9LRwVhMQ,600 +torch/include/ATen/ops/stack_ops.h,sha256=SAqXMT6dQ9aQntjk0_ogFzx6sqodHcSrcLdwu7Tv2uI,1647 +torch/include/ATen/ops/std.h,sha256=VKUNYnlb-xYvPV643qd1jO34uB3x-ZKYmP-y7Cd6nZg,4934 +torch/include/ATen/ops/std_compositeimplicitautograd_dispatch.h,sha256=JD5wk81m-1k51m5dxK0tWDNRS2WC8U0xi2bC-5-TMzA,2053 +torch/include/ATen/ops/std_cpu_dispatch.h,sha256=6NK1BLZThgasuP0SyTfjiqfw0o1iaE2BzR05dEJNi-c,1238 +torch/include/ATen/ops/std_cuda_dispatch.h,sha256=5vV-v5ayGmLXntSPlbNtzVCt_EOQD8bKmQef2N0x33g,1240 +torch/include/ATen/ops/std_mean.h,sha256=yQj0Z37rrfoA0MvB4plr_MuX44QBH3BNUxzmdI5jqUY,3253 +torch/include/ATen/ops/std_mean_compositeexplicitautograd_dispatch.h,sha256=_Bq5FHEqHURqhDHdygfJl_eNh0VSfkaO9_V4qaAWkQU,1207 +torch/include/ATen/ops/std_mean_compositeimplicitautograd_dispatch.h,sha256=MQPVwNDlvML_Yfwb2YAD8Jm3hIjN84NL8F8nxRxjP30,1299 +torch/include/ATen/ops/std_mean_cpu_dispatch.h,sha256=fFzgs0mu5YMsZ7Lb2ocCnhaqAHQJle30HjM2OWPUIhQ,897 +torch/include/ATen/ops/std_mean_cuda_dispatch.h,sha256=_qGAMEtJ0mRRsLUB-RGqGC_xR1m7Yr4W512wqdwWofo,899 +torch/include/ATen/ops/std_mean_native.h,sha256=rWpowP7VAUNbXFjmcWUXUSdWiADh6gywBpKozBFgz54,1463 +torch/include/ATen/ops/std_mean_ops.h,sha256=lm0Nd3SvZJ-UrUlClqCQsiXjbDoF6L_IaAj-zBtGKQo,5756 +torch/include/ATen/ops/std_native.h,sha256=HJk7AxMJKlZLgOZc9zrIi8Zx7WlI_xxSu8YksfQzwko,2043 +torch/include/ATen/ops/std_ops.h,sha256=lx_Galln53KC8qiftkAfdElPPdh1UxH0swWMV1egENY,7597 +torch/include/ATen/ops/stft.h,sha256=6vUS8PlYo1pIkj8-EQJHVf0GiXlPfbIE9KhZahLRWnI,1886 +torch/include/ATen/ops/stft_compositeimplicitautograd_dispatch.h,sha256=jGvQChw6-XJfZXynjiUz_RpSU7a4AbRh7aDGzXBE5cg,1432 +torch/include/ATen/ops/stft_native.h,sha256=NX4UAUor0RrnkM96PbPZij2D7FPSkWZuT8eWVkcdqLg,1181 +torch/include/ATen/ops/stft_ops.h,sha256=uHKIVdA8QgjytTwWycWnX28gB0iV1AeTcGn6awP8-uo,3103 +torch/include/ATen/ops/stride.h,sha256=8Khd6lEJogNNX_tQm2G9M9G1wKq6W_EFfp2ko_W2Htw,869 +torch/include/ATen/ops/stride_compositeimplicitautograd_dispatch.h,sha256=6vL2YebnNRUj1JnAEWmH9sNdvds9MoabuamU5YNrAKA,866 +torch/include/ATen/ops/stride_native.h,sha256=Ixw7a8ed3_wj-Ifn8o9ovezLutkCbds2Aze2NMPTMxg,576 +torch/include/ATen/ops/stride_ops.h,sha256=trtVAHkztSMSiWHbkb1zrxWAybhAkJHChZTtM67JMUg,1587 +torch/include/ATen/ops/sub.h,sha256=gVNvRSgWnhvHPISuVt4aTSElhAOH3HrWA7NpCXgifnI,2168 +torch/include/ATen/ops/sub_compositeexplicitautograd_dispatch.h,sha256=FOtDJwJ5pjNWtI6hyV7n52g9crqkmWe2EnIO5Jzp4_M,1200 +torch/include/ATen/ops/sub_compositeexplicitautogradnonfunctional_dispatch.h,sha256=zUwPmg40X560MIuhO6OC7j9nh8AtX5rADjxX7t6DWzc,967 +torch/include/ATen/ops/sub_cpu_dispatch.h,sha256=93Qns8HTG1If2GJX9QufWlNNM4Je38OXslh7cOq2TmM,1156 +torch/include/ATen/ops/sub_cuda_dispatch.h,sha256=wJbtgTEKFZ7beP-drtA4x4W9b0y-MOll40NxcjO3DSw,1158 +torch/include/ATen/ops/sub_meta.h,sha256=VwsUDGAJwodVZOwC6BavWzg4_ZnlxiteNl2NhFmJXf0,658 +torch/include/ATen/ops/sub_meta_dispatch.h,sha256=HXyc6o8InKAmyhHTqTQmdO7ycpHEQYI28JMb8P0hKtE,1158 +torch/include/ATen/ops/sub_native.h,sha256=qwLm2NFV3E9mBhuUJfUNL2EgdYEKG0W4WuJvGrxf3Hk,1614 +torch/include/ATen/ops/sub_ops.h,sha256=j7wbW1M-4sBz9v41CCBQmcv_aYPpmzDH3Mt5iJRI2XE,4792 +torch/include/ATen/ops/subtract.h,sha256=KuXAeCm1ToXw_FEbZju5mvOLRx72fboKi0zP62biiko,1630 +torch/include/ATen/ops/subtract_compositeimplicitautograd_dispatch.h,sha256=5cKFIS_u6v72A2Qi2v1woyG9YGwAroMmN6V8zPerU5M,1439 +torch/include/ATen/ops/subtract_native.h,sha256=B7pTgb-mzqJZ3pjx3zLdJgf0COd8Aad8wGVUpTNEj30,1013 +torch/include/ATen/ops/subtract_ops.h,sha256=bQBPrTdA8QgFGN6jgr4mfVgZTVFtIv7XEAMHkNXs92k,4080 +torch/include/ATen/ops/sum.h,sha256=DJ993lP1rf9Ci6vo3m4ZLnvW71R0G-KVEFiRanLdGao,3451 +torch/include/ATen/ops/sum_compositeexplicitautograd_dispatch.h,sha256=5UR4vjeskuIBslnAYZr8bI-RL1NH2ocjUy4fmfUeurM,1084 +torch/include/ATen/ops/sum_compositeexplicitautogradnonfunctional_dispatch.h,sha256=R_UdzF96ZmDJiKx2-4N3pKPjlT8yXoSTAkLnCIKKheM,913 +torch/include/ATen/ops/sum_compositeimplicitautograd_dispatch.h,sha256=TP2LOM4Rn2nErQSGvLci5lZFPXNckOqzFzNtLnJKMUw,1201 +torch/include/ATen/ops/sum_cpu_dispatch.h,sha256=O-s0dNgF3qBLXU4QqsUdDnI6VXKr_ZZZV1leRTovTKc,1181 +torch/include/ATen/ops/sum_cuda_dispatch.h,sha256=bhcfRmDZXsby6LRSeuiSRd0oElDZcvH1qXDHWZiu47Y,1183 +torch/include/ATen/ops/sum_meta.h,sha256=sOL7uxkq7Lk6qzQNGU9Wqc0A5SuxH2fufzG4F2ozN_0,693 +torch/include/ATen/ops/sum_meta_dispatch.h,sha256=gjQ5Zie1P6dTptFMNP_-S6GY4g8MtcwAUZIlXJW8EJY,1183 +torch/include/ATen/ops/sum_native.h,sha256=BpxokbjnUSMrON9_4jPPFaI11oiBYab8dRNqfOfGEa4,1957 +torch/include/ATen/ops/sum_ops.h,sha256=Qq4VmzEI9JkuPdbF3ACoLNxPHxLIygOQrlS6sUexldE,5252 +torch/include/ATen/ops/sum_to_size.h,sha256=Ois6LgW43Xq2BXpNbjeIF_mvMk56s4-0hLASEfc0UEg,1023 +torch/include/ATen/ops/sum_to_size_compositeimplicitautograd_dispatch.h,sha256=Eh3b2z2itQPdXdD5HDj4LiFpleNdBIemtyxIrSP7fkQ,907 +torch/include/ATen/ops/sum_to_size_native.h,sha256=e9G18CwfeNgvsr75xtM8gdWS1WGokb0Ww9iVIDim1gE,535 +torch/include/ATen/ops/sum_to_size_ops.h,sha256=XeN0_TdDa5fraeD8Tja8aOjLuLbJN2kYZQD3TvFrIJ8,1065 +torch/include/ATen/ops/svd.h,sha256=ckNKGdT_i2J2dXL6BSCuEDt1zVvSs_W1DNcleeJHBrE,1601 +torch/include/ATen/ops/svd_compositeimplicitautograd_dispatch.h,sha256=xMS1Vg4TEhVGTm6ZcWYI7AEawlySwc-1T2pQwog0YLs,1217 +torch/include/ATen/ops/svd_native.h,sha256=NJjgYqMHrRVhfx4KHm3TduQDUvzQYYgHpTnOa9Y8i50,742 +torch/include/ATen/ops/svd_ops.h,sha256=hX0c8Qo87p_rToHPm_WewjiU9pfnN32bacBpYcDibzw,2149 +torch/include/ATen/ops/swapaxes.h,sha256=3dU2tvH-VL5_0n-V1pyIHpx-P-zxwwmOVWkqenk0yQQ,724 +torch/include/ATen/ops/swapaxes_compositeimplicitautograd_dispatch.h,sha256=oGE0ftTl27XWLqNeC_OZLhyrQBb0uhb1fQ0bFdkZR-0,903 +torch/include/ATen/ops/swapaxes_native.h,sha256=K-M3iLJXOR5dbG8-7aNk2sriyXEneFYglEKmi5D81dI,613 +torch/include/ATen/ops/swapaxes_ops.h,sha256=kp5_1ZHOqNSpIriCYx3nsHdzKBX38WwDAjSgXBqpMN0,1690 +torch/include/ATen/ops/swapdims.h,sha256=z3s3Hq3cc4VbIqnLJLtxqxozi9Nkf920bI4iN313MMY,718 +torch/include/ATen/ops/swapdims_compositeimplicitautograd_dispatch.h,sha256=ShpqJ1A8XdJn_op5-to-H5VQcnZ4I0kvK8ewFCY4dPE,899 +torch/include/ATen/ops/swapdims_native.h,sha256=vvDg4tfsP-3C4xNlBLPXOpM3y28M4p4WtPq0qoAuT5I,609 +torch/include/ATen/ops/swapdims_ops.h,sha256=LvKlvrNY954VSaG8wsfShaNdIimPvwwVNukTq9Wf1uE,1678 +torch/include/ATen/ops/sym_constrain_range.h,sha256=9hRJH9yvhruPY8alKeGyd9aa70p9tVckT3X_DnztHE4,819 +torch/include/ATen/ops/sym_constrain_range_compositeexplicitautograd_dispatch.h,sha256=B0ukZ5ypBaWkS3hE7yJlXjVpF-54z_lZK__0T8vMQW0,884 +torch/include/ATen/ops/sym_constrain_range_for_size.h,sha256=ZuzeX_AHWV5RVtXh9qlpsE4bnUol1dxdUp5cp39q7U8,855 +torch/include/ATen/ops/sym_constrain_range_for_size_compositeexplicitautograd_dispatch.h,sha256=6VXxgl-sp6GRWFPulOGLHABROczqfj3sJVYz16xXXUY,893 +torch/include/ATen/ops/sym_constrain_range_for_size_native.h,sha256=T573Mt0qZ5LCRa4GOP4RSLnnduFF0jNXBPW4lZuCnK4,603 +torch/include/ATen/ops/sym_constrain_range_for_size_ops.h,sha256=40MfpBAeKmw2jMi3p7uRnQL5IG4lhFx2j_TR7K-B4dw,1211 +torch/include/ATen/ops/sym_constrain_range_native.h,sha256=i5h-Vju8P_CaRSivnO12EOl8_0dgtkxF_Sk9dbZmSd0,594 +torch/include/ATen/ops/sym_constrain_range_ops.h,sha256=66p6IGowaT2XFU-qmBBGS2yqXXcW-c8P9Gm-xOqv2XI,1184 +torch/include/ATen/ops/sym_numel.h,sha256=o1ij1xY0fS82zz8b9OnL7wC9uEwsnNkTCEbQZ8a-ZBA,668 +torch/include/ATen/ops/sym_numel_compositeimplicitautograd_dispatch.h,sha256=FxBVqhhU4ffeN4wq3dt59FYjKPWB9oiyM7voaFa4JdY,791 +torch/include/ATen/ops/sym_numel_native.h,sha256=1WnxowHMnm7LjuWj9_zqrNTIPlv-_DKCicGitrJRPbE,501 +torch/include/ATen/ops/sym_numel_ops.h,sha256=DUJIHeEW50L28bliYY6t73BMdr3sdWUsCIlmhW6PGVE,974 +torch/include/ATen/ops/sym_size.h,sha256=uGfyCaqRQ73Ge_7bSDl-Ab-WncF8RNr-49x47pQM5Fg,699 +torch/include/ATen/ops/sym_size_compositeimplicitautograd_dispatch.h,sha256=LHN-y4XpKWxgq9YlcoydfvNSblhxF9dh7MkC8WTuMvM,803 +torch/include/ATen/ops/sym_size_native.h,sha256=YVBN52_BgSyPj81s3Ouhq4Xp2LK9HSlgoAh0_vakjCg,513 +torch/include/ATen/ops/sym_size_ops.h,sha256=4GFATwy8QTvlom_jb7NA0Hlb-qA_s1J9vrdBUuCKo2I,1026 +torch/include/ATen/ops/sym_storage_offset.h,sha256=1oteqkw6QZCV6KdunyFDyZnCcQjkR1qQWNEf6v8MTQ8,704 +torch/include/ATen/ops/sym_storage_offset_compositeimplicitautograd_dispatch.h,sha256=61lFZV_MSiP5FzfmHHjHNGP07qyu5FpDGg8gsgW-ydg,800 +torch/include/ATen/ops/sym_storage_offset_native.h,sha256=-k44eCmGjXyRBz1UxuYK92R3LJs2bEoEgS_z2-U2zvQ,510 +torch/include/ATen/ops/sym_storage_offset_ops.h,sha256=ZfR-nuirFZ0YQ8Jll8Oh7Ck6Ja3PLeE4slNGSrlJS_o,1001 +torch/include/ATen/ops/sym_stride.h,sha256=NcnyhGV47h6eDl46O0tKYpCidVby5_1U57T8yjf8nRw,707 +torch/include/ATen/ops/sym_stride_compositeimplicitautograd_dispatch.h,sha256=B8StY3b3zATPJlD6QEyLdeeD-sYuX4KwHPreO7UtS-M,805 +torch/include/ATen/ops/sym_stride_native.h,sha256=zc25M8sfzDxMdiE-5IQoY3G-z4PMtOCokW6qh-K8ZPs,515 +torch/include/ATen/ops/sym_stride_ops.h,sha256=Zj4a5Yk8-ArRQPoDzTr3Z4IbCvq4Ww6l5Im78HRyhiM,1032 +torch/include/ATen/ops/t.h,sha256=RNq0bDZ_qlNqNC2q4lKgjKVXACSpOE_ToFLSfMLDOVc,630 +torch/include/ATen/ops/t_compositeexplicitautograd_dispatch.h,sha256=xD0voEmyjpQOBrbDOjsmLShs1qc0uT7JevKfeRSlDvw,829 +torch/include/ATen/ops/t_copy.h,sha256=8ShZ4Jw3oWNuYHv4_cRDJqjv4Efq5JOdnpCRu04j-9A,1043 +torch/include/ATen/ops/t_copy_compositeexplicitautograd_dispatch.h,sha256=KBw6tUI2fMm4OdzSkN1xeKh0MB9qvlXEjH0qWbaIM-w,891 +torch/include/ATen/ops/t_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Fv20Mcc11YCreyQqzrL2E2VJnVpKtcxWZq1B1bhjVBA,813 +torch/include/ATen/ops/t_copy_native.h,sha256=vpb6cfIJosVn13J4PfMaIzToSSihI9blfm_UQBV1D2I,576 +torch/include/ATen/ops/t_copy_ops.h,sha256=B7hB8onh7zxFDd_arUI8JE9tPuF1uAHKsRZVI8K7hpo,1563 +torch/include/ATen/ops/t_native.h,sha256=HutAtMAC9E04xvXdCmGHnn1SftPhKSPxco049CW6-SE,539 +torch/include/ATen/ops/t_ops.h,sha256=-G-ZQik3YyHPaODbMC_BO23JCoBzCPMBz0tDGSUrs1o,1448 +torch/include/ATen/ops/take.h,sha256=aPLP7ct-Bbvibe3Cbc4nGpvzzCkb9SpwAVdxdlnP6Yg,1164 +torch/include/ATen/ops/take_along_dim.h,sha256=f_j3JC_GZikFZDfSnUKZGNCm5bQKe26Qf4pEekzvUd0,1462 +torch/include/ATen/ops/take_along_dim_compositeimplicitautograd_dispatch.h,sha256=_bC9R7OcwElfc5z0yIiNchLk0c7MLoZxA0Ei1Q2ykGk,1174 +torch/include/ATen/ops/take_along_dim_native.h,sha256=_e_QJTRU2_FxEznJw5ccooq3rNyiKB08m59DMvZuISQ,723 +torch/include/ATen/ops/take_along_dim_ops.h,sha256=vQkGKiZ7KmsJXZslMYXquAkS9B8y9Bi9U_0BxuHyBro,1997 +torch/include/ATen/ops/take_cpu_dispatch.h,sha256=fXlVEWiWRrKsg69P0sPensGZr7ZQyg52tw47Q1_SyC8,974 +torch/include/ATen/ops/take_cuda_dispatch.h,sha256=sRzCQEz5iL7boJ2Db_SOpTeUqTJX3ZxXyoyxUvyBMKg,976 +torch/include/ATen/ops/take_native.h,sha256=oe9QqfRwBDs-K06z97Zbb3TwOrUARHS1nVkOt7GAHjI,624 +torch/include/ATen/ops/take_ops.h,sha256=BTVq6PtJ9Ym7zFoWESzgown8l5JVE_DpXGXQzZXap0w,1723 +torch/include/ATen/ops/tan.h,sha256=tpzOGuHXgiXDgR7nQKtnuMcbw4fOtO4kUw43ieyqEYg,1151 +torch/include/ATen/ops/tan_compositeexplicitautogradnonfunctional_dispatch.h,sha256=pBs8FI8R7mCvmk-h81GnKW946DrruhxIfMoFWhEYu2U,859 +torch/include/ATen/ops/tan_cpu_dispatch.h,sha256=RFqr3fX5eZQam5a6Ts-orS7SSfp-K6NuJQXJZPGLAaw,942 +torch/include/ATen/ops/tan_cuda_dispatch.h,sha256=onmoa_XDe_v5bsUCKB7ZlpNaKgiPPOpKSvUywHO-55g,944 +torch/include/ATen/ops/tan_meta.h,sha256=rJwSN_2LMMyXkL56_kBgsQZfpeg9Qwg-qkKYPzj-E9M,599 +torch/include/ATen/ops/tan_meta_dispatch.h,sha256=SGqo2AYJY1sOBMju9D3LQSZ5SXg5Hu_fwT_JrJlpXhM,944 +torch/include/ATen/ops/tan_native.h,sha256=Denjuqb_1o6RzpB7tLJaS__9OuKCr5Jyk77r4GP0SXQ,1018 +torch/include/ATen/ops/tan_ops.h,sha256=mZIZPKlzhN8YTrBq3gMBLY7F0afMMQBF2JZszfsUv08,2046 +torch/include/ATen/ops/tanh.h,sha256=wPhu8dKCTx3nsL70-VNWCfV1Ovf6JMXQ1BRLcG9xLuI,1164 +torch/include/ATen/ops/tanh_backward.h,sha256=0LJLMfiCrkay2YlvXbhn_AbArXB8zc5DzDWZGEJ8-pQ,1396 +torch/include/ATen/ops/tanh_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=5vkHy9Z7dXvFgAXI9X_C98wBcQHmtJkOuSNzwXh3qms,854 +torch/include/ATen/ops/tanh_backward_cpu_dispatch.h,sha256=eVmoekzy0wRpt5ECOJaJVddPHvjgpMCXiGKOHM_bFaA,1039 +torch/include/ATen/ops/tanh_backward_cuda_dispatch.h,sha256=nstMIiMoLl2jZn585bg4I3fUIKSS2UJxiYRzN64hRBM,1041 +torch/include/ATen/ops/tanh_backward_meta.h,sha256=wyEJ_XebrkGPgzzEoV8cUc-tUOolZLi3E4DkOkeMvLs,643 +torch/include/ATen/ops/tanh_backward_meta_dispatch.h,sha256=pighWhoHvgbfTvfYuRpI3Q-Gf26PiJ0JMZNprR5Dz4E,1041 +torch/include/ATen/ops/tanh_backward_native.h,sha256=oOc5loe-TQsJ5xlxXRgc1eFTDzW2DJjdfbE4dXatpG0,681 +torch/include/ATen/ops/tanh_backward_ops.h,sha256=b3aV1ZibzuF5enF5fZVpwWoyAbgs0ZjJJY5Mb9IKEzA,1867 +torch/include/ATen/ops/tanh_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ZPC58k7Ib9eVAKnS06i6cK61JbZ5-Mk8oOFJLPqLFmg,861 +torch/include/ATen/ops/tanh_cpu_dispatch.h,sha256=CKlMvSAJl3V4l6BXHvR1wDlpnkMln-G22gAAV9Ba90w,946 +torch/include/ATen/ops/tanh_cuda_dispatch.h,sha256=RpSI8PZZgmMcktjtoNS_BFIRS1RFIUbjBkGFX63uOTo,948 +torch/include/ATen/ops/tanh_meta.h,sha256=AMB-mp_gZT4wsB1i22JaquuN-CWzCx1cC_-oeIZkxH0,600 +torch/include/ATen/ops/tanh_meta_dispatch.h,sha256=lUQSJ6owl__AEBRJrSfhT50MHSRLtF0ByGnRcKWjbHM,948 +torch/include/ATen/ops/tanh_native.h,sha256=vkT47hO00F40azhAVDV9RqunD8hJ_5ji15fIDCF3rBg,1340 +torch/include/ATen/ops/tanh_ops.h,sha256=2awSQyinRX5q5CTt0qlG9x5gZ0ztmgBW232jHe4K1Kg,2055 +torch/include/ATen/ops/tensor.h,sha256=dnscgDxX-RB-pvMxgnPEjrIhdi8Yk7VkZFtWcwrUp3w,1661 +torch/include/ATen/ops/tensor_split.h,sha256=-gni814yx2U0OyMmQ4mtNkxFNUhnLDWEvm4j367Af54,3257 +torch/include/ATen/ops/tensor_split_compositeimplicitautograd_dispatch.h,sha256=WQI72ijlbuUnyK2S1K0eM1Y3oIbNlFjSg71Pijuk848,1342 +torch/include/ATen/ops/tensor_split_native.h,sha256=CSzksmPgkHMLxGJe7V_NZNN_cnVz7cQ7D-ywpk96was,844 +torch/include/ATen/ops/tensor_split_ops.h,sha256=N2XzOGjpMZLAITwvTsVOTqhCxhclB5kFvnX3OcIcyhw,2799 +torch/include/ATen/ops/tensordot.h,sha256=04-4HIwFq3Rp5QxDS52za56eflXCba3ZH9v3C5cJitM,1553 +torch/include/ATen/ops/tensordot_compositeimplicitautograd_dispatch.h,sha256=LpR9nH6HOyAf7XRldjdpdAsDjv2N2caRTaOFg2lzbH8,1198 +torch/include/ATen/ops/tensordot_native.h,sha256=Oy94bx9hLoUSFjkR6DW-nc4_i7y1XMaJeu_qVjrcVXs,744 +torch/include/ATen/ops/tensordot_ops.h,sha256=nnbP4wu7VAaJzdb-l2y-F8OaLZ9R921EJ06GomBzF04,2111 +torch/include/ATen/ops/thnn_conv2d.h,sha256=6UlwZQNohhI-WFhdpgrmjtaWslJULAq6Wqx2NOL9dLo,6688 +torch/include/ATen/ops/thnn_conv2d_compositeimplicitautograd_dispatch.h,sha256=tNISurfKWd-_-iyKd077uwbOpTHspvS6Vhk5y_fACf4,2209 +torch/include/ATen/ops/thnn_conv2d_native.h,sha256=yjvPlzdQQJkVLmE8QDoMMOmwYfLQWBt3mlveKwnjN0c,887 +torch/include/ATen/ops/thnn_conv2d_ops.h,sha256=9dCZMTcVoXEw6OUtWCRzf-OGzg-q1p2UOD8h3vJN79I,2665 +torch/include/ATen/ops/threshold.h,sha256=LOtCUXVtXqUloTyp8-D3_UbBwiGb-pVMj-4OW8MYUws,1653 +torch/include/ATen/ops/threshold_backward.h,sha256=nWSmDHnoewFv3fJ4Q_0M0ODJThYMULrbURR-MXZg6dE,1605 +torch/include/ATen/ops/threshold_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=v3-r-aKC_tAQ6gs2T2WFy-Y0t_hBFP_mo9oRg_eZI7Y,887 +torch/include/ATen/ops/threshold_backward_cpu_dispatch.h,sha256=6X3y_K6yfwUcIHHJeytWmpB93VWxLYv_ADBMBLh_O5A,1138 +torch/include/ATen/ops/threshold_backward_cuda_dispatch.h,sha256=44hFSR599cIFKsTR_3-2eVMFkCwnfAv_e_HnkrKtNac,1140 +torch/include/ATen/ops/threshold_backward_meta.h,sha256=vC43570Ok4fa5e_vwX291oGRgnkIW0wThsTfycXpigs,676 +torch/include/ATen/ops/threshold_backward_meta_dispatch.h,sha256=T9dHLJlXjkvhOIc522RcvculYi6gA4D3P_duepzaLHk,1140 +torch/include/ATen/ops/threshold_backward_native.h,sha256=rYnJ9t404C-sGAfWMLIxzEqiHy0TUEDqqE66LQWAUGE,1620 +torch/include/ATen/ops/threshold_backward_ops.h,sha256=c2f95HpTqo_nP3GMyEIZ1LywXB3Hoz3iSpm0AYyeasY,2081 +torch/include/ATen/ops/threshold_compositeexplicitautogradnonfunctional_dispatch.h,sha256=NBplj1j94L9bqD-xy73StPvtWWxZ4k42NYDz5dOK4P4,983 +torch/include/ATen/ops/threshold_cpu_dispatch.h,sha256=euv1dRGCprhE5NRuXFphAkl-ZWKtcVGVlcRZKRFayos,1190 +torch/include/ATen/ops/threshold_cuda_dispatch.h,sha256=7FjjxNkPEXJj9dGAj92pFi_3ehE7SNU-j8u_03Sh-2o,1192 +torch/include/ATen/ops/threshold_meta.h,sha256=OFP3IIKgRga_DgygrPthclVrtFaPf8G-ipVcKpwqcoM,661 +torch/include/ATen/ops/threshold_meta_dispatch.h,sha256=CwyHogBaYaehlLp4f1LrUjupL6GJYJ9ntDqKBNnH_oA,1192 +torch/include/ATen/ops/threshold_native.h,sha256=317u55lQOmHYv2DhvksVbWBSdWCvXiPSemidnUdoWlo,812 +torch/include/ATen/ops/threshold_ops.h,sha256=F6q_vnMsmrbgdaYWmVnJBjSvPf5p1LxGiVabskOi2Fs,2652 +torch/include/ATen/ops/tile.h,sha256=KXqxIG_TRByKp3h14TU5Es30PQDtLtAYqIH8HTu7abw,1375 +torch/include/ATen/ops/tile_compositeimplicitautograd_dispatch.h,sha256=9E9XZyp32X6y2Y0SoaqBZDnT7ljPl_nJlivqAbChie4,893 +torch/include/ATen/ops/tile_native.h,sha256=C3FtAPnYv9az7fhVB4X-rEFzLDnB27ooWg_NyQAaFmE,528 +torch/include/ATen/ops/tile_ops.h,sha256=dw5LYc-Fj-W3LrAKZ01zSCZ1IdVVI9_CLSSA3nl5Tc0,1044 +torch/include/ATen/ops/to.h,sha256=Ish0L_e9Swm-H4jGv1u59pGhgGwmOSIxSzltkuJ_hNI,502 +torch/include/ATen/ops/to_compositeimplicitautograd_dispatch.h,sha256=H6TJAh_zD07d7CSZ78w6XB1KJ1a4BEr7SoepTjb2WmU,1754 +torch/include/ATen/ops/to_dense.h,sha256=bKUDvBDgIo7T46AGkgMaS11AQ5RW_H3PzpaP2fAelL8,508 +torch/include/ATen/ops/to_dense_backward.h,sha256=A__u-zziEnQsZZR8qGQsBfO4a1TC4ZRCyP3gVtHFIvU,822 +torch/include/ATen/ops/to_dense_backward_compositeimplicitautograd_dispatch.h,sha256=wEuqZCNCo9JCTGZ6wL1QUW4enmF5857ZeajyZgRfR5k,874 +torch/include/ATen/ops/to_dense_backward_native.h,sha256=fbuYnCtQbqpOG77DXmzf4lQVDahmth4GtDgQMJPTw_E,584 +torch/include/ATen/ops/to_dense_backward_ops.h,sha256=02GUM5ILFABGZHX5owKsZnwz3S-LY7BseOSMC0xs3AQ,1198 +torch/include/ATen/ops/to_dense_compositeimplicitautograd_dispatch.h,sha256=JjrYQXoRBrk8eZx-7a7bXsjPKMEy-FwZv5E5GEzqiSQ,893 +torch/include/ATen/ops/to_dense_native.h,sha256=XiwWqRfbWHygC6NdK8VcRqLgh_h6es7RKBTvUoHr5bI,603 +torch/include/ATen/ops/to_dense_ops.h,sha256=ULSHVZD3FM4ABOZgvVRl2wrsQ1Ktq58dkyB2S6RHWw0,1223 +torch/include/ATen/ops/to_mkldnn.h,sha256=dVkQwzD37DvK3h0F-S_8TOnh8Ou7HMnug6vDwCggD38,1079 +torch/include/ATen/ops/to_mkldnn_backward.h,sha256=njM3ykG1uvxf7LsZH_5I49LcYmh_hBToocya03BaZN0,739 +torch/include/ATen/ops/to_mkldnn_backward_compositeimplicitautograd_dispatch.h,sha256=2-2f7I0xondbBFJDNmdU-R205uPBFbVVc1rio6jQ7u0,825 +torch/include/ATen/ops/to_mkldnn_backward_native.h,sha256=FNFQTPkxTxIvVdNr0qfWNEGRfA39GZ-BoTps30jJk_o,535 +torch/include/ATen/ops/to_mkldnn_backward_ops.h,sha256=j_iW6JRDtsVkoRh2iH3qZFLD_FcrRIw7AnyyZdq_-p0,1084 +torch/include/ATen/ops/to_mkldnn_compositeexplicitautograd_dispatch.h,sha256=r8kW2XeUSEl_3izbmtiKU3IjrGScq3bp40abLXGvXmU,990 +torch/include/ATen/ops/to_mkldnn_cpu_dispatch.h,sha256=PgBJkBxazUvHIXWazXSEvT-fq6zgymEXIH1KIQY7UJ0,800 +torch/include/ATen/ops/to_mkldnn_native.h,sha256=7mWH-x_zdjlNe6bivmcWpgnRxwuBzu3fP_y6wxlMXmY,681 +torch/include/ATen/ops/to_mkldnn_ops.h,sha256=l9GEVXkda42Ue7-o-J7hHtUunJbxLKWtat4SL1zjRIM,1851 +torch/include/ATen/ops/to_native.h,sha256=z9qeTd7BVGvoEix6D9igSI-vm3H9lx_NzDPGYXUp9SU,1316 +torch/include/ATen/ops/to_ops.h,sha256=GhVrTK9ulTSGX8WjgbngvuWP7WLZVLLV_ZNzx4hIjHM,4490 +torch/include/ATen/ops/to_padded_tensor.h,sha256=__dtitOCOS8OGQE4yUDuh5EkWgfufeVof2QIU_tiCYY,4407 +torch/include/ATen/ops/to_padded_tensor_compositeexplicitautograd_dispatch.h,sha256=C_yI17c00Oqo-7SdCx0r9jjZZH5XtJJFgzixZvz5JvE,1352 +torch/include/ATen/ops/to_padded_tensor_native.h,sha256=T-gULykHKBqn7c7l-05DLRWEWR6SfrYKMZ3QzBgXhK4,899 +torch/include/ATen/ops/to_padded_tensor_ops.h,sha256=Oi7w0TdksunBQb39CFw5eOlP0XB4IVl74VcRqt6ciwc,2005 +torch/include/ATen/ops/to_sparse.h,sha256=Q499PboH_o3V4ngbKw7AeXRAHFl5WsN6wF2IBUeLIhE,509 +torch/include/ATen/ops/to_sparse_bsc.h,sha256=Rqt5ESYc45vqGlyUi5NcWuFQeSAiNzNWMpyJh6jNCfM,513 +torch/include/ATen/ops/to_sparse_bsc_compositeimplicitautograd_dispatch.h,sha256=mjZCrY4C8JsSXibaGWxaJQLrqw7ZIsTgAdMaQFSRk9A,872 +torch/include/ATen/ops/to_sparse_bsc_native.h,sha256=5jjs1AXgt-8kqyAeThS3qznKxt9qVPLDsLxvJTAeKrg,582 +torch/include/ATen/ops/to_sparse_bsc_ops.h,sha256=_1XX2u4MyA2eBXP0e6wY-wO5BnGP0vAB1k0Kne-4bIs,1191 +torch/include/ATen/ops/to_sparse_bsr.h,sha256=k-Zlf_6ZPIzCFigz4Tj2u1LQ2iyz_uMjSCyu4b_TuAQ,513 +torch/include/ATen/ops/to_sparse_bsr_compositeimplicitautograd_dispatch.h,sha256=-Z8a8srtJ7gxPkZR95aLWf8k036sILO9SdnJbiw3vZ0,872 +torch/include/ATen/ops/to_sparse_bsr_native.h,sha256=kI6T9qT758iTwLUAZewTJD_hhnUJsye-CH4fNeOhZrY,582 +torch/include/ATen/ops/to_sparse_bsr_ops.h,sha256=6GKdpqdV7ilCoSHKv_dySIurBuABIw5KA8f_hNiIVPA,1191 +torch/include/ATen/ops/to_sparse_compositeimplicitautograd_dispatch.h,sha256=nOh5gyjB7wJTt2b4HpiaoJrBE9Rd-tbLkEgb-xQOLWc,1020 +torch/include/ATen/ops/to_sparse_csc.h,sha256=KuyfRidBERsNOd1wjBxZKHoOQoY12RHHfmvHBZLuoPk,513 +torch/include/ATen/ops/to_sparse_csc_compositeimplicitautograd_dispatch.h,sha256=lrsSgg9971D0-KvQJDzw659HCvq21Lkx0_vUbli5UrM,845 +torch/include/ATen/ops/to_sparse_csc_native.h,sha256=g-JursgyGt_UN0QnjCFNIj5_OIjgVthUIuLk-TGNC_8,555 +torch/include/ATen/ops/to_sparse_csc_ops.h,sha256=RH6vJYmZdi-lXX43ZGMYr0MJSr6eck916-PtXpOSKJw,1102 +torch/include/ATen/ops/to_sparse_csr.h,sha256=SHS5ZzZGFcqlrsaZxMTVcL_pGWBMvriiRkMTQcwtd4o,513 +torch/include/ATen/ops/to_sparse_csr_compositeimplicitautograd_dispatch.h,sha256=OAznos8X8okvLGLIngbV0ae17JUb3CvfR1wlhM0iia4,845 +torch/include/ATen/ops/to_sparse_csr_native.h,sha256=0ju4clM1dp7gbQCODVfLyHNg8AB-IHL1zysgsrCcltY,555 +torch/include/ATen/ops/to_sparse_csr_ops.h,sha256=BxVRTgRSxK604CSZG3pD4TwRqGvnV9_Fb7_Gw6d_ZZY,1102 +torch/include/ATen/ops/to_sparse_native.h,sha256=dTQZV1n2LGsYgTdvZ66kuYe3A1KGMBRXNTCptbuoTfM,730 +torch/include/ATen/ops/to_sparse_ops.h,sha256=Sj7fd7rlexlIgdHnQ5p-Z3sFwd7JkYVutWICg57jiOg,1951 +torch/include/ATen/ops/topk.h,sha256=r53NDEhLfAbdaB7HcREN4gTEQMnet5LgpmJkuqmxCXQ,5191 +torch/include/ATen/ops/topk_compositeexplicitautogradnonfunctional_dispatch.h,sha256=f_p_4NoiUwQxxZW6kzgIdW-aGqkBYj-My2IqBklqHNQ,1053 +torch/include/ATen/ops/topk_cpu_dispatch.h,sha256=YEGiTCimkgDo0_J3XD9LzRx_9aapD0qYyRIz5l0PpY0,1753 +torch/include/ATen/ops/topk_cuda_dispatch.h,sha256=2X8nFMfr2SoT3KKypOAtbYlZA0A1s9IGfRHVvTpws8I,1755 +torch/include/ATen/ops/topk_meta.h,sha256=6ki43umqBzeL_GqfUNpzhMQluA_UFj7h6AISw4y8wjs,651 +torch/include/ATen/ops/topk_meta_dispatch.h,sha256=FBhegHhvUoiehL7D7ht8bnHH9pHfaMjG21zZIeACn4U,1755 +torch/include/ATen/ops/topk_native.h,sha256=WQ-w4Sm2AHPcI5HX9n7Bpuwk-yucppX-gQF8XqlmWBk,1082 +torch/include/ATen/ops/topk_ops.h,sha256=-EnGP425L1nMgqRSuAT613JsuU1XWnOrySxKZXu_T-I,2263 +torch/include/ATen/ops/trace.h,sha256=NO0ImojeLwymWsOk2DeAXqAExUoQuzbzgKQkngS3ZFY,1033 +torch/include/ATen/ops/trace_backward.h,sha256=c4AZRA8UVmL0RWUxXzKORwlDgYitFFxqGbUcdeegYFQ,1495 +torch/include/ATen/ops/trace_backward_compositeimplicitautograd_dispatch.h,sha256=f8o4APXS3-pPo88Qb2ThHKRGVAvchAGncNu0ytrRkcE,915 +torch/include/ATen/ops/trace_backward_native.h,sha256=xQ711dYVQbaoA-8SLxYvMsk4IDmT3O_x6ErIPMqKPG0,539 +torch/include/ATen/ops/trace_backward_ops.h,sha256=Iu3Z3MP6eNPM9DQfP8RjgyexZe-UEPxU9SAfvNp_og4,1077 +torch/include/ATen/ops/trace_compositeexplicitautograd_dispatch.h,sha256=kRVojARnoGzIHZ-w_USXmeJnVgkvwPsZZCcLFNJgnlk,889 +torch/include/ATen/ops/trace_cpu_dispatch.h,sha256=14PNz0vYwezNZ5bEkIskUDMxn9QObxgVx8G79ShHdG8,742 +torch/include/ATen/ops/trace_cuda_dispatch.h,sha256=_NE1MjNWnM2o1tm9r0q2hYuHjh26_rYVRZ7GW721XG0,744 +torch/include/ATen/ops/trace_native.h,sha256=Fd1z1kNNMMfIOxP6cRgJUkUhvtweM2S1OTAyAQ6uy4M,637 +torch/include/ATen/ops/trace_ops.h,sha256=buCd7C_VwAz6iksp13aOK5iNtV4BE2FFFMk-YO_sug0,1557 +torch/include/ATen/ops/transpose.h,sha256=fnbkLRD6eg58wQP27YnHz_hHG_xwhFy4LTE1hro-gsM,977 +torch/include/ATen/ops/transpose_compositeexplicitautograd_dispatch.h,sha256=RDPkkn2vvSn0bFBo3l_-VYeBwwz8Ix71O-FfrWwPQk8,901 +torch/include/ATen/ops/transpose_compositeimplicitautograd_dispatch.h,sha256=P0I4h9H5Q5rWIPtpzR8tjqujhQjeSvf2obi1ALZLmVA,826 +torch/include/ATen/ops/transpose_copy.h,sha256=Ba-cacIX2ldMMBLyjvgtSKMWc2EDyJDMWWjH3lsjXNo,1327 +torch/include/ATen/ops/transpose_copy_compositeexplicitautograd_dispatch.h,sha256=0RL4PW-Pr_D_2hOPmLA9-Ia9BG3vBz_9yurHKWYOmfE,963 +torch/include/ATen/ops/transpose_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=2wNSZIEtMSx-hm5lyykkLKWo-agQKjomZev2ec90nM4,849 +torch/include/ATen/ops/transpose_copy_native.h,sha256=Fava16VMMer9s-0r7g1MfuGN1-yyDx0oZariBFQUbro,656 +torch/include/ATen/ops/transpose_copy_ops.h,sha256=kTmzBmshzG3vpF_vvmQzuFxDjS-IYaL8AD3-v-o-jSU,1822 +torch/include/ATen/ops/transpose_native.h,sha256=DGogYgO8nIFIMDupzCufTikHQc1OLSAmKx1d8Tchbk4,798 +torch/include/ATen/ops/transpose_ops.h,sha256=kN7v1j0d4Ihrm4BhN5QUVdrjDzYGRu6StF_6BM3DAJg,2370 +torch/include/ATen/ops/trapezoid.h,sha256=3PccLk74KnSmyVUkCYCgybpl6OTUB5HQVvH4t6q0gFM,946 +torch/include/ATen/ops/trapezoid_compositeimplicitautograd_dispatch.h,sha256=O7TSDzWShceroJ3CLlJ0hq-9UmOca7IOqklx5OVZXmQ,921 +torch/include/ATen/ops/trapezoid_native.h,sha256=4leKQOVjDlgxh1zFNn53JUZHg-beGMyOZNGQIIM3AGg,631 +torch/include/ATen/ops/trapezoid_ops.h,sha256=yP5w1IeiVQ16_iHSt-btPPAa0OL809g5SoWBSvcfNlM,1739 +torch/include/ATen/ops/trapz.h,sha256=KMONugA-YUyLknAQzfQm-u8dErpEsokkYRVsPD8HoVs,905 +torch/include/ATen/ops/trapz_compositeimplicitautograd_dispatch.h,sha256=5V6N34UBW4kGMI3Hjtjf6ZzMhvod1xifgYC7o5U3sxY,901 +torch/include/ATen/ops/trapz_native.h,sha256=j1CfPSlc89ZTnuS16gnQ9nEoInAS4JMVX6560TqqB-o,611 +torch/include/ATen/ops/trapz_ops.h,sha256=owctrPWExhOYKPQLqQTkW10h3WN2jH3U1tR9OqNUkGw,1678 +torch/include/ATen/ops/triangular_solve.h,sha256=QLBTokbLae9Rqav4s86bfsSQTTmQ4YSOLem21wASB7M,1967 +torch/include/ATen/ops/triangular_solve_compositeexplicitautogradnonfunctional_dispatch.h,sha256=eOwaiPHrq_IT4rvgsXoRFf5PWugDYHCQjQ_pmqmgYcQ,935 +torch/include/ATen/ops/triangular_solve_cpu_dispatch.h,sha256=Djl32Nb6KoagVZmOfQUKxMTnKJgaDosRRzdDaVujeXQ,1283 +torch/include/ATen/ops/triangular_solve_cuda_dispatch.h,sha256=GG581uC9rW8eyOq49DygUlTxeyP_WN2ZpX2yYRMcgLg,1285 +torch/include/ATen/ops/triangular_solve_meta.h,sha256=FUeLWAX0aIMiu_LXtOc-BxEbN94cyXUvYdfwW96UETM,682 +torch/include/ATen/ops/triangular_solve_meta_dispatch.h,sha256=lG_CfOtV6n-CN5br1jRfAjhgHxVDtJd-qWHgw9QWIiI,1285 +torch/include/ATen/ops/triangular_solve_native.h,sha256=ghpno7brCSFM9H9fB8mPg8UgtWf5RD_HKksj7SV7-AI,1170 +torch/include/ATen/ops/triangular_solve_ops.h,sha256=C6gV3kLHszgkrFIVfcaxGKeOwckZ-oPv0Oqdd-KpZqg,2413 +torch/include/ATen/ops/tril.h,sha256=k3jn2FWo-NPNe5axUK2FQDeHo5B66SfvOEpIJHuzd0s,1159 +torch/include/ATen/ops/tril_compositeexplicitautogradnonfunctional_dispatch.h,sha256=d6hV1Fqj3vYDYSREONBPDO2jar_vhDVkYn__GVI0UEM,901 +torch/include/ATen/ops/tril_cpu_dispatch.h,sha256=KZJXlR1zq_C7h6cRm1bZfrSemFfVSILbvkNc4nLkRec,1024 +torch/include/ATen/ops/tril_cuda_dispatch.h,sha256=7lVLslO-FcHlkqkDARoTCuU57e5TPXorSgePN_KScbY,1026 +torch/include/ATen/ops/tril_indices.h,sha256=9i2jQBRmdcddx1FyZSjhiYAcCiDS_9T4r4Bwld1E_3U,1980 +torch/include/ATen/ops/tril_indices_compositeexplicitautograd_dispatch.h,sha256=4kBB6CgV91Fwk89J7lrQ1h6bDfgsftFiHEPYxoUMHiI,939 +torch/include/ATen/ops/tril_indices_cpu_dispatch.h,sha256=FEFCGsqhOrYXS0vRY4TNW_lxHfdEH6w7a7bAMTUT6EU,1028 +torch/include/ATen/ops/tril_indices_cuda_dispatch.h,sha256=vvqI9t7kFzGfsSM_igDxGC7-IqNqLq-3fy86WulS7bo,1030 +torch/include/ATen/ops/tril_indices_native.h,sha256=jZwy9kWZIfl-uTwMGvD9GY8nilP2AEiACvD7gV8urOM,1027 +torch/include/ATen/ops/tril_indices_ops.h,sha256=mP4BV2GYeUaX0MQV12ltbZhgM3cGpCAxH9K056Xon5Y,2215 +torch/include/ATen/ops/tril_meta.h,sha256=_ofWcGeUTTEogWJfi77LzVkVt-sJlmLXhu_WJeJ2B_c,618 +torch/include/ATen/ops/tril_meta_dispatch.h,sha256=CHipFTMeJONiVhr3hU3THW8dqNUEFKKSLk2Fo2bd5UA,1026 +torch/include/ATen/ops/tril_native.h,sha256=guH2jcdtKgHNVNis9MPi5ogt_LTQyoxM3jzvrKxHEJs,790 +torch/include/ATen/ops/tril_ops.h,sha256=rRXgNXebMUnD-660yHAh0A5h5k5n9-0U-Du5QhxTYJc,2238 +torch/include/ATen/ops/triplet_margin_loss.h,sha256=gJoEJFe0EtZVAVDIpIlejD0V6GPyGWvkoXke0uOlUX8,1035 +torch/include/ATen/ops/triplet_margin_loss_compositeimplicitautograd_dispatch.h,sha256=TVOs_9VsxDQlJ_FYR9GOVCqZULpdwWd5RxXKY_TELLk,965 +torch/include/ATen/ops/triplet_margin_loss_native.h,sha256=hJJ8VXGYbIWOeiaS32U9Cu3SPDbKpnxeAtn00ZLm9F8,675 +torch/include/ATen/ops/triplet_margin_loss_ops.h,sha256=kar2SjtiCTkdROi5oLli-BuoxihRg9CdtwYKslQP3D0,1453 +torch/include/ATen/ops/triu.h,sha256=rkX1sCmOzgknxhRBhnkT8HoaUp-yu4VD9gxO4261TQ0,1159 +torch/include/ATen/ops/triu_compositeexplicitautogradnonfunctional_dispatch.h,sha256=AkXr_PC9K288WcUkfjUIDA1z8I7qj7dogup0VWcvIaM,901 +torch/include/ATen/ops/triu_cpu_dispatch.h,sha256=DflxDDjsyThC3UAXpljK2Fc11cYntn-50bP2qGLW7GM,1024 +torch/include/ATen/ops/triu_cuda_dispatch.h,sha256=hwOdALS8Nm-Lj2qwmV7rpS0Q8W6YwUCT5MplZ3TnCN8,1026 +torch/include/ATen/ops/triu_indices.h,sha256=vcLgx0lShRga3qzys_HHBYam8j0xrc-i9P0mKwh-BlA,1980 +torch/include/ATen/ops/triu_indices_compositeexplicitautograd_dispatch.h,sha256=l33gqAub1sdj4eDj6IivjYK933rNzFFU5oqIA96qhXQ,939 +torch/include/ATen/ops/triu_indices_cpu_dispatch.h,sha256=lLTez5ya8UF_cWqa1yiXcT4LtUxkNrBTle0WUGHmWeY,1028 +torch/include/ATen/ops/triu_indices_cuda_dispatch.h,sha256=p5RwI2sVPQRb7pFrK9SxkSMNSCtT7D5WghSqcg4WALU,1030 +torch/include/ATen/ops/triu_indices_native.h,sha256=X2FqVjqNNOl9n154uCBgQSHlqxQ48R72I8pRFkrhKAU,1027 +torch/include/ATen/ops/triu_indices_ops.h,sha256=f7mr6xjRPLrYtDITKpP_z2cERlCmkOdsVe-gY11hYWA,2215 +torch/include/ATen/ops/triu_meta.h,sha256=tMe3pQc0r0oubdfbhhjfgs9pT0QbeFe643n3EDyskAI,618 +torch/include/ATen/ops/triu_meta_dispatch.h,sha256=c-tUUDjt2FtATC6Bw-Uwy5kI7xSIyX64O8kByu9_rL8,1026 +torch/include/ATen/ops/triu_native.h,sha256=cGbzr6lJy0rCI71RA4r-VDKS0YUeap8O6tNZbOLKiR8,790 +torch/include/ATen/ops/triu_ops.h,sha256=RHL5RtlvBS6ODkeu2jPYTAGMB3w-94EmqHJ4BDXdCMM,2238 +torch/include/ATen/ops/true_divide.h,sha256=0LswVBn-Xgt_kno9-XXAGPWiRHN9OzSHMIqQTfsuZEM,1464 +torch/include/ATen/ops/true_divide_compositeimplicitautograd_dispatch.h,sha256=-i6GmGjJzPZbM6KK7AFrEXNU5Wq1KWSZLZWbiMiLj9g,1291 +torch/include/ATen/ops/true_divide_native.h,sha256=2XFtI73sPI5FzpQg9Vb2MQQUfvZVTwyE7Jpylo8zMSo,890 +torch/include/ATen/ops/true_divide_ops.h,sha256=8gbkHVvb4jJSFidkU8y0uo2U48X8mMx6slwjHD1Gwoo,3679 +torch/include/ATen/ops/trunc.h,sha256=dTE7xCVHqStU_uyq1A-PVksk0wjYtlz854I7uz3x5Us,1177 +torch/include/ATen/ops/trunc_compositeexplicitautogradnonfunctional_dispatch.h,sha256=ySkIUCH2DLCNFatJXj8pIS89gjOsAvgtCNmFx1QnYxQ,863 +torch/include/ATen/ops/trunc_cpu_dispatch.h,sha256=80T6Na4aQIBVooU0bR9WV6tlH2E230J6t9_j8R6UQLs,950 +torch/include/ATen/ops/trunc_cuda_dispatch.h,sha256=RvKDQ7snoa2GFts9-S5-QbseNSStd50Mku2vBV4IxMs,952 +torch/include/ATen/ops/trunc_meta.h,sha256=OrpDmwxTOO01nn0rsVBq2xBtYa7zH7S-cpYtcxOTu-s,601 +torch/include/ATen/ops/trunc_meta_dispatch.h,sha256=K3Ov1qUK_LF2Z2nV_0zZVwSxdAe_jKGWc-VeCouoRP8,952 +torch/include/ATen/ops/trunc_native.h,sha256=ks0uOEgqhLRl_AHg87j5DDODe-Orz5MRUG1yWCa07Uk,1036 +torch/include/ATen/ops/trunc_ops.h,sha256=CSJkkbvWn_f6g800jaNxWzAEwp-J_gQx2tEUreb0bkA,2064 +torch/include/ATen/ops/type_as.h,sha256=BIw5bze5_p0lIo8JXPAunb6jrMYJtzwpUHyshyxkScE,507 +torch/include/ATen/ops/type_as_compositeimplicitautograd_dispatch.h,sha256=85RLzfMI8a_0YYCf9BDcYR8TqGIC51G2KaD5NwE7Ut4,814 +torch/include/ATen/ops/type_as_native.h,sha256=IMKc9f7yqAdytUW3YIs6lxTndVuOyfuoBFhONiqIjPs,524 +torch/include/ATen/ops/type_as_ops.h,sha256=dPRuXih-WfoLxVdiIvyZYBK4MKORL68sEmSHwrShLeg,1051 +torch/include/ATen/ops/unbind.h,sha256=EYhLgjOE4F3n-G4NwjeAK3ctDwZaIuKgO0hFB7vUXzo,930 +torch/include/ATen/ops/unbind_compositeexplicitautograd_dispatch.h,sha256=VBc2esqM2gUTx7HbEvcnCdaBuhjfMfBo9zUQ0eTPTRM,817 +torch/include/ATen/ops/unbind_compositeimplicitautograd_dispatch.h,sha256=4fdvEgQy16o6YGhNDOUVyfurpJ0MBQ3mlK-83hLc-vY,819 +torch/include/ATen/ops/unbind_copy.h,sha256=S5zoYNWe_ddTrrppFqFEIcKk7hjZ0hI2c3y8306rZtQ,1201 +torch/include/ATen/ops/unbind_copy_compositeexplicitautograd_dispatch.h,sha256=vJWiFGUd1iUn7r7NR2CuFdJmrR9gl4kbDdr06ycUHkU,917 +torch/include/ATen/ops/unbind_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=wmrLMNM0Vmdq25Z62vTF8j1nVjRUrkI2ot_LYY-vj4k,848 +torch/include/ATen/ops/unbind_copy_native.h,sha256=KI7Tfi9wjLx6WLSLVDHd9YvhbC3F1ylT3ox5vnO5Im0,631 +torch/include/ATen/ops/unbind_copy_ops.h,sha256=3s-8KOsu7sKaYff3J5gfI2pJWOtc_tiBJDKtlJBIRKE,1731 +torch/include/ATen/ops/unbind_native.h,sha256=swwPrH-Z47_CBu8dv7lI3tcL6eB0SYPXjcWFPK9ITRw,712 +torch/include/ATen/ops/unbind_ops.h,sha256=E5fZvyCwJHadkdwafXytSGLalZxVebpVDhhAz9fBy88,1729 +torch/include/ATen/ops/unflatten.h,sha256=AB-jWkwhogAWX36EvXsd5Xp2sH-jslw4enKHjHiIsDs,2827 +torch/include/ATen/ops/unflatten_compositeimplicitautograd_dispatch.h,sha256=qG-ogyLkW_XZd0TXSDXP1N0kIIahfgJOUT0-_VI7bY0,1184 +torch/include/ATen/ops/unflatten_dense_tensors.h,sha256=bXuMR90uTR5t1MTg_NzArMrbDvfHHlI9rKXQDC5InHM,780 +torch/include/ATen/ops/unflatten_dense_tensors_compositeimplicitautograd_dispatch.h,sha256=wzFXh8xt0yObAgmpmRYH8m0YZBETDSt0ckXqkdcBJ64,843 +torch/include/ATen/ops/unflatten_dense_tensors_native.h,sha256=ke86BIWEJhdid15MxdksL_Ms40gxPBkdUzX1F-v_tAM,553 +torch/include/ATen/ops/unflatten_dense_tensors_ops.h,sha256=FwsFOtwFb29cP4qmciP6tfHKuOJDZdwYF1ZKqywFmRo,1142 +torch/include/ATen/ops/unflatten_native.h,sha256=bvmUNPmqTXuTZtm7TBjpUW49hpKscF5mXIPEVA-3hhA,687 +torch/include/ATen/ops/unflatten_ops.h,sha256=UyN7Kc_7ci0XCgOqSItyI8ZcSkNObjaxAdejvGKhrvc,1903 +torch/include/ATen/ops/unfold.h,sha256=Urhk7AsJUKe4sj-coP7IxhLiMrmlPgtNBwlkuGMr2IM,506 +torch/include/ATen/ops/unfold_backward.h,sha256=Yhh-XAVBEIYY93mmKOcQOpGsdHaIDaICEDHG3nGWsRk,5008 +torch/include/ATen/ops/unfold_backward_compositeexplicitautograd_dispatch.h,sha256=X6TlOICYmRzLERJjjg3suKVcHhurpWOJrFpGS8Posws,1400 +torch/include/ATen/ops/unfold_backward_cpu_dispatch.h,sha256=mySslHJMJT1vl2c0iCEDQVOhvEgQg44l966xRLT6Qww,973 +torch/include/ATen/ops/unfold_backward_cuda_dispatch.h,sha256=ZRzeTO60a6imVlObC7TNEvGBHTYi9mnfTbnsqiwua5c,975 +torch/include/ATen/ops/unfold_backward_native.h,sha256=zhjeLTNLAAZNha3cj3CdPPmpUySz9Pao8dnZuYroNJU,751 +torch/include/ATen/ops/unfold_backward_ops.h,sha256=GZCOkNKDgwYD_PLcfL-qG8-QVdhGlUUAgyWAwvEsry0,2129 +torch/include/ATen/ops/unfold_copy.h,sha256=GqZYZ9PkWakg8o-CO5Aw5pF8yDiCYrer-hO9BnxofHA,1408 +torch/include/ATen/ops/unfold_copy_compositeexplicitautograd_dispatch.h,sha256=Y6jJS2Dj_pHG_yZxhIKPMjXbazuziUMb2fzz54NEkT8,995 +torch/include/ATen/ops/unfold_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=bz18eSyZ2LqTv6yj79g6cDPI96rQtgqUQK33LHT07ak,865 +torch/include/ATen/ops/unfold_copy_native.h,sha256=COp28Zfob4GKMqc1KHcgbU8XPGgxEaVnI96OFiBlUCM,680 +torch/include/ATen/ops/unfold_copy_ops.h,sha256=qLtpoYM_6HlKHLI621IZVWkNDaKFnGmvGv5hV-l6wu8,1905 +torch/include/ATen/ops/unfold_cpu_dispatch.h,sha256=8qDJpuX5LZsxyVUaOCBP7YuxjcYH3z6NBphwLX6nKHE,790 +torch/include/ATen/ops/unfold_cuda_dispatch.h,sha256=NClqq7jQEbpy-wSBSwlkkVYZAI1AzwJwY5GEXuujPLY,792 +torch/include/ATen/ops/unfold_meta_dispatch.h,sha256=Iroqc78YtEq7L5iyuGCcfrJLwd-O7FWDVXZO1P4EK_g,792 +torch/include/ATen/ops/unfold_native.h,sha256=m6-LBnBemuCqc8go2yKtgOkKVG826vCCIU9q2TZ74go,544 +torch/include/ATen/ops/unfold_ops.h,sha256=jq-s1UNqi2ZXpnr0grgrUGmrdOgxMW0FdvvhNAbBW8U,1124 +torch/include/ATen/ops/uniform.h,sha256=D85Jl4jButbLl3-3W-y175gkc2uxylO76qh1UF3veUY,1514 +torch/include/ATen/ops/uniform_compositeexplicitautograd_dispatch.h,sha256=iRTlkF-WotIhTNBoXlk6eMSWFOYAHp0lOydMlB8uWME,1185 +torch/include/ATen/ops/uniform_cpu_dispatch.h,sha256=lpcy-vl0fY5WjsgNyO8j2AOfC3S0jQt00yJ5E6k9Pq8,826 +torch/include/ATen/ops/uniform_cuda_dispatch.h,sha256=9vTxbtUY6X2_fS5nt9tYS8OzJ41uCsewcJK6T2ezwMs,828 +torch/include/ATen/ops/uniform_meta_dispatch.h,sha256=TMeS22XPGiN33ofP57PFqwfFD36G2dfjjYTdC3GJWaA,828 +torch/include/ATen/ops/uniform_native.h,sha256=lI4YrJbcUN0goGYMLKwlkXtpFwmkE4gcHW8r8Kyi8fk,1010 +torch/include/ATen/ops/uniform_ops.h,sha256=sGpVSqCC2UGCPemdEoWthg2rmBOqRRxAllIWNsl6Ozo,2787 +torch/include/ATen/ops/unique_consecutive.h,sha256=QDbj9DDS4FUbwuEkPSIIKsW78f3gn0YrZahRlPWkz6U,2102 +torch/include/ATen/ops/unique_consecutive_compositeexplicitautograd_dispatch.h,sha256=qY13U_K_bHnl9zg6spcU5Vw3YSIFbOb1psI2ufg3k-o,1242 +torch/include/ATen/ops/unique_consecutive_cpu_dispatch.h,sha256=yzs_sUkeRyzPGidMWxUUXL_kaa9r06zYiQ4w0suUiVc,889 +torch/include/ATen/ops/unique_consecutive_cuda_dispatch.h,sha256=URfECXryLg3Ast6tL_YeH8kiLLVl1VLlkicdcJXDm8M,891 +torch/include/ATen/ops/unique_consecutive_native.h,sha256=YPt0JxiR0cOZOxTsXQnQA2vIh5eDN5J8wSadcLksgPY,1094 +torch/include/ATen/ops/unique_consecutive_ops.h,sha256=3qX4g2LvCVXxOqG5baK3XrYYU3pBn_yxf58DZNRfnkk,2544 +torch/include/ATen/ops/unique_dim.h,sha256=drmWrgVOU8cg09Y2TYLdPSijHFvtbsLSOcHSw-ELKR0,2050 +torch/include/ATen/ops/unique_dim_compositeexplicitautograd_dispatch.h,sha256=y1_6orY3E-XQBLugrxFJqNfeaEBNqAdiFOWMxLzU2VE,1208 +torch/include/ATen/ops/unique_dim_consecutive.h,sha256=uSB3e_CJR-VG2beQn8Qdh3-sN2ubHYZxqHDiHbH3j8A,2043 +torch/include/ATen/ops/unique_dim_consecutive_compositeexplicitautograd_dispatch.h,sha256=g41rJjAv7oJqDg7BfCyymS5Qc2Qx-6ZKS7OJFEgZ1uc,1201 +torch/include/ATen/ops/unique_dim_consecutive_cpu_dispatch.h,sha256=qwuCbU_H18a199qJrFR_DPJWWGCrGKRlDU51mQkOx2k,861 +torch/include/ATen/ops/unique_dim_consecutive_cuda_dispatch.h,sha256=er0BXohkuIZ2lc12VTzR52C_1lSx9fFrJW8PsC8vj3U,863 +torch/include/ATen/ops/unique_dim_consecutive_native.h,sha256=H89MAtYxps1GsUEm1UH93suG--d49DMyhjW0RNgeSgs,1025 +torch/include/ATen/ops/unique_dim_consecutive_ops.h,sha256=hmJuGpsjiYdpdEAuh5-UYMRGpLt8kl6Bb4n0bxlpXew,2454 +torch/include/ATen/ops/unique_dim_cpu_dispatch.h,sha256=ZKfDjH325UB23KNML3HyV_l7f-4Vizf0TXwv9KkNrgA,867 +torch/include/ATen/ops/unique_dim_cuda_dispatch.h,sha256=OT_hGwkZwCtktIYz8BjmHEFg_2EZTcVPM35Q8R7QYIo,869 +torch/include/ATen/ops/unique_dim_native.h,sha256=YXGjJxEnxAxnBYIgEXBBP-pwsO1UH1Ao4YOQtaZiFro,1038 +torch/include/ATen/ops/unique_dim_ops.h,sha256=JTxcwVATH7wAGK4cx9qB2FFrD-MC2oaEWZK-sajcjb8,2482 +torch/include/ATen/ops/unsafe_chunk.h,sha256=YqHX1QdIQHt-JWn2AYFHOPokq3KffadDLFkJH5goM_0,752 +torch/include/ATen/ops/unsafe_chunk_compositeimplicitautograd_dispatch.h,sha256=fcabCk1HfnlxeZODPSbvYnUiWHdvRNcrWnP8AZGqWoo,839 +torch/include/ATen/ops/unsafe_chunk_native.h,sha256=o7W0uUGdJiul5FBmGNUug0KidXR18T1lByjtV1GbJAw,549 +torch/include/ATen/ops/unsafe_chunk_ops.h,sha256=1ZAJBZb7hZhV6gSKmZ1g_QGn1xmBGyNkWVC01gMmO9Q,1126 +torch/include/ATen/ops/unsafe_split.h,sha256=mgiZjAGz5cfs60ZTDx7GNodJAYYLYUHtXZ2bbEH5GFQ,4077 +torch/include/ATen/ops/unsafe_split_compositeexplicitautograd_dispatch.h,sha256=3DG0aAI0zjfqQXAixYJ8SM5W8KYucO4USYlW6uOsuMU,1441 +torch/include/ATen/ops/unsafe_split_native.h,sha256=vqLgKF0etz6qOxhX4nGjlITp-RCFS49-XRFfc1sQGuQ,683 +torch/include/ATen/ops/unsafe_split_ops.h,sha256=iUFfTA3OzLzyObpm2rZstjP-Uc-RKp0ws7VYqId5UME,1915 +torch/include/ATen/ops/unsafe_split_with_sizes.h,sha256=d3hHIhXNKZraTbeYD89zMrsbsHQUFLeXuO-DkI94WAE,4586 +torch/include/ATen/ops/unsafe_split_with_sizes_compositeexplicitautograd_dispatch.h,sha256=2JpEE6Cu7LjrxEVlwGdAS-T09yxHY5f1mzjkTzCMgzo,1561 +torch/include/ATen/ops/unsafe_split_with_sizes_native.h,sha256=tMuLSxkbAZQQHYg5AYjeKzwsnitnTqippvlc-W-02zU,716 +torch/include/ATen/ops/unsafe_split_with_sizes_ops.h,sha256=XG68odgLDutWQHIYatZ3JHcFAjWnJNMgjjQMTT1z3pU,1998 +torch/include/ATen/ops/unsqueeze.h,sha256=0H0BmV0JKgsig7ILRz1Y4cFUIz7pslAny-v2oIuIOWI,689 +torch/include/ATen/ops/unsqueeze_compositeexplicitautograd_dispatch.h,sha256=63eJYG9i0irBU1_fxnfqbhCvpPCLi0eE37gR8-6SKKk,871 +torch/include/ATen/ops/unsqueeze_copy.h,sha256=VU-46U41o0CVx8_IK0z7ezv7ZxSD1qBN3GMkXKHtEzg,1204 +torch/include/ATen/ops/unsqueeze_copy_compositeexplicitautograd_dispatch.h,sha256=3YhRf-kIb_8-fO8kvkoyw6hCHAvIS6gNteWl-jkvms0,933 +torch/include/ATen/ops/unsqueeze_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=Z_nOuAqMbZNfM8Waf3g0WBt77BuqcywNZv6zHx4QCCA,834 +torch/include/ATen/ops/unsqueeze_copy_native.h,sha256=Gv4XrN0dJK28B2-rcwZhaQphdn_I4aMAbCWM251cBSY,618 +torch/include/ATen/ops/unsqueeze_copy_ops.h,sha256=0bZCgMUZJQ4VlS1a-RwoLw_bnTUDHvDeeAbxn6u621Y,1699 +torch/include/ATen/ops/unsqueeze_native.h,sha256=SxHUB50hFp56gnecAmQksUbTqSiYoytpiiIVNMaQHQo,818 +torch/include/ATen/ops/unsqueeze_ops.h,sha256=gCba43F3ZDkUL1yRi7MgZwRJo_ac1TpiioXtyZ1aqZA,1584 +torch/include/ATen/ops/upsample_bicubic2d.h,sha256=mrGtAMWh5S-aF4D1EE5VNQIQ77F2cPyUVn9dcZCrZBs,8028 +torch/include/ATen/ops/upsample_bicubic2d_backward.h,sha256=PXg6AcJgMui4Vqt80daPyhH7WGGGdgCOhOAlYh3hG9E,7752 +torch/include/ATen/ops/upsample_bicubic2d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=XuASkxn3FXfw2de7UBCN8T2-zR1L0ZEfI_u1hIEz5wM,1289 +torch/include/ATen/ops/upsample_bicubic2d_backward_cpu_dispatch.h,sha256=ItQ345zw-n_Y1gQd5htEZtPA3bhaKloGa--W3xYIo08,2347 +torch/include/ATen/ops/upsample_bicubic2d_backward_cuda_dispatch.h,sha256=Eg1w3ZU7NNNdvUVGNxQjY29XIOKQ1t8ezhvwWgcd_BM,2349 +torch/include/ATen/ops/upsample_bicubic2d_backward_meta.h,sha256=D6d7jJuEy0K_kDcj_E28wmIi7vKMteQY0gfr_9sG3ts,787 +torch/include/ATen/ops/upsample_bicubic2d_backward_meta_dispatch.h,sha256=kFQkYY9-Iuv0Z8mfQSdHVI1B6UPaoH9EpZVgGXzkvbI,2349 +torch/include/ATen/ops/upsample_bicubic2d_backward_native.h,sha256=V0LsKdONMWqIE6Q2F_KxnkyG86l0L4Xdk3_ztjl7phk,1219 +torch/include/ATen/ops/upsample_bicubic2d_backward_ops.h,sha256=KdSr3TtSmcMdgGBV0b0A-wTVL4gQvWBiMQde5asAWic,2799 +torch/include/ATen/ops/upsample_bicubic2d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=TzU5b4aONMrjTDJzMwLyYQqhe6WKgQzEHKTKl1epktQ,1197 +torch/include/ATen/ops/upsample_bicubic2d_compositeimplicitautograd_dispatch.h,sha256=CSvDoYr_0I7AIgmV8OMpJ6z_9-82854m8voLz1LG-vU,1098 +torch/include/ATen/ops/upsample_bicubic2d_cpu_dispatch.h,sha256=1ejJQSCITxZVtn7RXODe7WUHxRJy8lHIJBuwITnpHg4,2043 +torch/include/ATen/ops/upsample_bicubic2d_cuda_dispatch.h,sha256=QQK38suSkKX9wvF1MgKGTUM37ZI5zYZO_5q46nyuRhU,2045 +torch/include/ATen/ops/upsample_bicubic2d_meta.h,sha256=9uGDfoFQOLYYwGNn9GjoGhF9aD24NOMZBA5b66HcBYU,737 +torch/include/ATen/ops/upsample_bicubic2d_meta_dispatch.h,sha256=SumDm8y57Q1Rx8Di44DL0cDxu277JvPShKXKdIFejl0,2045 +torch/include/ATen/ops/upsample_bicubic2d_native.h,sha256=pCm33Zll4YjVikjoTc01TmlQeOMpqrKel4T6g-PnwFI,1256 +torch/include/ATen/ops/upsample_bicubic2d_ops.h,sha256=D0j1j7WGWdYqDRebwddxYoY5k83oSI2G1XiSb1Sjcps,3374 +torch/include/ATen/ops/upsample_bilinear2d.h,sha256=JQRYHfAmPfxNtIu5ty24mSQk1ScqkF-OPhe9YyZ9gDs,12027 +torch/include/ATen/ops/upsample_bilinear2d_backward.h,sha256=XqkTXcdGzY9WW84ZtFVOuTkjP1v2N9iVEniEjG1chsA,7783 +torch/include/ATen/ops/upsample_bilinear2d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=vk735hgYb6n13q0ol3aLFa-h_WUp6vf4tEjQQ9SGIME,1291 +torch/include/ATen/ops/upsample_bilinear2d_backward_cpu_dispatch.h,sha256=BsXJVsLYs3K8KT4WTlLJ5ycx3-7uOqTVAlwZ5kxEJq0,2353 +torch/include/ATen/ops/upsample_bilinear2d_backward_cuda_dispatch.h,sha256=lQWg6DtQBpQVH1ElNfdVwbko3srNacIdrzc0wO01XXM,2355 +torch/include/ATen/ops/upsample_bilinear2d_backward_meta.h,sha256=PJCJvNYIB4BRQeeueScpuaRiMVywSf7_sXJfo937lj8,788 +torch/include/ATen/ops/upsample_bilinear2d_backward_meta_dispatch.h,sha256=3hWx4pKxXopnnD02gbINkpX3lBbyqsVX7GPAdk7dU4Q,2355 +torch/include/ATen/ops/upsample_bilinear2d_backward_native.h,sha256=TdmeL1e_C7BSFo-eY6otqIgLh_mPCoQlmNNIna3_KKE,1224 +torch/include/ATen/ops/upsample_bilinear2d_backward_ops.h,sha256=Wc99x4T9EnVL8LHqu9G3JqgyHdj-KkSglUchSuWJB5w,2805 +torch/include/ATen/ops/upsample_bilinear2d_compositeexplicitautograd_dispatch.h,sha256=pAvSAKsXGH-UCd6lL0WkLANg5ZIPYM7Lp7SLi2R_y3U,1566 +torch/include/ATen/ops/upsample_bilinear2d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=93KIA_G1wb3SDcrye4TZ9tb4Coix3fD5HdupcgNDZ58,1199 +torch/include/ATen/ops/upsample_bilinear2d_compositeimplicitautograd_dispatch.h,sha256=NYZHs7u1xmDjZm6E8T6j4V4ZXztqluzhpgdNVoH1szo,1100 +torch/include/ATen/ops/upsample_bilinear2d_cpu_dispatch.h,sha256=9BLGh7UGlGsH4ityCCBBnoKiGt2HaFRFsTAFHPQDIJM,2049 +torch/include/ATen/ops/upsample_bilinear2d_cuda_dispatch.h,sha256=MUs-JDYDHgYI7ddPh_VNrxdkjpxv7xj1FMVQPHJJ7CI,2051 +torch/include/ATen/ops/upsample_bilinear2d_meta.h,sha256=w8ZJR9OGMOm9-7f6k-1gxwzDzw9_R7tdF3D1qm7jpz0,738 +torch/include/ATen/ops/upsample_bilinear2d_meta_dispatch.h,sha256=VhNKW6xWmcgGgjxVVxp8DtFnXBFR_oUjbSV4JfuUZfc,2051 +torch/include/ATen/ops/upsample_bilinear2d_native.h,sha256=5gQ-ksRd_1lt7A6keIDiM979RupCGU1Co_X7xKaJ75w,1708 +torch/include/ATen/ops/upsample_bilinear2d_ops.h,sha256=tOICe5ajvScBiU3n0SPqoxmmKCwO7vUZZAedReF1cdE,4404 +torch/include/ATen/ops/upsample_linear1d.h,sha256=Cq5j8lKEBQU9dTcjuVZt9Zb_O4ml2MiaFrk2dWQvag4,7147 +torch/include/ATen/ops/upsample_linear1d_backward.h,sha256=wAmsN4ToVXGvqqiV4JjkY2TNEj31ICopF_ppns_814Y,6881 +torch/include/ATen/ops/upsample_linear1d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=OoUKcd8k63EzA4g4EtaS1HafxZWuKyB0WdR0rH_H1tI,1185 +torch/include/ATen/ops/upsample_linear1d_backward_cpu_dispatch.h,sha256=MIwOgnYMtXbai0qbboaWo0NALzQrYm13d4KlpUML1EE,2065 +torch/include/ATen/ops/upsample_linear1d_backward_cuda_dispatch.h,sha256=KvWyPTLjWkI3AvNLBEZFPveEg1ZIVvM-yhzzGfijuyw,2067 +torch/include/ATen/ops/upsample_linear1d_backward_meta.h,sha256=Yh9PFI36ideCu2PxqVfaenGPxX5RzuwCt5pSce0aqTc,750 +torch/include/ATen/ops/upsample_linear1d_backward_meta_dispatch.h,sha256=qo7VDF2h5NLnmbwSGVtirve0eSAdW8ZJkgPslTON1gA,2067 +torch/include/ATen/ops/upsample_linear1d_backward_native.h,sha256=Z9Bs-5hi7-33-Wtf5_hGmD0zYtf0KOE9WHZ2J_M-Z9I,1142 +torch/include/ATen/ops/upsample_linear1d_backward_ops.h,sha256=kiDRXxCgDQpBLgH1IdpB_oJnujwrT-EaB0okzrM3PG8,2551 +torch/include/ATen/ops/upsample_linear1d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=CD9mAId5O_8_P803VJ6cVP4f6Dm4tuA0nMSM_yOQNmI,1093 +torch/include/ATen/ops/upsample_linear1d_compositeimplicitautograd_dispatch.h,sha256=KG1-oAylEfz6xcmcIbouLqrVJ0E9aNzlFcTXzZVsr-Q,1096 +torch/include/ATen/ops/upsample_linear1d_cpu_dispatch.h,sha256=H5MPHGm3UAxU_hsLDByovlhsazptWQ_dXKQ3LhKjQTQ,1761 +torch/include/ATen/ops/upsample_linear1d_cuda_dispatch.h,sha256=F27pZ-7oU0MAzY6dKYOiST7u1KXBEG1QD0LY-5Wmcyw,1763 +torch/include/ATen/ops/upsample_linear1d_meta.h,sha256=I7IiBVubW6-6a6TpkbxQyuQhckLaMGkxayK4vl_kKwA,700 +torch/include/ATen/ops/upsample_linear1d_meta_dispatch.h,sha256=E6ZFb-kZwGMY57DBgBdiD22C69FmmTVeQsKDlk7jiTw,1763 +torch/include/ATen/ops/upsample_linear1d_native.h,sha256=ZYCs1Od0AS6D-o-typ5N8DDbJaY3w6um8pEhuDOlLuI,1178 +torch/include/ATen/ops/upsample_linear1d_ops.h,sha256=ye5vr4htSXeRrA9pj89ECc_IXtUa27Em2hFFTcfrtXg,3123 +torch/include/ATen/ops/upsample_nearest1d.h,sha256=k4OqmoxHPYEjgzDtA7Fl56PdNxvILU_ujHXp_KCg8rw,6468 +torch/include/ATen/ops/upsample_nearest1d_backward.h,sha256=uHCPDvZKlo0EIIYbOO_WZQIdWFl0BgOzO3qCxQRu4oo,6372 +torch/include/ATen/ops/upsample_nearest1d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=4M6fmkCUAoK8kM0Jxq2SOFZl7X8wHdHmzPZvc4Es8jM,1147 +torch/include/ATen/ops/upsample_nearest1d_backward_cpu_dispatch.h,sha256=55IlgXLw428FAXQEU9PfcynC6V1GVv_OLwFWTeHGK2U,1951 +torch/include/ATen/ops/upsample_nearest1d_backward_cuda_dispatch.h,sha256=AH7gLor9HmH6lLoJSsdGxNmz7vyJBNCgZBdh1Ax6T8c,1953 +torch/include/ATen/ops/upsample_nearest1d_backward_meta.h,sha256=H6G5JdthpqY3p5hCDQWRctoCQ_khBKYr0xXfgzoE_zY,731 +torch/include/ATen/ops/upsample_nearest1d_backward_meta_dispatch.h,sha256=QNMdQIlLw9m5eYqvKkHdHdgVexGvJSi62HeIqjmjOqU,1953 +torch/include/ATen/ops/upsample_nearest1d_backward_native.h,sha256=yHbguw7-7UzQMm3xMPwWQ7Hnd7un9K8yd5PGqBK8DlE,1107 +torch/include/ATen/ops/upsample_nearest1d_backward_ops.h,sha256=NUl9I3YRADQiiEhBtxttEXz-qF4u8p6iB66P8ja_trw,2425 +torch/include/ATen/ops/upsample_nearest1d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=-nJwXrQl1yJ6L46Ig69ErH0MgKmkw1nt6Ejep08actA,1055 +torch/include/ATen/ops/upsample_nearest1d_compositeimplicitautograd_dispatch.h,sha256=PcOWmfoRoDa_XsX-KJYaL6W52VVJ2D0Bowtd-cyihlE,1058 +torch/include/ATen/ops/upsample_nearest1d_cpu_dispatch.h,sha256=5yAyqJ1AEhhhoAfZuZ-0-Y0SBw05_Pl50NCR47_-oZk,1647 +torch/include/ATen/ops/upsample_nearest1d_cuda_dispatch.h,sha256=5ZkyPMr5t2cmvj158OFQmmFSbXpXUZU2QWBMTEPkn1E,1649 +torch/include/ATen/ops/upsample_nearest1d_meta.h,sha256=4qqYyguL8zD1nQCb--mRDzQvfS_OxvCS19iZ3JwAog4,681 +torch/include/ATen/ops/upsample_nearest1d_meta_dispatch.h,sha256=7Xl7My0VThvCL_xMKmydZuzfSB_na_OfCzTJzGjz6vc,1649 +torch/include/ATen/ops/upsample_nearest1d_native.h,sha256=pjGvaaKm2-ckToVzocwtUKxarpLh-aIL5hGmuWamqTM,1124 +torch/include/ATen/ops/upsample_nearest1d_ops.h,sha256=Qucd6NUdFsLLuXgEdm744ah7JKiBlbRplJe2dFBmohw,2934 +torch/include/ATen/ops/upsample_nearest2d.h,sha256=ACtZkzzcyXygbSACb2Sa0V8NDfkGkkOhh4GsSXGIJKU,10886 +torch/include/ATen/ops/upsample_nearest2d_backward.h,sha256=XIYlguCg5p_-WP76E32-tgKabsB30AqOv8glIJPwMhg,7212 +torch/include/ATen/ops/upsample_nearest2d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=nJGtoSr-7DGBNjhjoiHrNZRX9ZCtkUAuk0EaCnvhHYw,1249 +torch/include/ATen/ops/upsample_nearest2d_backward_cpu_dispatch.h,sha256=zwGFhoXcLouxCajx_yViywx0cDdNjRdhL3Kka3y9OxM,2227 +torch/include/ATen/ops/upsample_nearest2d_backward_cuda_dispatch.h,sha256=aIThR8Ctr4BV2ZjYkHWFu5fX3J42Tcf_-Z4kcQZeYSs,2229 +torch/include/ATen/ops/upsample_nearest2d_backward_meta.h,sha256=ozW_ymmo8YAOKYu_Pu6EiFbVMpHnm-MGtTFpxk-lX_Y,767 +torch/include/ATen/ops/upsample_nearest2d_backward_meta_dispatch.h,sha256=d4buOUOBamCDZ9GI99fIEXFwMmlNZVLGERufOIGvu3U,2229 +torch/include/ATen/ops/upsample_nearest2d_backward_native.h,sha256=_uCBTXJ1blaUapXZwyJ500CWh5zAFDiD0BYholfV3ck,1179 +torch/include/ATen/ops/upsample_nearest2d_backward_ops.h,sha256=wgkHzytIAjiAHlETqqNRtmYkTMxArCkUBsfgqqs7JEE,2667 +torch/include/ATen/ops/upsample_nearest2d_compositeexplicitautograd_dispatch.h,sha256=dydzujLipjF9LaGU0aTg9390Xf2FojXMcUzrMob1pxI,1482 +torch/include/ATen/ops/upsample_nearest2d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=tE6WHnwSvCMyEGZIm0R95bIKEOr9JT-echFb-l9bEl4,1157 +torch/include/ATen/ops/upsample_nearest2d_compositeimplicitautograd_dispatch.h,sha256=h4uFoFMxMJG334d5W3h5lNpqrsxQLKcwX7pB4vgVidg,1058 +torch/include/ATen/ops/upsample_nearest2d_cpu_dispatch.h,sha256=zRdzO9CBgOBv3IRFuKxNhnVrtPsdz_m52R5hbo71o_A,1923 +torch/include/ATen/ops/upsample_nearest2d_cuda_dispatch.h,sha256=RMLFfd0dEh6VDbiSZf9WqocgMJtKlKnWdgDEtE5z-O4,1925 +torch/include/ATen/ops/upsample_nearest2d_meta.h,sha256=jUIkdP5MIPV-083_00yr7QW41HWeKeoIDacx5lG9GKY,717 +torch/include/ATen/ops/upsample_nearest2d_meta_dispatch.h,sha256=VDxcEb3mw1PucssKcl8B1u3FN_aa4XGJV3kTxn_iyKE,1925 +torch/include/ATen/ops/upsample_nearest2d_native.h,sha256=vgA6P0Gyw-zWjr3O_gJs_OwpoOBO8AwZRbF-GMTFsgc,1600 +torch/include/ATen/ops/upsample_nearest2d_ops.h,sha256=KmdKCgJrAdiXRm4blLaPSzsGyvnQS8tSbQVv7oUTWe4,4128 +torch/include/ATen/ops/upsample_nearest3d.h,sha256=TWhYNtuDbo9TeocBoX9KsLiUNel4v7gRvLdRZ7jfuv8,8088 +torch/include/ATen/ops/upsample_nearest3d_backward.h,sha256=F6uGvkAMW21jkr9u2imv4cQidSPkJYCL7y_xQKF4LrA,7992 +torch/include/ATen/ops/upsample_nearest3d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=IJkn4Vjay52HbIs0fXvtRKw3KJFcrFHc5t2wisaACR0,1347 +torch/include/ATen/ops/upsample_nearest3d_backward_cpu_dispatch.h,sha256=ldWPRLPkGSjKBM4JxH6fZOMJtEUvlYN7cOfMh4iP9Q4,2491 +torch/include/ATen/ops/upsample_nearest3d_backward_cuda_dispatch.h,sha256=eI3Pm_JjQyykkfvO6gOAnY6VmuLajdVvDEBRJWczd3U,2493 +torch/include/ATen/ops/upsample_nearest3d_backward_meta.h,sha256=Bz76YBtDhqEjHnZBcgZQ9U5kX_y99RaxiLPFaRCisac,801 +torch/include/ATen/ops/upsample_nearest3d_backward_meta_dispatch.h,sha256=5yLtDWmC8tMf9idRefUglHg4jZ9b_E13ua-VM1x1k4c,2493 +torch/include/ATen/ops/upsample_nearest3d_backward_native.h,sha256=K2McR9Uy8cO67hsSraSXkBD7mkt_9ZjmXFpFbmmU4KA,1247 +torch/include/ATen/ops/upsample_nearest3d_backward_ops.h,sha256=KZDW3USp5oMH-w1Mei46GuII-T9diyadrvr41NBYF6A,2897 +torch/include/ATen/ops/upsample_nearest3d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=YMvolGvFWnYv6cJQdO2xUd9jIsgGFFdLWBUeYLAv8v8,1255 +torch/include/ATen/ops/upsample_nearest3d_compositeimplicitautograd_dispatch.h,sha256=SEeroX-1Z7mo_0cjB62tABj3uvXm-j_OTF28ZARHxl4,1058 +torch/include/ATen/ops/upsample_nearest3d_cpu_dispatch.h,sha256=mJKJTLe5qaU7ckgUVvNWrt4SpiDH9woTlekkOW5KLWQ,2187 +torch/include/ATen/ops/upsample_nearest3d_cuda_dispatch.h,sha256=BFbjcGRPEZz0OH8RnnEQzyQUvCxTAAL1SdD6bT11lI0,2189 +torch/include/ATen/ops/upsample_nearest3d_meta.h,sha256=8sjkSXgoaoipCdcofJgSCPELdTE1DFCxh6rOjmjBaFU,751 +torch/include/ATen/ops/upsample_nearest3d_meta_dispatch.h,sha256=n4NaU-8bhSofRN-dd9BimvvMexyZOewk_4FRwBAMMT4,2189 +torch/include/ATen/ops/upsample_nearest3d_native.h,sha256=bj0rz9OHS8jXvauZ2sN3V4LV-fB3cWx6oZxRqiUSS4I,1521 +torch/include/ATen/ops/upsample_nearest3d_ops.h,sha256=L_AUWObxRnOK7qLBOTcvBgud_RGuoL8fq1ssUwWpyWg,3406 +torch/include/ATen/ops/upsample_trilinear3d.h,sha256=No1Lrf4FoRXKUeAeljqHjo5xpHUJMuFuPUcJ2fm0SzI,8890 +torch/include/ATen/ops/upsample_trilinear3d_backward.h,sha256=B7j-eg78Lbd7YeQVyFXF6c2KxtYje8tourNuDVHSpN4,8594 +torch/include/ATen/ops/upsample_trilinear3d_backward_compositeexplicitautogradnonfunctional_dispatch.h,sha256=L3Q6ZH1CmcCaUEONYSoRMSr6QmpVL_a-nU-m-CJmZE0,1391 +torch/include/ATen/ops/upsample_trilinear3d_backward_cpu_dispatch.h,sha256=6cvJ5D-1GDg18XVQYvVTrgTtvfKWqeFBf4CwEERAbnQ,2623 +torch/include/ATen/ops/upsample_trilinear3d_backward_cuda_dispatch.h,sha256=8qvEeuTaCutgQAIKyj1UY59Dt_PzVvLtSFcjN3xujMU,2625 +torch/include/ATen/ops/upsample_trilinear3d_backward_meta.h,sha256=qz6r_BwY2pHiExTrWngPuH0EDDIDr2bUKUdMozkat8M,823 +torch/include/ATen/ops/upsample_trilinear3d_backward_meta_dispatch.h,sha256=tnPHVcE87-GtmM7nZRCHM-eeh0HrbdslpOSiqJ3yjLY,2625 +torch/include/ATen/ops/upsample_trilinear3d_backward_native.h,sha256=PQktrwMyni_15ZtubWnacZMcbZV0foBErDfutjYGxuE,1297 +torch/include/ATen/ops/upsample_trilinear3d_backward_ops.h,sha256=_M7VvN16w4_Up7cQOzLV3k6ZtasgI-kfgF1U7nHikak,3041 +torch/include/ATen/ops/upsample_trilinear3d_compositeexplicitautogradnonfunctional_dispatch.h,sha256=JoU0gH3ZnUCGb7pqp3VIGaQeRxpqrpSpK2IuHkdRZKs,1299 +torch/include/ATen/ops/upsample_trilinear3d_compositeimplicitautograd_dispatch.h,sha256=c1zSIgrMzPALp8pbTeR69hMYcHwh3k6e_0E0jwV7BKc,1102 +torch/include/ATen/ops/upsample_trilinear3d_cpu_dispatch.h,sha256=_9KBJmVGwPeGHdfqNzoLPgFS3JhnBD3_3AYYp98f6L0,2319 +torch/include/ATen/ops/upsample_trilinear3d_cuda_dispatch.h,sha256=NGAkKleLpA7vIIcQ66UQIM9_-PfC41KlLeR1U65aJqw,2321 +torch/include/ATen/ops/upsample_trilinear3d_meta.h,sha256=I0PaScFEBCrEw0wFn5ZR8t3K3WliyDxi8AVIdesNrUg,773 +torch/include/ATen/ops/upsample_trilinear3d_meta_dispatch.h,sha256=jfbCcqFXxIYtK6FTNGzw6QhqkpoZvo8Sz2duWsCZewg,2321 +torch/include/ATen/ops/upsample_trilinear3d_native.h,sha256=3999a4ge1idaFWznhTCs0XbeiIgp-OOLblOADVaiIUQ,1336 +torch/include/ATen/ops/upsample_trilinear3d_ops.h,sha256=NKqTGJxwpK596feWMLsngbxHJxpR0PfUWR0EV1u0nqU,3622 +torch/include/ATen/ops/value_selecting_reduction_backward.h,sha256=jWpxN4RfNEV6QftVwEapczdOY1b4rx7yHtEiOmWnBmE,2105 +torch/include/ATen/ops/value_selecting_reduction_backward_compositeimplicitautograd_dispatch.h,sha256=ij6aUjF4-noXbQoMy_aLMkqMysS8Pg6_6luy5kC7Pvc,1065 +torch/include/ATen/ops/value_selecting_reduction_backward_native.h,sha256=a0sdjOIBCd6GEbJyHNFDo6ld63TMQNFrrxGpkncNzfU,614 +torch/include/ATen/ops/value_selecting_reduction_backward_ops.h,sha256=9uKmvjX9Wh7h3haxJz1RnJZu8moGHzRSDh6j5Y13TIk,1321 +torch/include/ATen/ops/values.h,sha256=PjwF5PS7_6IWwXxyB1MpAbbDw_BtCQEIQls7fFtSVQo,506 +torch/include/ATen/ops/values_compositeexplicitautograd_dispatch.h,sha256=uyvonAIGjrhbHWn1Jy75pJA23E-M1Ah_ahg-9WcqkDo,787 +torch/include/ATen/ops/values_copy.h,sha256=-ShM1YskDh9BWVUB68hrzXKpEBE__vaSnad6Ufi08tA,1093 +torch/include/ATen/ops/values_copy_compositeexplicitautograd_dispatch.h,sha256=xftxpp8ajt9nyIrR25CSSKS4ZkhDUNbDI0cIUG5XImo,901 +torch/include/ATen/ops/values_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=E8kiCktbelfbw-u9vnXU4FTiRN9BReQH2tPcH-QZYRw,818 +torch/include/ATen/ops/values_copy_native.h,sha256=FBA-BQOLL7w9OXJ1sh2Ot7XVAc2jQDA3ryLHD5wBy6I,586 +torch/include/ATen/ops/values_copy_ops.h,sha256=UEyO8dswy-jnmL2HnGvz4jxrOWWpTj--vhlPrPF9hWM,1593 +torch/include/ATen/ops/values_native.h,sha256=LMhz4Ydh2-mcabqIhqJWTGPlp4zfYTpeTcYSSGQxD9M,695 +torch/include/ATen/ops/values_ops.h,sha256=ZxXYfgDAAsRmOOOWYYDUkiOkF_dMXvz94TnORw808W4,968 +torch/include/ATen/ops/vander.h,sha256=lTn0GPxo8_ZyF8zOaDOADk6wwZI4SsGBBToEY96YKrI,752 +torch/include/ATen/ops/vander_compositeimplicitautograd_dispatch.h,sha256=oyB3L18oH5QRzlm_8hgA51Pi3p0isWC9IXfwBOwXPgk,850 +torch/include/ATen/ops/vander_native.h,sha256=9ltXuySydeSymfG_yxZQbmPRPCC8eK5GxWNnS7c1Lic,560 +torch/include/ATen/ops/vander_ops.h,sha256=koEQA-NUKLNasQlGGLUeTj47DhUlHwOzCJgiCFdnEpQ,1111 +torch/include/ATen/ops/var.h,sha256=1mOuhaz4bPeZFfn7TZKUTLPlWOJRBBsOfjDYN-6Ml0Q,4934 +torch/include/ATen/ops/var_compositeimplicitautograd_dispatch.h,sha256=C-I1JNjK3IfE8KE1yH32BkdgMyrrZkFpddnUYa4TGwU,2053 +torch/include/ATen/ops/var_cpu_dispatch.h,sha256=ul_RTCsdjuf5m6uHrx58mGhplGdTAHbJ9S_djeSgURQ,1238 +torch/include/ATen/ops/var_cuda_dispatch.h,sha256=Rok7zReh-SaOLkelSeZ2bHuZGmD8N--9yFwg8Rx_Q7s,1240 +torch/include/ATen/ops/var_mean.h,sha256=Rc9hT-gUX70C08H78o8UTxSVA0JoxxJUfaBPqI4LV-A,3253 +torch/include/ATen/ops/var_mean_compositeexplicitautograd_dispatch.h,sha256=e36pavNPOtEriAiHJMCZJz03NlrVa3pBvrPfL6ZPq2k,1207 +torch/include/ATen/ops/var_mean_compositeimplicitautograd_dispatch.h,sha256=GPInzmCMJBTmunSmjfsk-uinGxKEEes0mmoWO0-_7RY,1299 +torch/include/ATen/ops/var_mean_cpu_dispatch.h,sha256=CMH6Pu6kzmixfgvxymSBleIgNd03uNDCpZGbTVDhjw4,897 +torch/include/ATen/ops/var_mean_cuda_dispatch.h,sha256=BQ1n8X1Z8ZZJxS29kJqOz3MWYRUp5NyjuNVgv2iUZZI,899 +torch/include/ATen/ops/var_mean_native.h,sha256=VcahC15WmKmyQO7cspNBvgJy1n11UesPtMzYAYJB2X0,1463 +torch/include/ATen/ops/var_mean_ops.h,sha256=gAR97T3MBb8DIARsEtDny_zVXHmV3JQ89fgMBQMPLKM,5756 +torch/include/ATen/ops/var_native.h,sha256=rr_bRQoXuxpZZpF-dbnFQR5XjsEQCrPj4xJFPRwj4NY,1669 +torch/include/ATen/ops/var_ops.h,sha256=mxtVJ-QnF2hb4Qoaujod_a_LTcw6Dz5RawxS25RKmv8,7597 +torch/include/ATen/ops/vdot.h,sha256=73SCBzO-lD0miUxX9Stx37ExBvVE-4wCB38_EKwZ_8o,1164 +torch/include/ATen/ops/vdot_compositeexplicitautograd_dispatch.h,sha256=E8VVhPIqOg5IcE6xcOS7AZqBUQCXbjAlPWt_R92yp_s,939 +torch/include/ATen/ops/vdot_cpu_dispatch.h,sha256=1hJTxEHinzHqsAAWaj8QZiCw9t6xZeKb4KkcYy0Neuk,767 +torch/include/ATen/ops/vdot_cuda_dispatch.h,sha256=HxJI7igtju5ecH6p0uaXmvhwtTIpX4fds6uo0umq3_4,769 +torch/include/ATen/ops/vdot_native.h,sha256=YePyO6JeBZ77KMJjm75sBkXscAG-W2MQ7R0FRFxdNNA,708 +torch/include/ATen/ops/vdot_ops.h,sha256=KVEr5w9ZK_l1sj8N0FPcYojATFYER6DuuL_23BSVYyo,1723 +torch/include/ATen/ops/view.h,sha256=c7bltF2qvsSEdeS9pgZJLKpWfDZ0ft3a0Bg3G2CURcQ,988 +torch/include/ATen/ops/view_as.h,sha256=GLkmjelkNdL48YTEgWLX3a7jNJFIkn-jr2wFX4bOkIc,507 +torch/include/ATen/ops/view_as_complex.h,sha256=uUYv4TuRzF44H1DrReiiWT_yulya-sy28SC8EdyEHqs,686 +torch/include/ATen/ops/view_as_complex_copy.h,sha256=WAJ1tDSRueFZMJI_0QVTbzQ8gEU0_5Kejolq_Uzl_Rc,1183 +torch/include/ATen/ops/view_as_complex_copy_compositeexplicitautograd_dispatch.h,sha256=bMT-WlbPIlrTDnYVEp4Goy3XxU08BoFeAjp-oZt_w7g,919 +torch/include/ATen/ops/view_as_complex_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=FSJ0tnnY1w88IW3wbPKE2MSNjARQ6S05ZNQxvPYHpEs,827 +torch/include/ATen/ops/view_as_complex_copy_native.h,sha256=gq5h-g0Wc3IPr_jz1VUt_RN-Kk622z146EgTN7UJVX8,604 +torch/include/ATen/ops/view_as_complex_copy_ops.h,sha256=AfzlLVkGThnDhh6l_rSQDeTbTGgkpjfgumbmeZB3LhI,1647 +torch/include/ATen/ops/view_as_complex_cpu_dispatch.h,sha256=xoc7rm0ZbzuZlmSvQlJc__2LRx2-MRdM9-Cys-3BYpQ,752 +torch/include/ATen/ops/view_as_complex_cuda_dispatch.h,sha256=9HgD-RxZNSTgRKUJin00gvQ69bKYGQwQrjQbiCoOAuQ,754 +torch/include/ATen/ops/view_as_complex_meta_dispatch.h,sha256=VyP5DiKP9fZRWCeCXDiQU6Lz4oiX_EdI-2NdeyXFiAY,754 +torch/include/ATen/ops/view_as_complex_native.h,sha256=eqNIYfNEFp3Np0ILX5b2AYG84ACs04KNOSYAkIwSN_E,506 +torch/include/ATen/ops/view_as_complex_ops.h,sha256=vpofBrmpq0kHUMtsXVvGou6UBn4ro4RxVb6ZwtEXFNM,995 +torch/include/ATen/ops/view_as_compositeimplicitautograd_dispatch.h,sha256=qB1D47Wwuol5X9ulRcPFOM4MwR_PELg4ZTC76-qgjmw,814 +torch/include/ATen/ops/view_as_native.h,sha256=IGOKolZpI0CIKTaXNCdZY2mBx8Zvyba7tlNE5JmERTY,524 +torch/include/ATen/ops/view_as_ops.h,sha256=dgpVZEBAyf0erp1lZPUNsTSUX_tG3mMd2MX9olgp_H0,1057 +torch/include/ATen/ops/view_as_real.h,sha256=KQCfgjGX4x-G5ZEPPiflsrMdoIOHpfVTQugWkzCbKYc,674 +torch/include/ATen/ops/view_as_real_copy.h,sha256=joQ7vObvTXfAz3uDk0AGuAXutEr70Jfc3wiNjRflb-8,1153 +torch/include/ATen/ops/view_as_real_copy_compositeexplicitautograd_dispatch.h,sha256=6VL11NOlTz3oSjRikYdcmpnlkYmk1qQ7ZtZaHnOUuQQ,913 +torch/include/ATen/ops/view_as_real_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=JDMpQhJ3hBhW3jPA3oont6xzZ4i-_07xDCG5CsGRY40,824 +torch/include/ATen/ops/view_as_real_copy_native.h,sha256=CgQPqUQ6hRc7Ls8aDITwA1UAa0Qnzf-UEB12p4VYgVc,598 +torch/include/ATen/ops/view_as_real_copy_ops.h,sha256=NauE74B5VruPtZ4y7yH98HiJrmtIJdw_TEtuo-Gvuv0,1629 +torch/include/ATen/ops/view_as_real_cpu_dispatch.h,sha256=LeQXzCkAGbC6Xzeg-vJSajh7N1rUTD5tsJA2K_z3U2Q,749 +torch/include/ATen/ops/view_as_real_cuda_dispatch.h,sha256=bJGsgNinIQfyi1L1Vo0iW2-CKyRBJfim42VYAnaEae4,751 +torch/include/ATen/ops/view_as_real_meta_dispatch.h,sha256=IP2l3kJsL_B4fvAa5tEgpCH4CcQQRAUIQykOxgqqe7g,751 +torch/include/ATen/ops/view_as_real_native.h,sha256=uxprV_Qq-pWTW0pwYDV9XY3PUPGljy1XGj7qbUcHjs8,503 +torch/include/ATen/ops/view_as_real_ops.h,sha256=K3cSYYNb-kUG_HghibDwH_ZmVpWC0bLjaUh8JpqgPFE,986 +torch/include/ATen/ops/view_compositeexplicitautograd_dispatch.h,sha256=jQRxSQo3p8sfWgFOEFxuFVF1gZGfFmDTCJw6TuW1BaE,807 +torch/include/ATen/ops/view_copy.h,sha256=-PUi4mpIKttwpXFgiYKvCt38qZogwG4EYgCarXrafHA,4395 +torch/include/ATen/ops/view_copy_compositeexplicitautograd_dispatch.h,sha256=cxTa3cCL06Htmt5i9vEHRy-qFEd75LC52lwb76dbTOs,1381 +torch/include/ATen/ops/view_copy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=t_CPjSaDl3Cjid2Obf29g6y2XrcdJBk7aFpgtANxSdw,1009 +torch/include/ATen/ops/view_copy_native.h,sha256=Yy6nto9DUYy__hLDsljk475kHjbGhMoob2Ux0RohgfU,844 +torch/include/ATen/ops/view_copy_ops.h,sha256=IqvVi4XCQq7f1jywkp1zKMtSQ8CMHKHBgipcfoP5kYI,3078 +torch/include/ATen/ops/view_cpu_dispatch.h,sha256=n2jPSa99qQPuhLcn_v3K-q7qjc94JJJHRbcDTBDcHdQ,849 +torch/include/ATen/ops/view_cuda_dispatch.h,sha256=WgiomnLlle5RKeVz_lKqFC6wWW3W4yDKpLstLrsyA_U,851 +torch/include/ATen/ops/view_meta_dispatch.h,sha256=FBoshyq7zxNK0fjaPdmY0K_9WzzHgwgawkyboVPSX5k,851 +torch/include/ATen/ops/view_native.h,sha256=joe9VcsacubphBxlcasSU6BlPXLLlq37uoJSjpbhOxU,762 +torch/include/ATen/ops/view_ops.h,sha256=E78yt60_IYqBmFQnxouvl69986jPwoHZLt1l_LuUiis,1656 +torch/include/ATen/ops/vsplit.h,sha256=Vk45AUe1dP4lag6Ss7jx2RZRmmrcYPmiWLo6WVxsEf0,951 +torch/include/ATen/ops/vsplit_compositeimplicitautograd_dispatch.h,sha256=HJlRlXL2vTRqpLaoJFSb7BBMQWAVyaI0QVcAwFLn-lM,915 +torch/include/ATen/ops/vsplit_native.h,sha256=t_oWLu3_Q4yYRJ2rRhGEBuXEzYGKHzvk-pqMgnSv9Tk,625 +torch/include/ATen/ops/vsplit_ops.h,sha256=E_LAOV9dSo7nre2P2C9jfD91HDXNPt51tn0DdVG-gvQ,1758 +torch/include/ATen/ops/vstack.h,sha256=VJbuCU8mIYRPirPvBxw-8zpOqEJm-e_R14jzWJSqpJw,1064 +torch/include/ATen/ops/vstack_compositeimplicitautograd_dispatch.h,sha256=0X2j3a0gKnjd7xX3yr1qmyK-9J73QUkm2lEolh2r9Js,943 +torch/include/ATen/ops/vstack_native.h,sha256=25Igc5K0XDE4JxYRO87JE5zx91Ouj7G9wnZjL9_9ya0,574 +torch/include/ATen/ops/vstack_ops.h,sha256=YpOuXHuu_-FeTVnzBgVik-hRaHPtS9EJb2wvTwZNiE0,1561 +torch/include/ATen/ops/where.h,sha256=XqqUQGBh_gMP_-SACM4gxHoqJyZ_5qYwEMbz6jPRGAg,2339 +torch/include/ATen/ops/where_compositeimplicitautograd_dispatch.h,sha256=u9XSyNhiBrZTXoL_YZN8FEjw6qEB2z7j4cU47Y5airA,1136 +torch/include/ATen/ops/where_cpu_dispatch.h,sha256=M4GSwmWLmHp68XOOx07T5rW7r7YKZfLU3sj5gAy0IqQ,1067 +torch/include/ATen/ops/where_cuda_dispatch.h,sha256=TG4f-kt_FT92hAdMlqqiqwtn24Gfx3w15j3NLPfXt_o,1069 +torch/include/ATen/ops/where_native.h,sha256=MS840yOF23UGnAfnaznZOYLFN3gufpcoHDY1-2ZKpGw,1365 +torch/include/ATen/ops/where_ops.h,sha256=WGpBSVRjKlE15wjP7cfN-L-bGGuijRkEDm1KM9ogVO8,4687 +torch/include/ATen/ops/xlogy.h,sha256=Ul_zLyVxjTs_dmEvULIKhBY4IQXGJcV0hICgzyvJpIY,3118 +torch/include/ATen/ops/xlogy_compositeexplicitautograd_dispatch.h,sha256=Fua6Bb1hL_ez14x6w87In9H80nsWxkM8f5OjkSxDpUE,1387 +torch/include/ATen/ops/xlogy_compositeexplicitautogradnonfunctional_dispatch.h,sha256=8A8cxcpB7qXa2xRgIJvTMfQu5zARFDjWovxsjAT8Sd0,915 +torch/include/ATen/ops/xlogy_cpu_dispatch.h,sha256=_uM9Ly9pe1YdAD7wbeK62Ug4sKgYssXBlxgTDyttekc,1054 +torch/include/ATen/ops/xlogy_cuda_dispatch.h,sha256=kMK1bTI2WrAJfNdpEgv9SFHzyx6nXgUHOiKhSZEUd6E,1056 +torch/include/ATen/ops/xlogy_meta.h,sha256=szxmtUdisVgheID8nDONuRC8HoxzDBX4siJk03m7Gtk,634 +torch/include/ATen/ops/xlogy_meta_dispatch.h,sha256=roo_sGcZDsgoM8OB-MPcccrHLoDbwFpsrFc1mDojyOY,1056 +torch/include/ATen/ops/xlogy_native.h,sha256=1Y34uPoEBVvi8Ij3PKZeW738GMfBPbHkqV43pAnrqko,1094 +torch/include/ATen/ops/xlogy_ops.h,sha256=f3zSJ7G5tZc7A6wv7XtRL9uOSazW7xndx_PoeqXnLLU,5709 +torch/include/ATen/ops/xor.h,sha256=DLjjVOev2Gto8qgUHe-4HCuJe1OboO4RWmEQ0LwZelc,909 +torch/include/ATen/ops/xor_compositeimplicitautograd_dispatch.h,sha256=IzDtA1z-IxQlbZJjHRh8u05qdl3zDSuBWk4HwCWd64k,1054 +torch/include/ATen/ops/xor_native.h,sha256=zsFDSID_QxqW2QdnCzKWT2UwD6wYBf9aiH7VWKtz6fc,764 +torch/include/ATen/ops/xor_ops.h,sha256=RSgWHAjvCOOvQClQY646cbTCtRBT6Lowb52NV94L0u8,2929 +torch/include/ATen/ops/zero.h,sha256=UkBUkBAGij69qi2sJw4-TfQIz4fDJSy30q2ztiX51Tk,1164 +torch/include/ATen/ops/zero_compositeexplicitautograd_dispatch.h,sha256=QlaTjwoJJnzzzu8pNeciaRJq8_6fu3aU-FfNFUiiTHM,940 +torch/include/ATen/ops/zero_cpu_dispatch.h,sha256=wc3iblUe1CUaC_wgcnlt2Kw4nOzJ7amKWFlzcetyghk,738 +torch/include/ATen/ops/zero_cuda_dispatch.h,sha256=N7oe6reV0lo-zYx-3IrjmU_qmSbxElKHiFNg1AmFKuY,740 +torch/include/ATen/ops/zero_meta_dispatch.h,sha256=bbnHpAFaXZdULTeCL5dPv1QABYrWj1kPAfCv0xW-QeE,740 +torch/include/ATen/ops/zero_native.h,sha256=gMbKhdnOMZFoW_Ge6O_6RAnxTbT8DXYnh1BU7iQuCWU,909 +torch/include/ATen/ops/zero_ops.h,sha256=jlIChOAmGu6Y5x2JqO2CTeeuq8afUaEZqDOdmggvu4k,2055 +torch/include/ATen/ops/zeros.h,sha256=iMg1zaDFgcAb0PFU6VTudTA_QlcXcCLV792OrHV6I3g,6990 +torch/include/ATen/ops/zeros_compositeexplicitautograd_dispatch.h,sha256=H98TZx0qhaVvGhg0ru7BHO57T6WE5BPunXbUTN43hQQ,2220 +torch/include/ATen/ops/zeros_like.h,sha256=sMjyfGYccZRErAqdeYr2dMuEgNkAaasK0pNY4kCdGYs,2241 +torch/include/ATen/ops/zeros_like_compositeexplicitautograd_dispatch.h,sha256=TM2d9v6A5k-j2pASxo0_d_31eYgDjf12r94yRdSgziM,1418 +torch/include/ATen/ops/zeros_like_compositeimplicitautogradnestedtensor_dispatch.h,sha256=GCkQe9Gtv17YbQXAeESgJZaKGq8OJgQQ_5ejPj-kgEU,1162 +torch/include/ATen/ops/zeros_like_native.h,sha256=GezOoL8r7LHWzaK5wTY6C7pjIJBGEyFTlGq81M6gP_U,854 +torch/include/ATen/ops/zeros_like_ops.h,sha256=Nh8m-9gX31LJ4qyD5uB3E9o3RqH4towM-_KWA5Dt25Q,2417 +torch/include/ATen/ops/zeros_native.h,sha256=vhr72fXmjATzTPxHHyQQOrEbIShvr2F6r5IeSyBmrdU,1187 +torch/include/ATen/ops/zeros_ops.h,sha256=VHaRHk_qfTwkgpzsViklSjjDxAaBH5RNNxj5syYI-rU,3944 +torch/include/ATen/quantized/QTensorImpl.h,sha256=fnd0AOwwWfP9QrgmVS5wRY2yVMvQ8YIPDkEFctlG8-w,4134 +torch/include/ATen/quantized/Quantizer.h,sha256=6U26qidaxzNDIztSk2I7ePEKYcfACFN9Z22isgJfnX4,9511 +torch/include/ATen/record_function.h,sha256=HM8-A8uZuPLnIdH7rYgPaNoWJjKovIds62YiqHf-Hmc,25058 +torch/include/ATen/xpu/CachingHostAllocator.h,sha256=IC0VWZjKlKiPi1UiOZTI6Oc5BlsbFwC2vaZI-6d7djw,563 +torch/include/ATen/xpu/PinnedMemoryAllocator.h,sha256=GM8dzwsko0wP8F-FDFqKngdkyrU60lVrvveO8yxP3Lk,248 +torch/include/ATen/xpu/XPUContext.h,sha256=qlZxvohditoKXBFYHEPhUGsMgtxUoTW1b4OCoo7YxuM,478 +torch/include/ATen/xpu/XPUDevice.h,sha256=oLH_-c-OsKo6nEhPBK94hy6Nba9Xw9TqX2Nlfec6j9U,280 +torch/include/ATen/xpu/XPUEvent.h,sha256=Kphr2Q21RJbCIFmS8JY4Icitn0MqiBKGGlJN-Oancb0,5979 +torch/include/ATen/xpu/XPUGeneratorImpl.h,sha256=RpehSLWR0sWI25EDFPnkqPbNHysl5NBqc8oTS_5ThJY,1271 +torch/include/ATen/xpu/detail/XPUHooks.h,sha256=3R_PrEjwZxdRJ5TMEDo2pKBjOQtumI8d6V1r1TfaSYk,1112 +torch/include/c10/core/Allocator.h,sha256=LUzHDuDtK4KU99XA0izBM10I2jBa7kR1_KaXCdfEg00,11653 +torch/include/c10/core/AutogradState.h,sha256=ZhM1n11mBPE8SX2uupQ56GhAnF0NdCnldwdyicROFD8,1727 +torch/include/c10/core/Backend.h,sha256=oNg0YNDFZGdXenU5lsZfv8gw5clh5ELQMHcSJQqbB8I,11649 +torch/include/c10/core/CPUAllocator.h,sha256=bqA3qxrMIK0HL6Quu-mCy1wtQy4ftnyjlI6tQGFzxV4,1747 +torch/include/c10/core/CachingDeviceAllocator.h,sha256=vAUQ4G9h_rVbAASYb1xCSrB3c-azhVV2mFEXbxI9cgs,3837 +torch/include/c10/core/CompileTimeFunctionPointer.h,sha256=Qtv7YgDwtd8j7wDAHnP_kjuS6aE5fJn8RjIgmj121ZE,1757 +torch/include/c10/core/ConstantSymNodeImpl.h,sha256=P241GMoIkFyDl2xOGWtr0tKsT_rmB-oAx7qbhFPESUE,3100 +torch/include/c10/core/Contiguity.h,sha256=-JN3N06yh0MweWscOROwCmOCkAeRbKLpVlorEaNa86o,3521 +torch/include/c10/core/CopyBytes.h,sha256=CqIxdD94B-C67drW7bXpRuXmChAnny9wmjLebeghAR0,1391 +torch/include/c10/core/DefaultDtype.h,sha256=4TOAW9l8_QQb4A0knfTzOTS7Wj4I-pHZ54knSe2yXhk,409 +torch/include/c10/core/DefaultTensorOptions.h,sha256=NqWkP5yL8imFcEs9-nRyw1kk7SEMkMyBjn8lth-MPx4,1109 +torch/include/c10/core/Device.h,sha256=S9U5qNNxSz1XU8Ennew8jcB8U_kJlJm39Cym_i4N7Ho,7111 +torch/include/c10/core/DeviceArray.h,sha256=P7ppZwyYIwCp-h9VxBrx9Noq42brN3Mi12LpupKRdDM,711 +torch/include/c10/core/DeviceGuard.h,sha256=GRSDjGoEF9iXag7g7kxa96GLcxkouhWBWH0TJ5nXnnM,8012 +torch/include/c10/core/DeviceType.h,sha256=rBgZeiobReeyGm14dUu6MViAiigpe6IGBqCSkqNea1U,4599 +torch/include/c10/core/DispatchKey.h,sha256=ywJIOdpJ9vyVJXiV9nghdOahpUXzTmTg4gud_SdZvyc,33250 +torch/include/c10/core/DispatchKeySet.h,sha256=OWvSFDBgGgFTujcymfa6mEYr3UmwyPbUmlW1sgo1KxE,41870 +torch/include/c10/core/DynamicCast.h,sha256=bAPgDSo2kIEXBFmP0qtmNcsHW-Lw5kBXGrqe0CrGo3o,4569 +torch/include/c10/core/Event.h,sha256=TuhUhRY_ynKX8EtC35Ep8oDqo0lI_ntobI99_aN8PEE,4600 +torch/include/c10/core/GeneratorImpl.h,sha256=MiWj9-Q916YzqoDt4MO7oyVqphbMjb1hcQutRid6ZYQ,4048 +torch/include/c10/core/GradMode.h,sha256=47vzeqGaYa5YupZ7mTBQh277OPwTmragPaoJrHV2iHc,1713 +torch/include/c10/core/InferenceMode.h,sha256=_OiqGDbD2GsAtAgleocA-_Lf9JJDn2VbaqTXFIhcHfE,3854 +torch/include/c10/core/Layout.h,sha256=_1HYkkioObPgW8RvtzbQaOPyhOWBttoHhzrA3667T78,2021 +torch/include/c10/core/MemoryFormat.h,sha256=rCpJfqhf-kvJGSKqnpw7Bx07juBpuCCiOZ-3GlP1jOc,9691 +torch/include/c10/core/OptionalRef.h,sha256=MaWkZyUjzzjcK1TL74XxiAkG3DBHqtiFdNhSYfaked8,552 +torch/include/c10/core/PyHandleCache.h,sha256=li6VXz_1QDxMFy1kwowqBJJepMJmmWxjCSWnn3KgPfo,3177 +torch/include/c10/core/QEngine.h,sha256=6TliQpegM-W1EI37iiGbua2f6bRc3x-DNqAHp84ZQgs,1056 +torch/include/c10/core/QScheme.h,sha256=7j0NnGluksYgRWKanM0nrOlIH1DkJe0UbCfWmHHpui4,1616 +torch/include/c10/core/RefcountedDeleter.h,sha256=-dYumjbsxMjggfe6o0iwmCiEU00U3gPzPRss_c66xLA,2275 +torch/include/c10/core/SafePyObject.h,sha256=q8TRdh3z7_m_1Ws6fb31u30VTygEyjLZ4MgD7R98HlQ,3861 +torch/include/c10/core/Scalar.h,sha256=MhuiWSEV4EhngpECJxWegh0__fPr3CA2lFOIGVfRlZo,14571 +torch/include/c10/core/ScalarType.h,sha256=V2uZWVEYXvmA2lDevILykdS5kggDs4V0TqwiUWZh-m8,24490 +torch/include/c10/core/ScalarTypeToTypeMeta.h,sha256=Yb8CJIsuEpR5iKhSBXsIe1ZOE3kKw6jS1SEVJpnNXXA,1414 +torch/include/c10/core/Storage.h,sha256=evyRcgbcZUnXPLTfy0wuLYtCwEVeQrjNVvssh61SskE,7331 +torch/include/c10/core/StorageImpl.h,sha256=rvbWuX504YDPV0fEFHQXHPeg_jBRCr6tup2hZWM4Lp0,11583 +torch/include/c10/core/Stream.h,sha256=vbajo_A9mHAJ9n3hvioeLGtr5GN3YHskoPqSscQwUrA,6541 +torch/include/c10/core/StreamGuard.h,sha256=b_nbBTtaG5AZyjTB3tyKgQuVAVpTq9TeIL8l8tobfZU,6763 +torch/include/c10/core/SymBool.h,sha256=Jnzd6xJ02L4Ak1Mm1_Plf3jnEom3tYVNdXDV5WuVBLY,2822 +torch/include/c10/core/SymFloat.h,sha256=--ySFNfTYX69XkqKqo1FaavJ6ZARDbGm0ohf0Hrg6iU,3675 +torch/include/c10/core/SymInt.h,sha256=ID6mB4Dyc30OSesoGGYfBmXOLj8iXe3PYvKdwYTSRgg,14335 +torch/include/c10/core/SymIntArrayRef.h,sha256=6Tfc76EmWZMYXpsaRvR2xLCIkczIJM64E5XWZn9HJjQ,2803 +torch/include/c10/core/SymNodeImpl.h,sha256=MmbE9t82N8ccBiOuzpeXdVF2yaEKhIVOYujA3pHaXMo,6826 +torch/include/c10/core/SymbolicShapeMeta.h,sha256=tRHea6rgWTdFit94bXHuiYYGMJYuqdQ2zG-_Dec1cnk,7565 +torch/include/c10/core/TensorImpl.h,sha256=GlcBLyzP1WemhuFD1QWwq0m5NFLmqhA0Q5kI00_KRKA,118493 +torch/include/c10/core/TensorOptions.h,sha256=jXOZI72Dqv-Xv4mqhaGUA5aUSGOQLgZTK4YFqCUE0YM,27877 +torch/include/c10/core/UndefinedTensorImpl.h,sha256=Trm1I2YLk2_XVOW3XIDawzjv_Zyajh_hrwqIF9gYq9o,1270 +torch/include/c10/core/WrapDimMinimal.h,sha256=RVeBQnnUrB7tDolSO1lt4PSc8wxz-O4c970myF9Fj2I,1408 +torch/include/c10/core/alignment.h,sha256=QsRyJjWPY5U05bGLLwoW_CMJxh48Jdy_icDH33bNk8A,585 +torch/include/c10/core/impl/COW.h,sha256=yaU9qBov0GXwDZ_1kMM6OpDHoh42JzteCgb-N6cCK50,1088 +torch/include/c10/core/impl/COWDeleter.h,sha256=cLPaLNuT94Gc-lJ--NVfsKcDG5pwUGKhnNc4MulCmJs,2164 +torch/include/c10/core/impl/DeviceGuardImplInterface.h,sha256=vEchXA80mIaC0tJHzjNCk1orH6DIp4fhh_pYUNcoBf0,13946 +torch/include/c10/core/impl/FakeGuardImpl.h,sha256=3q0PxpwkJKFovzT2-oZ7MF-YAoq7Zo5iZi2FaM2ZE_c,3237 +torch/include/c10/core/impl/GPUTrace.h,sha256=N1AIMkj_KzUHcGrB3uBHtTIv3qeq_xH1dyhf19wLnik,892 +torch/include/c10/core/impl/HermeticPyObjectTLS.h,sha256=10e9_7Jl0SJB2O9ZlU0IcDlCPxzSJpz6t3-dJmlkb5Q,2505 +torch/include/c10/core/impl/InlineDeviceGuard.h,sha256=PQSeBpomvC8i9TY-K507fQ2aOD7HMwrBVDWi-QtphJQ,16344 +torch/include/c10/core/impl/InlineEvent.h,sha256=LWBB_Ozah1fTZCxO6jfLCeBxJmc6YzN5SaOz0UOKZR0,3983 +torch/include/c10/core/impl/InlineStreamGuard.h,sha256=K26HG8eC90oUnI5BoFsRI9hw9Yo8WzoiZYBgtbZSLlA,10174 +torch/include/c10/core/impl/LocalDispatchKeySet.h,sha256=ifimMBO12nuxnOY7WeSGjTzBkULjgw3IIvWM-xX4Hcs,6702 +torch/include/c10/core/impl/PyInterpreter.h,sha256=WLlO-6NIJyRBIS57H8DbqZDs3dq-0V_L0Z32zLYRuP4,11563 +torch/include/c10/core/impl/PyObjectSlot.h,sha256=vtmvt3eDxc71yBK5YV6Fnui3xYRn4v_PsYbVU57xT7E,8357 +torch/include/c10/core/impl/PythonDispatcherTLS.h,sha256=wjLK7XU2OoADqp_Ke4qbrD4z7T8Pqm9DcfFuLjgTF_0,869 +torch/include/c10/core/impl/SizesAndStrides.h,sha256=Em-Ej7Aw07Zm6UN7oZ5aenZKs8hwe4bBXBi3Pj4vK5o,8693 +torch/include/c10/core/impl/TorchDispatchModeTLS.h,sha256=I6wtkhL6mJsngjP99VuJ10RDAc9W2Di67rgsFWncfMc,2348 +torch/include/c10/core/impl/VirtualGuardImpl.h,sha256=bj3fhhXq0f5WgDKf-_NRS4lWCZzWAfsaLFoK-PQX0J4,3428 +torch/include/c10/core/impl/alloc_cpu.h,sha256=VyGwfxVqX_JhEj4zoFZHvYtV6T72LC9xXSZ8rEUcLXA,554 +torch/include/c10/core/thread_pool.h,sha256=9KSES5oj1cVeE3Hb2u4h4iqjx1NFmkGnF6bvGbN29ls,3117 +torch/include/c10/cuda/CUDAAlgorithm.h,sha256=PkpcRRGz2M31usHY-HM3UvG3-GN1o2EaHAa6Uw1DxlI,1072 +torch/include/c10/cuda/CUDAAllocatorConfig.h,sha256=vjRS0y2lsJs1rFp4WVxRSLt2ZgkF_fYzKquyMe8koUM,4488 +torch/include/c10/cuda/CUDACachingAllocator.h,sha256=AzE_HmRI4lDgZXrqaoA8M1DG9KhyOLNzDXzhHyLmBMw,18030 +torch/include/c10/cuda/CUDADeviceAssertion.h,sha256=ld0jhOoERgFkawnnkTVDrShwTAD6K-L2JzO0b-JwOTU,4167 +torch/include/c10/cuda/CUDADeviceAssertionHost.h,sha256=tlR0zCoISW9Nr7zJPkg9sUB1u9I5mZ1qlBrtEJGj-Sk,6781 +torch/include/c10/cuda/CUDAException.h,sha256=NNXsMmcGaDauVYAZ0QW6SutjpRR_ozb9dAAHU--Hd7k,4508 +torch/include/c10/cuda/CUDAFunctions.h,sha256=ND0M0TJVSEnbCCXwODSRK7LYLr1nhZCGYoOEUq0N2Eo,4027 +torch/include/c10/cuda/CUDAGraphsC10Utils.h,sha256=3HEvxxoXf3V5W0ryuUKe0h421SuwCTqnEqIPXNUkvZU,3073 +torch/include/c10/cuda/CUDAGuard.h,sha256=uIIZV0_ffeJjbGPbQF1NmGVGqr2fBmGZ9Qn14DmC6xs,11657 +torch/include/c10/cuda/CUDAMacros.h,sha256=qVfPpZL5u0zMaHAu7ooLzHPYJQtb7PRJc1TieW-SZC4,1530 +torch/include/c10/cuda/CUDAMathCompat.h,sha256=Dh6FPVzbwtZ2D0KSnHSQhGhwwkC__1UstoRm43-pRK8,3698 +torch/include/c10/cuda/CUDAMiscFunctions.h,sha256=tIxBpAtFQuflrO9PS1HtWQ_3LF6miD9IxKtupF99rQA,318 +torch/include/c10/cuda/CUDAStream.h,sha256=IU8EFReoaym7tWRlWsxYntRsOrtQOSgunBaZJ1WgU9A,9896 +torch/include/c10/cuda/driver_api.h,sha256=27RRHBSUjwvOrSaMg-HZZHtsKk-qm0dhd2ScQMfnvMg,2567 +torch/include/c10/cuda/impl/CUDAGuardImpl.h,sha256=ZG4pKgw813PxRYW8HObjua-P1SvXNqb5tcCZyq99lCo,9445 +torch/include/c10/cuda/impl/CUDATest.h,sha256=9ClCwSnel2tvAcFMBN_nEDI5x_faXUekDpUpwHv9ukA,123 +torch/include/c10/macros/Export.h,sha256=TddxURlsmbjm2KDzvUDWp2_6jAqQ0NGBVV8sYHN_4ok,5962 +torch/include/c10/macros/Macros.h,sha256=33V7eRGMKqayTHR9l_OOw6Vdi9On7xXORc1xwy6XEkY,18325 +torch/include/c10/macros/cmake_macros.h,sha256=3uIcn6SP6ytGsow9EZcSP6mQDzprVjggpmuXtovhu3E,451 +torch/include/c10/util/AbortHandler.h,sha256=ujDWRKtwl6vHRourVpDS-uxTfiuT-49RyJ2ieGQtmfs,2275 +torch/include/c10/util/AlignOf.h,sha256=Vow6fLPAmaw50-uGorJM9SXA-q_DePRScuzXAjJ45dk,5082 +torch/include/c10/util/ApproximateClock.h,sha256=en3AtNNe8hc3Vc96VtLFnYr3FTLK5nMz6e1Yq6YfftY,3598 +torch/include/c10/util/Array.h,sha256=4jX8gB1pKUtj4h2KCR1gCSX8GkhugTkVJ1AP7oeoCqk,468 +torch/include/c10/util/ArrayRef.h,sha256=nnvVmWiaFU7F6tsqLrKBjHVAAtCpC8Y_nLMHAMC1Ftg,11298 +torch/include/c10/util/BFloat16-inl.h,sha256=H1Ff-gx-tL6iaBF-931VrEQV58wsLY0lr6Sa84Yu6NM,10672 +torch/include/c10/util/BFloat16-math.h,sha256=ny1IObnNhinctgK9C4qH5PvNF3SNs_vWvTttIpav0d0,8413 +torch/include/c10/util/BFloat16.h,sha256=wobbHBIP2WYUw-1wCGIpWnquzIk_orPSGuV3F3HNdWc,3361 +torch/include/c10/util/Backtrace.h,sha256=m29_pRzFaJ_uhOYh6a8cMNOCmbDnZXLIdCZLak98PX0,828 +torch/include/c10/util/Bitset.h,sha256=-04rWF5Q9cbBhnbiwKHU8QrUtFwxtmCwbg760xvPst0,3539 +torch/include/c10/util/C++17.h,sha256=vMckK6UB7NGlw5eV9JhO-EjGAtKg7cafQ2CfaLLNgII,2489 +torch/include/c10/util/CallOnce.h,sha256=PatKz4QVa9tMlzRD46SNA5g3GdFQ44isxtJ_e-Tj7-w,2135 +torch/include/c10/util/ConstexprCrc.h,sha256=PB_UmKzd4yhxtUYo-LwOLJfnqsx1tRbsaaNY_E2ixoY,6738 +torch/include/c10/util/DeadlockDetection.h,sha256=tNO7WTdwcdi1i7zZkYWxPsVEkyelUmIf4CfGofqoUDY,2269 +torch/include/c10/util/Deprecated.h,sha256=QBkJ24TmV6Jjw355jBhQnI1TeSvWcMD7a_uDdC3y_mA,3681 +torch/include/c10/util/DimVector.h,sha256=zGFxEDdeRR15Iqabllcx1W6ch4yJzDZDPDZyKoCpAnk,461 +torch/include/c10/util/DynamicCounter.h,sha256=gds0mbFHHQJjUXRUpDPOOcatAUUYd7fhXYMEtIQmgEQ,1353 +torch/include/c10/util/Exception.h,sha256=fH8QaLB5eUBin6hoFkUeHLKuG8uBAQtX1An62WqkAhk,29709 +torch/include/c10/util/ExclusivelyOwned.h,sha256=NR3B9rI2vLLDQQHsQUi_BcLFqVKBBAjjEHInr3zWdLg,4593 +torch/include/c10/util/ExclusivelyOwnedTensorTraits.h,sha256=KvRKPSE6bR-bKt3R3rZfFJL_VaAD_tZKot7-VeUYX9U,2269 +torch/include/c10/util/FbcodeMaps.h,sha256=SJSQ8MgjIUamj6vrUFZVep8U873y3QAS0ij2Zej2KWM,757 +torch/include/c10/util/Flags.h,sha256=ALvB7C5IhoaGTihmuY49tx22uCHROS-vE5cL0cndlAA,11142 +torch/include/c10/util/Float8_e4m3fn-inl.h,sha256=1NtlAKrsh2hwf3wJg-nCz22Mdxq_ZDU8BgIk7VeHNDQ,8840 +torch/include/c10/util/Float8_e4m3fn.h,sha256=hlvdwX6uIaM2IgIkfh8Ni9AQ3Xd2CgvhutkSbm-Z2Cw,8363 +torch/include/c10/util/Float8_e4m3fnuz-inl.h,sha256=DZFzBgZMtQL5ZAQnnSyxv7zr2lfdXM59LGNC6V1kuPg,9275 +torch/include/c10/util/Float8_e4m3fnuz.h,sha256=7ZEp41apohF4ELf2YZ5fxHSud63RXZu_QZn-Q5Spt8E,3953 +torch/include/c10/util/Float8_e5m2-inl.h,sha256=7gNHBuyy8K5aB4xKzy_bVHCk5hW_enihewXolu9Wasw,8938 +torch/include/c10/util/Float8_e5m2.h,sha256=HZorSbogIAb2BNd4yGZBhVXVa0ssCcraAtyc6YrkxCY,4472 +torch/include/c10/util/Float8_e5m2fnuz-inl.h,sha256=hiskc7xHOf_XeoZRpPE5RilH797R_7UQK45lPTfnbFA,9510 +torch/include/c10/util/Float8_e5m2fnuz.h,sha256=Y4zolDc4NZxxvacHSzEJLNS48neKEcGcmSWHZhuBnBc,3981 +torch/include/c10/util/Float8_fnuz_cvt.h,sha256=49KTipRc-wsE72WwRYsYty8Ys0g-qFtmyzE9ZPIWGtE,1796 +torch/include/c10/util/FunctionRef.h,sha256=rhSZh0rfjfawCqtxt-7xVjP4ZGqqXA8ZRMHdUUI5h7I,2369 +torch/include/c10/util/Gauge.h,sha256=-YZIuodEL1f73DAx9Qq9xCB8wq5AD0cHUTH5ydYJvXM,1225 +torch/include/c10/util/Half-inl.h,sha256=Tq8fx59YJi4gzfOB_XcCUdY1e31KYx-UlAVMHeSZtPY,10502 +torch/include/c10/util/Half.h,sha256=mgYGor1ztxjphQmX0CoD9JB5cfdne7-Jv6zY_vIXfHw,16721 +torch/include/c10/util/IdWrapper.h,sha256=Gyk3y6BYwI31FQtH4AvGuuHzfFLVKRKv2JxEcZQS5lo,2413 +torch/include/c10/util/Lazy.h,sha256=iEM0qwedVFjSheESRNMksC4nud-LvX6X2ufosnr8abA,2943 +torch/include/c10/util/LeftRight.h,sha256=B2y6gdAOq2b6BnYBzrT_Z0QJaPLqAZXPkj3M-SXhffs,7434 +torch/include/c10/util/Load.h,sha256=7q6yQulhnuYn3qh7XxH-lBB8cRRf8RKHC7CDJNqTGx4,962 +torch/include/c10/util/Logging.h,sha256=Bg1DXF6cuDPSKmtCqDj5XbxWLYRUe71QBxeFsOzkcm4,14417 +torch/include/c10/util/MathConstants.h,sha256=T_nRX-_RnhOKAMJ552WH5GwDRBSfPxqwFdPElthflv8,3832 +torch/include/c10/util/MaybeOwned.h,sha256=2Gok4htmd4BkvVeMBfB-BRb5ZzgB4QVsUxkUItr8wFY,7392 +torch/include/c10/util/Metaprogramming.h,sha256=RbKZjs5wH3EIrjhhSlhvcZUkni55U8hOwNDCNimVfng,7255 +torch/include/c10/util/NetworkFlow.h,sha256=C9ILbWH04QxY4yUVg5GdlBadgjv-27ompbM8Rbmu1mE,1191 +torch/include/c10/util/Optional.h,sha256=L6Vn86SfSl99mFQntgeSXXuEpJdB69nFtXvhDB1CpTQ,1986 +torch/include/c10/util/OptionalArrayRef.h,sha256=648u7vwpze3niIpZ4z7GddHA0FqxtcVvaxMbrWZLMAg,7340 +torch/include/c10/util/ParallelGuard.h,sha256=IiIWfO8lQ4OEdHuZlmeSWzRMyQJIdv1wyD07QkfLcxw,393 +torch/include/c10/util/Registry.h,sha256=gd4PTiFAtb5FO84g8rnZ8YTii7kce-9M7S2p2zv71uo,13589 +torch/include/c10/util/ScopeExit.h,sha256=nZw3J70LmIhAumG_DJKU5QgAVqJzA6Qx-1OELuBeOS0,1309 +torch/include/c10/util/SmallBuffer.h,sha256=D6oIZWdBVl-IJzojI_mHzws9QQYJPiESQGaVb8-x4a0,1849 +torch/include/c10/util/SmallVector.h,sha256=gbIQwSFfomm5pqjs13-c3vzT-AmDxsu7VpvGNOwatdA,50474 +torch/include/c10/util/StringUtil.h,sha256=vQwVhySfVzjYSi1cvXNuiEc1INQZR9T3Su3rKLi9B6w,5627 +torch/include/c10/util/Synchronized.h,sha256=1HA5rMQ9FEa-FKYMRG_QaDph1j-i8Jq3Px7dBQBZKog,1987 +torch/include/c10/util/ThreadLocal.h,sha256=OoKxldpp2VmTXC3BKdxoBz0j-vZrEfqRlAeAuv6pNRc,4176 +torch/include/c10/util/ThreadLocalDebugInfo.h,sha256=tGzWncNFdkgTwUtU8xcJnwpBoanXzesd-MiHmxVmjZY,2750 +torch/include/c10/util/Type.h,sha256=2rBcjd6k4fULIfjaKstAi-WEfDDMOAa8MI_QzzULY08,676 +torch/include/c10/util/TypeCast.h,sha256=VkRDnLG6MMRNA-8m6ELo1jZlQZ1xVy2JYQDbrus0P4A,6410 +torch/include/c10/util/TypeIndex.h,sha256=86lMJcHvwq2sFN3PNdWYwXV2m6RGo4_-Fd8YEBRoDiQ,4635 +torch/include/c10/util/TypeList.h,sha256=JWFT6tsHhDE-ZV-6PcBBWr3bmePX04gYL0uVDgR6xLs,17344 +torch/include/c10/util/TypeSafeSignMath.h,sha256=pudcT5Vt_mdWtaHNBV0itRUErR-7mna6wj4ZLVIjpQA,4503 +torch/include/c10/util/TypeTraits.h,sha256=BTFqiz4XtVVACPYEqdS2ULVxdw9FRCw4fA5pIXg_etc,5489 +torch/include/c10/util/Unicode.h,sha256=lpUvrT67LUeCakllHJCKTBzkNcCZHT4mVbnGMZtLqmA,309 +torch/include/c10/util/UniqueVoidPtr.h,sha256=emVpk2VL5upJqD1Yi6hhgzqSg8RCFg9qk3CtPEaiYzE,4311 +torch/include/c10/util/Unroll.h,sha256=3k7_PM75c8paRTq2CpLj_4cvDn3fdjw9B1IXnnu_U7c,873 +torch/include/c10/util/WaitCounter.h,sha256=E8Zxt-Z7tjbpNux-pCb9R7S7wxI5mtsAhm0RAg84us4,2687 +torch/include/c10/util/WaitCounterDynamicBackend.h,sha256=HZdDVg63SSoLXK2geocY9i_6afv8sU4n6FKfPIdlHRk,683 +torch/include/c10/util/accumulate.h,sha256=9zdW_RxPab3W3_-3_aab_aW2Idd4Z2TWQboiH50YVh0,4156 +torch/include/c10/util/bit_cast.h,sha256=Iezss748mZfKPOHloslmyoVvFO1nnzvod9NhJ5ViMfk,1319 +torch/include/c10/util/bits.h,sha256=NrAdOy2mgs3RjDkY0zE73PdiYNBY-uNg4cauCwrgWp8,1510 +torch/include/c10/util/complex.h,sha256=9EptwtjtfD-QlRgmg2poe0UchS2sNWaYQeJz0gQ-Stw,20196 +torch/include/c10/util/complex_math.h,sha256=cgu1AQT-CgcTrJ0f7_sAvevGcA_lNPqYOJZMFBff9Bw,12939 +torch/include/c10/util/complex_utils.h,sha256=3Yngew12_8eTlbnsceI36rKrzxi5iO6WSaE1Z-OnI44,1123 +torch/include/c10/util/copysign.h,sha256=9RyUcCYzAY5PkzFl41cAKcY2nSS8dRjemAXv6gkM4G0,859 +torch/include/c10/util/env.h,sha256=89FjqFItz_PPzIbJcnHnlH6EDp9fRBpO4s5-E_V-aKU,925 +torch/include/c10/util/error.h,sha256=eo-t7Li9Zgxd4CAPyv2dLXdqGfRPc5-mvs_uTHdaNxM,216 +torch/include/c10/util/flat_hash_map.h,sha256=3yg71Csw4RBnum-Ya8BgSdll3hc5YM8MQmUJKZ2kqn0,64033 +torch/include/c10/util/floating_point_utils.h,sha256=Iu9zi_5mkaQC7PMxa8q-IcilYzX-uvje3ooTGHuRpNo,831 +torch/include/c10/util/generic_math.h,sha256=UURa0SFA23ZHGC76KuqxISTLOM58DWjg2rane8xceeQ,2228 +torch/include/c10/util/hash.h,sha256=CPznZphGBx1Hb2FL9mriCFQ1IE9ODw0rc6pzn6TvMgg,11485 +torch/include/c10/util/int128.h,sha256=YyLqDlFb6OEOUBigwS2SJOz86hZvb1wmBq-7DzVQG5s,12850 +torch/include/c10/util/intrusive_ptr.h,sha256=fPHnXz5R4kfEat1jSfyaF2QFvnFTZl1N462LWwEjd7k,39599 +torch/include/c10/util/irange.h,sha256=UxFCsJ1fsfDThs8GpIbeoDOehhHFP-7baq9kclpM5As,3443 +torch/include/c10/util/llvmMathExtras.h,sha256=CDZK_3EVasPRpdjoJc7aOXudYpJz8toGWXyu7IzFi1o,30399 +torch/include/c10/util/logging_is_google_glog.h,sha256=FjFpo1Ie5UVCcieQeyYyQ6jRGBHK71M6x1kIBSUSlBs,3903 +torch/include/c10/util/logging_is_not_google_glog.h,sha256=-jZBy-pEJ4t5KUi4gao3CIavPKnfCdsMJ7fjtv4oF68,8939 +torch/include/c10/util/numa.h,sha256=CZDHyRgVpsHAbkqHL1uQC38w2BC0vaKyrAKhM9qNZtI,754 +torch/include/c10/util/order_preserving_flat_hash_map.h,sha256=JIk_MiQDTp7LOEAuTYSvfOHeNQQC5ZSuOA_ZzNRSe48,67669 +torch/include/c10/util/overflows.h,sha256=4sSX4GTYPaEbGCw_HRSnOLUBa6VSzcWcrH1gFZNtg50,3567 +torch/include/c10/util/overloaded.h,sha256=pWxJ5C3KJA6hiG238bVvpf9kzc4nTU_0wFkC1fSFGwE,758 +torch/include/c10/util/python_stub.h,sha256=VCeDRiGbtYhM3F7bhp90T2hFV0hOlI_g8iecAD84L9M,60 +torch/include/c10/util/qint32.h,sha256=4qZaXFtZctkC_WlN6T7s84vyC9Fn-iIWA6a5w4_wAuI,337 +torch/include/c10/util/qint8.h,sha256=bC8LXXkIZ2vxE6KxotIjMCPdn88svMHZ6LT5mtFsrH8,492 +torch/include/c10/util/quint2x4.h,sha256=2mNg6Tj78dJYc0bAShraGFNGewSzZ2E2CS5bAjSsyd0,385 +torch/include/c10/util/quint4x2.h,sha256=vxaKT_0BXlQU1Ytn68cUwj-0o0kgcZ1pONQsmXYDilc,385 +torch/include/c10/util/quint8.h,sha256=Y079DsrjnloXht4_oHu7RVr-rWi-Vz-ZJ6QaiBz6N0o,338 +torch/include/c10/util/safe_numerics.h,sha256=KVEEkNr2jx-avWeZ5HWQm4E2kPKvvaAz5ryEjezpcrs,2348 +torch/include/c10/util/signal_handler.h,sha256=Gw_uAY2WaRqKnkuLEPUdE9ei06E1POcDauH0RAf4rDs,3887 +torch/include/c10/util/sparse_bitset.h,sha256=1EWTfU42hbr5JKG-oihf-_q2EnopQZ1FQSAEAE_cX2c,27570 +torch/include/c10/util/ssize.h,sha256=1yNGwkdeiXHnJI1yeRGRBMEoQMlEXQVHXWb-UnDu-pM,1415 +torch/include/c10/util/static_tracepoint.h,sha256=5jHsYnFs-Jodv4EASQvu78f60SxO0mQsdybEHjtiuqc,1110 +torch/include/c10/util/static_tracepoint_elfx86.h,sha256=KDu0MW-JMi-W3QjLhwj3CIPP6nOmcFtOYn3PaLac0fQ,7817 +torch/include/c10/util/strides.h,sha256=NZ_hqBRgcb27DdB2ZHzIKZA2NjjGT1vLrfTMI62ssJI,654 +torch/include/c10/util/string_utils.h,sha256=2uUbVpr0WvrA4ojqooVb_1Ikw6d__TAPjOyPSxLt_XM,468 +torch/include/c10/util/string_view.h,sha256=sU1GwoigXuu5EG2xjdgJdcz5lTNgRRt0QhSogwnzNCo,19119 +torch/include/c10/util/strong_type.h,sha256=KRX6EGeapeU5x95-L8aynTGUeqzLoQSnb1vGMDObe_M,37434 +torch/include/c10/util/tempfile.h,sha256=IvQs4AiEMvPF9WLbsf06i6BER7rmbUvZJ0JQo5hYh_g,2849 +torch/include/c10/util/thread_name.h,sha256=pl56GeGZSUzVtC7unjdVGYRNEeAr5EnU-tXa1H4pg9o,199 +torch/include/c10/util/typeid.h,sha256=YBgvfophzeGLXEoK1hSkbhenPA0imwRivdQF3YxhNkg,24075 +torch/include/c10/util/win32-headers.h,sha256=Zgjt_19ZYB8ZUL12KSLv--q7rzs52rwOf9qvVdI1VgI,918 +torch/include/c10/xpu/XPUCachingAllocator.h,sha256=olW7f6jR9vMfBKIIecbeUt0tVe4lO5B9CfpK6v2tKxc,687 +torch/include/c10/xpu/XPUDeviceProp.h,sha256=moRO-WLsA4-5JVQjMtsKj5lOmlvNO3vDXWRqAf1VaiA,12629 +torch/include/c10/xpu/XPUException.h,sha256=2OR7PgcRlFFyTmlsv9BwNV51-XrcvLp1vkDWGyrRBW8,437 +torch/include/c10/xpu/XPUFunctions.h,sha256=6l7rYbWVJ7mkIgG4FOMTFhXK75CLfTZPWTitY5ikeas,1289 +torch/include/c10/xpu/XPUMacros.h,sha256=IzRLsmSJKd1BoXKj47nJRzrlxru-yYSNJW2RnRzJt8o,903 +torch/include/c10/xpu/XPUStream.h,sha256=eOkhqNcQ46ffi23i0V4HPTeFe72kDSlczKS737tKeIc,6353 +torch/include/c10/xpu/impl/XPUGuardImpl.h,sha256=AAjKTHgbRzTcXIuQF6621EJIwwJtMz6v-heTYfYROdM,7161 +torch/include/caffe2/serialize/crc_alt.h,sha256=-njmyCvsAUaggjiT_xe8hK78I3jIeZ3inf_3xqURJLk,76840 +torch/include/caffe2/serialize/file_adapter.h,sha256=pqdXMFs5RlSlCkGwCOPl9X5Wy5vLOXqIe__oSAdGxl4,902 +torch/include/caffe2/serialize/in_memory_adapter.h,sha256=E1tr23qX0f4vz9Zl3XIyukpm4jdXm3Jx08sAylz-LMg,671 +torch/include/caffe2/serialize/inline_container.h,sha256=5RWV3BkPZdYQEILHzIqhIUwvqZUO8Yrj2OD20ltpbOI,10313 +torch/include/caffe2/serialize/istream_adapter.h,sha256=U-IJl8oVGnGCCe1x3a_fK3WDVaB4OjHIHAlX_7MUK9I,696 +torch/include/caffe2/serialize/read_adapter_interface.h,sha256=-9INOfFdWhTKfYcM5dShGZervkqitBsJckrdVmTlwOg,579 +torch/include/caffe2/serialize/versions.h,sha256=CpTjKy5rx-Ry7glOjW71vZZw8XvRABJOWyW9eCtBIO0,6781 +torch/include/cpuinfo.h,sha256=nscCziVFId2n1Km5TcYg1C-uwHFJGVxC2Af_orTJbrM,57003 +torch/include/dnnl.h,sha256=197ADCTk4KfAFiwPzxlDHbipAi-PNnUchz1HcQV7sm0,848 +torch/include/dnnl_config.h,sha256=ljcLU2XTZWBcQe19UeLWX1BBv4b_taUxd86kHZDwMug,876 +torch/include/dnnl_debug.h,sha256=t8eV2XF0PY2f06zMek1bykicN-qJyUYWwwaG50FK0s8,872 +torch/include/dnnl_ocl.h,sha256=23IJYtbIm1B0T3LqCNgOqnVx5Nk60QV2UygUpSc-S4M,864 +torch/include/dnnl_sycl.h,sha256=x1mY9vbUhlz7UjQMDyaMqqR8NlTyXQkT1tsjl4ihpM8,868 +torch/include/dnnl_sycl_types.h,sha256=q8w4_h8djuUrkWhFPtNDZi9OM1eKs_ZPDmmKuA57_iY,892 +torch/include/dnnl_threadpool.h,sha256=fGaECxUqTtsCn_WkCMp-9d5YYnA9WzWU_zNTd3JXMCs,892 +torch/include/dnnl_types.h,sha256=2xkCNCfJxnlX89OOlCsViG_iiuJDBDKARww4VqYdb0Y,872 +torch/include/dnnl_version.h,sha256=Dg-UqmjPaJxjkddEV7DbjqTjHHBzlefYGZsT1rmyro0,880 +torch/include/experiments-config.h,sha256=qsZ5gKHOlaUxvUt8WDcpKxJ-xYtPBWKNwh7PBpsztqE,537 +torch/include/fp16.h,sha256=9wY9ucslvU9l-I5jOXPjiekCwDjQnYFjrU70U1iCpnI,152 +torch/include/fxdiv.h,sha256=VvlB2ahMMqgqWvClGyE8B8qJhLkOJaEkxW6aLArpmIQ,13574 +torch/include/kineto/AbstractConfig.h,sha256=gdp2TMcc3JsLBU1PUfb-yDnCSCWAHTLJfHz0AEAmfB4,3899 +torch/include/kineto/ActivityProfilerInterface.h,sha256=5yFNeiX6Tl6p-ZHEztZ_35NO0Gu2d6nK5C-F29yFS-4,3660 +torch/include/kineto/ActivityTraceInterface.h,sha256=AfJSgF2nKWu19rrYjKnZyyZpx8XU1_ABJGmKJ6YDhv0,612 +torch/include/kineto/ActivityType.h,sha256=BjnuxtMFCDZZBxJNsLiqIFlmhyOb8-VgfdSl0wvAqhk,2352 +torch/include/kineto/ClientInterface.h,sha256=ZhqZMtFKZUqUwQr-dw54B2VT39MbLbxffB1UIesn8aw,514 +torch/include/kineto/Config.h,sha256=tsR1ofhCZY7w4qTl5JQlbAmOeSu6Y8Rs0UNs7wsdlT0,15388 +torch/include/kineto/GenericTraceActivity.h,sha256=gQ8rbzXzNjVWrXtbJ0aLECIKyS8hcUStifj9hePSRFY,3927 +torch/include/kineto/IActivityProfiler.h,sha256=D90GgQPNFoYpSMt07JjKcsGZ3LNxMfM3BeDKjylUMJI,5186 +torch/include/kineto/ILoggerObserver.h,sha256=sdhAY7BDewfk4ocM2tmMDK9Sl-CTKsqIu8HaUg1d1G4,1883 +torch/include/kineto/ITraceActivity.h,sha256=phtDxL2YvmD-RAXw4LQtglipkvg0rmamHV0qNBYXlfI,2108 +torch/include/kineto/LoggingAPI.h,sha256=KeswfY74LEeu1XqdxvhTgloIVSCaPV6veIq86jSzBxo,360 +torch/include/kineto/ThreadUtil.h,sha256=IVA2Xn1MKZ7-zRYUoY6F5qz5qFnnkUKHP7kCwTBP94Y,904 +torch/include/kineto/TraceSpan.h,sha256=2sRObY5MdaE-qe-MLWn9zrhXJa4zETEQ-XNxuhewZ0A,1014 +torch/include/kineto/libkineto.h,sha256=AFtQP7RJtZ9IEXxGlZhHPnh2EUuFzlGlsVUYMTe7F18,4041 +torch/include/kineto/output_base.h,sha256=jC9Xt6s3ExdknDIUZbG-vx6hNmD5hTR6KTxhkiMDDZg,2164 +torch/include/kineto/time_since_epoch.h,sha256=VgfWFAlYqjzCnBCnUOTjlBwm8VE6xLzbBUpJRTwJbiQ,537 +torch/include/libshm.h,sha256=TNoEjSFY6vmf9pi1lm8F0qLk_SthMxLDGGTrdKeog7E,815 +torch/include/psimd.h,sha256=jj8l40ewHhPbMi8a-Ih26lnB9Ax1FcrmQK8edLoUQR4,46888 +torch/include/pthreadpool.h,sha256=e3cKQt9aPHGcXyG6UHUurnj3dVqCfOct6m8-JQ-M3N0,101883 +torch/include/pybind11/attr.h,sha256=geF8hJN4ojg0PJHZpGGdKcSOayZX04DUtxcd4sa0PNk,25024 +torch/include/pybind11/buffer_info.h,sha256=qR7pghnWsDMQva0ewn81wtYD1bAf1C_61zI6AaSkiQw,7986 +torch/include/pybind11/cast.h,sha256=DmP4Q8Kt9OGL11XMXHgeWEtRb6VzN_wUSYxAEpcNHdY,73551 +torch/include/pybind11/chrono.h,sha256=EYBIP7LuEjp3vBy-Mg-YLLAlnYTKBaSOVQn8tSjtisU,8683 +torch/include/pybind11/common.h,sha256=9flrAhYFcDioFXEMfL-sYGZYQmFsUdycR1GSnVVKKA0,122 +torch/include/pybind11/complex.h,sha256=0FPTn_YbTQsFUCJw2vAZ_zWcrF4LsfGKRUjUrWz-ZX4,2170 +torch/include/pybind11/detail/class.h,sha256=DqtnTvQGVJRLNYdenb1RcuX_PZPVdClQVQ31X1Edmz0,29793 +torch/include/pybind11/detail/common.h,sha256=421RMsizfaS_sg9Hs1cBq0IkeNgObVFPuHAlfzcRdwU,55995 +torch/include/pybind11/detail/cpp_conduit.h,sha256=7OsUPJSdem-zYpowExADZdsJGR_fycGFUsftn_Cfcwo,2666 +torch/include/pybind11/detail/descr.h,sha256=RbtOT-vph-aUgV7ZqpjXl_T-nEQinQlQi35-cjCCHag,6207 +torch/include/pybind11/detail/exception_translation.h,sha256=6nZ1JDvOSJD8VkpmEcIc8E1GReq60uriLHKcM3OoBGY,2671 +torch/include/pybind11/detail/init.h,sha256=JpSmNz5cqLtJs0IL3OC9VAfpff0fB_kRZrewTjGMqCk,18419 +torch/include/pybind11/detail/internals.h,sha256=71O3DnZoeI8KsoKng0_5TN05fi7gyQtqWfOuEMd7-mM,32751 +torch/include/pybind11/detail/type_caster_base.h,sha256=lFxAAs3gdpyL1Msevr6djJ8E4Zf1gjsIGkej8tvYWA0,50133 +torch/include/pybind11/detail/typeid.h,sha256=ybfJGams4o0qi-zst7kspHjNNgpGnAldtG8Pwcgmtec,1690 +torch/include/pybind11/detail/value_and_holder.h,sha256=mgKBhVvSU2oHdYnCy8T8dXW9anJIvWO0XPOEZQjAxTA,2891 +torch/include/pybind11/eigen.h,sha256=9kGbkSF8hQAd-6fIqkJK5qH-x7-MtleA1deKtribDNQ,328 +torch/include/pybind11/eigen/common.h,sha256=sh9Thp2j0lIvGx6UT5k91ph2R66LGRsb-rOZ4_evrhg,387 +torch/include/pybind11/eigen/matrix.h,sha256=eQAC0l2zvbmoHkblIe7dUapohhrx6ixdMYW_3H9O6-E,32857 +torch/include/pybind11/eigen/tensor.h,sha256=VLh9o-uldgKtGmXnjQ7JJzmchNyzoF7Gs_YjdpZGQ2Q,18899 +torch/include/pybind11/embed.h,sha256=aOeJ_Wx9tC3zYNchIZQ0NeschneUSHKAJG5RLsB1Y38,13675 +torch/include/pybind11/eval.h,sha256=KARGCuiN1slB6oxi_xVd5QUTuS3MZNqTQEkgafXUD48,4887 +torch/include/pybind11/functional.h,sha256=B4w7SqP4zD41uz-Vx6ao26qoDMv9synOEgnZh3rKEe4,5416 +torch/include/pybind11/gil.h,sha256=0JXpF-tiE3G7L7_XStRxJWmO75-CZWZRGgZtdp1QNRc,7921 +torch/include/pybind11/gil_safe_call_once.h,sha256=SniDYmGZ6CxWWHbp4JoQQOFpydBUuaq49u3hUkqohHA,4093 +torch/include/pybind11/iostream.h,sha256=lcL3-ToaPhHzyc6iW1p9CiOZRPeT3NVuHrYTo0GOo1Q,9127 +torch/include/pybind11/numpy.h,sha256=LLG8vHy5KrjYLn_j62JtIktJ9CWs5X0Udiv82LC1crQ,86581 +torch/include/pybind11/operators.h,sha256=kD1nk8bD8VV-n1Cj_JXFtuNSkShwwB_bM8BUTFNA86A,9305 +torch/include/pybind11/options.h,sha256=geFwXpZBmkIqkoQQvUmenwPA5wp0dBeQs0kYuqMG_PM,2826 +torch/include/pybind11/pybind11.h,sha256=PjIqHcwXX_CahL1AmpSwZhb--COQW6fg7iBZOYfmJ9c,132876 +torch/include/pybind11/pytypes.h,sha256=rFFKMOFkmTi1dUMkej5JTvv90j21quIQpJ3YJzobORg,102500 +torch/include/pybind11/stl.h,sha256=GtoQeZkwTSMcKT1DMsMr9pX2LzpxOPfI8An_ZrEZ9Ww,15980 +torch/include/pybind11/stl_bind.h,sha256=wd3k95ydKxFJPrRef-sp8CqvrkF3jsf9JQYGFiuQF8M,29317 +torch/include/pybind11/type_caster_pyobject_ptr.h,sha256=bIA5W1G3unHYLjHwcAz77FybP1uq-nlLSa038EhZEZI,1990 +torch/include/pybind11/typing.h,sha256=DGjlv4Kv9g-s14FXALmklL8NNG22TXCmmvIxZBAsj0s,7242 +torch/include/sleef.h,sha256=3L0CAoOTXImNxA65bV-u5yYAc_76ESVFuOJV1c6LwXQ,271948 +torch/include/torch/csrc/CudaIPCTypes.h,sha256=9pv67zrx7Mc-xZ_Ob668wkUzhF0GRxBRX_9f3TUS5kE,3540 +torch/include/torch/csrc/DataLoader.h,sha256=ouSjEde-5djXm1E_t-79-x1QXFmFh_iBSviIFcV4-3Q,228 +torch/include/torch/csrc/Device.h,sha256=nza6IrUf7JN92fkj45ecpLDVWIuGqnurRPizAuuYliU,507 +torch/include/torch/csrc/DeviceAccelerator.h,sha256=aEOiPJkbj2p_GwlWfmxKvYN5vDtC-2BGYDBa1D-q9uY,184 +torch/include/torch/csrc/Dtype.h,sha256=YXtpmWT_tziQOZZ_kVzgxWUxKmzvmlumWUNH1yusrX8,868 +torch/include/torch/csrc/DynamicTypes.h,sha256=NKbkEuJU8n7xxv3AIrh5PtvdKGFWsC8YI20LLmbDv00,1036 +torch/include/torch/csrc/Event.h,sha256=LiNdG9Z1Dyd84bk6mXlIYeS4OUdiAua8Z2tcGyYz0Lk,583 +torch/include/torch/csrc/Exceptions.h,sha256=8Zi97YzMp0yOlWiimOvZ9wg-kVF83WOr5my3PJUIiOg,15704 +torch/include/torch/csrc/Export.h,sha256=Uv9Agb-SWcmOYrBU3eYs6SBXyqm_TdzkS-dzR-dbBCg,166 +torch/include/torch/csrc/Generator.h,sha256=0rzN_H_ju2yEssqxaWaZRud7GPHKqwLh_ALzhLMOQ_A,1087 +torch/include/torch/csrc/Layout.h,sha256=hiRxt_sAGbhbXBm8fAE4_Y-yPU6duoHC2lEFjk8nnwQ,565 +torch/include/torch/csrc/MemoryFormat.h,sha256=vXzwFkaa3_AQ_YxbMY-RzhDl5w0s1py9GiVwJ0gRIi0,662 +torch/include/torch/csrc/Module.h,sha256=f2qMc1yMQ1AOYVNYG5kf8HK09KZhbrLJylF8Ib9-wjs,107 +torch/include/torch/csrc/PyInterpreter.h,sha256=Pwc-SiT0yCvAdvOPULWMU8C0WfvbfJzJqu_42ODIj-c,396 +torch/include/torch/csrc/QScheme.h,sha256=wOaXtEwdx9RjI5EIhqJJPEx2MIblEjnDI4YTrfO_n78,586 +torch/include/torch/csrc/Size.h,sha256=SlGRFwRSpNWvFkXJn9RVwgnaN_7KXvyytdeR5KF7Cto,443 +torch/include/torch/csrc/Storage.h,sha256=rCjPKbuwZSFs94U1-LjBfBtMo7kO0FPsPI3l8Jrydkw,1579 +torch/include/torch/csrc/StorageMethods.h,sha256=dhpWpaNpaXudEqrL9QO5bfq97An8z3oDuavPN4AIO_4,140 +torch/include/torch/csrc/StorageSharing.h,sha256=AC6h1Xe3MGR7kbvrSOlGaYaMmR_iy13LoDdSNW5w5wM,147 +torch/include/torch/csrc/Stream.h,sha256=ac401E2oG92li4icLY25uHJQmq4PqEicFVZHjhNbq6M,572 +torch/include/torch/csrc/THConcat.h,sha256=eEIG2mZkE_vkoIeb8ukEXc_w29GJaOjU2tjZJ5QU1A4,710 +torch/include/torch/csrc/THP.h,sha256=kUXIC9-QpnXbS1dB9b0h4tMwSlfHSQ2QpceHFYLBqno,924 +torch/include/torch/csrc/TypeInfo.h,sha256=ktfg99qi9M0zqeq3mPLyrVZyOccXMHrUw28KTpk72q0,527 +torch/include/torch/csrc/Types.h,sha256=2oIivVbts_6A6S0q0yMrMgAVewQBQ1M8wpDW1sp6xlA,176 +torch/include/torch/csrc/api/include/torch/all.h,sha256=Jumw_rbjIUE0f_gyKhOVVXPYwVGU-QdhDbFbShIQfio,587 +torch/include/torch/csrc/api/include/torch/arg.h,sha256=gpx6jp12QtQIZWUL0CLn7T7cBiJOJtotidU20H81UvA,1450 +torch/include/torch/csrc/api/include/torch/autograd.h,sha256=6uNE0-m_doNLsa_kJ94wxiJS_FVxJoCloAOwWtTYrTM,177 +torch/include/torch/csrc/api/include/torch/cuda.h,sha256=C4QIIRJL_dD2Pqm0btYQO5tEblfT0X3MDH_ka0e9-G8,741 +torch/include/torch/csrc/api/include/torch/data.h,sha256=JSePfPMjjOmjHlL22Y4TfeoSeuDrm1C3FxFpfq03n1A,310 +torch/include/torch/csrc/api/include/torch/data/dataloader.h,sha256=WljVzhHwY43Yqz6G0BPj9HYX1Ze_jxcrh6gdOoPaMBs,1951 +torch/include/torch/csrc/api/include/torch/data/dataloader/base.h,sha256=jpX6hffSHXAFY1g6Cem3g9ocNe9ulbtQkBWqzRtCWbM,9259 +torch/include/torch/csrc/api/include/torch/data/dataloader/stateful.h,sha256=9E0WaH1e4ku6U1bWiWec-SSbuMX6-q1DrM0Sz-K4mLQ,2396 +torch/include/torch/csrc/api/include/torch/data/dataloader/stateless.h,sha256=39dCuSQ5tERIh0pYqsNnoWln4NnosMhcmnybnmQ66iU,2827 +torch/include/torch/csrc/api/include/torch/data/dataloader_options.h,sha256=B7UaGxNk09Qf54IZcwAVO6vm41auX7wLKnGbVT_lIZI,2260 +torch/include/torch/csrc/api/include/torch/data/datasets.h,sha256=wUJmQwIgXsajJ4X2znwBM4ssPGsK566fI1QjiAoItY8,298 +torch/include/torch/csrc/api/include/torch/data/datasets/base.h,sha256=6IGGIzgMkv19MHbLmxCOiVg1KdbH1gcx4te9wHA88-E,3272 +torch/include/torch/csrc/api/include/torch/data/datasets/chunk.h,sha256=uQocixw8spT7rSQGGEgLRNsHzwysgcbrWTuHgu1ocgQ,19696 +torch/include/torch/csrc/api/include/torch/data/datasets/map.h,sha256=AkRDG2lN6tXhy16JskHG5HwIKlFvEzFxmrmw_dSOyCU,4186 +torch/include/torch/csrc/api/include/torch/data/datasets/mnist.h,sha256=j3T47FpuoQIeL7RbZ0zz5Sxtbhhdr94MCChyepWdgHY,1273 +torch/include/torch/csrc/api/include/torch/data/datasets/shared.h,sha256=vSLVzxPJGfHu9R50_b2xmKSOBtQyKPbuXAvIhnljoxc,2674 +torch/include/torch/csrc/api/include/torch/data/datasets/stateful.h,sha256=GXh7FJBgaGzOiGRuMtLEfSOz1DJcq-BBoP6g2S0abPU,2298 +torch/include/torch/csrc/api/include/torch/data/datasets/tensor.h,sha256=1TQ_YwsX7kY_3n1YkjcsOVk-fTpI1lspM_uYVSEAZiQ,965 +torch/include/torch/csrc/api/include/torch/data/detail/data_shuttle.h,sha256=kArrte-eilkriikhyC6BJQoHFTBldT4k1KFqHjTz_mI,2668 +torch/include/torch/csrc/api/include/torch/data/detail/queue.h,sha256=n13QbGtFvhFM9Gf3cW46JWfWrUS5I4MTBg9RTwv1x0U,2535 +torch/include/torch/csrc/api/include/torch/data/detail/sequencers.h,sha256=J_dxBIdqDA-CrrrTCQyInb2h1_ii9ixKQ3I5zz3IsHg,4547 +torch/include/torch/csrc/api/include/torch/data/example.h,sha256=Ch2uVjs5iYjdqoEago6kFr6PmpnvWVDmH2GfXAvz9eA,1342 +torch/include/torch/csrc/api/include/torch/data/iterator.h,sha256=vPZq-Xruuoz6wrhUQMAV3FkdLeH7a8tjQrrOgmtyZ-I,5483 +torch/include/torch/csrc/api/include/torch/data/samplers.h,sha256=vvBX2qsD_kusBAOouG-B77963lUnYQRShVwo1p8qBT4,327 +torch/include/torch/csrc/api/include/torch/data/samplers/base.h,sha256=npT6hzIfNFECrcv6fyvvZA9S2sIC2B5U4yc3ekb485E,1206 +torch/include/torch/csrc/api/include/torch/data/samplers/custom_batch_request.h,sha256=noZDLYKy3cYkaUKaOHBtfTglrVqwFHNntTB4yekJ-Hg,523 +torch/include/torch/csrc/api/include/torch/data/samplers/distributed.h,sha256=UpdzEmPAVFtb677R1FcH9TCHG60CvTh9uB4Y5UEq8hQ,4193 +torch/include/torch/csrc/api/include/torch/data/samplers/random.h,sha256=cbeXVJgo0xNY1qtQcje092zKZyYfXTJ3aFzuAs3ezCU,1510 +torch/include/torch/csrc/api/include/torch/data/samplers/sequential.h,sha256=42rdY16wKnmI6morZnDWKAr6Mb6taWZ4EgWdNnWOF24,1238 +torch/include/torch/csrc/api/include/torch/data/samplers/serialize.h,sha256=2b94CwZ8MofjMkr8D2nwUn6Al30xqY3Rf4Hpimw7X44,681 +torch/include/torch/csrc/api/include/torch/data/samplers/stream.h,sha256=a6JpRvbXMgVpvKDmmIGYk-Cm0kE3IHayx3Pyv72kA6E,2030 +torch/include/torch/csrc/api/include/torch/data/transforms.h,sha256=YV_eW7I4UJahbvu9a4ZH6__0ZAujBo-AE4OKP3l-FLI,229 +torch/include/torch/csrc/api/include/torch/data/transforms/base.h,sha256=FKOvVycx8HDXrODAmCyUv9LzhwCBSwMzfX9msz_C_gA,1628 +torch/include/torch/csrc/api/include/torch/data/transforms/collate.h,sha256=PHV1CM6T4MDiZBZ3kfKCGF9StfGk7X74On0KL8FNf6A,1094 +torch/include/torch/csrc/api/include/torch/data/transforms/lambda.h,sha256=ub8D70EPnUN9H2Qr0BrSnfccPZQWWU0QW63gE28Jq5I,1711 +torch/include/torch/csrc/api/include/torch/data/transforms/stack.h,sha256=LIo2macXr1UqVvWVM0NRN_qgxUGZJMr94pBOD6aDLKM,1419 +torch/include/torch/csrc/api/include/torch/data/transforms/tensor.h,sha256=lrsFzVHjLSEoj_DZHth11M0j3ki9zfPca5cZ_nLlDN4,2496 +torch/include/torch/csrc/api/include/torch/data/worker_exception.h,sha256=2yyxEYuZBorHkjlG5vJy_GK-ful6S8SYe1MaipF-znU,1156 +torch/include/torch/csrc/api/include/torch/detail/TensorDataContainer.h,sha256=JhEzyS4fLUOrKt0GmxBCIdGTszfTHDTKWKKmAzrdvGg,13371 +torch/include/torch/csrc/api/include/torch/detail/static.h,sha256=3VuEH-UrB7P2irTEjTM-gOdA9sqCht98ZLHnPD0Li2o,2159 +torch/include/torch/csrc/api/include/torch/enum.h,sha256=BZ6JUN9ZRz0cGJy7F0sI8IIL5SbXwCs6fpIwEKAl65w,7660 +torch/include/torch/csrc/api/include/torch/expanding_array.h,sha256=jehwXKTKF-FMiYQuhYt5t6NPpvTOAVJ8QyO9-Jhtyes,6855 +torch/include/torch/csrc/api/include/torch/fft.h,sha256=b71en_Z-kOQ0m2lEU1f3LbUAdCqp1H4_r0g1CDimQu4,12494 +torch/include/torch/csrc/api/include/torch/imethod.h,sha256=gxHtBrxmLIqObKDPu7FnV7Q1DydUIZKHtBYvMEp5EiM,1793 +torch/include/torch/csrc/api/include/torch/jit.h,sha256=My7d0xwa67IJw7zeZwDjbK92r6GgAxfI-R4TFofeqJQ,922 +torch/include/torch/csrc/api/include/torch/mps.h,sha256=rjZBEqDgrmoqT2Fo_dXiHSBXk9vzePP9n8Sp4647W_M,1236 +torch/include/torch/csrc/api/include/torch/nested.h,sha256=2A7B5ww1tFrxqYxjXK92ZSIMon6Taj8XibEC_qwFHB8,2866 +torch/include/torch/csrc/api/include/torch/nn.h,sha256=JZOcrLr-MSI9dnJY1SpdOr1zAZvmRLQN4GrrJdy4qbA,261 +torch/include/torch/csrc/api/include/torch/nn/cloneable.h,sha256=Vj_2Opo_bbngnnCTSS7GNInDojg2cax1yP5K15vKCRU,3995 +torch/include/torch/csrc/api/include/torch/nn/functional.h,sha256=zX8T3cbwAs4nMt_LVbs50CaGzF4v9drbamY3EPrP6X8,659 +torch/include/torch/csrc/api/include/torch/nn/functional/activation.h,sha256=1tyo1LLcB1deDRDgh_dtNZDwFSKBtxvx9J5Tqvv9dZM,30731 +torch/include/torch/csrc/api/include/torch/nn/functional/batchnorm.h,sha256=dszeg22BIv-p4JzFDhEi0I6ajDt-vLCg_nZoA_LO6TI,2117 +torch/include/torch/csrc/api/include/torch/nn/functional/conv.h,sha256=ZdT_KmqHPokCqIcRaHr0mPN8x9zDQ88cpdQ5jOl1B-8,8394 +torch/include/torch/csrc/api/include/torch/nn/functional/distance.h,sha256=gSF9MSgmcTM5a9IIEfJX7qk4vIv1_jYaUjPPAZHeWxA,2583 +torch/include/torch/csrc/api/include/torch/nn/functional/dropout.h,sha256=sJUOhVigTl8TqH2FqZP3I9r6qeLW9lzefOF22-mPnus,6766 +torch/include/torch/csrc/api/include/torch/nn/functional/embedding.h,sha256=eWbgE9tAbXYbAx9Cy2-5raQ8gClJrp0x3pgWk73nw1g,6565 +torch/include/torch/csrc/api/include/torch/nn/functional/fold.h,sha256=ytAy8mIWrd9yXoZSzDW1koQSkecK2dYm3gN9aRBIs0k,2834 +torch/include/torch/csrc/api/include/torch/nn/functional/instancenorm.h,sha256=FBqHD_Ju9tLNsZYoR5_KcORYvBKJLSfKReDdMiDlyY4,1614 +torch/include/torch/csrc/api/include/torch/nn/functional/linear.h,sha256=Mt7UqldDF5j71MkbV2SDIfIAyCBH3ER6ODxVGzMHhOg,794 +torch/include/torch/csrc/api/include/torch/nn/functional/loss.h,sha256=9Yne2OeccK-uK2MM6xRi2OEnCa9Oqepgux9A_yLx9fU,32891 +torch/include/torch/csrc/api/include/torch/nn/functional/normalization.h,sha256=RtGOAUFdKPkfzTUDVLbAT6utt7aE3VnEfOQbNiziXb0,6178 +torch/include/torch/csrc/api/include/torch/nn/functional/padding.h,sha256=MmBGRAQis39GvajCySoQsDIRua0PzpHIzNOQXf3SMig,1728 +torch/include/torch/csrc/api/include/torch/nn/functional/pixelshuffle.h,sha256=MqO_tzcfC1sZsqGaZ5NK3ZaIIRIK7O-yO3lt6x9am8M,1336 +torch/include/torch/csrc/api/include/torch/nn/functional/pooling.h,sha256=XTKRlIb9cUFiktt1t5bAcsmpwm_l7PVi10sVEQsT-hg,36559 +torch/include/torch/csrc/api/include/torch/nn/functional/upsampling.h,sha256=ad0zoZsvAVPyL88xa8o3UOsKQapifR3-jC2t-msNYNg,11014 +torch/include/torch/csrc/api/include/torch/nn/functional/vision.h,sha256=talkaLVeHJhyZAYEilrpUNSQ3YLbvo2W0AcCbr_JVtI,3698 +torch/include/torch/csrc/api/include/torch/nn/init.h,sha256=W5CuPhlUI-1Xa8Rxf1KP8ZZNparhNDQTiPsWxxuMsrQ,5041 +torch/include/torch/csrc/api/include/torch/nn/module.h,sha256=oe_zH_n_jpGR5vlcG_Sx9w25w7VBKixFwk-4bprTrxU,27553 +torch/include/torch/csrc/api/include/torch/nn/modules.h,sha256=GunxX9fV82A7Kq2pI5YW3wCrcdS7cu5TxR1zQ0kxZXs,1325 +torch/include/torch/csrc/api/include/torch/nn/modules/_functions.h,sha256=HXF9L2ARZ3opmbdr-9RvisKAq_Ny44yW3UvELoW1tew,678 +torch/include/torch/csrc/api/include/torch/nn/modules/activation.h,sha256=OEyFNgzMNYob_F0MdZ8MMM7wU4Cs6dc9uktCPMokEj0,31190 +torch/include/torch/csrc/api/include/torch/nn/modules/adaptive.h,sha256=yp_C-2O358_cXvSMt3-tI9cUM2_DDSlUSxCBm6GUoSs,3626 +torch/include/torch/csrc/api/include/torch/nn/modules/batchnorm.h,sha256=P-vc35yz5XtI8sqSpSX6Ev3gbtsB7IOqcEZ8BC0vwus,8520 +torch/include/torch/csrc/api/include/torch/nn/modules/common.h,sha256=b0qmYH3ShSjXMv87F_RH3CUQhulCBVjxBUGmUzXHh94,4447 +torch/include/torch/csrc/api/include/torch/nn/modules/container/any.h,sha256=tm3dXSI7bZU1vcITRxSxDNozIchIfqGxqP1x1HBFy5U,13769 +torch/include/torch/csrc/api/include/torch/nn/modules/container/any_module_holder.h,sha256=OSztxH_2ZmvIP8lSBXButBkbR3pyTnUuJpCDHrvxpGE,5131 +torch/include/torch/csrc/api/include/torch/nn/modules/container/any_value.h,sha256=aWoYOVvtVe_otcPipDgPPsH61KRWEXXysc7hBqaQnRA,4125 +torch/include/torch/csrc/api/include/torch/nn/modules/container/functional.h,sha256=ey0u5YIGsQHIWR16HvcjYeIwdDRJN3AgOQzM0MN23wA,3444 +torch/include/torch/csrc/api/include/torch/nn/modules/container/moduledict.h,sha256=WugJRAS7OYJG5PZDewZS5eu_0n4YcDmqATx0IvgutqQ,8682 +torch/include/torch/csrc/api/include/torch/nn/modules/container/modulelist.h,sha256=RQ8yv34Zv-ObiMr2G2CkOpAkGRYO9XkTiXe_XILdV5o,9214 +torch/include/torch/csrc/api/include/torch/nn/modules/container/named_any.h,sha256=SvvwroiyhcCiiGc7OxblllG7hNVQ3esAgaGr6xnDOIA,2523 +torch/include/torch/csrc/api/include/torch/nn/modules/container/parameterdict.h,sha256=viA-klreiOercbVR8IvpsWV4RqqCcMtRFFIQFQkrk94,4603 +torch/include/torch/csrc/api/include/torch/nn/modules/container/parameterlist.h,sha256=wJcq55aygVDk-RE9Ytpu3QD4vJfsexUyzz61sAMW_18,5744 +torch/include/torch/csrc/api/include/torch/nn/modules/container/sequential.h,sha256=z02NkHNeTYT5v1YBOtTM8ah1Tc2dxT12KcGXoo-n6j4,14130 +torch/include/torch/csrc/api/include/torch/nn/modules/conv.h,sha256=k0xkUzc1DjS4wMarPMmVZmUB8U4VhBa-VQkqIIY9cpk,16762 +torch/include/torch/csrc/api/include/torch/nn/modules/distance.h,sha256=SAe11TTrqBIPapxAMjEeG1sJPAAxcsG87lF1ikfcrxw,3140 +torch/include/torch/csrc/api/include/torch/nn/modules/dropout.h,sha256=O754vCMQXB8d2R7Z_x4OOxT25q9aEBjW-CX64wYomoA,6639 +torch/include/torch/csrc/api/include/torch/nn/modules/embedding.h,sha256=ZJWikE0EPNqRFxYN2qRkJZORKuPmEJ1lT-TKNv9DIyY,6220 +torch/include/torch/csrc/api/include/torch/nn/modules/fold.h,sha256=iK0aksf3_p5zkCBNSY__-zqBBWXfHbC8jrckeO2Mslg,2907 +torch/include/torch/csrc/api/include/torch/nn/modules/instancenorm.h,sha256=h-ph1ormC0r6PwmcY51hcrZgprYxZ5gd8Y-DyyLtXAY,5667 +torch/include/torch/csrc/api/include/torch/nn/modules/linear.h,sha256=jNICd9KiLRBxsHvga8z8Um3U_X9ZdXODARDYmY8IMqI,7699 +torch/include/torch/csrc/api/include/torch/nn/modules/loss.h,sha256=pJoI1IYP23YZZ61wsjVJd3ictiaKbU8PPxilRqGF8s8,31785 +torch/include/torch/csrc/api/include/torch/nn/modules/normalization.h,sha256=XNc6wme4R8PDeY66luEnBnm0owuJ-xemCcCz1KJ51GM,7128 +torch/include/torch/csrc/api/include/torch/nn/modules/padding.h,sha256=7JAN1oH3ldNNipyWjU2OjYX7rdO1hJ7MYoe9V1yJMzo,14722 +torch/include/torch/csrc/api/include/torch/nn/modules/pixelshuffle.h,sha256=5fHrAwDgOuX-ie0vbqHDJFBukTvrfYnf_3tBmO6oULY,3195 +torch/include/torch/csrc/api/include/torch/nn/modules/pooling.h,sha256=X10Qj87MiX9p7dBt3dLJhO5XY6qdRZw80_82uJ3HP9A,30417 +torch/include/torch/csrc/api/include/torch/nn/modules/rnn.h,sha256=hORYIzjHA5QCH8haf_d42K6kpMPMolZPPSzpDXPUGCo,13847 +torch/include/torch/csrc/api/include/torch/nn/modules/transformer.h,sha256=dsXo7v8hEShieTE1fj8HbGiMXPEDcldTjXUZsiQroek,5463 +torch/include/torch/csrc/api/include/torch/nn/modules/transformercoder.h,sha256=Wszd-oZzK_ZiuG4ZoJjTVI9ywE_Bm9IVcquf6mbLAqE,5355 +torch/include/torch/csrc/api/include/torch/nn/modules/transformerlayer.h,sha256=20k8qWWPNRcsIHUXR3SC8jt0xl0nDoErObB8x6OjQrM,6600 +torch/include/torch/csrc/api/include/torch/nn/modules/upsampling.h,sha256=R8FrWhPvvO8KMXwIhJiZ_0tmztRYTZJf8B4ulyp8x4U,1679 +torch/include/torch/csrc/api/include/torch/nn/modules/utils.h,sha256=77ADrqfmMv3wO5RI-rflBwVePNGGgve9P59eKMa0pc0,1448 +torch/include/torch/csrc/api/include/torch/nn/options.h,sha256=mio9iZxv4kWN8PNBt7OkCpSDfVCAojnPrT7I1TcEXKE,663 +torch/include/torch/csrc/api/include/torch/nn/options/activation.h,sha256=BzP55Y8lvRf__XsGbqstjkoMatVn_JjA68Konx08LZw,19731 +torch/include/torch/csrc/api/include/torch/nn/options/adaptive.h,sha256=KMTXirLcljBZFaGwFLN-hHxlYFkWaVMD6oADeVnqwh4,1096 +torch/include/torch/csrc/api/include/torch/nn/options/batchnorm.h,sha256=_aKXH3jx3SO4w6CCGaDvvKfsUExtoqZlmwuRMnIXwyg,2867 +torch/include/torch/csrc/api/include/torch/nn/options/conv.h,sha256=MloMisklg395xqZYC4x0MMZAsq69MGFaE0lvjlCpUhk,13859 +torch/include/torch/csrc/api/include/torch/nn/options/distance.h,sha256=Bu2OqEd-azQqxyI9Dp67EoCIk3wE_9agkyYaSY_v5Mc,2058 +torch/include/torch/csrc/api/include/torch/nn/options/dropout.h,sha256=vbu9sp1X_EwCuasTaIKK2uRzzP3vQ5PPApUw-BcpfRc,3173 +torch/include/torch/csrc/api/include/torch/nn/options/embedding.h,sha256=4BF84awReG7K1YT7kXB61DR_AUA3dWRI2n8wxOS6PXQ,11882 +torch/include/torch/csrc/api/include/torch/nn/options/fold.h,sha256=NN2303_kh8nWrHaSCBPET4HGaXFPt3yeTwnNQVd7HAs,3008 +torch/include/torch/csrc/api/include/torch/nn/options/instancenorm.h,sha256=YvSLzhlx-AA0Adp9KVKdBHxxQN9g9TeW9OjNso9Z8SA,2383 +torch/include/torch/csrc/api/include/torch/nn/options/linear.h,sha256=CvCuiSUPbFO86oPLmMJ9RUwmR-zWiZvOkHJNmfQHO4k,2872 +torch/include/torch/csrc/api/include/torch/nn/options/loss.h,sha256=6pWAL2HGoQTT5VdB0p07o-5Y03Esm2U3ydQpxBqZ96o,27502 +torch/include/torch/csrc/api/include/torch/nn/options/normalization.h,sha256=xBvr3cyBlAML8KdmBXZpTDhadhZcHKutduSDfk6ZxBU,5687 +torch/include/torch/csrc/api/include/torch/nn/options/padding.h,sha256=4wDGe-Wc7wLen0qOL8MAolO6NtdyL6Z6oSd1Jdo61EU,7052 +torch/include/torch/csrc/api/include/torch/nn/options/pixelshuffle.h,sha256=NRGKmzhvRNdQ4q53NKnqGi3GR4d2m0iCiQ_VOTcWD6s,1695 +torch/include/torch/csrc/api/include/torch/nn/options/pooling.h,sha256=sJemTYIPOfO6jT4xfZM0ELgriirsfZLstFFwL8Q7CFk,18312 +torch/include/torch/csrc/api/include/torch/nn/options/rnn.h,sha256=MMOwBbf8hrhq7YoyPZAjEkzOhmWgxsiHu5JqHd2hF5U,8429 +torch/include/torch/csrc/api/include/torch/nn/options/transformer.h,sha256=_cay4wJCH_fPl7QAP-uqVzKcgghjJxNmK9QJA0wZpqA,1876 +torch/include/torch/csrc/api/include/torch/nn/options/transformercoder.h,sha256=01DaY-884a5FmcY0-HqhvRkgyl3Nj2QHSQ6gd30B-YQ,2393 +torch/include/torch/csrc/api/include/torch/nn/options/transformerlayer.h,sha256=XzgUERWTKwi5uOIdBBRYm5fVuh8jNDaG9Vt67IhtsWI,2129 +torch/include/torch/csrc/api/include/torch/nn/options/upsampling.h,sha256=_E8Q2aS1KdZdT2rw4edkDAyKDqhp1e_GEWI9mnusd7s,4233 +torch/include/torch/csrc/api/include/torch/nn/options/vision.h,sha256=CrURThTtJSxplqmdm6xh9rOXNTtTtpmt56ZcyMC7zwk,1081 +torch/include/torch/csrc/api/include/torch/nn/parallel/data_parallel.h,sha256=1bMx1326YNEKpHeEI0wN7fZL_RY5319gjgw7-W_BGSM,11487 +torch/include/torch/csrc/api/include/torch/nn/pimpl-inl.h,sha256=qC12dFuUBAQqs4ubt1iPaMiBwTwCG97wATjA8y2YIb4,3300 +torch/include/torch/csrc/api/include/torch/nn/pimpl.h,sha256=59N_KVHDwsFoy_dhQHmX9-vgv3fZO6nDUuJ3nUIsML0,6825 +torch/include/torch/csrc/api/include/torch/nn/utils.h,sha256=8qAKIZqgGj4uPo608t1C3tSXaxcCpHcZcgumbcJ9wy4,136 +torch/include/torch/csrc/api/include/torch/nn/utils/clip_grad.h,sha256=h_qK2Ro44s4aTu1KwbXdvNNsAlV6d3DKpIpxtsv5-dI,4982 +torch/include/torch/csrc/api/include/torch/nn/utils/convert_parameters.h,sha256=Gua6BEKx0vosR-z7utQl5Ab3M0J-6HwMG5mWJwPUMEg,2454 +torch/include/torch/csrc/api/include/torch/nn/utils/rnn.h,sha256=NbVTEU-5cHd8DSwQPIz_6e-IBGuCZrlNFLE0cboa9-c,13141 +torch/include/torch/csrc/api/include/torch/optim.h,sha256=YR1ubuV1iVUXZ0EoYrUHG1ebXDixaFPvYp2kVBAmknI,407 +torch/include/torch/csrc/api/include/torch/optim/adagrad.h,sha256=ZQbQczV4FHnRnL8HuZ5TPrZ8Zvw9Mu98NU7VNNRwc4g,3592 +torch/include/torch/csrc/api/include/torch/optim/adam.h,sha256=QqNql4Tw2jajbYuyDMoHYb-nnRKmIEXaNdAc5dzlJQM,2966 +torch/include/torch/csrc/api/include/torch/optim/adamw.h,sha256=02zM064CHPHRXqkej9eQy57csVKmU6_uxaNREPN2Uqk,2986 +torch/include/torch/csrc/api/include/torch/optim/lbfgs.h,sha256=qnuh-4fIgn5FMiWKPgFzpT-5ahzC5iNu2N_cXU6KPmE,3545 +torch/include/torch/csrc/api/include/torch/optim/optimizer.h,sha256=l-srqmmRUkNCO8ujohK6DUcEK-xw9r2AMprkmEqB5oo,8027 +torch/include/torch/csrc/api/include/torch/optim/rmsprop.h,sha256=fDdDhEr5Lp8yMtYyQDv8KjLbYnE8_tf9tmS4UwmdBMc,2989 +torch/include/torch/csrc/api/include/torch/optim/schedulers/lr_scheduler.h,sha256=1IXx_0b-dtzuuuDE4kxLGAUXasZlPtiU3GozVnudTdQ,1085 +torch/include/torch/csrc/api/include/torch/optim/schedulers/reduce_on_plateau_scheduler.h,sha256=LSdIxkaHd3OuVUanpWLjih8Wk2DV0ZHhRSinUL-_wT8,1439 +torch/include/torch/csrc/api/include/torch/optim/schedulers/step_lr.h,sha256=nugegH2ZuooK4NbQGBPdVeG5euxCoLFv-WulHiQ1xqc,419 +torch/include/torch/csrc/api/include/torch/optim/serialize.h,sha256=-RtCdNSe9w8zvkEQVzNcVxIivQ_BNBHIloWZIfQi4gI,12988 +torch/include/torch/csrc/api/include/torch/optim/sgd.h,sha256=az6sQ_Q_Yn28mPORhFVTBb0Oemfiw-pNVfbOqiy4XgE,2707 +torch/include/torch/csrc/api/include/torch/ordered_dict.h,sha256=xKS7wQt5KayZhkBENwC72BCx73zkgO1lfGzZBYxDqcI,16772 +torch/include/torch/csrc/api/include/torch/python.h,sha256=1212sCcLu71x9-Vq5wZvqQernPBYXgpb3QESbxWhffc,10163 +torch/include/torch/csrc/api/include/torch/serialize.h,sha256=SVhq2UC2Urt5A4vd6gF_g3EWKeL52DRxgoII_RPsgYg,5388 +torch/include/torch/csrc/api/include/torch/serialize/archive.h,sha256=eFWJ0rMIETBxQ-RzrbeJPinxHqQvw4HgItM4yTKstEo,105 +torch/include/torch/csrc/api/include/torch/serialize/input-archive.h,sha256=D5fuVkZcu7uVsXBQ8GuuA0T8gQ_KOuYPmHByzmYvEXE,4071 +torch/include/torch/csrc/api/include/torch/serialize/output-archive.h,sha256=h4ygrK4pWZAueNYVyWmdow0KjLXYziy3lu5iFYo5Oi0,2370 +torch/include/torch/csrc/api/include/torch/serialize/tensor.h,sha256=8THFm0NshLaq3TF5ft_O0-auH_b-w3zYAEQbqRdglDI,452 +torch/include/torch/csrc/api/include/torch/sparse.h,sha256=f5uTnnP3yHl4yQrD02o9R4LNFMt1cxusttlmyLRdEWA,40 +torch/include/torch/csrc/api/include/torch/special.h,sha256=DrB4Oq4E3xErMaf-ASb3Lgk5_SxPbmm4IqQL-9_-MfQ,39688 +torch/include/torch/csrc/api/include/torch/torch.h,sha256=diC5AEPIQ8C8M3WRszaaz7tfPjWeQzCxQQ-gczSPb-s,162 +torch/include/torch/csrc/api/include/torch/types.h,sha256=gV0_Zus0nLGRk7RSHeO43O2NNKoeXlFzivzFB18dINM,2587 +torch/include/torch/csrc/api/include/torch/utils.h,sha256=hSen8TPO7Pzi6BHSk-UyWGrqv7suDpe2isMSYhDao1c,3702 +torch/include/torch/csrc/api/include/torch/version.h,sha256=HGULz7FqJsjhHqY4JkrZ9aP9FJEyfyIHmi_JJ9-VyP8,329 +torch/include/torch/csrc/api/include/torch/xpu.h,sha256=YNOirmQkZYOOgCH58b9rmec4zy_n5Nb-P-bnEvDbhj8,627 +torch/include/torch/csrc/autograd/FunctionsManual.h,sha256=ywKPNN0CnHcWHIqjIZ9SHYUT0YwZ1heXGWS-MQHPag8,33453 +torch/include/torch/csrc/autograd/InferenceMode.h,sha256=193BAyIQipMnEgZCHFb_SqewEpjYx-_cFMLnSOtytOA,166 +torch/include/torch/csrc/autograd/VariableTypeUtils.h,sha256=QUmZse8Awe3RBcrlKXid4MIklGevPkIhypxvk22Qno8,15008 +torch/include/torch/csrc/autograd/anomaly_mode.h,sha256=kkXTHOgzEv4v203_JqpEOlwBZlwiTbKXidOi63G1oYI,1795 +torch/include/torch/csrc/autograd/autograd.h,sha256=VXpDwnhJ4ClN6exWax3Ss7IZcYSJAopuNskWEOhq5I8,5413 +torch/include/torch/csrc/autograd/autograd_not_implemented_fallback.h,sha256=VN5hLPF82ULRZ0OnQeownr9yMKcKq4NUGZUHgiT1ILY,1174 +torch/include/torch/csrc/autograd/cpp_hook.h,sha256=dYYgmCt7LWzNxQXguesJ5T02Wwm7FYPpBVMZhyrVxzg,894 +torch/include/torch/csrc/autograd/custom_function.h,sha256=n2G1WKqpPe75Le7oasHyTAAPvYjOf7A6i_XwrV7POkw,18505 +torch/include/torch/csrc/autograd/edge.h,sha256=d4pmtht0HycmtESGyi8e5ydG7-jAX3xwjOH0jy8hSDY,1671 +torch/include/torch/csrc/autograd/engine.h,sha256=2WNSmKfbnEr2kcJvd4Jz97XZjJdK5o1FMAOI2ZLJqYs,11202 +torch/include/torch/csrc/autograd/forward_grad.h,sha256=FUs5uG5Lv6UbQIewVgzYCcgUjhywY29HtsfNu1BRfCM,9148 +torch/include/torch/csrc/autograd/function.h,sha256=smmE9a13nOTq-p5NzAkpUL_maurMRRPkTfV2yh-1yak,31027 +torch/include/torch/csrc/autograd/function_hook.h,sha256=MS3c5veOnG2YA8JY2Z_mabjwtjW19e_17xiUxUIPwBs,2136 +torch/include/torch/csrc/autograd/functions/accumulate_grad.h,sha256=LtAWFL0N0CzRc6Korr2Npbc3fF38UH0Zwx_R-KJNWNg,13909 +torch/include/torch/csrc/autograd/functions/basic_ops.h,sha256=BJov2WwYWM69tCBFQhiJ50nfniDmCAOc9fzDwkXaasE,3274 +torch/include/torch/csrc/autograd/functions/comm.h,sha256=V1A7lmYmEC86xUkKZvASExJUwbbnw1EcW5rUXnl5dUs,1242 +torch/include/torch/csrc/autograd/functions/pybind.h,sha256=AeaElJ99I4XWPp1P4a4RRjcn8ANh3be4w8gkZ_EqTEc,394 +torch/include/torch/csrc/autograd/functions/tensor.h,sha256=t275Ahfh4iv-FfMb1WaIEuSDH-waxgxkHEXWl59fCKU,7414 +torch/include/torch/csrc/autograd/functions/utils.h,sha256=GZnRzxvOO28bqLgbha9CUMil_ZHGNnxgpiI47nOOYBU,3271 +torch/include/torch/csrc/autograd/generated/Functions.h,sha256=AJwBc1vo0K9Kc6kpQ915Bm1VvPCrpnCJgpHwJ2bE0yU,525042 +torch/include/torch/csrc/autograd/generated/VariableType.h,sha256=G3xk8KIJ9SkUguyjKxAPzWa31PacmPPc_9sv5OGDAz8,1560 +torch/include/torch/csrc/autograd/generated/ViewFuncs.h,sha256=XDNS9c1OaPT8MyVpPrnDjCKpb4uD1UP_w3vo3DA1OfU,38295 +torch/include/torch/csrc/autograd/generated/python_functions.h,sha256=pPMQllLtVVzpn-jyNnrF3FbpG_sFGeuMbTROwA7ESq8,916 +torch/include/torch/csrc/autograd/generated/python_return_types.h,sha256=HMnZGi66DMSndlKqtTkQxcRO9onCwcO7MxXxxK3IlsM,4160 +torch/include/torch/csrc/autograd/generated/variable_factories.h,sha256=gDiBkPROdX1ecwSZxd1KH67ysWz4WXNNJ5vaFvYQ-l8,56950 +torch/include/torch/csrc/autograd/grad_mode.h,sha256=FeBYVzVyI9pozFfZJix2cp5tcJVcdwYUaD59FcZQqjc,221 +torch/include/torch/csrc/autograd/graph_task.h,sha256=0px1K5XcMkjhno24QoVNPwVhSsdl9C9tVXbxKivgy28,9605 +torch/include/torch/csrc/autograd/input_buffer.h,sha256=4fl2zjnDPbr_fCBQs_J5PbNbLouFDF7FPPF1OjFCfHc,1420 +torch/include/torch/csrc/autograd/input_metadata.h,sha256=vEEkUGXuU75JKvxqS-TX9CeEO5jfyJd17uegqsCTS0A,3095 +torch/include/torch/csrc/autograd/jit_decomp_interface.h,sha256=t1X6tXpJQSuTf0yndBRc_pDLUw36QqA8x3wjmmdL0c8,1848 +torch/include/torch/csrc/autograd/profiler.h,sha256=ecH4z6CHlutJUcsQ0JEvqxuhBY5ezLYtNrhUHs9iCg8,116 +torch/include/torch/csrc/autograd/profiler_kineto.h,sha256=L8lEeYAzPUMJqmzEf0jrJUxAv6pjmxtn74DDq33AdZk,8231 +torch/include/torch/csrc/autograd/profiler_legacy.h,sha256=ZbumxB1m3tjcxrun3BL-dkHINbkfiY7dWkZU74hGgHI,11079 +torch/include/torch/csrc/autograd/profiler_python.h,sha256=_cad-WJ8TurfdWXwU2ZaHhEN8Pme3A-kWMz9qvX4OVQ,91 +torch/include/torch/csrc/autograd/python_anomaly_mode.h,sha256=d8v4n4iablIu_Loyf-oj7aXTAsG-PB9GZ5FO3qguLqU,1229 +torch/include/torch/csrc/autograd/python_autograd.h,sha256=aX5wGQGP5tmKz82C_LG61I4LMgG-aikeGwbAgtYPsjw,441 +torch/include/torch/csrc/autograd/python_cpp_function.h,sha256=0qm-1PnKxqUVJOBejLkRRS94BCzfNboj8mXxJ1PQq7A,4938 +torch/include/torch/csrc/autograd/python_engine.h,sha256=Nioh82rxHwpwpIppJlxkEjfAuBK-TFkOFtUVFfU63WQ,1300 +torch/include/torch/csrc/autograd/python_enum_tag.h,sha256=2JZDAYZiXXH0QV-jY5PJeaT4Lc7p7EVU_f3Q1BPAKmY,127 +torch/include/torch/csrc/autograd/python_fft_functions.h,sha256=mQWbFZ0nW2CAy8X6WUO52g721q0gDugBTlY_K7-yX_k,143 +torch/include/torch/csrc/autograd/python_function.h,sha256=iuEVCgEYDKCQK11rQTXDWuySHqmQxzcVfRaPO1asWtA,5644 +torch/include/torch/csrc/autograd/python_hook.h,sha256=L70cStITWUWBIaGzUIawIwQ3LCjT_YI124jjeTkH0F8,2070 +torch/include/torch/csrc/autograd/python_legacy_variable.h,sha256=Qy7FTeQa8Y9KyFUoUhyZHpJMX35Pg6HEljILbZ-CV78,269 +torch/include/torch/csrc/autograd/python_linalg_functions.h,sha256=sfJScJPSRcHt8zgbZlRHms-x3Hhv6EM1hJ-1DC9DDCw,146 +torch/include/torch/csrc/autograd/python_nested_functions.h,sha256=MakQIRwTx2shIrMXT0tY7u1Mnu613AMsc3k6kLcojwA,218 +torch/include/torch/csrc/autograd/python_nn_functions.h,sha256=Dy0X6XmSlH8B8qEgOCaVuSIu0zlYqF9QMaOUt4qWjuQ,136 +torch/include/torch/csrc/autograd/python_saved_variable_hooks.h,sha256=O1I9Suqj-f9hT6vQgq5bxqK9x0sptaRGiV6RloZUZyg,966 +torch/include/torch/csrc/autograd/python_sparse_functions.h,sha256=bZFCyXcB36euWvlWJPDU969tUk9FneIxvA7EUhOXxxc,146 +torch/include/torch/csrc/autograd/python_special_functions.h,sha256=LrEhjVvp3SYUlFp_q9xffRcV_8dzdwD0WvpLgO_5PTc,145 +torch/include/torch/csrc/autograd/python_torch_functions.h,sha256=KokFblhbwjGcu6XxcnuYNCzcaYTl_nSJOv1wye7uhh8,675 +torch/include/torch/csrc/autograd/python_variable.h,sha256=cY0NWSxrpAu5v5xy_W4hueczXdPA9dItxMas0ToVW7k,3626 +torch/include/torch/csrc/autograd/python_variable_indexing.h,sha256=mxm3pbMSiwd37CIxlJwjcoiHMPZw33vKEE-O8z2HWQg,2851 +torch/include/torch/csrc/autograd/record_function_ops.h,sha256=K3KNTCuo1XZdAzmtScEUBWcFOEygK9NTKPTOYeisPck,962 +torch/include/torch/csrc/autograd/saved_variable.h,sha256=PrunXM1t9gJt5y7lL8SeiPU7Bt8bvVNs8gLX-URt2Yg,4872 +torch/include/torch/csrc/autograd/saved_variable_hooks.h,sha256=IyT9JDJRrPzTFxJqox6XeabQ14RWrM8q8d-wTQsNmbg,309 +torch/include/torch/csrc/autograd/symbolic.h,sha256=8D-6u1srDIUgsqYN9qF2KxKAULqP3piHcJGl6XMpQLU,316 +torch/include/torch/csrc/autograd/utils/error_messages.h,sha256=clVeU7UoYAJbkh62Svx2l_EAfZ9rMCl-Rq5ESyeZhCU,513 +torch/include/torch/csrc/autograd/utils/grad_layout_contract.h,sha256=ZI_XlM2JE0ODff8W28tOjKA4Bk3rdiysStE0VyeN-pg,2898 +torch/include/torch/csrc/autograd/utils/lambda_post_hook.h,sha256=YvCkLlwvgENzLF-9wTlaVe6Qu4EshCRx0Mo_D8GVkY0,1310 +torch/include/torch/csrc/autograd/utils/python_arg_parsing.h,sha256=vNtDgR6jTSPepG8cLO1ZM8Q9iD7UzabMSWgWS6clel0,1472 +torch/include/torch/csrc/autograd/utils/warnings.h,sha256=4m8p8eQuh4wTaUK5vOz8sNnSjf5POxLVzncfFloytBE,607 +torch/include/torch/csrc/autograd/utils/wrap_outputs.h,sha256=udjY-AHJ5_Blkp1JjWewJiCgJqx3SnJJWxYAR2zvY3U,3892 +torch/include/torch/csrc/autograd/variable.h,sha256=s0cPfaOyDMuDKLp0h9H9x6gjx0lM6gKFALbp69tPtlc,41293 +torch/include/torch/csrc/autograd/variable_info.h,sha256=dhwpuE7XE53h9MGXvR7KuNQi26AbPeByXb9kXQISdC4,631 +torch/include/torch/csrc/copy_utils.h,sha256=pBBkjwDDzr0RewFfbQgg5T0-6FTE4rb3_c3Vmnkza5I,1472 +torch/include/torch/csrc/cuda/CUDAPluggableAllocator.h,sha256=iNoR2j4CSoUiTpT0BVdOVjPZVi7AwlkILE1wtEUIoU0,7158 +torch/include/torch/csrc/cuda/Event.h,sha256=aMb8Wc0rYHXnECz6v0aQDok1bZGVSJ5-F5DDpSL0DBU,452 +torch/include/torch/csrc/cuda/GdsFile.h,sha256=0yhr3yQ44dmgP9h15KFt-eUsjTxe6oZKRwegsRf0bbE,165 +torch/include/torch/csrc/cuda/Module.h,sha256=EV6U4_0L3f0lRPF8ONY75vssAWdO2Mliz67fh7_I9WA,496 +torch/include/torch/csrc/cuda/Stream.h,sha256=TEh5ybU34VDMzc1F4thXe6qTAGqctH9h5JM4PIJxBMU,524 +torch/include/torch/csrc/cuda/THCP.h,sha256=A-x8wobd_ypPl6gJ5OMlutHzDgHzPDtTVQmxZFdNr9A,223 +torch/include/torch/csrc/cuda/comm.h,sha256=3aMxp07JvvCeUQ1CGwOAY6oZUFZaLEzV4Vxt5dtiLo4,1566 +torch/include/torch/csrc/cuda/device_set.h,sha256=Yyw5e5j2ukJaEUgyh904RfmrHDoU5wqCercO5lcysjc,196 +torch/include/torch/csrc/cuda/memory_snapshot.h,sha256=xQVyBfax5X3Jr8J24htQRDxrqDpMb6f_3JKYbay-bIY,796 +torch/include/torch/csrc/cuda/nccl.h,sha256=o6JGJc0LyYPYBA-oSXGXRPG5bXM5QgpNGMj5RuRG2oc,6090 +torch/include/torch/csrc/cuda/python_comm.h,sha256=rTmmYE_D4vtOx0bHH5U_hiogUJsnEfJL6TR8LqKow4Y,179 +torch/include/torch/csrc/cuda/python_nccl.h,sha256=5fIyxj552ZTtSeNK7q2dQjlnrphEsBORyALmzkRxRGo,695 +torch/include/torch/csrc/distributed/autograd/context/container.h,sha256=h6OxlArf2srgN5K7Mm4gFh_Yi1Q8HWdyNsceuHa1K-U,6546 +torch/include/torch/csrc/distributed/autograd/context/context.h,sha256=gc0Cqrb0wZrPQzPdusBph1w7WKDIpTXTSaxXlgW4lmE,6748 +torch/include/torch/csrc/distributed/autograd/functions/recvrpc_backward.h,sha256=eUbAkHAt1dgWgFRx8z1WWWxFsfYciGOqgInRhYgLjF0,1707 +torch/include/torch/csrc/distributed/autograd/functions/sendrpc_backward.h,sha256=6F9XfEg5EDH8Y9i0DkneB6p2aIb82A34llcr8H25TIA,1356 +torch/include/torch/csrc/distributed/autograd/rpc_messages/autograd_metadata.h,sha256=LOywcaxn0TS2Ar0eQZv6cpfQBUNhYb2H7b_V2e9bTCA,721 +torch/include/torch/csrc/distributed/autograd/rpc_messages/cleanup_autograd_context_req.h,sha256=O-fKhg3HjwvTSn4vCRc5xHLWEXWw8GhV_BQBftTu0Fo,861 +torch/include/torch/csrc/distributed/autograd/rpc_messages/cleanup_autograd_context_resp.h,sha256=pwnUH1latd-VHlw4RhwNv0JJwMLZnZ-1fXVX0PC8z5g,680 +torch/include/torch/csrc/distributed/autograd/rpc_messages/propagate_gradients_req.h,sha256=C4kC-BYc2BDIHoJpHZ_sIItoHq5SCjf8I3a7Zs6geGc,1286 +torch/include/torch/csrc/distributed/autograd/rpc_messages/propagate_gradients_resp.h,sha256=HJ5LjVLxuxKYkamVpyyroy13uBbpCYUiHTOmfTF4FLg,774 +torch/include/torch/csrc/distributed/autograd/rpc_messages/rpc_with_autograd.h,sha256=YyPuEk3MOmtBd51YhPdRD0s41Jqw__UjbwVOhCiN04w,3600 +torch/include/torch/csrc/distributed/autograd/rpc_messages/rpc_with_profiling_req.h,sha256=NgxgJO4eLiPX-nuweNsEWJdNpO2tWgnFacRnUlACURM,2571 +torch/include/torch/csrc/distributed/autograd/rpc_messages/rpc_with_profiling_resp.h,sha256=9QOWj3K8GOOUiLyoEBaZsCo6zbGJzOaMibevcGy06lI,2528 +torch/include/torch/csrc/distributed/autograd/rpc_messages/rref_backward_req.h,sha256=3V-7R4PDVOyhqLMd_2qrUOLA7K4cfpINu6gQuGSEuXs,1228 +torch/include/torch/csrc/distributed/autograd/rpc_messages/rref_backward_resp.h,sha256=CBrsyzpqFZ2ftg3E7Zyt1NHLJyKrTZEYmkzafpyjFKQ,525 +torch/include/torch/csrc/distributed/c10d/Backend.hpp,sha256=UrgdjgNeN19QJ_5GIq1HLnPjmXctzUt9meVAoW1a1Mg,13690 +torch/include/torch/csrc/distributed/c10d/Backoff.hpp,sha256=2bBiso7arafyzx-khiAXF0N3TdgV_F2SbAtKSAvFzmg,1103 +torch/include/torch/csrc/distributed/c10d/CUDASymmetricMemory-inl.h,sha256=xVnvMAOFeGAZDKW-hcSz7XqoRnqZhFrKz9N8cKYlOzY,14932 +torch/include/torch/csrc/distributed/c10d/CUDASymmetricMemory.hpp,sha256=J-kx8CgJzHeXTYEAOH6hlJk2RgwpHgaQ8m_qlhtVZO8,3800 +torch/include/torch/csrc/distributed/c10d/DMAConnectivity.hpp,sha256=g0MM3zaVqxPxDArrtmp_CexKFkucY1Ik6lwm7bO8k-I,1315 +torch/include/torch/csrc/distributed/c10d/FakeProcessGroup.hpp,sha256=rvDz1wuF4XiR9RIUIOXJA_dGCncCcCeEZlRM9J7-9rc,6495 +torch/include/torch/csrc/distributed/c10d/FileStore.hpp,sha256=S7gb-yl0F4hpjaVNwRcUeXbaXWWHz9MYF7pUbkc6gx4,1555 +torch/include/torch/csrc/distributed/c10d/FlightRecorder.hpp,sha256=8ANqakMPdjIXeEiNlPP58pLAzI6ECqcJUk0yLQDxNAc,9432 +torch/include/torch/csrc/distributed/c10d/Functional.hpp,sha256=dbmYPuW47p4fsgxUn8uwAJO09qjWrAHLh5TZQ8i2m7w,73 +torch/include/torch/csrc/distributed/c10d/GlooDeviceFactory.hpp,sha256=wlar7piuB5UV3v_kzb6CRC_A7s7xdZ9VwI7-aF2htos,805 +torch/include/torch/csrc/distributed/c10d/GroupRegistry.hpp,sha256=d68PbqmRNkzKUji9Inzp-4gRofDuC8j12z5e2sc_uwQ,591 +torch/include/torch/csrc/distributed/c10d/HashStore.hpp,sha256=OUPHdwooXQVOzfj9fhZH_Yw6mnhXi89Q7sk7SnBL0fQ,1612 +torch/include/torch/csrc/distributed/c10d/NCCLUtils.hpp,sha256=IX-wi4lDaaig-gz74gU-q-kKCZJJsZrOInyu1yg0-7A,21770 +torch/include/torch/csrc/distributed/c10d/NanCheck.hpp,sha256=hnw1fr2PjtWVnorse_5LZwvZQ2AlYh9ucuvrhjQPBBw,344 +torch/include/torch/csrc/distributed/c10d/ParamCommsUtils.hpp,sha256=h45mB4kv81PQZbh_ekCZC0NqoNR-xovd6gkrJTRBJEc,8933 +torch/include/torch/csrc/distributed/c10d/PrefixStore.hpp,sha256=VqBzIadkPO8g-ghtmaGAe-zNaPb7nyZ4n8KjLkap87A,2015 +torch/include/torch/csrc/distributed/c10d/ProcessGroup.hpp,sha256=to-t22HU8cVyUmiFu4Ip6jUobnqnQwh9uMwG-3iajDI,34541 +torch/include/torch/csrc/distributed/c10d/ProcessGroupGloo.hpp,sha256=_PeWVYbnuE_0uCH5dtns3tSnoLRVqcxcO-rvrpxzPQ8,15430 +torch/include/torch/csrc/distributed/c10d/ProcessGroupMPI.hpp,sha256=u7uX1-Pp8W0F_Gi5u6k3xlGB8cEdtV317bnucxff-ng,8920 +torch/include/torch/csrc/distributed/c10d/ProcessGroupNCCL.hpp,sha256=S7a7nHct3Thgb0PkUlzf4MLEKGUpIF05kE9C-DJzHx8,49553 +torch/include/torch/csrc/distributed/c10d/ProcessGroupUCC.hpp,sha256=D6xjgH-8AaltWLeMCkgaiOhow4yyzIqcY0vR1J3uyQc,11622 +torch/include/torch/csrc/distributed/c10d/ProcessGroupWrapper.hpp,sha256=Y5xA54sYnDFe0tHwtIkETJNHbEK5ywvPGt7SMJpOI5w,5217 +torch/include/torch/csrc/distributed/c10d/PyProcessGroup.hpp,sha256=-qc-8Z9Q57osy3NYVXLolidc36JJkadfxMTlFmc-Rxc,9596 +torch/include/torch/csrc/distributed/c10d/RankLocal.hpp,sha256=_vXAoWTPQM0caOkBbMmdL0QHrlCuMz4u0JSy8PkW9oY,2360 +torch/include/torch/csrc/distributed/c10d/Store.hpp,sha256=fJLn_137w79lK873fUEmjIl9RBkHr4Q0CgxD-NFTRZg,3760 +torch/include/torch/csrc/distributed/c10d/SymmetricMemory.hpp,sha256=2V87guj_Spa4-36T0Z2VI6FViP4d3tgrhv2xR4uOrec,7101 +torch/include/torch/csrc/distributed/c10d/TCPStore.hpp,sha256=qeUGwTRrjb12IwAZ0BsT_aHXO1CqtQBUUYveOTxFg_c,4941 +torch/include/torch/csrc/distributed/c10d/TCPStoreBackend.hpp,sha256=nZNMVv2bMkusCRHLgoKAjawlVBkb0pjc3omewwwmiU8,1601 +torch/include/torch/csrc/distributed/c10d/TraceUtils.h,sha256=LiiXoOPGYh3JqBkrddR6Gu3DZWC_5wW-t6b2nof2v5I,10548 +torch/include/torch/csrc/distributed/c10d/Types.hpp,sha256=Ln3muuhM4INcrsOJpo3I8KYUO3fZ5RRBHm8qJ4Eq17I,5044 +torch/include/torch/csrc/distributed/c10d/UCCTracing.hpp,sha256=seQKpba3pMPumoYGBRw8tYG0t6RsH5nKboSjKtdOII0,2359 +torch/include/torch/csrc/distributed/c10d/UCCUtils.hpp,sha256=ffqb3c9uAjEjedeuVkZRGZOMT7Si6yMjwDLlgt5eSVc,6547 +torch/include/torch/csrc/distributed/c10d/UnixSockUtils.hpp,sha256=lis-Iqe_djdBbahb01JINpHRtzDW0dfbd5YKK2zYwEM,575 +torch/include/torch/csrc/distributed/c10d/Utils.hpp,sha256=hmeg2lf8hZBYHo_MOSpVlnItFxc7niEdWbmBzsgAHLg,23959 +torch/include/torch/csrc/distributed/c10d/WinSockUtils.hpp,sha256=n4sMpcezCTCeAXynNtZWwx3MaOFCtYLBssj2BKhLXpQ,566 +torch/include/torch/csrc/distributed/c10d/Work.hpp,sha256=g1TUke5xD-noAVfR6RjF8vltA1sE8ocSF92oMRZjPuo,5690 +torch/include/torch/csrc/distributed/c10d/c10d.h,sha256=BYk8QfECnHp82Mq6sHAkaH7EYA2pWhroNrS9IcbZJmc,175 +torch/include/torch/csrc/distributed/c10d/comm.hpp,sha256=osURXQfZiwgWCfHjHhIPoC3_r5cWJBHtfxR8koYTJlc,4558 +torch/include/torch/csrc/distributed/c10d/debug.h,sha256=uojfbUpL-GFGL5HO_bFvMTB8JpeVgpRL8U1JHKUkt8E,627 +torch/include/torch/csrc/distributed/c10d/default_comm_hooks.hpp,sha256=txBto9SYRccxVfZDxEb-7OLwUdSeS1ylQj_g9xJkWOA,1797 +torch/include/torch/csrc/distributed/c10d/error.h,sha256=G_zLJQtkz2E0IBank46M-5oGheyw0AgOXtPgNXLCXz4,1390 +torch/include/torch/csrc/distributed/c10d/exception.h,sha256=FxN8pI76fakuvP9TqpK9-A8BdGuYVi898KB2b3Kiun4,1001 +torch/include/torch/csrc/distributed/c10d/intra_node_comm.hpp,sha256=r-F8RBqy8VKfCDA1ZiLy2ml-gVkjMtq4l5jvfryfbGk,2373 +torch/include/torch/csrc/distributed/c10d/logger.hpp,sha256=FgVXM3eaRQ2OIgUsz7lDSVt-wcSAI8Gd1SHuhmZm3fo,5313 +torch/include/torch/csrc/distributed/c10d/logging.h,sha256=VQUFizI8sqjFMqIBSSUtzwlVSv1qMe3Ekb_tIQFSPQg,1819 +torch/include/torch/csrc/distributed/c10d/python_comm_hook.h,sha256=Ug6jBxPPoRHjNnEv9uR5rKUvqRqjbotXLfqnptTZDlI,1106 +torch/include/torch/csrc/distributed/c10d/reducer.hpp,sha256=JuTteCvNaFRE1E2g4VMgZcup0oNOmToXi9jX3ggsWlE,26277 +torch/include/torch/csrc/distributed/c10d/reducer_timer.hpp,sha256=3ZMaL_ZrOYkmlQjyd2oJijrKJlnZG_zQI7dvMvAsa58,2465 +torch/include/torch/csrc/distributed/c10d/sequence_num.hpp,sha256=uLSofH2HajWKZKWoFbntNuuG0P54YE7upTTjVeJyb7o,1770 +torch/include/torch/csrc/distributed/c10d/socket.h,sha256=DQC8vb14SVNznumqWw5LlCXIui1jDTNUu7FaO-0O-4c,2565 +torch/include/torch/csrc/distributed/c10d/socket_fmt.h,sha256=hyhMosJNwTUEKdP8FZEDowWRw9WRjNtHQUqySfWTExY,732 +torch/include/torch/csrc/distributed/rpc/agent_utils.h,sha256=4KM2GjuBI1WqW5XSVivvvjQwoQp8bhuOakPs49gPDtQ,1671 +torch/include/torch/csrc/distributed/rpc/message.h,sha256=FEAFPezAqL-17BNVijnHG3rI8FlNbocUQP4fA2XEa90,7792 +torch/include/torch/csrc/distributed/rpc/py_rref.h,sha256=p27_kd0nj8SPjvAB7wavVTgeKCNbRKSrM637WKV7DiI,3046 +torch/include/torch/csrc/distributed/rpc/python_call.h,sha256=Km8Onke3JkXd9HJ7ig_Ka6xJIYnWG1Pd6dMBZkdPA9w,840 +torch/include/torch/csrc/distributed/rpc/python_functions.h,sha256=l8bSvyAmMkQMjUi6alxpoAY8zQE_Dv4LQifgguVSJek,2323 +torch/include/torch/csrc/distributed/rpc/python_remote_call.h,sha256=vnSwA3ai2j6tILZtMfILEbNISdWgj1o7pgObaoCq44Q,1374 +torch/include/torch/csrc/distributed/rpc/python_resp.h,sha256=ojnguIPzRZVY5AAJW7CpPmRq8ymcc7AIODDcBqWooOQ,644 +torch/include/torch/csrc/distributed/rpc/python_rpc_handler.h,sha256=88tmtQ9ddnd75hef5BElK1Wgv5UHzno3gdLDX0WPwyI,5083 +torch/include/torch/csrc/distributed/rpc/request_callback.h,sha256=tqOzvaJ3v_TNXf5Tj-I78Jdt6XPgWHjnVqdzLnejLuw,1258 +torch/include/torch/csrc/distributed/rpc/request_callback_impl.h,sha256=gi92W0qZJY3ZantZaQWCCbqAVaQNUgC0JPes4U5MfLQ,2143 +torch/include/torch/csrc/distributed/rpc/request_callback_no_python.h,sha256=KnM5WGTt9IsSAmRtp245auwa8wV2dG0sEBYsrndoWCg,4019 +torch/include/torch/csrc/distributed/rpc/rpc.h,sha256=Gw7c_2sprUeX5kBDuYhOVHEm9HJTYPYFi1i8U3fJWAY,173 +torch/include/torch/csrc/distributed/rpc/rpc_agent.h,sha256=B14K8_tWCHaKsDidL4UIp0dPAV_ljYLZATKjEOp32wU,13936 +torch/include/torch/csrc/distributed/rpc/rpc_command_base.h,sha256=w_6S8v2U9vkFHSOtUVnKJqi9RCgf3HtUHqa1jb0PxaQ,701 +torch/include/torch/csrc/distributed/rpc/rref_context.h,sha256=qFpTTRRtsNq0ZujFjcxBMC-aKhCkpvyjxxy3nWsMiFI,16103 +torch/include/torch/csrc/distributed/rpc/rref_impl.h,sha256=Xc0PoXVTkQJBWatsPxa2ltCc-H99NVvdHDSuJTzBl14,16874 +torch/include/torch/csrc/distributed/rpc/rref_proto.h,sha256=e6_V0vxYC_J64iAuFUX-TO3a9d2RgFwRWcnAiNVZHz8,5571 +torch/include/torch/csrc/distributed/rpc/script_call.h,sha256=zA1CxolnLoqbARQZ5hyPBGWCx6-67TDH1XyPV3KIy00,2604 +torch/include/torch/csrc/distributed/rpc/script_remote_call.h,sha256=qW0dWvwnzfP6GvDh1YDXf0YmLSVjS_uiXChrgT4TBz8,1798 +torch/include/torch/csrc/distributed/rpc/script_resp.h,sha256=SbNhjefmzekaZFW9K-CRsKXY3tJ_fIGZ5t7hm6_a5Hc,722 +torch/include/torch/csrc/distributed/rpc/tensorpipe_agent.h,sha256=BNg_gHMxWQLF7hi24x-TqrmrVctSGSz1Kkj3_7yARDQ,18149 +torch/include/torch/csrc/distributed/rpc/tensorpipe_utils.h,sha256=KpL_krReoyjIlhEwTE-lPmNtp4LaESfKDn4moQzmsZI,4842 +torch/include/torch/csrc/distributed/rpc/torchscript_functions.h,sha256=-wGnemIOTdGbbBq7LZNqwQ3q9b3YkZJQ_5DhoBpBCBs,1693 +torch/include/torch/csrc/distributed/rpc/types.h,sha256=4q7y8wtl5ghOXThnRfd0HBbbVKRTac0FNY4pYuUne6o,2111 +torch/include/torch/csrc/distributed/rpc/unpickled_python_call.h,sha256=6ryczccXY4lxkym51s4QxHO9IC7v34KXanqFaOKDN4A,1426 +torch/include/torch/csrc/distributed/rpc/unpickled_python_remote_call.h,sha256=t1QDHI_meY0GcrbRL-Zkq9Ji016l4AUShTzQizQRI8E,1240 +torch/include/torch/csrc/distributed/rpc/utils.h,sha256=5--QvzmrtHoIs0FbiKZky-z_n8H_wQdDLyWKQMO4NPg,3876 +torch/include/torch/csrc/dynamo/cache_entry.h,sha256=ddKGf90W9jqUhwbFtUFMXQHETRdaYQqIIZIZBDw8uHQ,2911 +torch/include/torch/csrc/dynamo/compiled_autograd.h,sha256=JqEpQE_yI5e85vfmiWGpS4pyMphHcsIFbrxOmh_EWyQ,28234 +torch/include/torch/csrc/dynamo/cpp_shim.h,sha256=y53NVkpBYkn6BuNe9UR1B_9RvzFnMNdmxb71hkECDsE,372 +torch/include/torch/csrc/dynamo/cpython_defs.h,sha256=2UVUrNUBq4iFbZh-uidp6P84F6YxSXwuqGc_Am2boLU,990 +torch/include/torch/csrc/dynamo/cpython_includes.h,sha256=axbTYiArJ86y3tRM7vnkOJRwL14c_fR7W_S7MfqEHXI,1063 +torch/include/torch/csrc/dynamo/debug_macros.h,sha256=bfv3D_PrpWREHQcx4cQE8RtMraXuEdZ51lT7492pfxk,3782 +torch/include/torch/csrc/dynamo/eval_frame.h,sha256=t_2mY0L_MvYyUC3vacGxuDuVSEtoiikFdVamISLFP-w,103 +torch/include/torch/csrc/dynamo/extra_state.h,sha256=QhSRVAz_UqtQMPgS8uD-Ng7BczCYOIpPgwSbszSyo10,5694 +torch/include/torch/csrc/dynamo/framelocals_mapping.h,sha256=UoHDpTiaUzEBvlck6h0_QKv_hnvsuRwNALVCG1tRcOE,373 +torch/include/torch/csrc/dynamo/guards.h,sha256=FGqSo8qg1wTrPTQfWb_kUXQCwnSiiR8TwbWkgRp_M5I,2998 +torch/include/torch/csrc/dynamo/init.h,sha256=3r8aB_SJQwAFxd1lI4Qfg_-D0I5WJa29syXdYrCoZak,198 +torch/include/torch/csrc/dynamo/python_compiled_autograd.h,sha256=vwBYmBcehKPEbA2fk9h-WRYxhP46XUTwCqPyc3HB14Y,222 +torch/include/torch/csrc/dynamo/utils.h,sha256=NOBl110ylKh_W0rYoDgw_nuvytcc8ENB_DBYBWwD2vM,536 +torch/include/torch/csrc/inductor/aoti_package/model_package_loader.h,sha256=7k2yJGYLAGCgRvbEan83clbxKI0CydQ9cmuBtBs04ik,1174 +torch/include/torch/csrc/inductor/aoti_package/pybind.h,sha256=RAIX3Q47416LRGoxepGQE4OMq5e9aHuYvxOptIatlb8,156 +torch/include/torch/csrc/inductor/aoti_runner/model_container_runner.h,sha256=JvMAL_xAeiDBacg5o0sF4rb9ghrT88XUfk7cwXZUvTc,4331 +torch/include/torch/csrc/inductor/aoti_runner/model_container_runner_cpu.h,sha256=358zTfkK6ibCHS7co23virXl0bgQQkP_bQSc3_UbDzA,578 +torch/include/torch/csrc/inductor/aoti_runner/model_container_runner_cuda.h,sha256=VnKP7vFGBH0poqsoUvjvf_dauZQZXxLELU69WtDaq_I,1110 +torch/include/torch/csrc/inductor/aoti_runner/model_container_runner_xpu.h,sha256=8vZ4aR5BnKDR0bdCRo4XPpUC1_vxF9hH6SSPsYFbw6g,1191 +torch/include/torch/csrc/inductor/aoti_runner/pybind.h,sha256=uI5Ys7HHCTfmP8doYtdHWgKkB3k4pG399HuFsU080zY,155 +torch/include/torch/csrc/inductor/aoti_runtime/arrayref_tensor.h,sha256=gwJmmJ77IvylDWx8YMxZpOdLT5JrYX3mDIJ3HSfOmtQ,10985 +torch/include/torch/csrc/inductor/aoti_runtime/device_utils.h,sha256=6_H0_ha-i8gn9uozsRBINIEnYPzdK74oEyd46H85PIw,2387 +torch/include/torch/csrc/inductor/aoti_runtime/interface.h,sha256=nMC2WhVfbBlFDbuFvstMt68AtHqfbzXPEX_qkop_nvQ,8053 +torch/include/torch/csrc/inductor/aoti_runtime/model.h,sha256=tXdTmXz9vqTXmOqTi1jEo7VPk-a586CxasnkKAP1H9c,23269 +torch/include/torch/csrc/inductor/aoti_runtime/model_container.h,sha256=xLJ4m68iOehaZNZSDxuSwMqxh1uFeGIcxr4LF-rz_Bc,19779 +torch/include/torch/csrc/inductor/aoti_runtime/scalar_to_tensor.h,sha256=hQVlqqFuHBkFNWIt9dOAPDv24ysUX2xP1hg3-Fzg_0g,1469 +torch/include/torch/csrc/inductor/aoti_runtime/sycl_runtime_wrappers.h,sha256=791ZJmOzRAJWn1nhEYjVuni36s7x3tKE24F3AKcorJU,6455 +torch/include/torch/csrc/inductor/aoti_runtime/thread_local.h,sha256=Gmf_Q0GrMZz_z1y3C0m_xCToXZq0wG_tVxUD9BUGhSc,4512 +torch/include/torch/csrc/inductor/aoti_runtime/utils.h,sha256=JgZCvtTLgK1xxH3hCGdLe8PEqGlrlqoTJePR7dVfN3M,6986 +torch/include/torch/csrc/inductor/aoti_runtime/utils_cuda.h,sha256=ugCh1HNBDvRQ28J-pLaJyMZ8P1BEqEJ4afBgcS0iKuM,1791 +torch/include/torch/csrc/inductor/aoti_runtime/utils_xpu.h,sha256=Nx6KSTwx4GrkLjoZ9wRGMx2zwtMEcL7EFT3p9EZP8v0,1771 +torch/include/torch/csrc/inductor/aoti_torch/c/shim.h,sha256=Zn9K2rW-KScwshmQQCBNc_lOICsR7_N5j2bexILBQ5c,26450 +torch/include/torch/csrc/inductor/aoti_torch/c/shim_mkldnn.h,sha256=XeHDKCBDFD3azc4mmsUdNTCB5AEZS69N6mZVYMlIEmg,7002 +torch/include/torch/csrc/inductor/aoti_torch/c/shim_xpu.h,sha256=AWvZvSrDSNh5xMwDw5f2gZUYJQe8QCQqCh-Ok17kZUU,1453 +torch/include/torch/csrc/inductor/aoti_torch/generated/c_shim_cpu.h,sha256=2oNQklm_F8WmnNseSyMj0zj0CX4X_ZhWW7xAu-bsXdM,27310 +torch/include/torch/csrc/inductor/aoti_torch/generated/c_shim_cuda.h,sha256=DtSG9hOCqLJaeEfzGwQJIfhuXIiZnHtz6_l1XJEYlto,32764 +torch/include/torch/csrc/inductor/aoti_torch/generated/c_shim_xpu.h,sha256=rJfbFLBwTOUPram3gvct79QuHSoM1vO_esj2nykj3eI,8737 +torch/include/torch/csrc/inductor/aoti_torch/mkldnn_tensor.h,sha256=CqIk59pjogj-3How6KSgkmzrVzV1rpmet5iNa6HykxY,388 +torch/include/torch/csrc/inductor/aoti_torch/oss_proxy_executor.h,sha256=i2BXrkivHPFrEuFSNc57T8LVN1xbnX-AvUb0BIMAsjk,2970 +torch/include/torch/csrc/inductor/aoti_torch/proxy_executor.h,sha256=MWabTvtHx2e3Zq5tx7PSK8XnxmAMBiX2vII_XibMnEA,505 +torch/include/torch/csrc/inductor/aoti_torch/tensor_converter.h,sha256=71yBXDDFWsVuReMXXQOW3CAidygIUUMsvMbFpUI9TWM,979 +torch/include/torch/csrc/inductor/aoti_torch/utils.h,sha256=TyiQ9t9OovHxIrRKcxoKd41S6JdwuI5Q8-I6TrleMFg,6093 +torch/include/torch/csrc/inductor/inductor_ops.h,sha256=URQx1CeVjdwSYPDcv9giF3pd3L3z8IqjFzaCi_Ke9Us,1134 +torch/include/torch/csrc/itt_wrapper.h,sha256=yBuGzG2jfgS6iA9dGICG4F6Lg-ktIjBVnAZwmy6Ryls,332 +torch/include/torch/csrc/jit/api/compilation_unit.h,sha256=Mg87hr5lqJ-MX2XBEGT1qjB8_3vmxFKn6kDyYzCb9fE,12047 +torch/include/torch/csrc/jit/api/function_impl.h,sha256=KqQADFJDFY8lTdciuMkA468yfcvFAqyEN-9RepLAmro,5825 +torch/include/torch/csrc/jit/api/method.h,sha256=uPYzSKariJOQyUUfdUz2BzKUZ2zBJqOSrff1HtUcyXg,2454 +torch/include/torch/csrc/jit/api/module.h,sha256=_Ej9BRoHTEKtACUfH95SdZ_AoMVNJNxpIxwiYoDPFy4,24166 +torch/include/torch/csrc/jit/api/object.h,sha256=bstVFYgLSji58KKsFdf0010mMYz4hJWLMMAgveQhTYU,6283 +torch/include/torch/csrc/jit/backends/backend.h,sha256=njAiT7FNFvmYGirlLA56KITeaNq_LYEvYU8M6HG6ScQ,4147 +torch/include/torch/csrc/jit/backends/backend_debug_handler.h,sha256=3CnyAp-WLs-AdPP4c6klqIVBA0VFcuVCt8roZdi0DcI,6469 +torch/include/torch/csrc/jit/backends/backend_debug_info.h,sha256=1v4JAyyk2BR_6QMVACbXkkIz7NL1yKwyGkJcJxOvPEg,2376 +torch/include/torch/csrc/jit/backends/backend_detail.h,sha256=EOp28wNxYDY6ogwcmZD46JTTNJMdTuuoWgphinR-_44,1118 +torch/include/torch/csrc/jit/backends/backend_exception.h,sha256=9jt1tVkm1yi_yPh7Kk-oM9DUW3iYO5jH9DKthW7j2HE,2172 +torch/include/torch/csrc/jit/backends/backend_init.h,sha256=Y93ezithNdwKk_Ax5nYomiJLExnweTHkqopuL_W3lE8,261 +torch/include/torch/csrc/jit/backends/backend_interface.h,sha256=csuI3iLS_VMmBW88FwjF5BSMConaz8_ybgEUfJiUq-o,1191 +torch/include/torch/csrc/jit/backends/backend_preprocess.h,sha256=KJILp9Du8kYOXp4g8wBzMhGYHrEqtDxOeb1KU59W4Kg,429 +torch/include/torch/csrc/jit/backends/backend_resolver.h,sha256=PRb9UcGEa_43eMh53JrGg4SC8FL-1GPPGTIlyysy7kY,260 +torch/include/torch/csrc/jit/codegen/cuda/interface.h,sha256=6Vij6NpgQ5ONgS_eAteleY2HWsHXBDX0QoBps83Nn6U,1906 +torch/include/torch/csrc/jit/frontend/builtin_functions.h,sha256=4F9sRNoyjnej0qNuG5ORlLQPOggELcjv59-MMhkIyrc,224 +torch/include/torch/csrc/jit/frontend/canonicalize_modified_loop.h,sha256=NdZUmPkzv1bJ3zJAvdxmdHpsBPeywOvrMlNBP2npHEM,301 +torch/include/torch/csrc/jit/frontend/concrete_module_type.h,sha256=Bp9OJ_pI6Cw4OPFTw3eZDY9tSSN23m2L0g5GE4OGykE,9276 +torch/include/torch/csrc/jit/frontend/convert_to_ssa.h,sha256=Oa1Py44TYRPySdHxgo0AH0xe-tWEPzKRDwPQ09j8Wxo,316 +torch/include/torch/csrc/jit/frontend/edit_distance.h,sha256=298poj7MQ1zhKAGnvv3TcctB1F2Bl8hAGzWawug6MgQ,242 +torch/include/torch/csrc/jit/frontend/error_report.h,sha256=_PxkIzXHoAKR8Hb4UnFqBS2ah-zRQwNG4lFJyb2gzRE,1487 +torch/include/torch/csrc/jit/frontend/exit_transforms.h,sha256=fAvbMa66s6Yg6iVe3rPHPw_e99o5ayFT2Gsfgg7_1Ec,203 +torch/include/torch/csrc/jit/frontend/function_schema_parser.h,sha256=0ukRBdlwx5DdLpru5FyXjeQ6Hcfp-rGq5zYSYpf7FAA,827 +torch/include/torch/csrc/jit/frontend/inline_loop_condition.h,sha256=LyjsxdwYcO_cdgJyVQjkbmQX4qoKtScY1h2q9USEUEk,341 +torch/include/torch/csrc/jit/frontend/ir_emitter.h,sha256=628nP0Pil7zEyJOCIxJpV6w89SfhzrdNvT0BWxfIAwE,535 +torch/include/torch/csrc/jit/frontend/lexer.h,sha256=9hgku_jtBjYxoaCMeNNaNt51_lWi8_Mr_kcDvXdrR7Y,19494 +torch/include/torch/csrc/jit/frontend/mini_environment.h,sha256=vArMlMby1-WzFvQ9UEuqZZp_uXb-rEayC506ggWYkN0,1430 +torch/include/torch/csrc/jit/frontend/name_mangler.h,sha256=FTAcvLySQz1XsS9QcjVWX9yEh3G64oObPWPy6UzQwec,655 +torch/include/torch/csrc/jit/frontend/parse_string_literal.h,sha256=s_JAfhA31IRCI6QlseCs0ISgn-_tIto1Et47XBBoLMo,2381 +torch/include/torch/csrc/jit/frontend/parser.h,sha256=Lq5GFcVTgEVsmBJu7TZXam6hF5OLeQJEPAJ3u4ct5rI,680 +torch/include/torch/csrc/jit/frontend/parser_constants.h,sha256=1ovy2-dk6HDUxwGWRjQC4g_sAo8bzEJJnkJ86XABPgA,142 +torch/include/torch/csrc/jit/frontend/resolver.h,sha256=3xnO5o31Dn2GIb_f0QLxEZysjMpZ_WFTwpekpAanDlk,2023 +torch/include/torch/csrc/jit/frontend/schema_matching.h,sha256=SqihZOutY_LiJfKP9Xt3L_nwY3XyCnXCYq-uenATYmY,2176 +torch/include/torch/csrc/jit/frontend/schema_type_parser.h,sha256=h06RpwHLCihkWfoFwlBc-vYKeHd6IX79vLOmTYHXKws,1245 +torch/include/torch/csrc/jit/frontend/script_type_parser.h,sha256=5ao-exigVQzU5JCQU-HeXJQgsEprLwC1fbe3uEJOcFE,1633 +torch/include/torch/csrc/jit/frontend/source_range.h,sha256=gOYbijHvM6cHrFcPi3Md-BolSk9F0SOm3fs2xNGUDig,13294 +torch/include/torch/csrc/jit/frontend/source_ref.h,sha256=7FsrsDhxsekba5xhG-doZC_qT2TUZEFrIq4dCQWh5RM,1333 +torch/include/torch/csrc/jit/frontend/strtod.h,sha256=IJyN1or0ERowFppBbzb_7Io3NTXWHZ78fNmpsovW9u4,226 +torch/include/torch/csrc/jit/frontend/sugared_value.h,sha256=6bAuIi7OdmKCIrgk1G8mC2Q42JkHpkorCLoz1BhFSN8,28758 +torch/include/torch/csrc/jit/frontend/tracer.h,sha256=OTyT436rrNEfY4PQQFUJyvTv__DESdNtkKcJwuCJAeU,13203 +torch/include/torch/csrc/jit/frontend/tree.h,sha256=CukHclFOH1oeAMUGXwN8kFKcztXR46qYDH1MT3p0zDA,6817 +torch/include/torch/csrc/jit/frontend/tree_views.h,sha256=lS9VEFXWY_BJa0cC1TN66fVt_j_bNjIY1-77l53eAeU,38480 +torch/include/torch/csrc/jit/frontend/versioned_symbols.h,sha256=OELfn9VjErHmLvUQSyFO7sESgQpjOYUV0LUeMD30KKY,614 +torch/include/torch/csrc/jit/ir/alias_analysis.h,sha256=wCPX9YxWmtF1azhKU40h5-6Sfi8AKzxQ8gUOHHKmjpQ,13152 +torch/include/torch/csrc/jit/ir/attributes.h,sha256=Ewq9895VZNFML1wntwyjaojLiHoa0ZgxINpmHxUt9xg,5086 +torch/include/torch/csrc/jit/ir/constants.h,sha256=NdxA50B_cLga8YY2Y4ldvRuUvgof7msaCrCQ8CypKAc,2068 +torch/include/torch/csrc/jit/ir/graph_node_list.h,sha256=bxfn10Gwj7NzEW5s9IOhs3meiVhk8qebUlmuntnJPBY,6553 +torch/include/torch/csrc/jit/ir/graph_utils.h,sha256=EMBJevQAxN7ApNRS_h4eSJrTUyFgfWC5BDqkJaIYADE,527 +torch/include/torch/csrc/jit/ir/ir.h,sha256=0mj-f5n0a_Aiyn6VE_s_vtevVxE2roE826oeVyuy9tE,56024 +torch/include/torch/csrc/jit/ir/ir_views.h,sha256=CsDfwICxsdr08ypsJkb2KetFG0Un9tpYWKGyMU48ZFc,4785 +torch/include/torch/csrc/jit/ir/irparser.h,sha256=NL96TqWRGOh6JrY7J8TWANF9n02pljay6ILyOY-RrVk,1133 +torch/include/torch/csrc/jit/ir/named_value.h,sha256=vhaJn0MLQ8EUp4AUp8vEn3jMWqaii1vdo9ZJrOYVxtc,2477 +torch/include/torch/csrc/jit/ir/node_hashing.h,sha256=QFjLearfbSj13z3JeMZzPCLtsq4lq8VpCH6kXH4DZXU,280 +torch/include/torch/csrc/jit/ir/scope.h,sha256=Qz2eRjUwyfTD-FhHPiMaJ-O9Z2ZqTQiI5vt9mcz7CF8,7366 +torch/include/torch/csrc/jit/ir/subgraph_matcher.h,sha256=oH74YsHmaHE0UBQN06D9aaXLbds4IB5mmLAO8t8T31M,3198 +torch/include/torch/csrc/jit/ir/type_hashing.h,sha256=vatGNhFjsoXjIdZ54jZTN6DGZRAvSgAOR9jKSwn3ZlU,452 +torch/include/torch/csrc/jit/jit_log.h,sha256=rMLR8MNkWfDCB1p0sJigA61M3jLtbggVemW8E8GdR0c,4899 +torch/include/torch/csrc/jit/jit_opt_limit.h,sha256=11752ePq04ymEDhooj5_PD12S8f2d71vgOPNfSyStJA,1418 +torch/include/torch/csrc/jit/mobile/code.h,sha256=4VGjG_UD8Wjc-h7OdprN-TNpuhkvWha8jboUip842n8,1112 +torch/include/torch/csrc/jit/mobile/debug_info.h,sha256=z2aHlt70uRSsmJnJAmtMMEEsfK7p8GWCgCYLP8Eseig,2260 +torch/include/torch/csrc/jit/mobile/file_format.h,sha256=TNJzsMGJfoxeW8jICk9IzkKcwWto92aJ_aE8BIxJJcc,6791 +torch/include/torch/csrc/jit/mobile/flatbuffer_loader.h,sha256=gNqKdRa_MNagNTiqyuz62EtoPKzSBhI_IEkh04qiSQA,5097 +torch/include/torch/csrc/jit/mobile/frame.h,sha256=-80NLYXAVmCWQ_XJFWPIIDn-l8sfKDB7X-OxIAGmQvY,860 +torch/include/torch/csrc/jit/mobile/function.h,sha256=3VrR7u1GCFZJHHGWSPnyvJSfNdb2lCTorEKm_TKb8aI,2984 +torch/include/torch/csrc/jit/mobile/import.h,sha256=wSqEiA5KVRKXZqPuq_dzwU2UhubGjSd9q-xi2Xfrdog,3948 +torch/include/torch/csrc/jit/mobile/import_data.h,sha256=HdKa8Cv8E_c-pf8iV3PqX4jO2H0gJxRW5IF4B-6gxmc,1031 +torch/include/torch/csrc/jit/mobile/import_export_common.h,sha256=ujs6H-TVov2Mo3XkXns0tkjehgeU-YtSYtAfqITXG30,492 +torch/include/torch/csrc/jit/mobile/interpreter.h,sha256=-drviTPHiTO3kpEK33oNwfpR-Q31W1oZkgV7se5tO54,664 +torch/include/torch/csrc/jit/mobile/method.h,sha256=6Zk-Sl__upmINdXFYLrh2W2gd-9nFYs0J-Y1Sdh8-Co,865 +torch/include/torch/csrc/jit/mobile/module.h,sha256=t3yHtRrUFDcjojfXcY5VO7CC4qePDek_kK_yeUiMBBg,6114 +torch/include/torch/csrc/jit/mobile/observer.h,sha256=9mqQiOVpWI3F6ubHH1xt08bFU5D2K16DSbrgH78xsso,3747 +torch/include/torch/csrc/jit/mobile/parse_bytecode.h,sha256=TzRSkL0-i6eNqKs-3WpR1scnVyuu0DiXCjdDffrI4zA,761 +torch/include/torch/csrc/jit/mobile/parse_operators.h,sha256=CQCMmhxqjebUU3Jlb5ufa91izsouvMnODIDSeTOJvP4,734 +torch/include/torch/csrc/jit/mobile/prim_ops_registery.h,sha256=wy3TcUFiyTAou_Cp-GbOjCCoXdnzP8qeyXsgKFMa4SI,623 +torch/include/torch/csrc/jit/mobile/profiler_edge.h,sha256=h25qR32gyqvwXoivJj2lIPgBxmq3YsQKx_Kq1TZ7J10,4603 +torch/include/torch/csrc/jit/mobile/promoted_prim_ops.h,sha256=cQfCafQMFg3gtS8XSKMzKqmit1UhouxYNz7zIzTjlCo,1104 +torch/include/torch/csrc/jit/mobile/quantization.h,sha256=rJmEme7p7nXFD9wHLSnbgVv2ms7FiCS6ZyYjFs0bThA,1272 +torch/include/torch/csrc/jit/mobile/register_ops_common_utils.h,sha256=fCXTmQClnq3cgy10xggZMwNUEf4NTWqOFctko5TYUBU,1740 +torch/include/torch/csrc/jit/mobile/type_parser.h,sha256=cz4-KlIrtJvVmz7WERSoebax574lQl9D0VKZO3agLjE,1497 +torch/include/torch/csrc/jit/mobile/upgrader_mobile.h,sha256=G2QUu_Eat54pEUskkbZ1Y_bxfsVxDUBiTb5E0uZzby0,944 +torch/include/torch/csrc/jit/passes/add_if_then_else.h,sha256=dcvmjLmI-kz7g-lXMytvkDC7aNA0sVT2nrjgAu2wAm0,172 +torch/include/torch/csrc/jit/passes/annotate_warns.h,sha256=ejLWN3S4ilEZXX2duhshRHTkvFyHqvco-iihbAvm7dU,176 +torch/include/torch/csrc/jit/passes/autocast.h,sha256=V0Bn81ROnkg4Tqfa35j_R9GSN45f3Sc3Ih4W0Tcn274,255 +torch/include/torch/csrc/jit/passes/bailout_graph.h,sha256=XWzXGZM0K13Q4fysbBPU94UbiuYDQA-vKzaDtreMFzk,1122 +torch/include/torch/csrc/jit/passes/batch_mm.h,sha256=s99CwEK_3jy1TMj2DCpeiJdN7TxPhfKikdvW0ncuh3E,140 +torch/include/torch/csrc/jit/passes/canonicalize.h,sha256=aYp4VuZppo-VCTO4KSFuVpOmfHNdanPsCLjRUoLGef8,487 +torch/include/torch/csrc/jit/passes/canonicalize_graph_fuser_ops.h,sha256=UpyfaBZsCzDFpjoVRb8d9EW8NjE5J8P2tn0If0MZGEQ,154 +torch/include/torch/csrc/jit/passes/check_strict_fusion.h,sha256=VF0ILt9ArxfZB61WeUfpGbR47HpdNaTZcCZMebkg0kE,176 +torch/include/torch/csrc/jit/passes/clear_profiling.h,sha256=UIKuo8kMevVWOO2W1zC8OCj9G3iRiDxEcb8lZiFyIdI,485 +torch/include/torch/csrc/jit/passes/clear_undefinedness.h,sha256=gBC8u8lvjkfzwdYSUbwY6ofVRfRpHOzukFjJN2Eke-g,872 +torch/include/torch/csrc/jit/passes/common_subexpression_elimination.h,sha256=K4XU_GRf6iB0xTGRFjSDGqyXNJp9eG0PVZVUtgGH_Nw,171 +torch/include/torch/csrc/jit/passes/concat_opt.h,sha256=FCQbsxyThTrUJlHOUP-k1RGBuTsRDY2u-H_UILx5YjE,542 +torch/include/torch/csrc/jit/passes/constant_pooling.h,sha256=sUsM4TrSB00HUVnsygsG6aJbgWUDrAtngn3zKyzm1TA,154 +torch/include/torch/csrc/jit/passes/constant_propagation.h,sha256=4UCLhsi2MCQF1WPTbk7C7X9mCKa-UIQ3VOyE5eLT1og,1319 +torch/include/torch/csrc/jit/passes/create_autodiff_subgraphs.h,sha256=0wbxpbVhMU6hx3FauJpX8h941m5LLaYExFIBbDjAOn4,530 +torch/include/torch/csrc/jit/passes/create_functional_graphs.h,sha256=gUMV76y9GSy0mD3E56z6N4NK5jL5CisdVg1MRamGCAA,296 +torch/include/torch/csrc/jit/passes/dead_code_elimination.h,sha256=VaTe24fv7LqTKZemuAbIXUKBExhu_-VZW-03tX5VfdA,1599 +torch/include/torch/csrc/jit/passes/decompose_ops.h,sha256=ELlyFEtYauiekdgPHDHiaIYu1us9xPApTALe_kGd9YM,145 +torch/include/torch/csrc/jit/passes/device_type_analysis.h,sha256=q7ny510G-t2PVO8cfOtP8F7kfjETqDK5G4B69V0P-0Y,253 +torch/include/torch/csrc/jit/passes/dtype_analysis.h,sha256=XHh5YgEVKdUjXDMdAOZiELmW46_vCSIxWF1QO2cAQ0Y,404 +torch/include/torch/csrc/jit/passes/eliminate_no_ops.h,sha256=hu-uCzFMLtu_fY1fzYENDLumRucBAq_A_k4wnCNiRwQ,507 +torch/include/torch/csrc/jit/passes/erase_number_types.h,sha256=yoaE07-5t1xMvWZqQUu6YromqGfqenaFVVSZdHu9Z7g,809 +torch/include/torch/csrc/jit/passes/fixup_trace_scope_blocks.h,sha256=RThuyoHEnO_AZ5y7kQvcCgzT3wMQ_3kd8_E369wnYHg,1693 +torch/include/torch/csrc/jit/passes/fold_conv_bn.h,sha256=h65Xo1OEkLuMAtQB_ciXpCkgvQmEhT1bgU1fr5giT8k,1005 +torch/include/torch/csrc/jit/passes/fold_linear_bn.h,sha256=SQmgKx4HWs7-f-pAV6J1RDxD27eQGSKSpmoWcx6y9oA,693 +torch/include/torch/csrc/jit/passes/freeze_module.h,sha256=rPAuBt2OKF0tEOKIgikUx_HaZf6Ce8ejnAqGs15g5MQ,1253 +torch/include/torch/csrc/jit/passes/frozen_concat_linear.h,sha256=lY6jWiZZtjuUNNa7RVbe5WrQ5xDOSWYaD15dE4dCkHM,263 +torch/include/torch/csrc/jit/passes/frozen_conv_add_relu_fusion.h,sha256=lX_CYHpmGb3yU-tuua2oRPwHldnR8b5N4754_oXUxco,317 +torch/include/torch/csrc/jit/passes/frozen_conv_folding.h,sha256=B_eHlqjVyXP-map0JztrodoybuLFZeblcvA0B88VJdM,869 +torch/include/torch/csrc/jit/passes/frozen_graph_optimizations.h,sha256=Af-IrgzE6KTWcxEcJxymH5nGWL-pXtYRmPi84HJGPko,461 +torch/include/torch/csrc/jit/passes/frozen_linear_folding.h,sha256=4YMcYUPNHWZmtQ34NEg8jpR0pKcvQoyJ68MsUAGkNFU,357 +torch/include/torch/csrc/jit/passes/frozen_linear_transpose.h,sha256=GDXwVyTb9G6CnQqXy7jEzdVVT-FDZgT40mb8Fzbfb-o,272 +torch/include/torch/csrc/jit/passes/frozen_ops_to_mkldnn.h,sha256=u3C22Kt3bfLAFf7ZnCseN5Iz-ApDVqTIFpv6jcpsFYY,402 +torch/include/torch/csrc/jit/passes/fuse_linear.h,sha256=Mfh491MMbPrY-P8vDI_GWJ5UxOiL-FdlV5t0_hT2fMM,765 +torch/include/torch/csrc/jit/passes/fuse_relu.h,sha256=7D9ow7eifHZPsLz-ThfZCUi2rMI-QD8lzruqHBk4l78,257 +torch/include/torch/csrc/jit/passes/graph_fuser.h,sha256=-ylGo2irRTcW-_h-j7CUVZMCR3_ShZq9HkYHSuojJp4,1261 +torch/include/torch/csrc/jit/passes/graph_rewrite_helper.h,sha256=4G5o-13_8KuTQOsYbIPuK-KIW51NWSPX-sMRvjFGzv4,1785 +torch/include/torch/csrc/jit/passes/guard_elimination.h,sha256=qvjUCfO2lMhbYawQkhDcu_gn4fuy93d5b3dEXOywRyU,368 +torch/include/torch/csrc/jit/passes/hoist_conv_packed_params.h,sha256=ueCANfsR2c6E9Kukn3pt1LTS3rm6se6kGvSwnXw1VvE,196 +torch/include/torch/csrc/jit/passes/inline_autodiff_subgraphs.h,sha256=KYtqYzbgY_oq9KMD5e-h46JBLY9_vACAsSuWfYOE2b0,263 +torch/include/torch/csrc/jit/passes/inline_fork_wait.h,sha256=cX-w802NZD7uAqPLtcoCjzupgAIsuQ81PFjb9AxgpSc,536 +torch/include/torch/csrc/jit/passes/inline_forked_closures.h,sha256=kJCQ_Lyp23FfIK_nEVgoJRtqWCYeow5nAHGYyCbrRMo,212 +torch/include/torch/csrc/jit/passes/inliner.h,sha256=rt59r_rQr0A9O2a2KqW3tpYk5eoqjAS8v51LBqluJt8,241 +torch/include/torch/csrc/jit/passes/inplace_check.h,sha256=alaKbr-BZbsHXj7-ZpweMytEzob--W7fNFGHNMVKmGI,145 +torch/include/torch/csrc/jit/passes/insert_guards.h,sha256=oKWK8r3kux1B3idcwlSnjr3vjFUirbwioR4YPjirKn4,433 +torch/include/torch/csrc/jit/passes/integer_value_refinement.h,sha256=Y8uGXpioItsziL7rpIpkF-ihJ3eWOmyuITPbGl2tovg,219 +torch/include/torch/csrc/jit/passes/lift_closures.h,sha256=rMGYTbP1F0NwClMG5-qFzIOrsEFxgLngGD4cnnS3s0w,207 +torch/include/torch/csrc/jit/passes/liveness.h,sha256=aw9FfI4AMJMASfUD5fu1avd4etUw3iNCPxFkr3MpizI,647 +torch/include/torch/csrc/jit/passes/loop_unrolling.h,sha256=KfTgzJJ01PD7XAvBXbFzKV6Xn6ASEPpdyKby6-8rJmI,1015 +torch/include/torch/csrc/jit/passes/lower_grad_of.h,sha256=Xim2wnLaUZG_mi0r-8e40xxPnXYueqJrKDLvrwVlNio,338 +torch/include/torch/csrc/jit/passes/lower_graph.h,sha256=R7G1z-UEjln1ODrBIwNGEYbda8c4UdaDjjiGqSZfQbM,745 +torch/include/torch/csrc/jit/passes/lower_tuples.h,sha256=VCYP9LnLH2YI42u5FOsfkxa0W1kp8bWfLI_yIsO49qY,659 +torch/include/torch/csrc/jit/passes/metal_rewrite.h,sha256=ZKMnk3C72ikHZNo3gBiw80itcDowt1k8OWp1iTg-qR8,596 +torch/include/torch/csrc/jit/passes/mkldnn_rewrite.h,sha256=t_HgLt35LSXudNEPdughLwxpA7eMRUg9defy1pvpPkw,637 +torch/include/torch/csrc/jit/passes/mobile_optimizer_type.h,sha256=mVAFakGZ3_bSZyaUL4UnYHEeZlSMKKCwscJqgxyUK00,250 +torch/include/torch/csrc/jit/passes/normalize_ops.h,sha256=lSTM0ZR6ewYu_0_rsl65DhpV7WZL1mgP0gjkxYK1UW8,527 +torch/include/torch/csrc/jit/passes/onednn_graph_fuser.h,sha256=NwmfgPpN8b-fS-Ji6G96eucOPjVRECwHvXzQdqX4jFE,1460 +torch/include/torch/csrc/jit/passes/onnx.h,sha256=NnXzPe6ubhvicyjbavRbJOz-6NV85zcxcvQ3XAvu2jY,860 +torch/include/torch/csrc/jit/passes/pass_manager.h,sha256=l4MXB13x4nSRKJX-vDLdP0_JVR35O8DX18NtgdhYOIA,4683 +torch/include/torch/csrc/jit/passes/peephole.h,sha256=SGoqBxVPKIZHiXvDx26TqHHGLm3CWkZUSogGesvdn7o,500 +torch/include/torch/csrc/jit/passes/peephole_alias_sensitive.h,sha256=qhxTvRrotVXXlBB88s8trKsY58S4-XyWixWDJWz5XhY,425 +torch/include/torch/csrc/jit/passes/peephole_dict_idioms.h,sha256=NSL8e9v_A_i1qadCOmujPiHUqzjQQLTvRfuvBr_R2zo,1011 +torch/include/torch/csrc/jit/passes/peephole_list_idioms.h,sha256=TgMT2rwsmuGbYY488tvcbchEKSnbIJ1ivKm_5WqDuJM,2048 +torch/include/torch/csrc/jit/passes/peephole_non_tensor.h,sha256=Dg90Zq4nmoqH-tFua_-pN5pnD8dobjYSAxEdxR2ba4c,329 +torch/include/torch/csrc/jit/passes/prepack_folding.h,sha256=2IifDgzdYtvY04FYZVo7qV8Ygb8XwU0eEHG8GIjFy74,348 +torch/include/torch/csrc/jit/passes/quantization/dedup_module_uses.h,sha256=REGOsSFeDBbMkjKPzjs9Vkk3DZey7wHKa67zxI-Qnqw,827 +torch/include/torch/csrc/jit/passes/quantization/finalize.h,sha256=V106jDTjAHDmqz4-KEsfyHWDjecMyQDuGBzu0xkn5EU,2357 +torch/include/torch/csrc/jit/passes/quantization/fusion_passes.h,sha256=7ZC9zvrO648vTl014p5JEvngzpqS4awaSuC99yYrKzY,173 +torch/include/torch/csrc/jit/passes/quantization/helper.h,sha256=wEGUIpC4ua8ukmmDakxEkp7m5RSTEA6EH4rCJW_Y7-0,7673 +torch/include/torch/csrc/jit/passes/quantization/insert_observers.h,sha256=5dJD4lsCeT62xLjxeQsrocg9cEWwip0eaiWQN_JkXaA,2392 +torch/include/torch/csrc/jit/passes/quantization/insert_quant_dequant.h,sha256=c6RL7fJO4kmVgNkVaN3D3RJ0l_idqt70c45zjq9qqz8,1469 +torch/include/torch/csrc/jit/passes/quantization/quantization_patterns.h,sha256=89TyLFgRFha6Y9EeQtCUThWsbvq8UWV180Lx2PPR_vk,54629 +torch/include/torch/csrc/jit/passes/quantization/quantization_type.h,sha256=nN0kBbzzOWvU8-cym3GnXRwOY_Qn-60SeQ7azWthSho,346 +torch/include/torch/csrc/jit/passes/quantization/register_packed_params.h,sha256=MlxoxPyatVQplrR4UfQ45-ubozVD-DKrbzAuOVn9r-I,507 +torch/include/torch/csrc/jit/passes/refine_tuple_types.h,sha256=vChizt1g-fNzM49vbW_g0rqRGZF5Dpa26jcWuQYNc3s,252 +torch/include/torch/csrc/jit/passes/remove_dropout.h,sha256=3XTWl9rQP3PAEWJOqgKTQzchO3np-Ize7IeqBvv1Jxg,267 +torch/include/torch/csrc/jit/passes/remove_exceptions.h,sha256=fcPmv_oL8XsCgQzSJmXW9OnwL3Jfi4mebuIDOVY2fgs,950 +torch/include/torch/csrc/jit/passes/remove_expands.h,sha256=s599611cNHfeNVClS1e4H0FghxT_8g02MYyzpSqfePM,152 +torch/include/torch/csrc/jit/passes/remove_inplace_ops.h,sha256=ixFlR3GNHU1CivQUuN9thbm7PqnLoaVDf3XDiUAL2ew,283 +torch/include/torch/csrc/jit/passes/remove_mutation.h,sha256=OeC0r_DS6QbJNxCqWsoWH_BSlqaSSBl0byXoYVUX2kU,2718 +torch/include/torch/csrc/jit/passes/remove_redundant_profiles.h,sha256=JDsg0Wn2nN9J61bI3T87NiLlqLk4VvSRXC323FFOQtg,246 +torch/include/torch/csrc/jit/passes/replacement_of_old_operators.h,sha256=lGGNAmtWZwekKUXdExnjy1nmRdch2TE8NasBmE9qXNI,448 +torch/include/torch/csrc/jit/passes/requires_grad_analysis.h,sha256=w4D169aMg6iwJd5opFZocBY7qqNDFSCQing5F4hs6VY,235 +torch/include/torch/csrc/jit/passes/restore_mutation.h,sha256=cCkja5DhfcdlC3rICG17CxLVTEPP5EyohAV5sYWIKVc,1862 +torch/include/torch/csrc/jit/passes/shape_analysis.h,sha256=03Idfln6irp14B6zPLYb8bBWc1ui97yD0fs6uo9WodM,1118 +torch/include/torch/csrc/jit/passes/specialize_autogradzero.h,sha256=hilGFWW_AsUtoaB-4GObtHGZp4hoglaE-tOHME4lmf4,650 +torch/include/torch/csrc/jit/passes/subgraph_rewrite.h,sha256=3KloxA771sKO-_yiIxPM3Y5WlkjZrwcRFps6QUbxUPc,4202 +torch/include/torch/csrc/jit/passes/symbolic_shape_analysis.h,sha256=ZrxpUfV3fkR0c2bbpLS6Jb5eSPLjz_wVT-c-KmZS7wM,2134 +torch/include/torch/csrc/jit/passes/symbolic_shape_cache.h,sha256=097_N0DCW45tUH4oNU_-QeisDu0V-ZrXJ3LXEhuMj9o,1629 +torch/include/torch/csrc/jit/passes/symbolic_shape_runtime_fusion.h,sha256=AJlatJNSBQMwDrKIR56EG0OAEHHqFUsmX-bVoEVTMxQ,2390 +torch/include/torch/csrc/jit/passes/tensorexpr_fuser.h,sha256=MwIErReHmp6wzetIltUSlIcWZMSyJmleDsrjFVXjNrk,2673 +torch/include/torch/csrc/jit/passes/update_differentiable_graph_requires_grad.h,sha256=vV5xyRqr1gazDv8qlmtRgegl1HbkbZUWAqn_MipUfbk,733 +torch/include/torch/csrc/jit/passes/utils/check_alias_annotation.h,sha256=Z-8dro5xBbE1irFPfMgUZkzmkPcKiN9RbFkHHipg8rI,607 +torch/include/torch/csrc/jit/passes/utils/memory_dag.h,sha256=GxHzD71a4CRwl2x_qEySWy9NlsO6q2Vp68pjzSEVFNs,6565 +torch/include/torch/csrc/jit/passes/utils/op_registry.h,sha256=Ap96JRHBTGaCMCqgw7KKb7RLH0UGY5ydmsYYfXWhzg0,1037 +torch/include/torch/csrc/jit/passes/utils/optimization_utils.h,sha256=dhmbwBWDJFz6E3FnpQ0yhP-TDfkcizBkQ4GGBPaJHkU,231 +torch/include/torch/csrc/jit/passes/utils/subgraph_utils.h,sha256=0qet1_bMOwUiPSbHbE5XIBhs4VkkEWvIOLJX90xZB3g,2430 +torch/include/torch/csrc/jit/passes/value_refinement_utils.h,sha256=XOX7uCFmw_kcG_mtVNinZ_a5KKOrFkDj9XzQlXV2zrw,2686 +torch/include/torch/csrc/jit/passes/variadic_ops.h,sha256=0MNjgAPQzhZYwpVlEnw_JwC6KJm6m0ZACInMPtyqDjM,914 +torch/include/torch/csrc/jit/passes/vulkan_rewrite.h,sha256=d-h1S7rul1W26blZLbU4ogjM4Y-PerE7_HlBh4v4r9Y,689 +torch/include/torch/csrc/jit/passes/xnnpack_rewrite.h,sha256=Ie-FJR58r0hxfMWRcdxGsRQc1XrhJARcJK6BtJld0zw,814 +torch/include/torch/csrc/jit/python/init.h,sha256=i2NncE1TVtt2PJeNwjHo5LAGO9Fh0Vl5oS-klXs3CFE,152 +torch/include/torch/csrc/jit/python/module_python.h,sha256=5OMtEddhY1S10D3IKlu01MtNhkozsW-UnqLqUsCr6wI,1937 +torch/include/torch/csrc/jit/python/pybind.h,sha256=gWfL4KFhNgbkTZANADMYRx8NPfkQSUUJpnwOgGx69XQ,8126 +torch/include/torch/csrc/jit/python/pybind_utils.h,sha256=5haWbrnHRVNOM_X6ajk5Qh4I2D7hC83ihY09Ed6dGs8,45043 +torch/include/torch/csrc/jit/python/python_arg_flatten.h,sha256=Z5u21b2HupprHErlyNzMHg5NeB5O8U_VNC0Iq3JOPhM,3646 +torch/include/torch/csrc/jit/python/python_custom_class.h,sha256=bOfd7gbVnt0yeQH4apGbXWxQj10YpoO6JxROp64Opo0,431 +torch/include/torch/csrc/jit/python/python_dict.h,sha256=RZmA_owTGyb2lHQY77UUgZxvX4xh_A6Zd7sjqw1zDiE,3510 +torch/include/torch/csrc/jit/python/python_ir.h,sha256=zEkEnyqkMJ3V1zm07dS1fhOYlJr7dND2r8wGU-iPyDs,1743 +torch/include/torch/csrc/jit/python/python_ivalue.h,sha256=wyCb3W5fKu3TAwbjkikxulHqSOToOOjyKZd5cRsP2lM,3793 +torch/include/torch/csrc/jit/python/python_list.h,sha256=-r3r_ZGaaZLa-o_1_NIq3r-tP8zUe5Xcx64B7UAp4z4,5722 +torch/include/torch/csrc/jit/python/python_sugared_value.h,sha256=E_B0DXGfZASCIcX8oNdFwoaOzMrxkOBvk0HHQKDgY8A,11713 +torch/include/torch/csrc/jit/python/python_tracer.h,sha256=zT0AtDtdV-AMfHQLjV6M7IIdFmusEkAn5NkyLiUUDsE,1263 +torch/include/torch/csrc/jit/python/python_tree_views.h,sha256=dx_jIKmysQU6YGhnzJ-R3kHwseS1umv6zplBxn7X_mA,159 +torch/include/torch/csrc/jit/python/script_init.h,sha256=Efq6UwLvwHh1TZ5rUaarRmRVqxKiWMwXvT0YS8klZbU,159 +torch/include/torch/csrc/jit/python/update_graph_executor_opt.h,sha256=fURD0rimDGSdPQgPy19tyOcXj9h6uylfc8FcxuShCZ0,191 +torch/include/torch/csrc/jit/python/utf8_decoding_ignore.h,sha256=O7yWMF19h_RYeJ3sekAp5gTba0RlxhLJtp7am4VaXAM,185 +torch/include/torch/csrc/jit/resource_guard.h,sha256=LE_1QkcwmF7tSI4eOLsRLzjObKlPWcGbZNDyX70rPpI,465 +torch/include/torch/csrc/jit/runtime/argument_spec.h,sha256=t7DICuHLrgaPVxVEu2NVnZZGQbQleuN3RjKzv6RDIj4,16879 +torch/include/torch/csrc/jit/runtime/autodiff.h,sha256=WAqL1t6tXLfnn9egoeQaYVf_FZp02k5xXvdJoFBtasU,4024 +torch/include/torch/csrc/jit/runtime/calculate_necessary_args.h,sha256=AxCQixOYzEfhnYkM7BxpKWqcUVC7TY3vkjTpVshzyZI,2350 +torch/include/torch/csrc/jit/runtime/custom_operator.h,sha256=SoxwmEw9BUzaKn6eLSK-xiukMq2yFhdI27jry4uHWH8,1084 +torch/include/torch/csrc/jit/runtime/decomposition_registry.h,sha256=tSvQIYNQoak4c8w3Gxq8N_ek4U17wmaupPOhdLTtn24,1078 +torch/include/torch/csrc/jit/runtime/decomposition_registry_util.h,sha256=C8UGw7tjCwqrFID4Wb6IwiYV_OaD5p-hG7ZD7CC7gzI,273 +torch/include/torch/csrc/jit/runtime/exception_message.h,sha256=cTfv8KDSRsx1MK9HPplMs5lM_tWCoOj5bGSbeIoktug,643 +torch/include/torch/csrc/jit/runtime/graph_executor.h,sha256=wbVihnOS2Yeoo5eQiXk7IlfNpraP5w-OFvDwqd9D6FI,4865 +torch/include/torch/csrc/jit/runtime/graph_executor_impl.h,sha256=9Md9kbxdduufJv1rUh0Uz1Iqv_rT1nwJhLlxg4bpHWI,4140 +torch/include/torch/csrc/jit/runtime/graph_iterator.h,sha256=NFoYMNVy7HWGAWQyE04wjwDD1hjJh0hmAqY_r83kwpk,5085 +torch/include/torch/csrc/jit/runtime/instruction.h,sha256=OvdnlykumT9G3kJHp_S_fLw1PlblXlvQCkcSH-qYsXc,5721 +torch/include/torch/csrc/jit/runtime/interpreter.h,sha256=4sAQUmkilAM1IxVXapunRgXp4gglyaRDC4UnF_sn0nw,5212 +torch/include/torch/csrc/jit/runtime/jit_exception.h,sha256=L10AkGIUIHZR3Ttg2jjHsfWReNbHrK71QcRjfMabDBc,1207 +torch/include/torch/csrc/jit/runtime/jit_trace.h,sha256=ULJfqZ5MFDMqJ09tCng6pJiclhumsg_uahXhrDCFn9Q,215 +torch/include/torch/csrc/jit/runtime/logging.h,sha256=ASECML5hY_gVPc4PPqgUlbsTQ-fanSrqr3ZP857YjTg,2708 +torch/include/torch/csrc/jit/runtime/operator.h,sha256=L0StPJFlHHMD4I55LhyZ-4ZBi2VC_SrSINtO9Pph9OA,12083 +torch/include/torch/csrc/jit/runtime/operator_options.h,sha256=NpHNZCfmsCujmj0uDOVC4fk1CzghZ-O3BS1HBQ5KH58,173 +torch/include/torch/csrc/jit/runtime/print_handler.h,sha256=X-jF8DYdCWxsXtXFHwYrMKIHMcZB9rELjEbmEEIKH24,323 +torch/include/torch/csrc/jit/runtime/profiling_graph_executor_impl.h,sha256=1rJFVnx63d5ar7OqH-VIU3CnBzRoW_ClLlprSAdirvw,2795 +torch/include/torch/csrc/jit/runtime/profiling_record.h,sha256=H9NCUEMXezp5h0jZ4XBWdGcvhkO4un-rBM9NKOvaaVg,8748 +torch/include/torch/csrc/jit/runtime/register_ops_utils.h,sha256=DoycQXlcJP9mtuxlhFJ1gCqLbR6l9ih9JKiFgidgzXo,43495 +torch/include/torch/csrc/jit/runtime/script_profile.h,sha256=OMAxLZ2iIl44AlYJrJHK2ZDz9HYiCCtxIFdYt8T1kXg,2716 +torch/include/torch/csrc/jit/runtime/serialized_shape_function_registry.h,sha256=DZobbkaPdoOtqMPiuzaVbCK9zj8KZ31qQkQR_MsZneY,371 +torch/include/torch/csrc/jit/runtime/shape_function_registry.h,sha256=3Vv4RjMqcac6Bv2VsyZYjfAfdWCtZ0a6S-E8ApDGdrg,255 +torch/include/torch/csrc/jit/runtime/simple_graph_executor_impl.h,sha256=HrWuo2wzNekmYpQCCaCD6jxi0AReX_1B6FmZDj8DxS4,666 +torch/include/torch/csrc/jit/runtime/slice_indices_adjust.h,sha256=mWIa0irSeq1DB9Q-oylD5p94QCL5e3rL88xAQOiCpAA,808 +torch/include/torch/csrc/jit/runtime/symbolic_script.h,sha256=K2HNGLdirhFTj3wzCWgthEJZMGsx-IePHNDCeZZz6Zo,580 +torch/include/torch/csrc/jit/runtime/symbolic_shape_registry.h,sha256=MhHhsVN-mSlKMLz-lbopdJd8BA5k10jqoTy89pFdjDo,2871 +torch/include/torch/csrc/jit/runtime/symbolic_shape_registry_util.h,sha256=B8VZ11dt7_0nNGhb2pcliu6f2ASe49cDL4ahnyTFqBI,363 +torch/include/torch/csrc/jit/runtime/vararg_functions.h,sha256=yVqpOXalASEc5Qjrm-dVRFhfzC8Dds98m4v6CpwoO9U,1188 +torch/include/torch/csrc/jit/runtime/variable_tensor_list.h,sha256=DwXjvY5GRUpYqvZ8LBqEsxAyN_V2og2TQrSUbq62ZSw,544 +torch/include/torch/csrc/jit/serialization/callstack_debug_info_serialization.h,sha256=MU5GXzo2YLyUANqZMvCg-wQi5k4pPoop0orroqkVd0M,2693 +torch/include/torch/csrc/jit/serialization/export.h,sha256=DjpDSL8S-dY-PpAsoYIn8kziA40PiFbDhUoREs5GkBQ,11819 +torch/include/torch/csrc/jit/serialization/export_bytecode.h,sha256=TVcC6u42NlcDOWs8ceX1IiDxuP9aAqCV4OWUVgH2mt0,1409 +torch/include/torch/csrc/jit/serialization/flatbuffer_serializer.h,sha256=_DAsXKeDUDO_pXRUpkyKWZv0amjGtpxqMJaR4mWkCZ0,3135 +torch/include/torch/csrc/jit/serialization/flatbuffer_serializer_jit.h,sha256=ZsO6A5qt5Y4qNn0BJRCoVijB7f_DCtl4HYCDn8cbU5c,181 +torch/include/torch/csrc/jit/serialization/import.h,sha256=XNNJHmfuqdHkDywerTFLYITUC8t6Je1HMA-wAB_YE2k,5162 +torch/include/torch/csrc/jit/serialization/import_export_constants.h,sha256=Gxlb2d2w1NFWJi03CP4Na-mE1dZw-FlqydW5ULzsEx4,664 +torch/include/torch/csrc/jit/serialization/import_export_functions.h,sha256=rCCONSFPiXASVesUcMacR68WzdXl75hgUxeJblfCj2E,404 +torch/include/torch/csrc/jit/serialization/import_export_helpers.h,sha256=AYBaYN0Z0GqmOYYTCs4Wyb_iiNREkGYclEP-vTmh7G4,679 +torch/include/torch/csrc/jit/serialization/import_read.h,sha256=FHmMUfTYXlR65B-pV27k79sv0K0rYqqqJZaBxUSH9Jc,859 +torch/include/torch/csrc/jit/serialization/import_source.h,sha256=rzGq3Aw4H6RfD2iNqoGTHdiwwAdAjOs9xCLumld6lJ4,3524 +torch/include/torch/csrc/jit/serialization/mobile_bytecode_generated.h,sha256=h6W7IqGe9EpgTYOg8R6UTy3A_Rckz-10ZHmsMqvxWh0,101193 +torch/include/torch/csrc/jit/serialization/onnx.h,sha256=4m-NDRqmWGCY1Ll2Vwz5dykJ7-3oyyArKB9EdvK9H8A,531 +torch/include/torch/csrc/jit/serialization/pickle.h,sha256=PE-d5PygGo_OsYlzhMypL9NACgnNIB4ohsdsMAIXzUw,4830 +torch/include/torch/csrc/jit/serialization/pickler.h,sha256=laSnlvDpvZ8B9zWW3boc-HmbMvfZ2ONgM2AfNmiTgjg,14117 +torch/include/torch/csrc/jit/serialization/python_print.h,sha256=iHMkujGOtaGqSDkzF3NqmhfvwokJlQYK26E902KcCSE,1365 +torch/include/torch/csrc/jit/serialization/source_range_serialization.h,sha256=p8lpip1MX0PbOoUA9-E4yiqsedEqu-n6S6GOnhCjR8Q,1732 +torch/include/torch/csrc/jit/serialization/source_range_serialization_impl.h,sha256=4uwobNCEgslxm0X4i96dpFOTuKk_PKlzzAlqhHaU05A,708 +torch/include/torch/csrc/jit/serialization/storage_context.h,sha256=l3lzODCxwXvQh0su8CA4mDTBK7T8e_pGIz_1hZXewrE,2570 +torch/include/torch/csrc/jit/serialization/type_name_uniquer.h,sha256=pWy5GkA6Qti9gHaGdcNuQeniu5n4KYL-xDs7i6X51T4,785 +torch/include/torch/csrc/jit/serialization/unpickler.h,sha256=GKopL_8qe2GvHkB_VsaJel_2hGYtb8-77hbRLtJXonM,7767 +torch/include/torch/csrc/jit/tensorexpr/analysis.h,sha256=3JWD5XSNYp9i9DpmRYgaz0Bjc5CPl-UCDKS56aAyFN4,9380 +torch/include/torch/csrc/jit/tensorexpr/block_codegen.h,sha256=liHXcA3i3kUsqudgdsvRXoUJYCcExoATjUT7Nt4Gj0M,4436 +torch/include/torch/csrc/jit/tensorexpr/bounds_inference.h,sha256=ZiLA8S_RVeH6UXdxePWfI0oGCkc6Vx4n8w23cJV1Qp4,2245 +torch/include/torch/csrc/jit/tensorexpr/bounds_overlap.h,sha256=H-W7WvGeocLzQWr6akupDezYijOTi3973iR3B3kV4K8,4583 +torch/include/torch/csrc/jit/tensorexpr/codegen.h,sha256=96FV8Ymzt7OhHcw7GKiBsVNrhm_4x5wRYYQ1UlMcIKI,7705 +torch/include/torch/csrc/jit/tensorexpr/cpp_codegen.h,sha256=s-g-450KR1v2ko1YK25xjAcglNyhFhdix224BYF-iQA,2445 +torch/include/torch/csrc/jit/tensorexpr/cpp_intrinsics.h,sha256=ORBrZam_67_JHZ6Zqrt_O4kI-QHj4u1iER-lOPLsGg8,665 +torch/include/torch/csrc/jit/tensorexpr/cuda_codegen.h,sha256=pQId-NRLSeQAwMRDNR4vz4qbzyXl8NdM8PPSe-YkvGs,8520 +torch/include/torch/csrc/jit/tensorexpr/cuda_random.h,sha256=O3UqOWAsQJqLMzl2UNTLLJBUVCOQ8drk08tF4iKzMqA,2692 +torch/include/torch/csrc/jit/tensorexpr/eval.h,sha256=Z1cYSzYi90UOa_HjudZCyCd5SjFecIX3svHTJnl_45g,10191 +torch/include/torch/csrc/jit/tensorexpr/exceptions.h,sha256=wRCyB6MGrwLign2m3wlTF3b37m3STayurv-LAmXMiJg,3276 +torch/include/torch/csrc/jit/tensorexpr/expr.h,sha256=kS89hk_R1DsZWtlhxTrm3vg_bVNqGofJwLF3OyKZfvo,14681 +torch/include/torch/csrc/jit/tensorexpr/external_functions.h,sha256=bUfCYwARtco5y5ft0ebhhR5lyBDIS-Wi_QtLYQf8tig,3544 +torch/include/torch/csrc/jit/tensorexpr/external_functions_core.h,sha256=ufuYOMKvNfZdYellSyZu96-FIU7cVSzZrB5MOIVSDc4,478 +torch/include/torch/csrc/jit/tensorexpr/external_functions_registry.h,sha256=DnF7DHXa007fPnmf1iGFyo5SZPOUFFHrSE6xtx6NtJE,2363 +torch/include/torch/csrc/jit/tensorexpr/fwd_decls.h,sha256=RpPesLU9wJm1lsIk76BzFQL-AoRzawQLusl8CGd1BrA,3115 +torch/include/torch/csrc/jit/tensorexpr/graph_opt.h,sha256=Q0Yq7vwSoBY_ewgDxizoQ4Pz8nuOTiuIroulsHiGK7Y,4545 +torch/include/torch/csrc/jit/tensorexpr/half_support.h,sha256=ZmcXcPVR7o21jNd-PjgaYy9UVE9my_D5Rh_tCbiOrWc,6101 +torch/include/torch/csrc/jit/tensorexpr/hash_provider.h,sha256=wqko35xT5qnFpLQ3y62E7D3ZFGWThWPmB2uMNlqhgn8,7814 +torch/include/torch/csrc/jit/tensorexpr/intrinsic_symbols.h,sha256=YZwpuvvFwi-H8C9YZt2AXN1DDoZHAxQ02X11WAvOhss,442 +torch/include/torch/csrc/jit/tensorexpr/ir.h,sha256=YylpaoWdERv8OebjprEshbW3P44D0EkBLUZj3FkmRQ8,23871 +torch/include/torch/csrc/jit/tensorexpr/ir_cloner.h,sha256=UufUmbey1b3-FIU22GuVJOsHCJhR6omZVyJHlq2NqDM,2405 +torch/include/torch/csrc/jit/tensorexpr/ir_mutator.h,sha256=dvuNFbPxC3NPrLSdUuf9jArNh3ziQbxjGvlLUalt5mY,2431 +torch/include/torch/csrc/jit/tensorexpr/ir_printer.h,sha256=03qn-fR0SRw3-VNLv31lHUYvx8U6Qp9Fnnd-pGNTCi4,4322 +torch/include/torch/csrc/jit/tensorexpr/ir_simplifier.h,sha256=-ZFffvZpK0anEx-gdbb_GkiJiIG01FPvxcKo8DX8b0M,15803 +torch/include/torch/csrc/jit/tensorexpr/ir_verifier.h,sha256=5MPFYIFqxeiwG9RjQw57XcGCqJ3YfZLXMbr8a0LKzOs,1349 +torch/include/torch/csrc/jit/tensorexpr/ir_visitor.h,sha256=hcxYtN0kl6GH2Rk-Hn07E4BGla2MnsDXFEHpp6i_2zM,2247 +torch/include/torch/csrc/jit/tensorexpr/kernel.h,sha256=KyVVNKF8SP4o5g3OUaRgIQQ86unde7WEBD1TD4Fzo3U,13770 +torch/include/torch/csrc/jit/tensorexpr/llvm_codegen.h,sha256=la6pZYUN0gQWZX86APTSWjO1XpMQMxBFRy9Fvuiv4yA,3982 +torch/include/torch/csrc/jit/tensorexpr/llvm_jit.h,sha256=PC36me1ahcY9_uiebc_S0KL6YjRNWtv-ByJeHiRRjp4,2017 +torch/include/torch/csrc/jit/tensorexpr/loopnest.h,sha256=kz9sDN71Rmpwf-V6XThaHJt5vN5DfqEs2ijsQbMqTz4,22323 +torch/include/torch/csrc/jit/tensorexpr/loopnest_randomization.h,sha256=9PPU1L-TRQKnFzEKBTmdjQORv5I9ou0d92kSrxvAHAY,318 +torch/include/torch/csrc/jit/tensorexpr/lowerings.h,sha256=S0A7TugHStf2EZabEX5MFRMK7Af4cTAKZ2BgGzQl8Lw,1325 +torch/include/torch/csrc/jit/tensorexpr/mem_dependency_checker.h,sha256=_JO59BH_gfJC9VPIIQYad7BZ2pZOCJYQwnkzJGWiuvg,13870 +torch/include/torch/csrc/jit/tensorexpr/operators/conv2d.h,sha256=Mm0g-Ah4Mb7aMRT4_7VMKUy8vsrvytXkyUVycO2kcE4,2994 +torch/include/torch/csrc/jit/tensorexpr/operators/matmul.h,sha256=HGUVbfZPINHB3o7pve_A0XmZHSTMwUNLXuHC1JvrLe0,623 +torch/include/torch/csrc/jit/tensorexpr/operators/misc.h,sha256=7OB1Q1VnX1KsVXVAclsGcInM3KYm66fQAdpbl-swA5s,3382 +torch/include/torch/csrc/jit/tensorexpr/operators/norm.h,sha256=AwYdiB8yQ8-itzzifuqTFVCGd5dkLazgaNSSDnGhEjs,387 +torch/include/torch/csrc/jit/tensorexpr/operators/operators.h,sha256=-h6eXiEoQ3yAJrbBJY_nN3y2GJYtxWvXRs9FhcybUKQ,481 +torch/include/torch/csrc/jit/tensorexpr/operators/pointwise.h,sha256=ObRtjRwJnqvYIzcj_mvYBzvAJQ9CHF2i0KoXRA8vxuo,3241 +torch/include/torch/csrc/jit/tensorexpr/operators/quantization.h,sha256=Kp5ZgMZQZ-aCsJMZXUANdj_LpOGhZXTJqQIiljyHrZs,5688 +torch/include/torch/csrc/jit/tensorexpr/operators/reduction.h,sha256=0uLPBIgc_6djysvpAWDZfozD7XSazG2L0lfO-Rqgpqo,1137 +torch/include/torch/csrc/jit/tensorexpr/operators/softmax.h,sha256=uV-dMYJaYnFdEm4Tc3EH1GE_YaLRNYoZ7QYBjB2HvKk,334 +torch/include/torch/csrc/jit/tensorexpr/reduction.h,sha256=DJZ6nK-0johan_sOC-zHqreMT7JOGSSYOe7ox5gYcr8,9172 +torch/include/torch/csrc/jit/tensorexpr/registerizer.h,sha256=LSDiQlQYGsPVki_wR7KPhLMXn7zak_EQwsc9GVMkIQw,12944 +torch/include/torch/csrc/jit/tensorexpr/stmt.h,sha256=5GdFKnTrCVvJcRYvytpdJqU_99yI1hAhFujPw-h1AIc,24785 +torch/include/torch/csrc/jit/tensorexpr/tensor.h,sha256=5PcRflwqxUlES18h4j2SSqiDyLjN0AdCPSLTLZnHOHo,10820 +torch/include/torch/csrc/jit/tensorexpr/tensorexpr_init.h,sha256=eBfap1CqnDTy-t-gaB4damjiV0mQk8mSdFazdubR-Pk,252 +torch/include/torch/csrc/jit/tensorexpr/types.h,sha256=metxvN6sSJUjJ7-JujLs5uDLrE2E6m9htEFEVV7bQnU,4438 +torch/include/torch/csrc/jit/tensorexpr/unique_name_manager.h,sha256=YmHJxk30IzeuE91fjBDviOV_iCnC8Skt893lqTMaTkg,858 +torch/include/torch/csrc/jit/tensorexpr/var_substitutor.h,sha256=dTOt97UDkg_Q1CgsmM1MSz1CwKgFDR6F0rlz3R1mNVg,1721 +torch/include/torch/csrc/jit/testing/file_check.h,sha256=wVDvTscyD8b5NV2J-ggOKkJVMcOEoWDDIHW29uSNWs8,2622 +torch/include/torch/csrc/jit/testing/hooks_for_testing.h,sha256=v4fjObrJmERmIG3ImKR5maWb5X4LYBI-l-O06xLlzME,597 +torch/include/torch/csrc/lazy/backend/backend_data.h,sha256=5_qzuWIuBz395o1tSqopnqaz0VW9Q8jap3j12BIdVwA,1239 +torch/include/torch/csrc/lazy/backend/backend_device.h,sha256=x1D4GYTSIoAIZahnUlpzU9cfDeZixosQ3_hsO6buX3o,3028 +torch/include/torch/csrc/lazy/backend/backend_interface.h,sha256=HNM_XmQLz0WS-KzHVstburyAyVDBlt-G4yYDsfOVr8A,4958 +torch/include/torch/csrc/lazy/backend/lowering_context.h,sha256=pUw9vJKF9VYdslvvRbjsopjpmYZb_nGVjiQtjtGOfEc,3348 +torch/include/torch/csrc/lazy/core/cache.h,sha256=taDFKQUXZkG8HSI3k7fLoyqrxBvUhT2yg0cNLRpDEcY,3762 +torch/include/torch/csrc/lazy/core/config.h,sha256=cgH-rOAOxVHSgvMTF4C9gIjhTaiTIiatACTstS16158,937 +torch/include/torch/csrc/lazy/core/debug_util.h,sha256=c3kofLV_LR00CqleDhF2uRo43LVAtGezqkcmDfT4BgQ,1319 +torch/include/torch/csrc/lazy/core/dynamic_ir.h,sha256=Td8oIhgzIkB61n7-9MWJ7okufulgGGAAO1v9snmMur8,1445 +torch/include/torch/csrc/lazy/core/hash.h,sha256=nn5wMMPdC__xE2QhpaUisWw0cQnP9vU1Yw2q7HEBsFE,7845 +torch/include/torch/csrc/lazy/core/helpers.h,sha256=xtw1xpuRHNEg7Fp1M1OIiJylJRnF-KW7cYjX7Gh9GsQ,2293 +torch/include/torch/csrc/lazy/core/internal_ops/ltc_ops.h,sha256=_BKiOBgd5r7QmVnSRMhwYWBbYDU6xyUecq_NrWKfN9M,1517 +torch/include/torch/csrc/lazy/core/ir.h,sha256=DIo2NLA7uFiAREGaha67Rp8e4QqfVnYJhICRYqvrftE,8094 +torch/include/torch/csrc/lazy/core/ir_builder.h,sha256=nwYYsVeRDkFfAqPoVFgxQFv_fadWHJBLP3GzZco5uUQ,4857 +torch/include/torch/csrc/lazy/core/ir_dump_util.h,sha256=6iXALA8Nkqit0OfOPEjmFu49ZHa1uO1i8-pHZgVqgO0,694 +torch/include/torch/csrc/lazy/core/ir_metadata.h,sha256=J7UqtJcBWbQriezL6N-cgEHpnjatQaaHWrIKuGFOTbQ,1374 +torch/include/torch/csrc/lazy/core/ir_util.h,sha256=kIQyO2Qrh17P-PF43FuT7YRfaewUOblvoi3egz5Pu8M,1411 +torch/include/torch/csrc/lazy/core/lazy_graph_executor.h,sha256=nTGe0MQNlcxDYDEo8RpSrTJZrBDK7WnOvI0w2EDH_Cg,15258 +torch/include/torch/csrc/lazy/core/metrics.h,sha256=TvvCGOJBXE10sVEkXuEgmH8ULbVXpuBCYJjgnWzE0b8,8503 +torch/include/torch/csrc/lazy/core/multi_wait.h,sha256=HoqN11RD05GaPhnNlo81WOOf0Bd6O1Cvakvbf7WKxLs,1775 +torch/include/torch/csrc/lazy/core/ops/arithmetic_ir_ops.h,sha256=CKs9ptKDHLDlRJGXz9RRI7P9Le9NkHsj5OkAC80tUC4,393 +torch/include/torch/csrc/lazy/core/ops/utils.h,sha256=Gzg-LTfHiatybYnBYTK9AcpaiHL6aCyRqTtdRgsr5jo,1024 +torch/include/torch/csrc/lazy/core/permutation_util.h,sha256=eF4t6wGgtloxrMym_EINFNuK45rPbXD6bT2svR6qx1Q,1293 +torch/include/torch/csrc/lazy/core/shape.h,sha256=AeU22mmzfW83V_ub5oVqEWE6XCD5XPcuOKyBZ3mgpAg,2097 +torch/include/torch/csrc/lazy/core/shape_inference.h,sha256=Un1MKLfU_6bVp64BNshwJSWx0dLheqrIkgzJSwvmE_8,15524 +torch/include/torch/csrc/lazy/core/tensor.h,sha256=Q1mOO-O8jwbAZGQsTPV5drcHLsAujvV35bRooufIuAo,10132 +torch/include/torch/csrc/lazy/core/tensor_impl.h,sha256=X9q5j6wO5z--jx_n4Qg8Cl4FqMolucocLgp0pjn2HxA,1945 +torch/include/torch/csrc/lazy/core/tensor_util.h,sha256=LPmanbOk2iGoza9Zdbw7echc64CsXgd2_2cB2s5wIpc,2612 +torch/include/torch/csrc/lazy/core/thread_pool.h,sha256=Nd8HROF-EMaGLaBLjo5eifz-k_74T2mo2JyC5IyWvcI,794 +torch/include/torch/csrc/lazy/core/trie.h,sha256=La59BZ24moOPekhUpUDtLQ2exV4SFXJpug_kq7MITBA,2269 +torch/include/torch/csrc/lazy/core/unique.h,sha256=qkqy9TctK4bnLgdNXP5h-_mJYNzdDfaF-bM5nWh6r3Q,1193 +torch/include/torch/csrc/lazy/core/util.h,sha256=3GQSh9qEzLYa1WvVwf-w2GPm3Xn99KkOB7eoiLEHf_k,2892 +torch/include/torch/csrc/lazy/python/python_util.h,sha256=IqFlmiEiO2PEGH2jJEqU045I1vBN86Ot7KyJFl_lbZc,328 +torch/include/torch/csrc/lazy/ts_backend/config.h,sha256=qmJyDaN_LrFM0CWt02XRK4vynnR15TnAM5FcGnHR_fI,213 +torch/include/torch/csrc/lazy/ts_backend/dynamic_ir.h,sha256=rTpCrZVDlL0gWGK4Nxj1ZOaFN8Z3Mh7s1kHn-4Y8WeY,2433 +torch/include/torch/csrc/lazy/ts_backend/ir_builder.h,sha256=xQkcSRrQTFkUetm_vvc7TeLi_KKLdfjU5R4AeAK87PM,2460 +torch/include/torch/csrc/lazy/ts_backend/tensor_aten_ops.h,sha256=1ovuhgTENNLMnXJs_QBRUxeip6_9ky_0sfrPUWvDQYM,538 +torch/include/torch/csrc/lazy/ts_backend/ts_autograd_functions.h,sha256=8hSv5NZcjHP20ZXv3rMOA8Q9cpSFCMSxgMpcvb0xWKw,648 +torch/include/torch/csrc/lazy/ts_backend/ts_backend_impl.h,sha256=ozZYfkY61u2Hn_AjkY9zl9lZUw3OpA7xe5b5OP-UZbw,1285 +torch/include/torch/csrc/lazy/ts_backend/ts_eager_fallback.h,sha256=2owJOOBAT2CtF5gLNmjAm40injSFXuP2giwQmp1U5MU,717 +torch/include/torch/csrc/lazy/ts_backend/ts_lowering_context.h,sha256=kW3OS0HkfD_7LEcgTuli-cliwfO72ybciPBO91Z4taA,4658 +torch/include/torch/csrc/lazy/ts_backend/ts_node.h,sha256=7-Ag593FqwaN-mR0X6x8YnzEtfibI3gLyw_Rn10G1sU,3455 +torch/include/torch/csrc/lazy/ts_backend/ts_node_lowering.h,sha256=CXTtiMYBFQvHocnkCp49zqRkAIdQCmMHKUVvqMDvJhc,481 +torch/include/torch/csrc/onnx/back_compat.h,sha256=9qEjFwxGFF7OWUKRAwlP4pLw9mTDO1UmxwoG2kphFf8,1049 +torch/include/torch/csrc/onnx/init.h,sha256=KY5hHcYArCb0baUZBLMJMVbgtkyWYzWY0NwGUQeNpto,155 +torch/include/torch/csrc/onnx/onnx.h,sha256=V0LR_nLSo_seyDsfKaDTFkJLOXvib-d5ZJwVAZ3v5gg,525 +torch/include/torch/csrc/profiler/api.h,sha256=VDYmDghgFVbw674serVq3iULb_TDXeTebyydXpen-iQ,524 +torch/include/torch/csrc/profiler/collection.h,sha256=iRMM3tbipixQ3XJrNJXad5DNZhPtl1Z827JiT4odOqs,21362 +torch/include/torch/csrc/profiler/combined_traceback.h,sha256=5RsOp6KLPZVlukfEbf7tCiXD8K0iyia_NlKXX8neYOg,2533 +torch/include/torch/csrc/profiler/containers.h,sha256=svP9-cEDGKKH726PT6pWM-tY9BSKoX3IIq09LPWcoCs,6197 +torch/include/torch/csrc/profiler/data_flow.h,sha256=th3fwdVjhbLB_iOvYUSA4oxPDhZ3zuZJyapF89yFsWo,3715 +torch/include/torch/csrc/profiler/events.h,sha256=DErZDNxbVR6_wqnXJdNBiWRwZJnT9Qod-A7jFobiqPk,1067 +torch/include/torch/csrc/profiler/kineto_client_interface.h,sha256=y1FiwkloZ5_rAflq5ULLBUAxarewrFjMXWfmgAaZgq0,257 +torch/include/torch/csrc/profiler/kineto_shim.h,sha256=bY-ErpxwbTFE1RzQ3_zy_hnYJ0OhnkZK51vgcdzHYl8,4063 +torch/include/torch/csrc/profiler/orchestration/observer.h,sha256=6pDzfn_3N_jYEvRvqPxPk6AvyIrJvP2Q-o7oTlUtu-Y,6167 +torch/include/torch/csrc/profiler/orchestration/python_tracer.h,sha256=oMK0yVyr2oNZeBY2KKIv5qfmdl6LlrZC2d0aZ9EQaiA,1868 +torch/include/torch/csrc/profiler/orchestration/vulkan.h,sha256=ojZficMKdnSF1EIhOZGy8JJgtWZiD-gBmIxbfJJt6pI,798 +torch/include/torch/csrc/profiler/perf-inl.h,sha256=YfL6n00OhTVelUTLD82eFme9OGa0p74-D_AaNVVml4E,1472 +torch/include/torch/csrc/profiler/perf.h,sha256=tNW756FrJGzlUqPdqwZou-8StifyRzxjvpsukdu5lNU,2685 +torch/include/torch/csrc/profiler/python/combined_traceback.h,sha256=fOwwB8GGFlmgyaPPYM5j2_DRcYTLNMDCrHAJ5Xgn9co,772 +torch/include/torch/csrc/profiler/python/init.h,sha256=N0X-d4k_ttDTl8GOxydYVZOZNT9JAHzgPCeStcXIVI8,1029 +torch/include/torch/csrc/profiler/python/pybind.h,sha256=_JbZk74nYmirLOSvbrbsLwqXGfyw9DT7JQFyzU-GZPI,1299 +torch/include/torch/csrc/profiler/standalone/execution_trace_observer.h,sha256=LblaS4ngs8iimSpcXMAaiNIzA8Qp8-PhQEsukVehXwY,649 +torch/include/torch/csrc/profiler/standalone/itt_observer.h,sha256=GDExohXxarK9-LosgQPEPiEZqo-18vpjs9Y60aBRuMQ,233 +torch/include/torch/csrc/profiler/standalone/nvtx_observer.h,sha256=UiHeamK3HzENh8pwzw6bAiAx4v3ql_fRAWE8odQ7JTo,234 +torch/include/torch/csrc/profiler/standalone/privateuse1_observer.h,sha256=CcwIKWKtn2DwLNSxQLAYH6-gpHfyX7G7dJovefpzF9Y,1491 +torch/include/torch/csrc/profiler/stubs/base.h,sha256=nK39hvhjJ5W92HQNRrYkVy3A2rVuBPMrpuhGtLdWHZw,1738 +torch/include/torch/csrc/profiler/unwind/action.h,sha256=NWFv3pnJ3lL_2ZuT_a0JIU77cEVlDIDEC9uk1IVeRjs,1483 +torch/include/torch/csrc/profiler/unwind/communicate.h,sha256=uVPh1LWiIQ78Jg41RHTvQoGnhppWefvkxHTPMO_o6VQ,2325 +torch/include/torch/csrc/profiler/unwind/debug_info.h,sha256=XTBWho4LxjapTCeWeGO26AJJgwJ8yxC19se2ob-I7l4,9380 +torch/include/torch/csrc/profiler/unwind/dwarf_enums.h,sha256=peZd5vn4hi83PUium-y1YRxhkSw4FhJ8osbpr2vWX1o,1156 +torch/include/torch/csrc/profiler/unwind/dwarf_symbolize_enums.h,sha256=a9vyfzJchOzGSDXVD0FCY51UgRcDfzwscFcwjuiQQqA,4837 +torch/include/torch/csrc/profiler/unwind/eh_frame_hdr.h,sha256=jDVryyMGD9DeXsvCGk9GHKQyZUrz1l-e7RwBeFuRbaM,2780 +torch/include/torch/csrc/profiler/unwind/fast_symbolizer.h,sha256=t0D681TKYCGhL5_14xvGoMPNr2lADeUj4xGGYacNnO8,3411 +torch/include/torch/csrc/profiler/unwind/fde.h,sha256=_F3ei86PWfFnNGDNQBqn480qpEhwNolhS7xbxIojREs,12870 +torch/include/torch/csrc/profiler/unwind/lexer.h,sha256=ZeXtLTSiMu2hTPB8MW6GsBBLoGcdH58mfL7EPu85WJA,4040 +torch/include/torch/csrc/profiler/unwind/line_number_program.h,sha256=e_7CYDGl54sVu73jLmqLPlbGHepVaJl-PNZH6d_Q2PE,10958 +torch/include/torch/csrc/profiler/unwind/mem_file.h,sha256=L6DUtR3UY9vpuHnpRf7FbeQrNjgyZuItqnSm9aKWzxY,4750 +torch/include/torch/csrc/profiler/unwind/range_table.h,sha256=KykDm8COcxfSjWh3GOHVCTm6HsL8TGbK5HK7ZDToCAw,2182 +torch/include/torch/csrc/profiler/unwind/sections.h,sha256=YgYLGnzhB1LtD2j3z25rarSNDIpic108T9BXaUfie3k,3788 +torch/include/torch/csrc/profiler/unwind/unwind.h,sha256=kpqpoYm7bQcVzwAP9JOFAwzrlYK9qcPKt_0X4WtfXB4,1176 +torch/include/torch/csrc/profiler/unwind/unwind_error.h,sha256=7q1zifDqVVUdEx68yu96uDIZuhpGsQazqyj2KzEJu58,927 +torch/include/torch/csrc/profiler/unwind/unwinder.h,sha256=-eXlBJB2ehVWOdqtOguPy1I_LsE_8LQjovA5NpN8r6Y,2374 +torch/include/torch/csrc/profiler/util.h,sha256=Budh-zb_pqXXt0DYU5_WEfLn4Jd7-Ej1WnppNYgrEGM,7064 +torch/include/torch/csrc/python_dimname.h,sha256=c77Jb9MhopjkGsQarpNj3EwA_-HPdvWkyIg6WxjIHSY,221 +torch/include/torch/csrc/python_headers.h,sha256=WqhGrFwwlDZfSUaUPQD3kLuzuzzXWYPS0lWW6s8XG-g,674 +torch/include/torch/csrc/serialization.h,sha256=n4vPtf32pqv0OQqnBdBueb3Q96g5TzqLu1wtQaiZjVE,708 +torch/include/torch/csrc/tensor/python_tensor.h,sha256=jrX7zrgJk_jq-SkYToSq8Xsu2m8tO-cv1zTTbxlg1B0,1111 +torch/include/torch/csrc/utils.h,sha256=SGsiG-GKYS_wpBzHXEQzoJZ2akWNNHbxCy688QB9_fE,9612 +torch/include/torch/csrc/utils/byte_order.h,sha256=F2L2YHm7KTyxCu2UKFHBjvQuLuU2eCbZ_LP-R_fEpb4,2335 +torch/include/torch/csrc/utils/cpp_stacktraces.h,sha256=p1NI6h3a3IVSXYpCZ19AegaJ7QpFlEpL665-B5qgGvM,239 +torch/include/torch/csrc/utils/cuda_enabled.h,sha256=sdbqDaSxb_PpKkxb1k6oEoOntjSb1KSeduhudzAr2wE,183 +torch/include/torch/csrc/utils/device_lazy_init.h,sha256=2qT-oX2VcbZVKtcmvs2iX3SjASth2p8Lo9IVvEt-9rQ,1866 +torch/include/torch/csrc/utils/disable_torch_function.h,sha256=9fxr63O2NxYu4sRU_rZKaAN8O8VbVG7rQQU5XY2zx3k,1913 +torch/include/torch/csrc/utils/generated_serialization_types.h,sha256=olrSOVomXUelgnRkJYzeI8zo9ssPqX-OXqCpru0LqVU,76105 +torch/include/torch/csrc/utils/init.h,sha256=WOmDTZNh1OxBs_DDnptt4q8N-gplV6-7O15qv7XczMc,202 +torch/include/torch/csrc/utils/invalid_arguments.h,sha256=KH-u_vRNZGchvpQ4GmmzN09i430y8C7Mu8FGZZfJ2wU,317 +torch/include/torch/csrc/utils/nested.h,sha256=v-jYzmYBZFOoVrwYszacsetZnfLptAnYKWoWcErOH_0,321 +torch/include/torch/csrc/utils/numpy_stub.h,sha256=x0yEqAooYgpFD1pUVnpCauGU6T3_tc_asQxyOU_tVp4,420 +torch/include/torch/csrc/utils/object_ptr.h,sha256=7UwLlg11bRH3j_kHDCdDPYsGukYlVDrjImWT5RQGuoo,1739 +torch/include/torch/csrc/utils/out_types.h,sha256=E1IeEC0JsOUEny8HRRotbSQtmLPD763f1se3hs21n_A,335 +torch/include/torch/csrc/utils/pybind.h,sha256=9OH8yf4XJjnhKUV1S4-6uHKnPXnEn76a2h6QFf106Ow,13429 +torch/include/torch/csrc/utils/pycfunction_helpers.h,sha256=2xLUpv3UGdJnmupyEqnBS0bnJ3gyOFmPDrijPMUwrbg,398 +torch/include/torch/csrc/utils/pyobject_preservation.h,sha256=WX-3hZ_WE7_VRWNKNIF63mNHZTDIOMJF9Zwev1lsApo,188 +torch/include/torch/csrc/utils/python_arg_parser.h,sha256=45RtPs5gAJlj483g1FDZS0cvyyBMecmulFWjcnHR2YQ,42686 +torch/include/torch/csrc/utils/python_compat.h,sha256=8nHuc70kdm0KJ0RrIuu2cTfnffX9glRGAnMx8mPCN_Y,1169 +torch/include/torch/csrc/utils/python_dispatch.h,sha256=8wC6-4OmbtE0PcYvWp6evSH0ml6C5OJWyZaYtFFgcUA,413 +torch/include/torch/csrc/utils/python_numbers.h,sha256=OYdhF3dJ5JG5Uv6uvCRA05_EYDh0twLxZkr9bJdGG2M,5654 +torch/include/torch/csrc/utils/python_raii.h,sha256=zIKzo6cTPq-NwbHj_ybMP2t_Z82GaIbn2xPHHOHz_aM,2742 +torch/include/torch/csrc/utils/python_scalars.h,sha256=KtV7fUgHQBlcZgj7y6U6i4m6dspFXWCueAEsAiyYEFY,5875 +torch/include/torch/csrc/utils/python_strings.h,sha256=gUtNsJ4-ovhBz_u37Fxwl9-AFeaH0m3qAzvrFNUT568,4522 +torch/include/torch/csrc/utils/python_stub.h,sha256=VCeDRiGbtYhM3F7bhp90T2hFV0hOlI_g8iecAD84L9M,60 +torch/include/torch/csrc/utils/python_symnode.h,sha256=kb_N1GxkKQUogO9ltVGOdZOz6gFHHxoqFF03t-MZavc,9922 +torch/include/torch/csrc/utils/python_torch_function_mode.h,sha256=C3ss_MLJnMYBp1b1PqVHFB5niuuKdQKGlNCb-okieHo,869 +torch/include/torch/csrc/utils/python_tuples.h,sha256=QORmVT-FLZanLaABuBgWyZGLr1M-s1u2EdAeiV2yzYA,753 +torch/include/torch/csrc/utils/pythoncapi_compat.h,sha256=WIP_HjhbJeuk1Lj9_d2d7WjhCJScC46ZSY44JD137J8,42399 +torch/include/torch/csrc/utils/schema_info.h,sha256=gGgvIB9UUxusvUKiU2FGB1NZol6QX_CMTnDUUvwIDRA,3905 +torch/include/torch/csrc/utils/six.h,sha256=oPrMqUTZuAt4_Z9WsUKSAqiutCsaP3b79-w8JTZRWIw,1517 +torch/include/torch/csrc/utils/structseq.h,sha256=noma5ebHQ5PI7XzoQb9PXJqPLDg_32BnNH3tpuZVPuA,150 +torch/include/torch/csrc/utils/tensor_apply.h,sha256=Y5cJu4HIc1y89OO3ZLh5GgBHBDpmQaD2sp3TcHI2KOM,447 +torch/include/torch/csrc/utils/tensor_dtypes.h,sha256=hRHSOd8LhSL4eXnGxFabHBig4MJdM24wvivOfhWth3w,255 +torch/include/torch/csrc/utils/tensor_flatten.h,sha256=hFF35zw2mnoU6y3ZmnHJ00PYOk3ve-EFuICPGvS1-HA,2829 +torch/include/torch/csrc/utils/tensor_layouts.h,sha256=qKI2EwdGjauNW01ATiYkdTd5ZuiODzkpC1h4czWhpDg,76 +torch/include/torch/csrc/utils/tensor_list.h,sha256=ajfcQNgYXWV-gghEwYEMvFcol_KX7JASy3CNdArs1xM,180 +torch/include/torch/csrc/utils/tensor_memoryformats.h,sha256=-8M0flDxa5ta1qGQdbRsTOLHJvtV2O0UU6t1h6NcIwI,337 +torch/include/torch/csrc/utils/tensor_new.h,sha256=4-8ZKlPSfiu0ZG6UQ9smZJ7MbEZkO0HCu1_F1Rppq_o,4150 +torch/include/torch/csrc/utils/tensor_numpy.h,sha256=NJBQWUdfxmOKmLFCm4_XEcMXdO-94m3KIFCaBMbh7g4,738 +torch/include/torch/csrc/utils/tensor_qschemes.h,sha256=4ZDdJyV17S6A_sHrflkKHQQDLts00eMnHTbYtRYO0U4,183 +torch/include/torch/csrc/utils/tensor_types.h,sha256=rpPVlyeZgmfiZPIgAUIv5ORjMEagMhGxzKBD1Lin1mM,689 +torch/include/torch/csrc/utils/throughput_benchmark-inl.h,sha256=BACn9-t9HgiEGgqfwWsVf4xErt5Yfx_XXF9-V6pVewA,5717 +torch/include/torch/csrc/utils/throughput_benchmark.h,sha256=migfyJykgzNgbxLg9jgVgrRbm38REcvM1G-Bifdo1vU,7137 +torch/include/torch/csrc/utils/torch_dispatch_mode.h,sha256=QcfjyWuX4LUF8qPrc1JCL9MbdmrmstRnBlqQodiu5SA,2343 +torch/include/torch/csrc/utils/variadic.h,sha256=S8NhLDb4XN6o-BoT-NwpgbbDOLRy33vXU4GH8m6-CX0,3460 +torch/include/torch/csrc/utils/verbose.h,sha256=AfAfwZ-pRGuwdRhbG8WIIuFssaG8vFw0TD5QZ16dr4I,146 +torch/include/torch/csrc/xpu/Event.h,sha256=0scFKbrXeW87Y--wFjem-g56LpnH_cj2SHYRnJN2TV0,385 +torch/include/torch/csrc/xpu/Module.h,sha256=7jE8gXvVL5gaPZpXNW1gSXrIRbN2AxVzetzhDPEAxSg,187 +torch/include/torch/csrc/xpu/Stream.h,sha256=nrZqsE-nbQYpb8xlspR2WY5j-AL_SJ4-K4q_ErjJbnA,454 +torch/include/torch/custom_class.h,sha256=EiSoU6O2xjvH1-VE3YnCxOk0j9D9HXjMBBeFHqnW_7o,20385 +torch/include/torch/custom_class_detail.h,sha256=rJNtUx-pX99oL8wR747UbkqFQGFyqR3a_aVBVN6UFFA,8013 +torch/include/torch/extension.h,sha256=uEVLy1F9rBRiArbwg_TN-X4I7nXCoaRD9g0DyL8b_MQ,222 +torch/include/torch/library.h,sha256=6MUMY3TjJpS-m3BivDb4z4igrPGoAI17U3JOItLXGnI,41880 +torch/include/torch/script.h,sha256=GndQ6oDpXBlnYAQvwUDhZ8p9olslwNmw89SfaUumvvM,482 +torch/include/xnnpack.h,sha256=DlgNoYh3uUuxhQkW8blgcxaNC5v3ornRmGBt79PmbEc,203705 +torch/jit/__init__.py,sha256=70OKRaUzqNHKOIHk9tN9DlvQcYmFXXjSy7Kvi97CQng,8611 +torch/jit/__pycache__/__init__.cpython-312.pyc,, +torch/jit/__pycache__/_async.cpython-312.pyc,, +torch/jit/__pycache__/_await.cpython-312.pyc,, +torch/jit/__pycache__/_builtins.cpython-312.pyc,, +torch/jit/__pycache__/_check.cpython-312.pyc,, +torch/jit/__pycache__/_dataclass_impls.cpython-312.pyc,, +torch/jit/__pycache__/_decomposition_utils.cpython-312.pyc,, +torch/jit/__pycache__/_decompositions.cpython-312.pyc,, +torch/jit/__pycache__/_freeze.cpython-312.pyc,, +torch/jit/__pycache__/_fuser.cpython-312.pyc,, +torch/jit/__pycache__/_ir_utils.cpython-312.pyc,, +torch/jit/__pycache__/_logging.cpython-312.pyc,, +torch/jit/__pycache__/_monkeytype_config.cpython-312.pyc,, +torch/jit/__pycache__/_pickle.cpython-312.pyc,, +torch/jit/__pycache__/_recursive.cpython-312.pyc,, +torch/jit/__pycache__/_script.cpython-312.pyc,, +torch/jit/__pycache__/_serialization.cpython-312.pyc,, +torch/jit/__pycache__/_shape_functions.cpython-312.pyc,, +torch/jit/__pycache__/_state.cpython-312.pyc,, +torch/jit/__pycache__/_trace.cpython-312.pyc,, +torch/jit/__pycache__/annotations.cpython-312.pyc,, +torch/jit/__pycache__/frontend.cpython-312.pyc,, +torch/jit/__pycache__/generate_bytecode.cpython-312.pyc,, +torch/jit/__pycache__/quantized.cpython-312.pyc,, +torch/jit/__pycache__/supported_ops.cpython-312.pyc,, +torch/jit/__pycache__/unsupported_tensor_ops.cpython-312.pyc,, +torch/jit/_async.py,sha256=t0OA_ZChmJ1It_1yIjwrYnjFyy2xsAFeBzje26I25Xk,3920 +torch/jit/_await.py,sha256=_p5IAg33hSyJM2NnapAfT0UloKLfePWzRKF2R78zCOI,879 +torch/jit/_builtins.py,sha256=spcG1bdAywRppkqNPOXJAdx64YyhuviX3n3ytmhBHak,6829 +torch/jit/_check.py,sha256=ah21m0MOnMaCSMz8T7DZNsimP8CMBzkfWLW6dhccAj8,9635 +torch/jit/_dataclass_impls.py,sha256=J7ANwgZ2THtZL-2uarba8gsvIv0E59sQWRouucUfEKk,6874 +torch/jit/_decomposition_utils.py,sha256=N4zt47CdArwPHy3Ju8qUFuktm8i__fDl8e29GC-aPco,414 +torch/jit/_decompositions.py,sha256=GpgbnJTsLKxZwIMNfWsc3VV_hIAvvsSlsVodVX0guiw,4528 +torch/jit/_freeze.py,sha256=K0f5oKDDokJb4OIdNcclsZRn91L3e3_CyyQiUOIKyJc,9689 +torch/jit/_fuser.py,sha256=ArsiaJ6FbWM_Ldlde2R4Rsfm1qDtk9klB9T9j-2KQTg,7275 +torch/jit/_ir_utils.py,sha256=4WRXP5DIEQx5iy4t-7K5i13k4kpp0IhAdliZk-GbveU,703 +torch/jit/_logging.py,sha256=08M1dFZ7pNDPG0CK8U3KRGsDjDgGCLEqQlJDQJg8JzY,268 +torch/jit/_monkeytype_config.py,sha256=U__nYCllo9Qz6vsJYhARZLrzzZmnQpjk7tRyM5UbxtQ,7467 +torch/jit/_passes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/jit/_passes/__pycache__/__init__.cpython-312.pyc,, +torch/jit/_passes/__pycache__/_property_propagation.cpython-312.pyc,, +torch/jit/_passes/_property_propagation.py,sha256=EHlSTae3Z3YNxdR-bpyxgW397gqXmZO4CJ2Lv0LPTUU,1510 +torch/jit/_pickle.py,sha256=E1f_DrgUlW_qaqR30ldtL1NWiSwU-1e5JkxIJO6cJzI,1020 +torch/jit/_recursive.py,sha256=4GIFS_O9zqVWEIop6BwegLQxrYrVgqD00ybBXNMSJuM,43456 +torch/jit/_script.py,sha256=XdegFLtZQxR-YaIG8Atmk22UtGjUp5APU5GvRLzR_rY,66783 +torch/jit/_script.pyi,sha256=01y2aZWtiXJ9Oz4Ojmbxe0w8xWfAkqPHloh72BRYjJI,9742 +torch/jit/_serialization.py,sha256=_qbdX5OV0_p2UIjTUFAiCwMyW6niuQSvmjDDpzln0Y4,9650 +torch/jit/_shape_functions.py,sha256=VrkvaGTCgdRcM3P6PBfGRc9qllCKBGoAX7mmU2GDE-4,46743 +torch/jit/_state.py,sha256=lxOIzhNTJKMWmRIUScH8fP6PeKE68kIv_b4ZQHfUBEA,3897 +torch/jit/_trace.py,sha256=_LGfD-pLFyzvwT-13S1RwY7UUl9UlEt9jVLgxR60fBQ,59859 +torch/jit/annotations.py,sha256=ULV_FVWkkAmIEjEiKFoBtJWfrtl95YVvfI3yrYqt1iM,18355 +torch/jit/frontend.py,sha256=gjh3sVAq1e8wI_mg-808Nuekv83-tDdTu28tdv-fR6c,46600 +torch/jit/generate_bytecode.py,sha256=3v2FMQPgd75ZVlIiCWmFzXERreNRD9GHiGW4Vl_MfMs,1100 +torch/jit/mobile/__init__.py,sha256=4p-BxWnFFtjNR26xqiTCSPR4PfEw49pGs_mE6zb8Qus,8749 +torch/jit/mobile/__pycache__/__init__.cpython-312.pyc,, +torch/jit/quantized.py,sha256=BzEDKVDO7Ehr-Ngjzx6wBHAvDqzCiqxWv8ztINiuE8Q,3293 +torch/jit/supported_ops.py,sha256=BVQjM7_HLl1pXdRAR3xDP3F3uTcVaDvfpHbSu1HeGgk,10611 +torch/jit/unsupported_tensor_ops.py,sha256=mk1Wd9wHPM52oPzSennIV6tM3kHWkFO2hUlqQrdsYCc,2071 +torch/lib/XNNPACK.lib,sha256=x9MED2TpnXK-xjFc9ZPnnrrNlqNzXkxTPrOQp3P9vTk,2603910 +torch/lib/_C.lib,sha256=MJ3P-mgV4HvfJzapenPOOcLNuFLMq0zMNSpw__54YGY,1924 +torch/lib/asmjit.dll,sha256=cZ-0BnW8b6BXnrHM12-4x3rCg-nW5AeLEWlNc5IHb-Y,358912 +torch/lib/asmjit.lib,sha256=2moer2sLbwV6ejwdACFtAjFMhWoQRKf9aaPKROaDGV0,125788 +torch/lib/c10.dll,sha256=tDIoTtjqCqvFqGkNpuIvwFhFHRw3PCXBOPMeoHbgWWc,973312 +torch/lib/c10.lib,sha256=qqHJdTQScQUOQ7fF-2t2k3km_XnwxgJ3Ni1UYy4qysY,757660 +torch/lib/cpuinfo.lib,sha256=778QzSBzW6VfJTIttPnpqLHPJQEQo_p8eCLDf1KISNI,116402 +torch/lib/dnnl.lib,sha256=PHs3AxuhxvL1NC18-Rn1sdbzfLRV1lopsTXpkci-LyY,653534016 +torch/lib/fbgemm.dll,sha256=k-zfhMyCeIuDUgfgWQZLwIj3F-c9eICUUZHKUsXqZ04,4961280 +torch/lib/fbgemm.lib,sha256=tMun2SCFZ0-zxO4uAegVN36xqxZiTRJY11m3ojRu57I,1409606 +torch/lib/fmt.lib,sha256=tvehk9PZcepflAp8-trfEJN2aEYOPZsQz_YUxR0GkhY,1497876 +torch/lib/kineto.lib,sha256=5J5K47gY-n3movNfWOcU3abbEx4tjn0eBMdKAk9U-DA,21651966 +torch/lib/libiomp5md.dll,sha256=9gju2yXkTePbHT25hKwRPzqEBqkuqHBhp385CFL-EXQ,1310600 +torch/lib/libiompstubs5md.dll,sha256=J2ExJ-5j5DmbYVv10QWJWy3BjjUFu5JhWCf34R2INDo,43912 +torch/lib/libprotobuf-lite.lib,sha256=bCveIDeOkUKlaBsPAMlQHVQV7_x7Rx2kUv6ybrKBnHA,5167876 +torch/lib/libprotobuf.lib,sha256=FqZ1tB0FiF0bDfBTXcToa_dpqTZ1LBs7EINtETxoGg0,37792598 +torch/lib/libprotoc.lib,sha256=SIJizN7dYbm7bFLhx2FDac2UX5kbSxPW970dJq8i3X8,39641000 +torch/lib/microkernels-prod.lib,sha256=kZ5h0ynRx0DBYR2ejsdJiV0-OjSW_1119TO7NPRxB1E,2895236 +torch/lib/pthreadpool.lib,sha256=c8aUQLLDFfNNX8uzI84q_VBh9slJrRAS8IGHFNBhYoQ,189364 +torch/lib/shm.dll,sha256=DlbmTDO2empXf2r-f1GGg8klvxSiJqQXa32xrorrSXY,14848 +torch/lib/shm.lib,sha256=cQ7RTi5eMrJ4dQaJjM9o74xpn9rdJ2PAeL8-u6epAew,3790 +torch/lib/sleef.lib,sha256=-gUHsTYnOD0VfBhiX07GAp2-Ud4vQmj6wkTUVx20paA,8861782 +torch/lib/torch.dll,sha256=5SlfFW8jkTYe7aFu370f2Qz5YEehRmJTkJjJogCKqvs,9728 +torch/lib/torch.lib,sha256=0gW4OkDdhK3jSeNaYBLfr4e5-xmsqF99uhk5kL9kTBA,1832 +torch/lib/torch_cpu.dll,sha256=SsSJzSUwm4ralCdfAegTXEB7QTBslOa8sfdpgDi5Q1o,251258368 +torch/lib/torch_cpu.lib,sha256=boXejS_faqa0tVaH1jQzkCjJB4TrK-zoCs2YZqClc98,28672304 +torch/lib/torch_global_deps.dll,sha256=Iw-BJ9dNu7ucWhfjvAb2QWRIP8B6zEjJKot-iZUB16U,9728 +torch/lib/torch_python.dll,sha256=K2c1EJNzCS1VrXC_C3gEx00l5mngNhqUdSVhMhBT7FQ,16737792 +torch/lib/torch_python.lib,sha256=yloeAO6ms5GAjkHYrbvS20wcJT8s0e3wGAKL_v3iyIU,219364 +torch/lib/uv.dll,sha256=1uUXCEQlCSBm1LJmeDIOtg7fLHmt6FW9Z7gpET-ZnaY,195072 +torch/library.py,sha256=qvjFpK-Zb3WPFhI7ALoLjAZNOeW-6JJrfV9l770BkjM,55582 +torch/linalg/__init__.py,sha256=45R3dSMfbhMOpnTU8EWLH0AZOzb_Bk8V7Pm92RRyXPg,117033 +torch/linalg/__pycache__/__init__.cpython-312.pyc,, +torch/masked/__init__.py,sha256=e18vUUI9fNnG5sZqFPBMrbFlXzoPIdM8Fxc--5FuJqk,985 +torch/masked/__pycache__/__init__.cpython-312.pyc,, +torch/masked/__pycache__/_docs.cpython-312.pyc,, +torch/masked/__pycache__/_ops.cpython-312.pyc,, +torch/masked/_docs.py,sha256=OmczevR9oCzOcHbugawMpdGV8skR2b55-8VrHHYyQuo,50645 +torch/masked/_ops.py,sha256=nyneZf-jrT4YnhhRaxdsk3Lu2MpQXGRwF0py4joRKug,67561 +torch/masked/maskedtensor/__init__.py,sha256=dvKhiMhXxAQtecih3QgraPlIHN3CEDJczJIVI5JmKBg,367 +torch/masked/maskedtensor/__pycache__/__init__.cpython-312.pyc,, +torch/masked/maskedtensor/__pycache__/_ops_refs.cpython-312.pyc,, +torch/masked/maskedtensor/__pycache__/binary.cpython-312.pyc,, +torch/masked/maskedtensor/__pycache__/core.cpython-312.pyc,, +torch/masked/maskedtensor/__pycache__/creation.cpython-312.pyc,, +torch/masked/maskedtensor/__pycache__/passthrough.cpython-312.pyc,, +torch/masked/maskedtensor/__pycache__/reductions.cpython-312.pyc,, +torch/masked/maskedtensor/__pycache__/unary.cpython-312.pyc,, +torch/masked/maskedtensor/_ops_refs.py,sha256=h4-CA0xuqm_ra85A5VEm4FFSbKfK_JNSZbf8UQz9oq4,18093 +torch/masked/maskedtensor/binary.py,sha256=QYnUB1ot3DIHhXpeXS1weJKaYjHY3P4FqtnyjsQVOJI,5696 +torch/masked/maskedtensor/core.py,sha256=ZhtgxDiJf_MCf8fWclFx5K4GXxmeyOCVunPhDj6WApo,13158 +torch/masked/maskedtensor/creation.py,sha256=PSvsTJ-tGRoJl-NHST47MZdNv_VN_6IAUbHfFq8tJGM,577 +torch/masked/maskedtensor/passthrough.py,sha256=jih-ZjwTDgw8rdb3qyFP0hkpvwaLoukfdG459X-RB-w,1497 +torch/masked/maskedtensor/reductions.py,sha256=rDnrTaohpk8qsPxA9gdqrrnyS1OFNJCFRj8Dld25R_o,5761 +torch/masked/maskedtensor/unary.py,sha256=_TGZ2JZ484PpXADd2in0QK4vemViMUANzcIK_pZKkqc,4391 +torch/monitor/__init__.py,sha256=DUX6hgo1zxL9Y5tqEPcGW-uroW-BlVfMixJkkqqmHV8,1324 +torch/monitor/__pycache__/__init__.cpython-312.pyc,, +torch/mps/__init__.py,sha256=V9gI6tC2vx5QcMfwqO1fBU_rKqJPjLUZBRgVJ9dVqrU,6200 +torch/mps/__pycache__/__init__.cpython-312.pyc,, +torch/mps/__pycache__/event.cpython-312.pyc,, +torch/mps/__pycache__/profiler.cpython-312.pyc,, +torch/mps/event.py,sha256=BuvvJpa9lw04PamG7xYrRAqqfmof_YUSUOzH0_PFJ_I,1729 +torch/mps/profiler.py,sha256=MzlJfqgQnGhnd_FxgJ6EmC4gztKicDYSKKB4a4FMwQM,2434 +torch/mtia/__init__.py,sha256=BEMhV8fCUmWB14OhWKVzGBlFDS55IwWz9XaS4xWSndg,11561 +torch/mtia/__pycache__/__init__.cpython-312.pyc,, +torch/mtia/__pycache__/_utils.cpython-312.pyc,, +torch/mtia/__pycache__/memory.cpython-312.pyc,, +torch/mtia/_utils.py,sha256=GLEJ1vMhlwA4adZskeiHSVOdzy0kGgdDpeoIAg7Qt-k,1635 +torch/mtia/memory.py,sha256=an4dCTFT03OAavLA-bzW8dg7LmwsMpW9gVjm6WSgbmk,1288 +torch/multiprocessing/__init__.py,sha256=b-MTxM7ndqmkCOOg9rdeQJ42wwiDcPRgKr2JuSgxiMY,3011 +torch/multiprocessing/__pycache__/__init__.cpython-312.pyc,, +torch/multiprocessing/__pycache__/_atfork.cpython-312.pyc,, +torch/multiprocessing/__pycache__/pool.cpython-312.pyc,, +torch/multiprocessing/__pycache__/queue.cpython-312.pyc,, +torch/multiprocessing/__pycache__/reductions.cpython-312.pyc,, +torch/multiprocessing/__pycache__/spawn.cpython-312.pyc,, +torch/multiprocessing/_atfork.py,sha256=HM7eWPbd712wegzQ70K_oD4_tvrcfyJDCZ1cc5lAXnE,825 +torch/multiprocessing/pool.py,sha256=qI_YbMLcImtdz3uIDq7hCRBhAdZkFXrDlA1f6Yp2ivk,1795 +torch/multiprocessing/queue.py,sha256=6wenEUd1uGcL6Afud00FdBNaTZ-8LaL2n_vNdrUEtb8,1520 +torch/multiprocessing/reductions.py,sha256=OWe0sf30KUR0I_zyWpwktsYDX5TiU4eczsyzBo90BP0,23787 +torch/multiprocessing/spawn.py,sha256=PUGopNnyrEQGTkX6pMsdC0QKmvMHZCpA5fiGr1-eBl8,13150 +torch/nested/__init__.py,sha256=obgXGwXGDIIKuJsyxQW1OqhdSsdDU62GsgIujDPI_tQ,21533 +torch/nested/__pycache__/__init__.cpython-312.pyc,, +torch/nested/_internal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/nested/_internal/__pycache__/__init__.cpython-312.pyc,, +torch/nested/_internal/__pycache__/nested_int.cpython-312.pyc,, +torch/nested/_internal/__pycache__/nested_tensor.cpython-312.pyc,, +torch/nested/_internal/__pycache__/ops.cpython-312.pyc,, +torch/nested/_internal/__pycache__/sdpa.cpython-312.pyc,, +torch/nested/_internal/nested_int.py,sha256=_de6OwdoMjMwYTQJODH2-SMPTMPrey0X83NuUDlEDXY,3306 +torch/nested/_internal/nested_tensor.py,sha256=dgMIW2iiJuAaYzUq13XsjetymiqN1wIapYZWVAA0e6g,24748 +torch/nested/_internal/ops.py,sha256=Gsdw1tE18ZnOuxXtdUdzRomtQc-1lt0_V-fZwWkmNAU,93707 +torch/nested/_internal/sdpa.py,sha256=nS8GH0rf9dBRfxn7DRmXM7i2hWhWvhzqSR6mZfEfkRU,32870 +torch/nn/__init__.py,sha256=QleWrbVGUa1f4u5EE3FGCN7GxWq5Fo65er1doQEbmCU,2487 +torch/nn/__pycache__/__init__.cpython-312.pyc,, +torch/nn/__pycache__/_reduction.cpython-312.pyc,, +torch/nn/__pycache__/common_types.cpython-312.pyc,, +torch/nn/__pycache__/cpp.cpython-312.pyc,, +torch/nn/__pycache__/functional.cpython-312.pyc,, +torch/nn/__pycache__/grad.cpython-312.pyc,, +torch/nn/__pycache__/init.cpython-312.pyc,, +torch/nn/__pycache__/parameter.cpython-312.pyc,, +torch/nn/_reduction.py,sha256=t6PgLjrweCbwTcC6udIJ0XU8QlHFeXIGLDXm13rkdz4,1685 +torch/nn/attention/__init__.py,sha256=oD2Lf3bglkyZoX7G8lWbeeSE66zSMspdiI4PIgcLoMg,6038 +torch/nn/attention/__pycache__/__init__.cpython-312.pyc,, +torch/nn/attention/__pycache__/_utils.cpython-312.pyc,, +torch/nn/attention/__pycache__/bias.cpython-312.pyc,, +torch/nn/attention/__pycache__/flex_attention.cpython-312.pyc,, +torch/nn/attention/_utils.py,sha256=EzInvMcESrGVpKaROs1rh29S7IQDE_n6IdgH47VAEDk,2356 +torch/nn/attention/bias.py,sha256=xps0VrOaxJ8kAE9p7AaFch3B0xZXCzpsyfCSz72B4sU,13764 +torch/nn/attention/experimental/__init__.py,sha256=w99ul3HlG3CaoBcG3SJ9r3N10hPNAqirDfntLsa3HFs,112 +torch/nn/attention/experimental/__pycache__/__init__.cpython-312.pyc,, +torch/nn/attention/experimental/__pycache__/_paged_attention.cpython-312.pyc,, +torch/nn/attention/experimental/_paged_attention.py,sha256=oNtEIpbCYKrSeeHNmJZCoIYnJ_8WJTLrstilAAg998s,12361 +torch/nn/attention/flex_attention.py,sha256=a7sAK8chekEUztRBz4M6yAhz73slj-_jeu-80wJ4V8g,56387 +torch/nn/backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/nn/backends/__pycache__/__init__.cpython-312.pyc,, +torch/nn/backends/__pycache__/thnn.cpython-312.pyc,, +torch/nn/backends/thnn.py,sha256=m5HpIz0NfjF-4O5ayPXPi1PFdPEkFvihp4ryASstGDs,152 +torch/nn/common_types.py,sha256=Z5IocTI_jvY_mvwHJPN_RWu-EOIt8IRMY3nUyZkdEg8,1890 +torch/nn/cpp.py,sha256=Lls_nq7pKdoQFE9hX6YyhTHi4-5Rgh-VNt9m4QE6-MA,3106 +torch/nn/functional.py,sha256=CvacpWbZXiCr8Dh2GJOywLTa80n0XcQkaeulqBURh-o,247953 +torch/nn/functional.pyi,sha256=XDpUsMcHebrSjB35g3sjyyCqIoSHv02fC9MvAmuyV4Q,24418 +torch/nn/grad.py,sha256=MG54cZn6HW7CVLhDZHKqmiOj1WQqhtk3Oo5bFxeudDw,10208 +torch/nn/init.py,sha256=BAa-LbN47Fxog02_XfyWqXNP2ZwcZMNF3RpP3OpE4Us,24865 +torch/nn/intrinsic/__init__.py,sha256=4y35Rm3epwUxcsIUr4kYd3j-T9DPshjMUAvHizLDHqs,733 +torch/nn/intrinsic/__pycache__/__init__.cpython-312.pyc,, +torch/nn/intrinsic/modules/__init__.py,sha256=UBTOY6kdnyOWRjpGh6DSYu10sWxK7G-XvGFvSRQSiik,550 +torch/nn/intrinsic/modules/__pycache__/__init__.cpython-312.pyc,, +torch/nn/intrinsic/modules/__pycache__/fused.cpython-312.pyc,, +torch/nn/intrinsic/modules/fused.py,sha256=340yk-lF--9pZSnoax5nO4lDvMGs4P2ioIhAgchFZF4,596 +torch/nn/intrinsic/qat/__init__.py,sha256=p-5evJa2FgDM8QCPqTuBGITlflcXw7Yg0RCyg937f9w,60 +torch/nn/intrinsic/qat/__pycache__/__init__.cpython-312.pyc,, +torch/nn/intrinsic/qat/modules/__init__.py,sha256=0DDjW4qnb6yRV6vAPx0A8gYwVJMamrLF2RrRNDn2by4,669 +torch/nn/intrinsic/qat/modules/__pycache__/__init__.cpython-312.pyc,, +torch/nn/intrinsic/qat/modules/__pycache__/conv_fused.cpython-312.pyc,, +torch/nn/intrinsic/qat/modules/__pycache__/linear_fused.cpython-312.pyc,, +torch/nn/intrinsic/qat/modules/__pycache__/linear_relu.cpython-312.pyc,, +torch/nn/intrinsic/qat/modules/conv_fused.py,sha256=YtvXTOgobESVF0CmsvszC_ZunZf5ybHY7_skqd34Pxg,894 +torch/nn/intrinsic/qat/modules/linear_fused.py,sha256=frdmuGPzasCk3Hmy75kIBmTgFZwMejSxAvt-_M2sWRU,471 +torch/nn/intrinsic/qat/modules/linear_relu.py,sha256=wYa_ChQtouRtRGxQ0xokIfjJyT2MeWBeC5Iak2qWSoI,471 +torch/nn/intrinsic/quantized/__init__.py,sha256=TzvJoBi6HMEyZWBEcCh6DLsmodGy3-6S2ClPPi4Q3No,350 +torch/nn/intrinsic/quantized/__pycache__/__init__.cpython-312.pyc,, +torch/nn/intrinsic/quantized/dynamic/__init__.py,sha256=9zpAuvn27ttR3rNI37aoR0Ml_bqCA1_WmyZdvlO5RdY,74 +torch/nn/intrinsic/quantized/dynamic/__pycache__/__init__.cpython-312.pyc,, +torch/nn/intrinsic/quantized/dynamic/modules/__init__.py,sha256=f3fbpMxfHM5-gmdXbJT6HTJ1XBN6BgLXm_9jj-csmzI,120 +torch/nn/intrinsic/quantized/dynamic/modules/__pycache__/__init__.cpython-312.pyc,, +torch/nn/intrinsic/quantized/dynamic/modules/__pycache__/linear_relu.cpython-312.pyc,, +torch/nn/intrinsic/quantized/dynamic/modules/linear_relu.py,sha256=tgaDRubiJ9y1u1USs7UUDyQ0l9mB_WzQOPDIxPka7ho,103 +torch/nn/intrinsic/quantized/modules/__init__.py,sha256=7epBP6GiGh24LUh-kuuuKkEZeubs2_mI3s8AkWD5szs,396 +torch/nn/intrinsic/quantized/modules/__pycache__/__init__.cpython-312.pyc,, +torch/nn/intrinsic/quantized/modules/__pycache__/bn_relu.cpython-312.pyc,, +torch/nn/intrinsic/quantized/modules/__pycache__/conv_relu.cpython-312.pyc,, +torch/nn/intrinsic/quantized/modules/__pycache__/linear_relu.cpython-312.pyc,, +torch/nn/intrinsic/quantized/modules/bn_relu.py,sha256=mexLG77ELYLoVfXlSKcigmjc0NiePBNZwClR2mpDFFE,118 +torch/nn/intrinsic/quantized/modules/conv_relu.py,sha256=7isVCn-xK1Gmf8gCoGPC8iwuIRm6PQntHT9s0qufmHw,157 +torch/nn/intrinsic/quantized/modules/linear_relu.py,sha256=bFM-bT1HI7uu3zzCFPo-_KYfxO6Lr3-VPid5_EwHMpo,95 +torch/nn/modules/__init__.py,sha256=8sSanMhe5aUOD61p2kMhLvd7fte-aBIJHI_8ELsbdgQ,6828 +torch/nn/modules/__pycache__/__init__.cpython-312.pyc,, +torch/nn/modules/__pycache__/_functions.cpython-312.pyc,, +torch/nn/modules/__pycache__/activation.cpython-312.pyc,, +torch/nn/modules/__pycache__/adaptive.cpython-312.pyc,, +torch/nn/modules/__pycache__/batchnorm.cpython-312.pyc,, +torch/nn/modules/__pycache__/channelshuffle.cpython-312.pyc,, +torch/nn/modules/__pycache__/container.cpython-312.pyc,, +torch/nn/modules/__pycache__/conv.cpython-312.pyc,, +torch/nn/modules/__pycache__/distance.cpython-312.pyc,, +torch/nn/modules/__pycache__/dropout.cpython-312.pyc,, +torch/nn/modules/__pycache__/flatten.cpython-312.pyc,, +torch/nn/modules/__pycache__/fold.cpython-312.pyc,, +torch/nn/modules/__pycache__/instancenorm.cpython-312.pyc,, +torch/nn/modules/__pycache__/lazy.cpython-312.pyc,, +torch/nn/modules/__pycache__/linear.cpython-312.pyc,, +torch/nn/modules/__pycache__/loss.cpython-312.pyc,, +torch/nn/modules/__pycache__/module.cpython-312.pyc,, +torch/nn/modules/__pycache__/normalization.cpython-312.pyc,, +torch/nn/modules/__pycache__/padding.cpython-312.pyc,, +torch/nn/modules/__pycache__/pixelshuffle.cpython-312.pyc,, +torch/nn/modules/__pycache__/pooling.cpython-312.pyc,, +torch/nn/modules/__pycache__/rnn.cpython-312.pyc,, +torch/nn/modules/__pycache__/sparse.cpython-312.pyc,, +torch/nn/modules/__pycache__/transformer.cpython-312.pyc,, +torch/nn/modules/__pycache__/upsampling.cpython-312.pyc,, +torch/nn/modules/__pycache__/utils.cpython-312.pyc,, +torch/nn/modules/_functions.py,sha256=XuIEIBkqH1BctNBRAdudLL3xcSPzgBqBHS2pBNz_y5s,12310 +torch/nn/modules/activation.py,sha256=hbLkEN3kzaa3vXDPXj6BdMCDtx_u1aYjBalpeWOnX14,59685 +torch/nn/modules/adaptive.py,sha256=fqNm7fXxC28SSdZK35srHofEym9O6R1BcT4Go9A7cno,12690 +torch/nn/modules/batchnorm.py,sha256=0J5Q_jfz0QfeoS7igvB0V-OATg6EaMDy9soa_2OaeVo,39247 +torch/nn/modules/channelshuffle.py,sha256=TNNIWJuBR_ZFfE523qd5TE4rehfntN1R0fGHHm8m5kc,1604 +torch/nn/modules/container.py,sha256=uIwfGWKKEpK3eXJipGmvyijYa9_Kmf-svwxZtml6ZSs,36005 +torch/nn/modules/conv.py,sha256=bdunyXpam6y88skHSLqRvfa8rh2Ct1GSzyi18y27V6Y,77601 +torch/nn/modules/distance.py,sha256=QXuhiKvZNBzzr2EGXD1c5gP2ZnhH5Ehuxtom4REvbow,3360 +torch/nn/modules/dropout.py,sha256=S26ciN0Mr8rEUU9xz2m-TptVR5w5t2gbWWGEEQxRMuc,11492 +torch/nn/modules/flatten.py,sha256=GAkhMhhcEMcmsAjZcwk7cVf-AzgtHY6ec-De4ccWsFI,5702 +torch/nn/modules/fold.py,sha256=XhzZDA28yn3FZUetnK2w0Vj3P_fV1BIJEDckHpf7uPI,13210 +torch/nn/modules/instancenorm.py,sha256=VyQ9z1O5biu82G6mj2xJZsWHszddbqBmjNhDqm9R-B8,20790 +torch/nn/modules/lazy.py,sha256=kwdr7d6H7RyBYMbIyXzAgULQW-F4u04Q9slqVLBmYWM,12136 +torch/nn/modules/linear.py,sha256=czDZc2ybBqTTIEIZzZqfBnuw1Prb7NfWRG4_dBoUuTg,11015 +torch/nn/modules/loss.py,sha256=dOFHO9jZvAWDJzklHBVXbGUbpDy0J1ZN3pID_GCCeLc,95449 +torch/nn/modules/module.py,sha256=lvD6UZcqLWrMD6RKcWr-XJUg4T05CmOAptfn8g_aAM8,127450 +torch/nn/modules/normalization.py,sha256=6mDpKHSba5sZHMuXiOqqvTbjEXqBwEUrTjKUshgfOpI,15388 +torch/nn/modules/padding.py,sha256=nVU9mphg_qqZZYZtXgm8GOlnk1H_i9wO5NYwbhaJrpY,31074 +torch/nn/modules/pixelshuffle.py,sha256=2YoVUAIk-lViz8KlwzPIXFBkDWMJ63QKW1Hk4mA6kv0,3795 +torch/nn/modules/pooling.py,sha256=dTFNabmAiLw49zXfPl_Nz-zzz2n3eh9bXlBPBfdNu78,60311 +torch/nn/modules/rnn.py,sha256=A-TO7D7IRFiTelzXXaRP2sooVLZZLTVM9S2UcFJxvSM,76094 +torch/nn/modules/sparse.py,sha256=TIS7ShKePJfnxvm_mYNNotiJ0Y3YcX45h1mPmzYY-I8,24600 +torch/nn/modules/transformer.py,sha256=z9cKQCJMO0gCR0WK4zVvpIRxiyQUMYhQgNtQF7rEdjo,51569 +torch/nn/modules/upsampling.py,sha256=g8phjrdP0hWbEv2SExmPVvKjg_1yfm8jVqUqD7HSe7o,11834 +torch/nn/modules/utils.py,sha256=doYo582kxGG7MlAS669_60fP401oooYOyVs0EukA0Gc,2671 +torch/nn/parallel/__init__.py,sha256=dOEAXFrXt0ePRBMBCT-mcAp-lznPLYi3_XCvdTckrO4,815 +torch/nn/parallel/__pycache__/__init__.cpython-312.pyc,, +torch/nn/parallel/__pycache__/_functions.cpython-312.pyc,, +torch/nn/parallel/__pycache__/comm.cpython-312.pyc,, +torch/nn/parallel/__pycache__/data_parallel.cpython-312.pyc,, +torch/nn/parallel/__pycache__/distributed.cpython-312.pyc,, +torch/nn/parallel/__pycache__/parallel_apply.cpython-312.pyc,, +torch/nn/parallel/__pycache__/replicate.cpython-312.pyc,, +torch/nn/parallel/__pycache__/scatter_gather.cpython-312.pyc,, +torch/nn/parallel/_functions.py,sha256=NFbwfmmUwOiuWn_-Ve3zCxZEGACSfc16TNC14FTJbbw,5068 +torch/nn/parallel/comm.py,sha256=I9_bHzUYWq5AgHjHp2c8wX0ZYpw5VYgiaMHuwQ8dBaE,11177 +torch/nn/parallel/data_parallel.py,sha256=LJfCjzqo-ZVQM-wyVW-8gBcMpTLOgW9ZiyyxiRVj0fU,12038 +torch/nn/parallel/distributed.py,sha256=zSywKPNYSx6hmbtpiBG1d3S25q0_V5YsrN4a-iNJ4JM,110871 +torch/nn/parallel/parallel_apply.py,sha256=Wg8Y7wsiM6-87qs61ZVa1UNQ5_cHFQKwUEg1W3jc1R4,4547 +torch/nn/parallel/replicate.py,sha256=bcSfiU02ls9ZYLN8gob36Xk-_wfQ-ZkxRv-j820wjLk,7123 +torch/nn/parallel/scatter_gather.py,sha256=jEJP9hLmPpzgLiIrLnzNtEgoFQCs-weev-lT2ec_U1c,5121 +torch/nn/parameter.py,sha256=wCmhaClAFYIUtq48j0nggQ_vzYj5Xc-Eq7IJ3hnyplQ,11658 +torch/nn/parameter.pyi,sha256=_b1wCl4U2vDW-1Wh8VFu6rlRr2gTxZXaUSiWCYBEiQM,1173 +torch/nn/qat/__init__.py,sha256=_JZDR0TD4ISr4QHN-g2E9zIkfHPpwWY0QFCNN14DdHE,382 +torch/nn/qat/__pycache__/__init__.cpython-312.pyc,, +torch/nn/qat/dynamic/__init__.py,sha256=l2YQqxEd0Nt4kc1t2E_hmtzxhMfUKy2Ja9YZTOCwL7M,214 +torch/nn/qat/dynamic/__pycache__/__init__.cpython-312.pyc,, +torch/nn/qat/dynamic/modules/__init__.py,sha256=xhaQBKF6ynIsfGH7lkql1W9yFDyJnVsQ1rhZ1ATMaDo,82 +torch/nn/qat/dynamic/modules/__pycache__/__init__.cpython-312.pyc,, +torch/nn/qat/dynamic/modules/__pycache__/linear.cpython-312.pyc,, +torch/nn/qat/dynamic/modules/linear.py,sha256=j7Z5hhB8n8q-fN3Oj-f5tlgqwmumTMVgeyu5e-62fQQ,425 +torch/nn/qat/modules/__init__.py,sha256=hAW8eJsa-DdF148ilz287CZtJaL3_bOIWwz3bTXGU7M,520 +torch/nn/qat/modules/__pycache__/__init__.cpython-312.pyc,, +torch/nn/qat/modules/__pycache__/conv.cpython-312.pyc,, +torch/nn/qat/modules/__pycache__/embedding_ops.cpython-312.pyc,, +torch/nn/qat/modules/__pycache__/linear.cpython-312.pyc,, +torch/nn/qat/modules/conv.py,sha256=4_HHeeAfHpwkekhOyE02Plind4otYDPXvYL_PyfIKaI,417 +torch/nn/qat/modules/embedding_ops.py,sha256=tNse_KPodjxDvvr8d_wkgshCOp3SqL3Zd5mbORnvJ6E,472 +torch/nn/qat/modules/linear.py,sha256=yYGQbv0JGjshZUXzJ5Jog5rrRwhbkXFoaLWNgBd7s5M,401 +torch/nn/quantizable/__init__.py,sha256=-0datFuoOimv7Qda2O56u2mPcV2YE2mBLW4ErmOMt8k,58 +torch/nn/quantizable/__pycache__/__init__.cpython-312.pyc,, +torch/nn/quantizable/modules/__init__.py,sha256=2r8p4LEolirX0dhKNAvuJi4ubW11KIaL5leZFJPTYn4,216 +torch/nn/quantizable/modules/__pycache__/__init__.cpython-312.pyc,, +torch/nn/quantizable/modules/__pycache__/activation.cpython-312.pyc,, +torch/nn/quantizable/modules/__pycache__/rnn.cpython-312.pyc,, +torch/nn/quantizable/modules/activation.py,sha256=8gIGQsLJGNCDKKj11Cz7QCRV-6hAdC5zbBTFvPFHzrY,449 +torch/nn/quantizable/modules/rnn.py,sha256=Ft5W_4bwJrjTQZ_dHIrwjF2WG_D3c1OKfZLdFXpgaY8,440 +torch/nn/quantized/__init__.py,sha256=REwHEIXAsudYLljnHsXvh8cIOPXMdIa-VtcJeXgUQxA,810 +torch/nn/quantized/__pycache__/__init__.cpython-312.pyc,, +torch/nn/quantized/__pycache__/functional.cpython-312.pyc,, +torch/nn/quantized/_reference/__init__.py,sha256=WbDZWiGzHm3MlXrSDJTj7v8eCeEzcDuss7lOO2nInYU,67 +torch/nn/quantized/_reference/__pycache__/__init__.cpython-312.pyc,, +torch/nn/quantized/_reference/modules/__init__.py,sha256=8gzog8X5RxwQGehxxyt80qsWpckIe8OQzRLhnP07fk0,1057 +torch/nn/quantized/_reference/modules/__pycache__/__init__.cpython-312.pyc,, +torch/nn/quantized/_reference/modules/__pycache__/conv.cpython-312.pyc,, +torch/nn/quantized/_reference/modules/__pycache__/linear.cpython-312.pyc,, +torch/nn/quantized/_reference/modules/__pycache__/rnn.cpython-312.pyc,, +torch/nn/quantized/_reference/modules/__pycache__/sparse.cpython-312.pyc,, +torch/nn/quantized/_reference/modules/__pycache__/utils.cpython-312.pyc,, +torch/nn/quantized/_reference/modules/conv.py,sha256=pjn9wbE5ASUlOevzsmw8SDxGlOADYqKZMmGliV52nL4,600 +torch/nn/quantized/_reference/modules/linear.py,sha256=pPKp0fswx4aAvvKnNqtxCpcx40DXqygxOrqeEB688qY,462 +torch/nn/quantized/_reference/modules/rnn.py,sha256=1b6FGQwK5dbTBCN0KIwuBhCLfS8nmAsTvQqNok17HZM,543 +torch/nn/quantized/_reference/modules/sparse.py,sha256=hCVj2Gqe5uV_6ptxLpvjKlAO2ddwuyy26yZzjNQ5ikU,479 +torch/nn/quantized/_reference/modules/utils.py,sha256=xgb58XnUhfBnLgeNHrBeCf7BqI7zM_osXVI0EgeY62I,608 +torch/nn/quantized/dynamic/__init__.py,sha256=zUGrFi6mSGoJGYz5xRd8uDIvmz6tIHQwKXhlalyECKg,59 +torch/nn/quantized/dynamic/__pycache__/__init__.cpython-312.pyc,, +torch/nn/quantized/dynamic/modules/__init__.py,sha256=dOUhdslM3ZBE2rYYjF4PJppebHDMcv_SrZpbMxxRzuU,1036 +torch/nn/quantized/dynamic/modules/__pycache__/__init__.cpython-312.pyc,, +torch/nn/quantized/dynamic/modules/__pycache__/conv.cpython-312.pyc,, +torch/nn/quantized/dynamic/modules/__pycache__/linear.cpython-312.pyc,, +torch/nn/quantized/dynamic/modules/__pycache__/rnn.cpython-312.pyc,, +torch/nn/quantized/dynamic/modules/conv.py,sha256=hh6gMpib0xiYrIFcZkV8feUdafY4VExsggB6Mw6RMn4,697 +torch/nn/quantized/dynamic/modules/linear.py,sha256=ZnzpIuppTOjpXpfKOOktVe0ygZ6VIl-VeHo8uignTAI,457 +torch/nn/quantized/dynamic/modules/rnn.py,sha256=mHRaypMPwS3iaj0nFQp4MIseczl1wLZobltW_b5U0iE,774 +torch/nn/quantized/functional.py,sha256=j7MGLQ6xhTh3XPiEJW67BRYBggrOMGdyu7zD-E9Wor4,286 +torch/nn/quantized/modules/__init__.py,sha256=UxxpMDG7z7jPwzAgKdR6wEH5vTOJ9Sgz_u0aJuuMNFQ,2198 +torch/nn/quantized/modules/__pycache__/__init__.cpython-312.pyc,, +torch/nn/quantized/modules/__pycache__/activation.cpython-312.pyc,, +torch/nn/quantized/modules/__pycache__/batchnorm.cpython-312.pyc,, +torch/nn/quantized/modules/__pycache__/conv.cpython-312.pyc,, +torch/nn/quantized/modules/__pycache__/dropout.cpython-312.pyc,, +torch/nn/quantized/modules/__pycache__/embedding_ops.cpython-312.pyc,, +torch/nn/quantized/modules/__pycache__/functional_modules.cpython-312.pyc,, +torch/nn/quantized/modules/__pycache__/linear.cpython-312.pyc,, +torch/nn/quantized/modules/__pycache__/normalization.cpython-312.pyc,, +torch/nn/quantized/modules/__pycache__/rnn.cpython-312.pyc,, +torch/nn/quantized/modules/__pycache__/utils.cpython-312.pyc,, +torch/nn/quantized/modules/activation.py,sha256=xW027WhWB7ZNliQOe-FBGUiidOL9ICVQP0h7Ez-qphY,548 +torch/nn/quantized/modules/batchnorm.py,sha256=NXrd4bZpkNotYxpUMMX6CbkCkK8cGpgDrcfA3TZQBak,448 +torch/nn/quantized/modules/conv.py,sha256=1QiyTXQYOFuLE-p6r1sXk-SWqFZMucTLY_1fBq7vVls,695 +torch/nn/quantized/modules/dropout.py,sha256=e2wkofacz2MkquH4AmVOoZNAcInnRj8ELLd9Y6FkVFc,456 +torch/nn/quantized/modules/embedding_ops.py,sha256=jMga5rGAoWJBb1HlZAnaoDxe4jqa23rfE3eFKtgej1E,565 +torch/nn/quantized/modules/functional_modules.py,sha256=ig156T5ByLXZcE8WHAcI1i-grqMRVXI3gg0oYioJegs,572 +torch/nn/quantized/modules/linear.py,sha256=pb0RdBMmEoA5yy6pbbxMH5bUEyJGj6gblHRtk7djFUk,495 +torch/nn/quantized/modules/normalization.py,sha256=f8sdj5vc5g7Y6JbRfmfBrcAXdkJhE1p1PojMxfHTGjA,652 +torch/nn/quantized/modules/rnn.py,sha256=sWTce57bC436QZ2xtG8xBO-fCQmIxwjfwIwl-0FRUl4,422 +torch/nn/quantized/modules/utils.py,sha256=3RhDoXUIo5ZJuAkqSZJ3PUtfvfFLyIF41e4SSNLgoMo,556 +torch/nn/utils/__init__.py,sha256=ihgUt20V8RRyUj2WDdJT_nfJoCgVPLs7KrihljN7wpM,1289 +torch/nn/utils/__pycache__/__init__.cpython-312.pyc,, +torch/nn/utils/__pycache__/_deprecation_utils.cpython-312.pyc,, +torch/nn/utils/__pycache__/_named_member_accessor.cpython-312.pyc,, +torch/nn/utils/__pycache__/_per_sample_grad.cpython-312.pyc,, +torch/nn/utils/__pycache__/clip_grad.cpython-312.pyc,, +torch/nn/utils/__pycache__/convert_parameters.cpython-312.pyc,, +torch/nn/utils/__pycache__/fusion.cpython-312.pyc,, +torch/nn/utils/__pycache__/init.cpython-312.pyc,, +torch/nn/utils/__pycache__/memory_format.cpython-312.pyc,, +torch/nn/utils/__pycache__/parametrizations.cpython-312.pyc,, +torch/nn/utils/__pycache__/parametrize.cpython-312.pyc,, +torch/nn/utils/__pycache__/prune.cpython-312.pyc,, +torch/nn/utils/__pycache__/rnn.cpython-312.pyc,, +torch/nn/utils/__pycache__/spectral_norm.cpython-312.pyc,, +torch/nn/utils/__pycache__/stateless.cpython-312.pyc,, +torch/nn/utils/__pycache__/weight_norm.cpython-312.pyc,, +torch/nn/utils/_deprecation_utils.py,sha256=lras627A3qDVejBhF_FM4ZhB6nAnzWli3ecJCHxtO6U,1749 +torch/nn/utils/_expanded_weights/__init__.py,sha256=8_VaTgAbp0cjDp-P6-5IHjTP2iKEAI7AOhpj1OdxIZ8,462 +torch/nn/utils/_expanded_weights/__pycache__/__init__.cpython-312.pyc,, +torch/nn/utils/_expanded_weights/__pycache__/conv_expanded_weights.cpython-312.pyc,, +torch/nn/utils/_expanded_weights/__pycache__/conv_utils.cpython-312.pyc,, +torch/nn/utils/_expanded_weights/__pycache__/embedding_expanded_weights.cpython-312.pyc,, +torch/nn/utils/_expanded_weights/__pycache__/expanded_weights_impl.cpython-312.pyc,, +torch/nn/utils/_expanded_weights/__pycache__/expanded_weights_utils.cpython-312.pyc,, +torch/nn/utils/_expanded_weights/__pycache__/group_norm_expanded_weights.cpython-312.pyc,, +torch/nn/utils/_expanded_weights/__pycache__/instance_norm_expanded_weights.cpython-312.pyc,, +torch/nn/utils/_expanded_weights/__pycache__/layer_norm_expanded_weights.cpython-312.pyc,, +torch/nn/utils/_expanded_weights/__pycache__/linear_expanded_weights.cpython-312.pyc,, +torch/nn/utils/_expanded_weights/conv_expanded_weights.py,sha256=hPVbwIzIHQ_uR2h8TEpHD-siklAgUDvAE0Mcs8ThfM4,2669 +torch/nn/utils/_expanded_weights/conv_utils.py,sha256=Nb0Lf-hribs63m6noe68BU8eDMbaVATmGVDwgfabsh4,11056 +torch/nn/utils/_expanded_weights/embedding_expanded_weights.py,sha256=rQ5bAa9B01DBkwK1D4qEBaqYwEmlKW12gFI0YvvOVsY,2939 +torch/nn/utils/_expanded_weights/expanded_weights_impl.py,sha256=8ck-gM098gi48n1UwqB6TIsaHyhh4cxjUXKvAzUBunk,6320 +torch/nn/utils/_expanded_weights/expanded_weights_utils.py,sha256=L3rIvTtpOgkJrkbUaJllT01vIS-8roMYWvXCT1hjS1Q,7770 +torch/nn/utils/_expanded_weights/group_norm_expanded_weights.py,sha256=-WHrj066P7eiOXEAyD-z4D-t833MB0HCwhPqIu0qqiE,3560 +torch/nn/utils/_expanded_weights/instance_norm_expanded_weights.py,sha256=KkH-4Kn5AdXVFhoMMhZk8xfd6GmPVSo2lszHQbBsxak,3835 +torch/nn/utils/_expanded_weights/layer_norm_expanded_weights.py,sha256=rq_9myUT-mKiC9okYIKrN5wMCdwssGlLdleeAqEefT0,3339 +torch/nn/utils/_expanded_weights/linear_expanded_weights.py,sha256=8nsG_nG3XilT5XXKX6DqS_hI0gQpPL7wjWDs58ejBtI,2284 +torch/nn/utils/_named_member_accessor.py,sha256=7MZ2MJAIj0Kc-o5rTmyLLlhjZnsPEIOV3TDdLF7dg3k,14545 +torch/nn/utils/_per_sample_grad.py,sha256=ZFvwzodGg6Ez4QB2edqSCRienr05pjTpMleYEdfiCiM,5869 +torch/nn/utils/clip_grad.py,sha256=1Qg1Xz4BIHkQFxYxkzTbU8Je_ioWf5A61cLgKcfi7Wk,10988 +torch/nn/utils/convert_parameters.py,sha256=6GCTLdUrzv-ymx7WBhHsL4OqEWyty1dlEaCiey3KOo4,3307 +torch/nn/utils/fusion.py,sha256=ke0OiR4dUFdYmOMl5IYdakr-wO9Sf-zM3S9QJQs8xBI,6653 +torch/nn/utils/init.py,sha256=IDz4UrKDFlvKbHJVDVPblAuLZll9uQOaj-_NtZFiLok,2305 +torch/nn/utils/memory_format.py,sha256=pO37ebmv1nJjihtp_fMUdkEe9_EewCue4tIGu0iQVZk,8051 +torch/nn/utils/parametrizations.py,sha256=33V8VkP-mhipNtUWrCI5lw1OKbjHxKSMM5_7NM8L4lU,26294 +torch/nn/utils/parametrize.py,sha256=vSXgRmNxUoBEh4ro7ugCr36tgQwyS2IVLYoqxO90Rwg,36879 +torch/nn/utils/prune.py,sha256=VQ7JY5vT4Cn_19vANBcTfCQm6rEAzZNLSTEKqIsw1rc,59141 +torch/nn/utils/rnn.py,sha256=pHam2WXB3zS-9A-bXYk9DQEFfoij3EeyHwWnjsqxac4,23655 +torch/nn/utils/spectral_norm.py,sha256=_QfM578F66a-JVYLuNW6o40d-U1MQ_mj4C5FFi_6EkY,15279 +torch/nn/utils/stateless.py,sha256=6nIXx154l6F9WQPmWfQw6Fj0th2E4JDaJk61AlxqCyI,12666 +torch/nn/utils/weight_norm.py,sha256=GT6RgjuceInS39ocMBXNYF_-cbeFYFDDtdQmyYTrdKw,6045 +torch/onnx/__init__.py,sha256=65bpNYTB_WvXYDtwekG5dCAMDA9ZKd_WpY-kdkvhaYA,20418 +torch/onnx/__pycache__/__init__.cpython-312.pyc,, +torch/onnx/__pycache__/_constants.cpython-312.pyc,, +torch/onnx/__pycache__/_deprecation.cpython-312.pyc,, +torch/onnx/__pycache__/_experimental.cpython-312.pyc,, +torch/onnx/__pycache__/_exporter_states.cpython-312.pyc,, +torch/onnx/__pycache__/_flags.cpython-312.pyc,, +torch/onnx/__pycache__/_globals.cpython-312.pyc,, +torch/onnx/__pycache__/_onnx_supported_ops.cpython-312.pyc,, +torch/onnx/__pycache__/_type_utils.cpython-312.pyc,, +torch/onnx/__pycache__/errors.cpython-312.pyc,, +torch/onnx/__pycache__/operators.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_caffe2.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_helper.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset10.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset11.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset12.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset13.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset14.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset15.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset16.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset17.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset18.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset19.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset20.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset7.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset8.cpython-312.pyc,, +torch/onnx/__pycache__/symbolic_opset9.cpython-312.pyc,, +torch/onnx/__pycache__/utils.cpython-312.pyc,, +torch/onnx/__pycache__/verification.cpython-312.pyc,, +torch/onnx/_constants.py,sha256=EhqFjUyMEc_eE7b4KT282pu3hg4Usd0xvi8uj9falZA,633 +torch/onnx/_deprecation.py,sha256=6p6cRHkjWzpF8p7uY9lBDO_zTM3pz5PLPC-QFnNq5RM,2344 +torch/onnx/_experimental.py,sha256=4GvGWx1Pbo0EZA852FFycZ50nC-_v02cw3oJvDMt_oI,1044 +torch/onnx/_exporter_states.py,sha256=_LAxhziJCdNBld4Ccv-uW3OcwVd6BwZfkiXWmIMNrvc,456 +torch/onnx/_flags.py,sha256=VD99XgW1CZ-s1vXhM1IoHCCfxer2EO9dfsKH0K0steE,1333 +torch/onnx/_globals.py,sha256=_ArQRBeRMvEFMB1xC1YP05iZgJpX9ysf31YWc7TgfXI,3091 +torch/onnx/_internal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/onnx/_internal/__pycache__/__init__.cpython-312.pyc,, +torch/onnx/_internal/__pycache__/_exporter_legacy.cpython-312.pyc,, +torch/onnx/_internal/__pycache__/_lazy_import.cpython-312.pyc,, +torch/onnx/_internal/__pycache__/io_adapter.cpython-312.pyc,, +torch/onnx/_internal/__pycache__/jit_utils.cpython-312.pyc,, +torch/onnx/_internal/__pycache__/onnx_proto_utils.cpython-312.pyc,, +torch/onnx/_internal/__pycache__/onnxruntime.cpython-312.pyc,, +torch/onnx/_internal/__pycache__/registration.cpython-312.pyc,, +torch/onnx/_internal/_exporter_legacy.py,sha256=ye_m9UdzoUzFeYGJfcRTZIhMaPstxAqUj6lcNX_fYkM,34771 +torch/onnx/_internal/_lazy_import.py,sha256=NtfeGS8_I-sOwfF1FUHIXHyTA_eKYXQdtXaZi5AXK_Y,1242 +torch/onnx/_internal/diagnostics/__init__.py,sha256=ovZ3NnmvPo5kohkWlljyp6I-OwCaDlYZblPaGJ76Wb4,456 +torch/onnx/_internal/diagnostics/__pycache__/__init__.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/__pycache__/_diagnostic.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/__pycache__/_rules.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/_diagnostic.py,sha256=30gvz0FrUj8wIMH33_NBCYrdEvjxw-8_MOFB6Shq92M,7191 +torch/onnx/_internal/diagnostics/_rules.py,sha256=SFeH70Pk2KRYxBsWkeJtpJ6bUFP_TLLNUHsJNAXIA_M,37821 +torch/onnx/_internal/diagnostics/infra/__init__.py,sha256=KCYUK651vJHzuPnTdVAxONkgrN7LDLethVYNs-1XLXI,608 +torch/onnx/_internal/diagnostics/infra/__pycache__/__init__.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/__pycache__/_infra.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/__pycache__/context.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/__pycache__/decorator.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/__pycache__/formatter.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/__pycache__/utils.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/_infra.py,sha256=md3VqemmjgPA8brDlJqMcafDFgdKbjgeQh7K2ZNJKms,9994 +torch/onnx/_internal/diagnostics/infra/context.py,sha256=A9ZUbh7s4CGrEavyCUDs8de8qDr9FXjp8GTfXwclu4E,16723 +torch/onnx/_internal/diagnostics/infra/decorator.py,sha256=8zJoiGVThiOSOZ2j6kiKJrKHAXFpbKQvYVLZ4HVCQ3I,5560 +torch/onnx/_internal/diagnostics/infra/formatter.py,sha256=GNzNV430J8oIKkct2FASGkKhOCf-0II2UQeD4VSAvLA,2900 +torch/onnx/_internal/diagnostics/infra/sarif/__init__.py,sha256=jAbN9zuQsYOMmGaD9TZCnrJB-SvShmj_oh1fYEuJQjU,5086 +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/__init__.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_address.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_artifact.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_artifact_change.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_artifact_content.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_artifact_location.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_attachment.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_code_flow.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_configuration_override.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_conversion.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_edge.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_edge_traversal.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_exception.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_external_properties.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_external_property_file_reference.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_external_property_file_references.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_fix.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_graph.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_graph_traversal.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_invocation.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_location.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_location_relationship.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_logical_location.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_message.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_multiformat_message_string.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_node.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_notification.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_physical_location.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_property_bag.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_rectangle.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_region.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_replacement.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_reporting_configuration.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_reporting_descriptor.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_reporting_descriptor_reference.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_reporting_descriptor_relationship.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_result.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_result_provenance.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_run.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_run_automation_details.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_sarif_log.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_special_locations.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_stack.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_stack_frame.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_suppression.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_thread_flow.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_thread_flow_location.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_tool.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_tool_component.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_tool_component_reference.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_translation_metadata.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_version_control_details.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_web_request.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/_web_response.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/__pycache__/version.cpython-312.pyc,, +torch/onnx/_internal/diagnostics/infra/sarif/_address.py,sha256=ZNOP-iRlNe63xqc4byTh06G4UKDFBkCznHVIyhn3trQ,1796 +torch/onnx/_internal/diagnostics/infra/sarif/_artifact.py,sha256=O5U3Pym0xtuK60DrNkLrtUNUCi95EfoLyo90LLLKFT0,3114 +torch/onnx/_internal/diagnostics/infra/sarif/_artifact_change.py,sha256=dSF50v4ElffPTKCNDjR2xZXLa22lBNbchUqQ6cfkU9A,924 +torch/onnx/_internal/diagnostics/infra/sarif/_artifact_content.py,sha256=NzaYC5-rMKnVH2f21GustcNKr1203V1NSZoGoWqVlus,1047 +torch/onnx/_internal/diagnostics/infra/sarif/_artifact_location.py,sha256=lMjCIWD-gJ7mYZqjTz9uQDo6BnIPTAPT5RW1dbxgvEY,1094 +torch/onnx/_internal/diagnostics/infra/sarif/_attachment.py,sha256=8e3jz06RP8-fx6su07jg1uJuidYvhIXaJmOeVgcXtJ0,1252 +torch/onnx/_internal/diagnostics/infra/sarif/_code_flow.py,sha256=6a23kIEmj7d4haw3f4UAyxpJ_tYm4--ptDoNDO_v6qA,966 +torch/onnx/_internal/diagnostics/infra/sarif/_configuration_override.py,sha256=5_TYIXyogjZiWsiBG9IF5RiaW8L7NKl_x1YOkOD29r4,1035 +torch/onnx/_internal/diagnostics/infra/sarif/_conversion.py,sha256=wHCo2X9UxWvs8IFm8SLlwdJ-BTnBV3lcd8YxJ3ex3GQ,1207 +torch/onnx/_internal/diagnostics/infra/sarif/_edge.py,sha256=_KYSY50co0iIyoNWTc1FBl-ejMEjaFgI1zqjJRg7tBc,1014 +torch/onnx/_internal/diagnostics/infra/sarif/_edge_traversal.py,sha256=3DJxwVlSXSIM54gpV29bG8z16VzbWbw6Fxi5x7rRgZg,1114 +torch/onnx/_internal/diagnostics/infra/sarif/_exception.py,sha256=F8bzmM9u3fNZ5VuMipQbQaUvhgr7CL5ET0vR-RXjmjs,1205 +torch/onnx/_internal/diagnostics/infra/sarif/_external_properties.py,sha256=_U-_ndKdwWmHMPpOO6_RVgNW8EApnlFnXYrsDs-HFEM,3934 +torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_reference.py,sha256=Y30i2ovq-gpwjHTIpFfE1M6AKTrJkHITSmU4Wy-TJUg,1153 +torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_references.py,sha256=osfKAgFwhveYDKCqA1QG1SkiwivBLmGsqe-185kDGFg,3987 +torch/onnx/_internal/diagnostics/infra/sarif/_fix.py,sha256=uS_9tEeuAcYrOX8de5onv_EEEcQbXInApnPsM5aZ73w,1100 +torch/onnx/_internal/diagnostics/infra/sarif/_graph.py,sha256=lyFDALNv38kmZ3OobIGohZI3f16_pMiGUljMZYme0UM,1125 +torch/onnx/_internal/diagnostics/infra/sarif/_graph_traversal.py,sha256=vNWQUv78BoCaza4QBQvlU-AP4ePduCicQZIbSrDJWQo,1466 +torch/onnx/_internal/diagnostics/infra/sarif/_invocation.py,sha256=E8ZSp4p4qaFJC_XEvLPpdA-awyXuIFFyRIs4iFMyy10,4782 +torch/onnx/_internal/diagnostics/infra/sarif/_location.py,sha256=shLdO-FoF9LM3eZCJU_7EBYgZM-aUgrgN8IdKNxXgSY,1690 +torch/onnx/_internal/diagnostics/infra/sarif/_location_relationship.py,sha256=MJ8gz_o_DREAav-_wnF4zi0yYj1ursEaqNd8-W-E6OY,992 +torch/onnx/_internal/diagnostics/infra/sarif/_logical_location.py,sha256=VqAu2yPkiqAtbQj8RnD6gIEnR9kg_oQk7u3VrqJOcLU,1353 +torch/onnx/_internal/diagnostics/infra/sarif/_message.py,sha256=peyaNukCrpdTBAClVfLmZYpmEc3ZIhsOL5hWlqsEXcU,1095 +torch/onnx/_internal/diagnostics/infra/sarif/_multiformat_message_string.py,sha256=gdN_x40seWjZGyJxClEsqN23czYyVYJnt64jA395H9A,830 +torch/onnx/_internal/diagnostics/infra/sarif/_node.py,sha256=ya8p-RjhV9P4nL7mRAd5OtDsgrJwbXjICtwESJ2Mx28,1111 +torch/onnx/_internal/diagnostics/infra/sarif/_notification.py,sha256=Y29RNaU9mEyTR4VIGoQ8_--rVGzHTP0Y8WqBk2Y8gYs,1987 +torch/onnx/_internal/diagnostics/infra/sarif/_physical_location.py,sha256=G4iuvu5Cq3in5Ee6oPxu4YJcJk4mEFhZdeNIlmABLyo,1387 +torch/onnx/_internal/diagnostics/infra/sarif/_property_bag.py,sha256=TKW_1Rh_iESim8oCMgjfU76ORQsVLPLtCIoYIjkyIrQ,515 +torch/onnx/_internal/diagnostics/infra/sarif/_rectangle.py,sha256=J4Pqy2bbsozcnJcoaz0Bo2PTFyx-UoiO-bstJ6uDcgo,1195 +torch/onnx/_internal/diagnostics/infra/sarif/_region.py,sha256=Z0SXiFwBjbj5cI9_B8whE1utpUNmB_GuydpHvDYIwPY,2089 +torch/onnx/_internal/diagnostics/infra/sarif/_replacement.py,sha256=tGN8ELVN2rHdEV4eVgRwV7i8rXQVFIuzTqx9R9xMyI4,936 +torch/onnx/_internal/diagnostics/infra/sarif/_reporting_configuration.py,sha256=9030ezZgywkihb2qTyDYllMSn4zAQMR-tFpMOxqT52Y,1169 +torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor.py,sha256=-CecCl7_Y9h6rBkZvP8cxmFWMn27yC5W3bGbvLqFVlw,2839 +torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_reference.py,sha256=Ej2lCpkCeYg9GHTc2TYegGmYMXPmzVrKSZs2ZlIJpGI,1214 +torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_relationship.py,sha256=cF77X46wCz4-QndlHeaKlFgM-Ru3eFAMMqMRV3lkkGs,1144 +torch/onnx/_internal/diagnostics/infra/sarif/_result.py,sha256=4XkhNXIWBOHcptajW3osX4Z1F4Cxp9Ed0TDdgHlzMiY,5218 +torch/onnx/_internal/diagnostics/infra/sarif/_result_provenance.py,sha256=lUNLEYXylugx6fdW_8xBIdEdE0K1nb3vZp7ndI4MBZY,1605 +torch/onnx/_internal/diagnostics/infra/sarif/_run.py,sha256=d34a1Wbt7iJulnKVwAXxpAKukB3rZmEH6mRcarwzk5g,5492 +torch/onnx/_internal/diagnostics/infra/sarif/_run_automation_details.py,sha256=NVB54dfxaxPMPBI1WExyIVRiuvWG3ZWp3HKPyquvST0,1169 +torch/onnx/_internal/diagnostics/infra/sarif/_sarif_log.py,sha256=bFeJF12bVXm1Y3LuPTWnVrnPqWmyzzeQu4Zq75MjTso,1274 +torch/onnx/_internal/diagnostics/infra/sarif/_special_locations.py,sha256=9we6QvsRgPGQ7KREcTWSLxCXm1sNJFa7154xig0Rqf8,809 +torch/onnx/_internal/diagnostics/infra/sarif/_stack.py,sha256=FMjT9GTAK9E7UKaHSg9nPlLbX4guKY3vjTZmrMjwE0s,890 +torch/onnx/_internal/diagnostics/infra/sarif/_stack_frame.py,sha256=3GEKD0dE6Yu7FvukgepB17wO926APQXaburSatd7YvE,1121 +torch/onnx/_internal/diagnostics/infra/sarif/_suppression.py,sha256=GTFW2Vqu9JxE6bCToKmu86zPwXt-UWs4J4KqUEqRy5s,1285 +torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow.py,sha256=2YUreKny1TtMp0IPXqU2zXhBObW3Mahkv0ByBX7z4D8,1391 +torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow_location.py,sha256=a1oHmUbT-bL55FSn9Yjgy1Dt2qd7c-xAb5QKaLOjlTA,2584 +torch/onnx/_internal/diagnostics/infra/sarif/_tool.py,sha256=I75BzGRkPMKIgD6CKJQOasKu_6atrxKmeykGedReD6U,875 +torch/onnx/_internal/diagnostics/infra/sarif/_tool_component.py,sha256=GxdFgTNmHMX_UGGrEpcKVBq0eMr5nm7Wo_M7Prb_U9k,5152 +torch/onnx/_internal/diagnostics/infra/sarif/_tool_component_reference.py,sha256=Gg_8NY_a8EIeDTQHw1FJ07es2rBTxM-keSyx_5BdDuA,977 +torch/onnx/_internal/diagnostics/infra/sarif/_translation_metadata.py,sha256=HU01ufn69yzq9fEy661YDTx9BnNamyVxeB2hhmU8tlU,1548 +torch/onnx/_internal/diagnostics/infra/sarif/_version_control_details.py,sha256=gg8U3DKlUHJKiwsoQfyqQhgpQLyYT_HoTPjgWpp3wm4,1478 +torch/onnx/_internal/diagnostics/infra/sarif/_web_request.py,sha256=LxrZdDuSZB8Seas64yZwIO05MGpBdTK19FOWaLLJ10g,1591 +torch/onnx/_internal/diagnostics/infra/sarif/_web_response.py,sha256=orHDuEFOFIHFxZAt1HRLbMpQV8X6YRrj42H1tSVz1Jg,1659 +torch/onnx/_internal/diagnostics/infra/sarif/version.py,sha256=fxrO-DiFeLYYfxkS1Vuq5pod8xlLUdwJHXe4Ta5BSl8,192 +torch/onnx/_internal/diagnostics/infra/utils.py,sha256=GebUGbHEz1Habzlx6xoFsGN74-e-CGE_acZu6U844P4,2411 +torch/onnx/_internal/exporter/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/onnx/_internal/exporter/__pycache__/__init__.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_analysis.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_building.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_capture_strategies.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_compat.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_core.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_decomp.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_dispatching.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_errors.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_fx_passes.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_ir_passes.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_isolated.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_onnx_program.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_registration.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_reporting.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_schemas.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_tensors.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_testing.cpython-312.pyc,, +torch/onnx/_internal/exporter/__pycache__/_verification.cpython-312.pyc,, +torch/onnx/_internal/exporter/_analysis.py,sha256=3LSg_DAllvOkblzqlGqzRqIgnYKFpvop2nTih6jUZ28,9052 +torch/onnx/_internal/exporter/_building.py,sha256=lkAFCsVG0bzgC9TkaMea8do4TtC2SHg6kL9qyTi8KfA,30090 +torch/onnx/_internal/exporter/_capture_strategies.py,sha256=2IICwdU5t3nzG_62fjdxelfQCW1Ogr5ZZrcGlzMZP1k,13703 +torch/onnx/_internal/exporter/_compat.py,sha256=2WRON-mgbK9HcOl38mLn6N53OjE-GoE3r3ZT6gaBVYk,15200 +torch/onnx/_internal/exporter/_core.py,sha256=_z28pdzmbCSPwuL1iYvq64myYdIuwlzQqkYLTsuPpaU,64881 +torch/onnx/_internal/exporter/_decomp.py,sha256=aM0csY7jjnw13AU6a9YldS3twqk8n8eDPiAY9_dhrfM,3187 +torch/onnx/_internal/exporter/_dispatching.py,sha256=-0PN5UKmliKi-Frp2PVAmJ3LJbpt8fBXKB26MaiZ-d4,14692 +torch/onnx/_internal/exporter/_errors.py,sha256=tOTcRIR3plnuELRHQYP5jA48Cb7r5IF_Ynp5EZotxJQ,556 +torch/onnx/_internal/exporter/_fx_passes.py,sha256=W6fnqX397Wqz1O4bIpBQs51iTfbkseCNGs2wkaVsoMg,1967 +torch/onnx/_internal/exporter/_ir_passes.py,sha256=M9viPVgRcVDHrKd_fFktZX7FsRqwL5RsDpjAHFMJs1k,3403 +torch/onnx/_internal/exporter/_isolated.py,sha256=tw6KBnNa9iXjNBt23OieSLhAJLVs_KSi9pd8X39FjHc,1619 +torch/onnx/_internal/exporter/_onnx_program.py,sha256=3ZErMu128sFg4-I41dy0UYSB6BSb_x7XjuWqauC9WrU,13129 +torch/onnx/_internal/exporter/_registration.py,sha256=yWmxBAp-YbF91_dyyeVWtFgjtu-wtuBVVBn_qj9GMRM,10990 +torch/onnx/_internal/exporter/_reporting.py,sha256=XSkZ86crI9QZagytR5KnJB8GgpCKBpBLVvSIqebmwG8,7360 +torch/onnx/_internal/exporter/_schemas.py,sha256=6TRHrOdKO3TwGLYvkCWeu4iJI77Z9gXiLyJNqTvuuY8,21154 +torch/onnx/_internal/exporter/_tensors.py,sha256=3OqfVx1KGjEM2ZvTuzU8G8j1GvjqcqhXQk8EisHRdNg,2562 +torch/onnx/_internal/exporter/_testing.py,sha256=NSckNEU9UP1CoimitLdwBFBQa_zwEOh8XvsxdDOqWyg,2650 +torch/onnx/_internal/exporter/_torchlib/__init__.py,sha256=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN_XKdLCPjaYaY,2 +torch/onnx/_internal/exporter/_torchlib/__pycache__/__init__.cpython-312.pyc,, +torch/onnx/_internal/exporter/_torchlib/__pycache__/_torchlib_registry.cpython-312.pyc,, +torch/onnx/_internal/exporter/_torchlib/_torchlib_registry.py,sha256=iw8zbVlJNCe220fypiSj3yVS1JFi2Npl4pNsivJ0yYQ,872 +torch/onnx/_internal/exporter/_torchlib/ops/__init__.py,sha256=37v7pdMILel2hZtg9LSM9z6jO6QhZLbxVhwUBLPnp0k,122 +torch/onnx/_internal/exporter/_torchlib/ops/__pycache__/__init__.cpython-312.pyc,, +torch/onnx/_internal/exporter/_torchlib/ops/__pycache__/hop.cpython-312.pyc,, +torch/onnx/_internal/exporter/_torchlib/ops/hop.py,sha256=yZrVMQk9tTSwlITNLw1kJMaIoc52Y_RK_DzZZAnYO9U,2973 +torch/onnx/_internal/exporter/_verification.py,sha256=PXUWxLwsYpYZSGgH8UAUsg169xV8Sgd4F9zgxsWj4j0,3862 +torch/onnx/_internal/fx/__init__.py,sha256=JYi5iirfH0wnyf-7etmNfyP2Kkqi5kajEZSd8yMjOQ0,180 +torch/onnx/_internal/fx/__pycache__/__init__.cpython-312.pyc,, +torch/onnx/_internal/fx/__pycache__/_pass.cpython-312.pyc,, +torch/onnx/_internal/fx/__pycache__/decomposition_skip.cpython-312.pyc,, +torch/onnx/_internal/fx/__pycache__/decomposition_table.cpython-312.pyc,, +torch/onnx/_internal/fx/__pycache__/diagnostics.cpython-312.pyc,, +torch/onnx/_internal/fx/__pycache__/dynamo_graph_extractor.cpython-312.pyc,, +torch/onnx/_internal/fx/__pycache__/fx_onnx_interpreter.cpython-312.pyc,, +torch/onnx/_internal/fx/__pycache__/fx_symbolic_graph_extractor.cpython-312.pyc,, +torch/onnx/_internal/fx/__pycache__/onnxfunction_dispatcher.cpython-312.pyc,, +torch/onnx/_internal/fx/__pycache__/patcher.cpython-312.pyc,, +torch/onnx/_internal/fx/__pycache__/registration.cpython-312.pyc,, +torch/onnx/_internal/fx/__pycache__/serialization.cpython-312.pyc,, +torch/onnx/_internal/fx/__pycache__/type_utils.cpython-312.pyc,, +torch/onnx/_internal/fx/_pass.py,sha256=uj7jFW4rB2RpsHwLjHMRJno7JoceM-PMYc_M1S5_xuI,12781 +torch/onnx/_internal/fx/analysis/__init__.py,sha256=wpBQ6kIhbrXKwLqOyBlmFfzjbqixGo4Gz75Z3ak3HDI,114 +torch/onnx/_internal/fx/analysis/__pycache__/__init__.cpython-312.pyc,, +torch/onnx/_internal/fx/analysis/__pycache__/unsupported_nodes.cpython-312.pyc,, +torch/onnx/_internal/fx/analysis/unsupported_nodes.py,sha256=RQtAhHU6MmiUj48X2XrPVLCtvFx4B1IHnkc9NNk0fUA,3475 +torch/onnx/_internal/fx/decomposition_skip.py,sha256=lEswO1ipAjmhZnSWQyxZVLNLl4PKjHQkh6XiqLdnwWI,8577 +torch/onnx/_internal/fx/decomposition_table.py,sha256=GwZxGhZjpo7HATgrcSJqAWa8I-CkR6EoN3cB7ALDGpU,5242 +torch/onnx/_internal/fx/diagnostics.py,sha256=j_A2WxvmG9kEjX1rGd6jTfrCkazCprJdJhPlwDjd7mA,9196 +torch/onnx/_internal/fx/dynamo_graph_extractor.py,sha256=C9oqYNq_McsCtACf95-7lQ7YlrZY8mqt81NFphR54c0,8447 +torch/onnx/_internal/fx/fx_onnx_interpreter.py,sha256=_zueyACpO68Vo_go4RzsVw9VKqQAT7AEAE7lKSaDh44,35059 +torch/onnx/_internal/fx/fx_symbolic_graph_extractor.py,sha256=IcsW88y8iS86DOtn1w1xRHT5VqxYHF5-l9ZItGg1Y1I,10335 +torch/onnx/_internal/fx/onnxfunction_dispatcher.py,sha256=xdu9n9VepNW5tSvhdvHlgbZJ9E26RhEI5-QG6R6XUYg,38644 +torch/onnx/_internal/fx/passes/__init__.py,sha256=4WtCudUZpJnuoAJIr_yAUSwYlQ81uXN01_J-sYJ4dNI,570 +torch/onnx/_internal/fx/passes/__pycache__/__init__.cpython-312.pyc,, +torch/onnx/_internal/fx/passes/__pycache__/_utils.cpython-312.pyc,, +torch/onnx/_internal/fx/passes/__pycache__/decomp.cpython-312.pyc,, +torch/onnx/_internal/fx/passes/__pycache__/functionalization.cpython-312.pyc,, +torch/onnx/_internal/fx/passes/__pycache__/modularization.cpython-312.pyc,, +torch/onnx/_internal/fx/passes/__pycache__/readability.cpython-312.pyc,, +torch/onnx/_internal/fx/passes/__pycache__/type_promotion.cpython-312.pyc,, +torch/onnx/_internal/fx/passes/__pycache__/virtualization.cpython-312.pyc,, +torch/onnx/_internal/fx/passes/_utils.py,sha256=1Kw1B3Arm2Wf_ApoIV7O1Z5lxV634oX1nBDA2come0Y,4311 +torch/onnx/_internal/fx/passes/decomp.py,sha256=4cjDJMfy_fz_Vbvef7apfE3Ie7_3aUAVg66J6R4P4lc,3639 +torch/onnx/_internal/fx/passes/functionalization.py,sha256=1wdMoK7y-ruKQnD90DicGXJu8Dj6JMaruvkRmQZETZk,6506 +torch/onnx/_internal/fx/passes/modularization.py,sha256=tGCxEADGrhiSYBTVk37KrHqic7KGLj0DfzSaXnPe_-I,35042 +torch/onnx/_internal/fx/passes/readability.py,sha256=uMDWcKK-jEgwsS2i2T3G75gZeOeQx5xmllsrGqfEous,5999 +torch/onnx/_internal/fx/passes/type_promotion.py,sha256=YqV6ecWg7zk6vHFkRIB4HhzB6H1Hvrj31sFjUl4flAs,68273 +torch/onnx/_internal/fx/passes/virtualization.py,sha256=q_VQ4eUT7LeKIHKUR3jzKAAFLljHzOfa2lcg7Jon9PQ,3909 +torch/onnx/_internal/fx/patcher.py,sha256=jiYEPrsE0H3ILyZuqvie_4oRl8rUnS0RabCXRyCfw6o,6198 +torch/onnx/_internal/fx/registration.py,sha256=UhahO2FHsh4oXasYu92yQSZ8gk5hMHcbbq_ZKhk8bdo,3071 +torch/onnx/_internal/fx/serialization.py,sha256=LxxVckYIsZZUG3t7FAu1HgO95Ql3dxNvLMGuKXVSJiA,11676 +torch/onnx/_internal/fx/type_utils.py,sha256=JDQ50kK-jP8--vnrZBy84-vNJiNBX-mjv9FcK0Qc1oY,8338 +torch/onnx/_internal/io_adapter.py,sha256=I5BKalMukNqX0ULI_d3x-Tr2455YXWPN6AFT1C7Vs7c,23816 +torch/onnx/_internal/jit_utils.py,sha256=UITdGYRkePtA_aiIhA25wLoC5RHv_3HLw3zURNy6yi0,14475 +torch/onnx/_internal/onnx_proto_utils.py,sha256=oK88a76rJo6Zfn8A19yko0PxowIkQU3DQU7UV2aXa-8,9417 +torch/onnx/_internal/onnxruntime.py,sha256=RbnL_3CG-gzuTtrpEYXOT_AzEc0LSKpwGFgwMfCWrkE,54036 +torch/onnx/_internal/registration.py,sha256=Yz_vBSDmTC8432IeysqfKaHotxDijd-QzyDG0dtT-fg,11391 +torch/onnx/_onnx_supported_ops.py,sha256=6Rz3W55srAmUgGfshnSrLfMIjNLtPurGBAJju0s5LVw,3429 +torch/onnx/_type_utils.py,sha256=abq61yp8OE_QvADAJqpAKmwyB7rg-EJvP0Gzg_kq6EM,14331 +torch/onnx/errors.py,sha256=8lJgiDMmxPXd2G6znkYqc-GK2jZ1uG6MROzifSoJnFY,3837 +torch/onnx/operators.py,sha256=O6pzh7Rc4YoZzkrZVZmM8Th0hsuOKBJimTTy4oyA800,1260 +torch/onnx/symbolic_caffe2.py,sha256=0UX9WzKVUq9TCBo4ZvbbMZZqBiyoVTCp2U-SAUlmBQ4,11332 +torch/onnx/symbolic_helper.py,sha256=zn3fXCo8ssn0enrRgOzMLQFV3RE3wZC7dsYHorpTIQA,84568 +torch/onnx/symbolic_opset10.py,sha256=KFSw74x6rQWUhDtBK8rbWPiQEVPmc_Zs3Sy-FUUSjUE,38546 +torch/onnx/symbolic_opset11.py,sha256=DBHcLDGs69mI3mWxAyJoVzBHgdDDj6HEZ2DJMrWXQzE,54741 +torch/onnx/symbolic_opset12.py,sha256=X-MUrvq1vcXVE94I2pMw5_NB6JnqOza8-KGOJ4pgNcg,16123 +torch/onnx/symbolic_opset13.py,sha256=yWLnqSV2Ksk7Y9fYpEOOPVlomDA58ExAfbggBiXkwBk,42367 +torch/onnx/symbolic_opset14.py,sha256=YrjSNwlMVzkid9xhVe6P6qZFYA1Rt5-FH9S1ghRkobI,9738 +torch/onnx/symbolic_opset15.py,sha256=hHHqvUgSJaTzEsrIxeIMbLjvFkP1tXzI5BxgIPVYDms,2952 +torch/onnx/symbolic_opset16.py,sha256=Bf94S9mAN9SU-npqhjNXwKPyFs6U8r5dg5tQhtvX8ao,6595 +torch/onnx/symbolic_opset17.py,sha256=VklpFtvHKUWZ9eZvP-R-P3kuVsBiwJV4_nk5T2s6HmA,7938 +torch/onnx/symbolic_opset18.py,sha256=9tWApWQOazWRZoQ0zds9FgojxSFyhmJA97OnfA_inkY,8342 +torch/onnx/symbolic_opset19.py,sha256=0uT93b3lH5u5cpKr9CWtyJbLhNYw2l9a3PoEeghSHjs,594 +torch/onnx/symbolic_opset20.py,sha256=w7ITFC4UOpOdL22sSX064fwg7T2fWKyJ2vQL_vufh_k,2538 +torch/onnx/symbolic_opset7.py,sha256=IxAcpgFoamEGQygtwGX_Ftfqt92o77k_XYmESHFLLWs,2185 +torch/onnx/symbolic_opset8.py,sha256=iSSWlbGVnme0K4VrDOZ34XXAMEpB4nZnLHTJVi-BkEQ,15455 +torch/onnx/symbolic_opset9.py,sha256=041-GkPngwcqUdCVUbEXH6LnDls04QO1sYEyPqVF_f8,230578 +torch/onnx/utils.py,sha256=pb54WGwE8xv0YIU4MSpU8tJnTihCeQFTcNbP2ibvgbk,75873 +torch/onnx/verification.py,sha256=VaUt_Cn1PwdRywVdcW-tuBdxyfbvPRCu0yAF3cXrXKk,70253 +torch/optim/__init__.py,sha256=Y98Sxa2HJ7ZGOLDFXCnRt5pJeni8pJpZuil6Jk3o2js,2181 +torch/optim/__pycache__/__init__.cpython-312.pyc,, +torch/optim/__pycache__/_adafactor.cpython-312.pyc,, +torch/optim/__pycache__/_functional.cpython-312.pyc,, +torch/optim/__pycache__/adadelta.cpython-312.pyc,, +torch/optim/__pycache__/adagrad.cpython-312.pyc,, +torch/optim/__pycache__/adam.cpython-312.pyc,, +torch/optim/__pycache__/adamax.cpython-312.pyc,, +torch/optim/__pycache__/adamw.cpython-312.pyc,, +torch/optim/__pycache__/asgd.cpython-312.pyc,, +torch/optim/__pycache__/lbfgs.cpython-312.pyc,, +torch/optim/__pycache__/lr_scheduler.cpython-312.pyc,, +torch/optim/__pycache__/nadam.cpython-312.pyc,, +torch/optim/__pycache__/optimizer.cpython-312.pyc,, +torch/optim/__pycache__/radam.cpython-312.pyc,, +torch/optim/__pycache__/rmsprop.cpython-312.pyc,, +torch/optim/__pycache__/rprop.cpython-312.pyc,, +torch/optim/__pycache__/sgd.cpython-312.pyc,, +torch/optim/__pycache__/sparse_adam.cpython-312.pyc,, +torch/optim/__pycache__/swa_utils.cpython-312.pyc,, +torch/optim/_adafactor.py,sha256=0k1SwVTFTdlgsXkeZ2jEQSULlRvExbKMHmnvQxYhLq8,28591 +torch/optim/_functional.py,sha256=p70Zv11QPY8dKSFqx2bvBBnlkj0hFa2UIIYQUHv1oJI,3349 +torch/optim/_multi_tensor/__init__.py,sha256=YirJavwrPKwjLZ07_kEutMURLe4JZnyhoV7ps_snnqc,1056 +torch/optim/_multi_tensor/__init__.pyi,sha256=X8HBdb-Ka3ICBb5zpGJPT68rp59dOYJF8KXahMT6TAs,552 +torch/optim/_multi_tensor/__pycache__/__init__.cpython-312.pyc,, +torch/optim/adadelta.py,sha256=PXgZ8aZBayovDdgllyZGdpBLFNRi2g1Ly-3m7GpZi5U,17032 +torch/optim/adagrad.py,sha256=oqZ8uepaK3G9qLxISJJY5PmIPBNYVsIFLTvrWnmcBaM,21257 +torch/optim/adam.py,sha256=oY1ejQR7B5DtKobNYdPd_8B33QT7kOTkX0YlGu3NexU,36934 +torch/optim/adamax.py,sha256=jwAtlOI1ek1V-BLjnViCAbiAT2p7FsAeH9uQZ8PzeVk,17701 +torch/optim/adamw.py,sha256=7RPu-dKHWWbFsOZjcTRMnlZl1B6sgmwFUY044TCB_n0,35973 +torch/optim/asgd.py,sha256=9ZIey5gWuj1XJIILIl-1SC48AMMJbVviryTyDrQE0-w,16530 +torch/optim/lbfgs.py,sha256=vf-rZqksN5IUjKWB3R-DGnd7FwFRgohjz1tOS72Us2E,18532 +torch/optim/lr_scheduler.py,sha256=60J5wFX4bmltJmUlO6i473himlXCBZAJ8TN_uFoZtSw,88437 +torch/optim/nadam.py,sha256=y7S-zUNrljBo6u4AAFwbtMYEVNdPI57oSaFfb2Bnh74,26792 +torch/optim/optimizer.py,sha256=tvj-Kn8nkNTu3GkQuCIAMGw0DSEkAhFRcW34zzxR24w,48573 +torch/optim/radam.py,sha256=kVldna5GHjY6wbQiF5DmcoP_QiXiOI6oLPsu8iwXe70,25077 +torch/optim/rmsprop.py,sha256=0z7IR4X_l6Uwy4GfVPMZ74CPhoQ5dgl7dQbB6M1aQwM,20840 +torch/optim/rprop.py,sha256=p4KXM3u2K9Es_OkZhP5JTErdZwJBtub80EJlJM37rdQ,17958 +torch/optim/sgd.py,sha256=mWVRB7ceZkLvyVmcRRWJoOjxem9KwrnMvkzSHkKWvSs,19567 +torch/optim/sparse_adam.py,sha256=rMXm5wz6J6DLtyBujwCklBkNLrInZSvQWNaxRFS7HMg,8129 +torch/optim/swa_utils.py,sha256=JR1qgbS-HFD2PRWBJhIWTNIKqvFN6npqXHNGfc0RYbc,19548 +torch/overrides.py,sha256=s2l-yFTNC8PNww-HhBWrKtGCu-TPirbraGp9lzYq30E,107131 +torch/package/__init__.py,sha256=LV4HkPItiQkYGteUQapkAQLVBv5mYC1zTfYdHSXZxbg,400 +torch/package/__pycache__/__init__.cpython-312.pyc,, +torch/package/__pycache__/_digraph.cpython-312.pyc,, +torch/package/__pycache__/_directory_reader.cpython-312.pyc,, +torch/package/__pycache__/_importlib.cpython-312.pyc,, +torch/package/__pycache__/_mangling.cpython-312.pyc,, +torch/package/__pycache__/_mock.cpython-312.pyc,, +torch/package/__pycache__/_package_pickler.cpython-312.pyc,, +torch/package/__pycache__/_package_unpickler.cpython-312.pyc,, +torch/package/__pycache__/_stdlib.cpython-312.pyc,, +torch/package/__pycache__/file_structure_representation.cpython-312.pyc,, +torch/package/__pycache__/find_file_dependencies.cpython-312.pyc,, +torch/package/__pycache__/glob_group.cpython-312.pyc,, +torch/package/__pycache__/importer.cpython-312.pyc,, +torch/package/__pycache__/package_exporter.cpython-312.pyc,, +torch/package/__pycache__/package_importer.cpython-312.pyc,, +torch/package/_digraph.py,sha256=zOq1IYazsQ7O-PLLbgjXAQ8UAHEqJV-TyF6HzD3xJCg,5833 +torch/package/_directory_reader.py,sha256=oqpFQhKRKbgVcfJMLI7P85eE-O07eOg4pTltXh07SrI,1981 +torch/package/_importlib.py,sha256=TFT6uwqOIDOXOYtxn0oKH69rVcvmEIVAw2Nm7SfQQK8,3093 +torch/package/_mangling.py,sha256=-OZIqmgJ88B7qhpopxLczrlW3rQ2CHbp_GUKO8sJYGo,1955 +torch/package/_mock.py,sha256=dLBJ9n8wre0Zbb3olFgZLdRpzDMM9C65kGnybzk_4Ew,2989 +torch/package/_package_pickler.py,sha256=I8Hcti83RAkJseJL0NEwDQW9-L_NkCMVd4OLhcbVPOk,5117 +torch/package/_package_unpickler.py,sha256=v7xjc2QM4L1xInVHrpbc21dvzQmhDs01TJC82l3Q0OU,1019 +torch/package/_stdlib.py,sha256=f2qIQHa6QY-EtuQB19nQOoo2IHiyDGGEi1qfWz-mG1U,7730 +torch/package/analyze/__init__.py,sha256=MSt9jByAbADeUqxkp02TPZX9Zs0VAECwSv4fx0IvBII,132 +torch/package/analyze/__pycache__/__init__.cpython-312.pyc,, +torch/package/analyze/__pycache__/find_first_use_of_broken_modules.cpython-312.pyc,, +torch/package/analyze/__pycache__/is_from_package.cpython-312.pyc,, +torch/package/analyze/__pycache__/trace_dependencies.cpython-312.pyc,, +torch/package/analyze/find_first_use_of_broken_modules.py,sha256=JcEI2yjg636RMR_fKkFSH5EFYCmVMHPJAv9R9QmEFLk,1098 +torch/package/analyze/is_from_package.py,sha256=FDGNhzhtyWTw_fVWe750ufQluGPGlD1MDjOEeyJ3lA4,420 +torch/package/analyze/trace_dependencies.py,sha256=xVJEAgI_9IxshPB_0e4hZ0ZqUGOLnAptIQbUzEsEcK4,2285 +torch/package/file_structure_representation.py,sha256=b8gDgwyQycUDkDerKuQ4HAkoREIp6xqe4hDl_Uf2OmM,4921 +torch/package/find_file_dependencies.py,sha256=9rQ2ekKpKH12Z23SwZjuCscSg-MfNWh9-bT1Yn52u6Q,4088 +torch/package/glob_group.py,sha256=-mPnkstW2PuOKknNBd1jbdPA8aYa3VuT71FOj5uKjKg,3722 +torch/package/importer.py,sha256=Zagw8rzaAeDFc5Xbflx8Z0UyOLyIriZO9z8wGbdXD7U,9145 +torch/package/package_exporter.py,sha256=DsmYPjPAdo7Yl3lFo9EFcVzQhpxs9yxwgJNogKJxVB4,52096 +torch/package/package_importer.py,sha256=H36hDmP-OLnQJOzIvrqOshkM3Og2ARGlq953s6-qwNM,32340 +torch/profiler/__init__.py,sha256=uoTtgYF1rUe0U5Vwyec9qioYzH3Pml9l4xQZOaYrEBc,1512 +torch/profiler/__pycache__/__init__.cpython-312.pyc,, +torch/profiler/__pycache__/_memory_profiler.cpython-312.pyc,, +torch/profiler/__pycache__/_pattern_matcher.cpython-312.pyc,, +torch/profiler/__pycache__/_utils.cpython-312.pyc,, +torch/profiler/__pycache__/itt.cpython-312.pyc,, +torch/profiler/__pycache__/profiler.cpython-312.pyc,, +torch/profiler/__pycache__/python_tracer.cpython-312.pyc,, +torch/profiler/_memory_profiler.py,sha256=fSzBUJgj7fT_VVh8Xy37K0xWmjnawihm9qAnU-aCzMg,49343 +torch/profiler/_pattern_matcher.py,sha256=6kkdFuxjf8_Dw66-C-dyEYzUod86bKQ3TjBI8yv9WMw,25404 +torch/profiler/_utils.py,sha256=Bkve-IYUv_Dw_GxY-hIz64V8yqTwhZEp5WMhwsCVTgk,14330 +torch/profiler/itt.py,sha256=LRtz7xVIVAhJN9CxweUo6SpcZQxswfoiT61gVhZZYMo,1862 +torch/profiler/profiler.py,sha256=6aZo4TFbpjfaCT-XZj3KFT_Iz2VT7S-83INPmfeb_Gc,40590 +torch/profiler/python_tracer.py,sha256=H54txLaQE4XerRhzZsBu5l_wf6aFyount2ZCoyMjXNc,517 +torch/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/quantization/__init__.py,sha256=QfStNsp4EIUCQPnoGEX2-C6F8nkWjGwdZKUiSxwu5Us,2740 +torch/quantization/__pycache__/__init__.cpython-312.pyc,, +torch/quantization/__pycache__/_numeric_suite.cpython-312.pyc,, +torch/quantization/__pycache__/_numeric_suite_fx.cpython-312.pyc,, +torch/quantization/__pycache__/_quantized_conversions.cpython-312.pyc,, +torch/quantization/__pycache__/fake_quantize.cpython-312.pyc,, +torch/quantization/__pycache__/fuse_modules.cpython-312.pyc,, +torch/quantization/__pycache__/fuser_method_mappings.cpython-312.pyc,, +torch/quantization/__pycache__/observer.cpython-312.pyc,, +torch/quantization/__pycache__/qconfig.cpython-312.pyc,, +torch/quantization/__pycache__/quant_type.cpython-312.pyc,, +torch/quantization/__pycache__/quantization_mappings.cpython-312.pyc,, +torch/quantization/__pycache__/quantize.cpython-312.pyc,, +torch/quantization/__pycache__/quantize_fx.cpython-312.pyc,, +torch/quantization/__pycache__/quantize_jit.cpython-312.pyc,, +torch/quantization/__pycache__/stubs.cpython-312.pyc,, +torch/quantization/__pycache__/utils.cpython-312.pyc,, +torch/quantization/_numeric_suite.py,sha256=Apsbav_2_HtzAG7591KPYCABK3u-2ems0f91ckZYvqM,807 +torch/quantization/_numeric_suite_fx.py,sha256=WTMnaKmkQAsB6IgE3Eajh-x8fhXufgjjTa1fFpTZIs0,778 +torch/quantization/_quantized_conversions.py,sha256=UPArN_a1-aNu9eczrvj54Jgzgzolgr6tOK0mqFBzKmw,4454 +torch/quantization/fake_quantize.py,sha256=Ug5k6GxDURxlTHuKstQdkh-zEVDUmeJ4PNvCkat3-rw,1047 +torch/quantization/fuse_modules.py,sha256=1Pp8kJGOWN_J4If8Mssdj0NrJw1WFx13NvRwLPx_6p4,753 +torch/quantization/fuser_method_mappings.py,sha256=oIVWF7hZ6U2OFS-oKw3QjuixmXaFXTW3UcE86Qk_SrQ,526 +torch/quantization/fx/__init__.py,sha256=qBBzAdCsV8Jp2yNtquj0C6jkrGaNx3Qc2PsyLdXh330,609 +torch/quantization/fx/__pycache__/__init__.cpython-312.pyc,, +torch/quantization/fx/__pycache__/_equalize.cpython-312.pyc,, +torch/quantization/fx/__pycache__/convert.cpython-312.pyc,, +torch/quantization/fx/__pycache__/fuse.cpython-312.pyc,, +torch/quantization/fx/__pycache__/fusion_patterns.cpython-312.pyc,, +torch/quantization/fx/__pycache__/graph_module.cpython-312.pyc,, +torch/quantization/fx/__pycache__/match_utils.cpython-312.pyc,, +torch/quantization/fx/__pycache__/pattern_utils.cpython-312.pyc,, +torch/quantization/fx/__pycache__/prepare.cpython-312.pyc,, +torch/quantization/fx/__pycache__/quantization_patterns.cpython-312.pyc,, +torch/quantization/fx/__pycache__/quantization_types.cpython-312.pyc,, +torch/quantization/fx/__pycache__/utils.cpython-312.pyc,, +torch/quantization/fx/_equalize.py,sha256=ZHnbL_PV1fMJyNvBNyYOgwJ3nSjTpPq_nVM1F5iDHFw,1288 +torch/quantization/fx/convert.py,sha256=s84rvG4ApmHJhZRJF2z_EVSeaS2hqSpWa799IQ__p3A,395 +torch/quantization/fx/fuse.py,sha256=t1CFzL6X4n0hrEM9WsoAxGkVADvbkuzq1U_2kTgWpzg,389 +torch/quantization/fx/fusion_patterns.py,sha256=EMbl_P6a5OUYm1H3wQxmvSnoRAUnC42Tf5reTOzNdtI,424 +torch/quantization/fx/graph_module.py,sha256=aEpEBJd6ylKA5nf-S9ZoOuMwLNh0i9o2KWOUUkUYHDk,590 +torch/quantization/fx/match_utils.py,sha256=f_Uw5eWYMDpUHMrijx-u1EfDZ2XdjJgwvONhQbtZt2E,470 +torch/quantization/fx/pattern_utils.py,sha256=cJ6hXpHQiCnlYAtE8NAlDR3Zp21T20LTV_HXY5jFOEw,1333 +torch/quantization/fx/prepare.py,sha256=fTOOjMADuXBsx8pF_bs81c2Te-pENKkMJeL3b9-ETVU,395 +torch/quantization/fx/quantization_patterns.py,sha256=cieAvymJVrFxnNsOeuBGjhd31UrK0TIBqY_ChNZ23kI,2135 +torch/quantization/fx/quantization_types.py,sha256=uD3t3Tht8BISqBotXe5JPgt9BPmXTz64Ple8zn0BCJE,404 +torch/quantization/fx/utils.py,sha256=lCEIQa2UZ21-Rlhhijz0383Et25BJCBMuG-auvf-Fxw,743 +torch/quantization/observer.py,sha256=ic0SaZsyAfjjbxdt4qRRXiU_2eiZ1vMEQZIubPYrbiM,1114 +torch/quantization/qconfig.py,sha256=_w7zSYKVivzFbjG3fLEamClj2AoBhj953gUyHnawiEU,940 +torch/quantization/quant_type.py,sha256=iAwgxvRTAWOq6UWwWOInYIlfoyqAKrsirv_eefd7dCE,409 +torch/quantization/quantization_mappings.py,sha256=E5Bgvn9qgeOaMyTTMgwSdoa4KsDHcv-kPl8YybKgWHE,1176 +torch/quantization/quantize.py,sha256=_2bxz1Nxy2R3jer569e0OWCAvOJDOBRNg_WLkOB4HCs,834 +torch/quantization/quantize_fx.py,sha256=VFgy22MuCnZgzzSEvgo361E6rQXpWAGyb8HxzrjOHt8,762 +torch/quantization/quantize_jit.py,sha256=4-N7zY1HEFSfBbxNiz43hYlZVbWxekcWSLo7Y1y94dA,740 +torch/quantization/stubs.py,sha256=3fCztwAMksJYzQbZlBvS_v3u4-QJ7jKdGIJUkCcHT-0,402 +torch/quantization/utils.py,sha256=TFeb5f6X76T6oNKThjsiS3TpFXRoJgTdiO4MNdaEDTc,862 +torch/quasirandom.py,sha256=xK2fnd-Wyvca2WuluggUJtNmxc81awNO88oK8upiCC4,8165 +torch/random.py,sha256=cfNslHMbhbTkAqsiu9N_HKCZWB3yZckzuwnVcBnET90,7406 +torch/return_types.py,sha256=ohmoEziZmcBXQrJr0_LLqaJIGQchUZEsI6miQPwUQBQ,1536 +torch/return_types.pyi,sha256=cCg0Ggq7uq3WSoQsF2Rk_Nqd5wUkGw6vJb95xrLbMe0,14907 +torch/serialization.py,sha256=TU5Tsyd3I4LX52K3vWB_3PWHEbITDYUg4UUKpOe7sXg,79708 +torch/share/cmake/ATen/ATenConfig.cmake,sha256=CTO_ZzHAwndUCAoqNmZCTxJySMBqqgymTW_dgh8HFp4,311 +torch/share/cmake/Caffe2/Caffe2Config.cmake,sha256=0DZNhuvFPRYYXkfgd3ja_SFZ-YhPnQL7L-i_hQekvYc,5236 +torch/share/cmake/Caffe2/Caffe2Targets-release.cmake,sha256=WmF_gCh039CyLxXNdkddLr1hOm97HlbY_CQH00rZDWc,1869 +torch/share/cmake/Caffe2/Caffe2Targets.cmake,sha256=IUBzRoyN6xM6KDjBfYiqT0Yzr9d-jqOArLnuzyW0C1M,6886 +torch/share/cmake/Caffe2/FindCUDAToolkit.cmake,sha256=aHbgBCQAUIPxcf02qlKwhM3Z0mzy47NvofDV_YA74Zg,39849 +torch/share/cmake/Caffe2/FindCUDSS.cmake,sha256=sA21H-knRZmCcnJmM87dUss3KpT-M2ykBfS_ukZz75s,2765 +torch/share/cmake/Caffe2/FindCUSPARSELT.cmake,sha256=_3gRzt3JhJLSoxGANz8olAJc1HYgZriCb5U-VuxAgeY,3135 +torch/share/cmake/Caffe2/FindSYCLToolkit.cmake,sha256=VczrgUczhb4Qucqq9FVejUGFPAHQgEerm3MMCaQ1j_A,4330 +torch/share/cmake/Caffe2/Modules_CUDA_fix/FindCUDA.cmake,sha256=yVY9ZuazsjOWvko_j0ebC9zXNBgDBqn7yFFUmuGWwdI,536 +torch/share/cmake/Caffe2/Modules_CUDA_fix/FindCUDNN.cmake,sha256=98AV65I9r6hXZ3djts25pWsUGSJij0uwaDLlNvr-OPw,3163 +torch/share/cmake/Caffe2/Modules_CUDA_fix/upstream/CMakeInitializeConfigs.cmake,sha256=pSX-UCD4EzIprk563tpH9yFmGH_ziG6NwUQt1GHhhos,1697 +torch/share/cmake/Caffe2/Modules_CUDA_fix/upstream/FindCUDA.cmake,sha256=ZbVzC25gMmvFOVd0agFZOQI3iO8dtVZYThKDA3sGLjo,88637 +torch/share/cmake/Caffe2/Modules_CUDA_fix/upstream/FindCUDA/make2cmake.cmake,sha256=p7tz2-DwvWVTxW082qsoMSXTwWlKk3AWw32drCNkjFk,4031 +torch/share/cmake/Caffe2/Modules_CUDA_fix/upstream/FindCUDA/parse_cubin.cmake,sha256=T__r-AaXPXniuqi03AH2Pm4QNH_cQDJYQTHHCwBXHtg,3548 +torch/share/cmake/Caffe2/Modules_CUDA_fix/upstream/FindCUDA/run_nvcc.cmake,sha256=h04LtGcfzsmkH7qWhhpNf97_AOIZgReQJB_M2O0PbC8,12116 +torch/share/cmake/Caffe2/Modules_CUDA_fix/upstream/FindCUDA/select_compute_arch.cmake,sha256=PAllj12hWV84WOxhBQx9NrPkTsGkB2Bl0UWidEcu_C0,11361 +torch/share/cmake/Caffe2/Modules_CUDA_fix/upstream/FindPackageHandleStandardArgs.cmake,sha256=OJQRMapUAJYF98ivq3YLfTzYXY4NUBARyPwsbNmCojM,15288 +torch/share/cmake/Caffe2/Modules_CUDA_fix/upstream/FindPackageMessage.cmake,sha256=aggekwaBIweoGRvyGnWWSLFOfGhinyHgkP-AFdXlIME,1611 +torch/share/cmake/Caffe2/public/LoadHIP.cmake,sha256=NhfJBNmhtZEwPzdPpzgEl55CBvaAZju4o7KkdfRYAAs,7975 +torch/share/cmake/Caffe2/public/cuda.cmake,sha256=3Un6dXpTK1faMRtqWSIAF52fBQi_omhhxmZll0-5nPw,14502 +torch/share/cmake/Caffe2/public/gflags.cmake,sha256=lqCHXupLZgbofqyIO2MunBGYZB-1EJPUSx6QZoJxDIc,2703 +torch/share/cmake/Caffe2/public/glog.cmake,sha256=4rEgDMK1s552hsGVEjG6BwIETKu4y1wcwhGu_PPgYRo,2390 +torch/share/cmake/Caffe2/public/mkl.cmake,sha256=smEnmDMPnXJI24n7YQfuMgGpancHt8np3Fmwtn-sZAo,1357 +torch/share/cmake/Caffe2/public/mkldnn.cmake,sha256=9it-d7b1GLo7NomimCLT3kP3N0iZErkHhr4pU2pE-to,462 +torch/share/cmake/Caffe2/public/protobuf.cmake,sha256=HaapG099tgG6ti9wx5IxIEdm2nEcwz-cOO53xQ8b6ss,4095 +torch/share/cmake/Caffe2/public/utils.cmake,sha256=YUmQJRWevJ3ZMqOhJ-M3y8sc9FxMKbPxYjGCEt7V-bQ,21428 +torch/share/cmake/Caffe2/public/xpu.cmake,sha256=htF8kRCy1SvgJuAoaHR1Y5sQOWakl8SdNwNUh6pvw_I,1267 +torch/share/cmake/Torch/TorchConfig.cmake,sha256=tPtKhPUOvBvVT7GJuUrcRrx3BphK7nU3DPcnKv7ynYA,5461 +torch/share/cmake/Torch/TorchConfigVersion.cmake,sha256=prWS9xmUlWLEieIu3L98gzHwD-n5yZBF1f5ykFSc_-k,377 +torch/signal/__init__.py,sha256=d4EPTDjfYIlGNChQYC5aHdGer3BI-lgsnk8fuJkm2XU,56 +torch/signal/__pycache__/__init__.cpython-312.pyc,, +torch/signal/windows/__init__.py,sha256=I0IlzW5AbSkwbvFFUHJ6IsIWAVVXbtlUROE_Q5ryeMs,411 +torch/signal/windows/__pycache__/__init__.cpython-312.pyc,, +torch/signal/windows/__pycache__/windows.cpython-312.pyc,, +torch/signal/windows/windows.py,sha256=5VGWE-3y6ne7ebqvAk3rCLXTkMt3b4rIRTjA5UI9il8,24200 +torch/sparse/__init__.py,sha256=WeI-LX3YHGBaDx0hMieCgim8B_1eXNCF7Xk1zILbDvA,26232 +torch/sparse/__pycache__/__init__.cpython-312.pyc,, +torch/sparse/__pycache__/_semi_structured_conversions.cpython-312.pyc,, +torch/sparse/__pycache__/_semi_structured_ops.cpython-312.pyc,, +torch/sparse/__pycache__/_triton_ops.cpython-312.pyc,, +torch/sparse/__pycache__/_triton_ops_meta.cpython-312.pyc,, +torch/sparse/__pycache__/semi_structured.cpython-312.pyc,, +torch/sparse/_semi_structured_conversions.py,sha256=w7QRhCA6MKVevB8Ve1Xeb9meGvPy6b2aJvQNDMnjKHs,14372 +torch/sparse/_semi_structured_ops.py,sha256=WMXK0FFOhLZXXAV_f7clNqM-M-xO2FlWz_QcM3xecWc,6568 +torch/sparse/_triton_ops.py,sha256=3Xi6RLEqlVPsGWfauqwEYJvkRUWJlO8OoeDyCGxqKDg,88679 +torch/sparse/_triton_ops_meta.py,sha256=05Wv3RfTL-DlEulCfrlSJAnPNJfTq_2_FH5sQxvGXC4,508546 +torch/sparse/semi_structured.py,sha256=15u86PhsVUICh5EDlRg8l-ZghcJ5_Zm5oZXcgi8jcrg,28710 +torch/special/__init__.py,sha256=ZIg0w1hm-eJuC4_6EJD3phcq1i_o-rROtodsb8ZOEKo,33977 +torch/special/__pycache__/__init__.cpython-312.pyc,, +torch/storage.py,sha256=RRsah77UNt7uDtMveojAJBklxBjFmt92mW5IY5sKlB8,53262 +torch/testing/__init__.py,sha256=Yy0wz_YYjsQIl6wPWAXNBofkITgtS8K4V4uUqUfV0Mo,192 +torch/testing/__pycache__/__init__.cpython-312.pyc,, +torch/testing/__pycache__/_comparison.cpython-312.pyc,, +torch/testing/__pycache__/_creation.cpython-312.pyc,, +torch/testing/__pycache__/_utils.cpython-312.pyc,, +torch/testing/_comparison.py,sha256=0LQrjeGoDLnUzL5NbZK0Ej26jSrHj18rFgBBtMMTUHE,64714 +torch/testing/_creation.py,sha256=mjmAR0tjjlYvw3hYdDl-nX3SjtLUTD8dYWdnknkt7Ak,12487 +torch/testing/_internal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/testing/_internal/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/__pycache__/autocast_test_lists.cpython-312.pyc,, +torch/testing/_internal/__pycache__/autograd_function_db.cpython-312.pyc,, +torch/testing/_internal/__pycache__/check_kernel_launches.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_cuda.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_device_type.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_dist_composable.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_distributed.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_dtype.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_fsdp.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_jit.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_methods_invocations.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_mkldnn.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_modules.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_nn.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_optimizers.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_pruning.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_quantization.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_quantized.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_subclass.cpython-312.pyc,, +torch/testing/_internal/__pycache__/common_utils.cpython-312.pyc,, +torch/testing/_internal/__pycache__/composite_compliance.cpython-312.pyc,, +torch/testing/_internal/__pycache__/custom_op_db.cpython-312.pyc,, +torch/testing/_internal/__pycache__/custom_tensor.cpython-312.pyc,, +torch/testing/_internal/__pycache__/dist_utils.cpython-312.pyc,, +torch/testing/_internal/__pycache__/dynamo_test_failures.cpython-312.pyc,, +torch/testing/_internal/__pycache__/fake_config_module.cpython-312.pyc,, +torch/testing/_internal/__pycache__/hop_db.cpython-312.pyc,, +torch/testing/_internal/__pycache__/hypothesis_utils.cpython-312.pyc,, +torch/testing/_internal/__pycache__/inductor_utils.cpython-312.pyc,, +torch/testing/_internal/__pycache__/jit_metaprogramming_utils.cpython-312.pyc,, +torch/testing/_internal/__pycache__/jit_utils.cpython-312.pyc,, +torch/testing/_internal/__pycache__/logging_tensor.cpython-312.pyc,, +torch/testing/_internal/__pycache__/logging_utils.cpython-312.pyc,, +torch/testing/_internal/__pycache__/quantization_torch_package_models.cpython-312.pyc,, +torch/testing/_internal/__pycache__/static_module.cpython-312.pyc,, +torch/testing/_internal/__pycache__/subclasses.cpython-312.pyc,, +torch/testing/_internal/__pycache__/torchbind_impls.cpython-312.pyc,, +torch/testing/_internal/__pycache__/triton_utils.cpython-312.pyc,, +torch/testing/_internal/__pycache__/two_tensor.cpython-312.pyc,, +torch/testing/_internal/autocast_test_lists.py,sha256=HIEXBGxQR_ET3kQOPLbM7CoXqStiaBUbViutWe-R2WA,28863 +torch/testing/_internal/autograd_function_db.py,sha256=cozNmhOxnJzCZ5Nju7IaPyLDRfzMB_HgEIOMuQdj4Nk,20246 +torch/testing/_internal/check_kernel_launches.py,sha256=93gOULs9c8bL4GU9ZlBxZ4FKEOSAhlsC1U9gigWCWao,6218 +torch/testing/_internal/codegen/__init__.py,sha256=DiaaC4wLY-kzeqPWCEVKCSzOa61Vli38kuG2Hd50x3c,23 +torch/testing/_internal/codegen/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/common_cuda.py,sha256=XExnqXtU2_NyPjEPiTdAoiLbVPgYKGPF7WlXvEmGQZE,13692 +torch/testing/_internal/common_device_type.py,sha256=e5tQzWCN6YLrAKfo-uCKITTBVafKRfiwKDZK_sp-7uk,73935 +torch/testing/_internal/common_dist_composable.py,sha256=1gsRgWgaOcfCN-2Vzxw1tgjHP41bvaLNIRpXBZnCPAM,3715 +torch/testing/_internal/common_distributed.py,sha256=rTbECmJq7RMZSg0y85SipFY1Z76ktIfrv1aa4fTI_aI,57188 +torch/testing/_internal/common_dtype.py,sha256=xNzw7sNu6WdHNW6YBiilE3A_89RnQS3dk3I4_fcQtmE,5081 +torch/testing/_internal/common_fsdp.py,sha256=2ufbz0hyr6bNeNmcIfm-PQXg3sWdzgU1wOSy7R5gqgQ,59439 +torch/testing/_internal/common_jit.py,sha256=X2q4OkNUVziTbc6evQ0Sftjd24XmHwhwwLC4GAdLMhU,16176 +torch/testing/_internal/common_methods_invocations.py,sha256=EzorAuH935mSNExj-aRq-1t923C_1CCBrgLYiiJjPCI,1223484 +torch/testing/_internal/common_mkldnn.py,sha256=9UsfNEHCJPf8lduJkGY7wO4_iz93D0jlD8fhtVNx-1s,2392 +torch/testing/_internal/common_modules.py,sha256=QgUbT1aWXokwmQAnPNVw1joX3rvz81mNmxASN8KZYXQ,224237 +torch/testing/_internal/common_nn.py,sha256=ojkk9shzo6918NbKDtR9tRoWcf5Lv60lFyzeSNQ1Uqg,169827 +torch/testing/_internal/common_optimizers.py,sha256=qyvh-g893jFkMxCoG4plViBVPfvwMVQ7yeK1I2agKuY,90236 +torch/testing/_internal/common_pruning.py,sha256=FaTyz_REZhOOYGN5e-HKgrn4u9oQtC0IViod199zuCU,14053 +torch/testing/_internal/common_quantization.py,sha256=fVJHkYzaSLKc3n2_Qjf7YIn80gO6oph-QsfaWQzguhM,114610 +torch/testing/_internal/common_quantized.py,sha256=XUyHDXbUsgoZjgOzGJuqbd-renVlvTT7w8bi2MWAauY,8776 +torch/testing/_internal/common_subclass.py,sha256=bPIhwnCHbcWnZmUtub5K7-UfJyA6khTnEkayiGRzDpU,12540 +torch/testing/_internal/common_utils.py,sha256=eKjXjb0FqprlKK4NApobxoIo4Exrhgb2Rp_XAMQClmw,236295 +torch/testing/_internal/composite_compliance.py,sha256=0AYtop0RlMgvDoKsU67r-ZjlILoTIBP6jYlQkoQJnls,26180 +torch/testing/_internal/custom_op_db.py,sha256=7kVIXYTA-bVgpI6ya45311wCeknCnGlQI3UyByzdJ5M,20264 +torch/testing/_internal/custom_tensor.py,sha256=rDatcBTSnlGCBsF_KF5VZgug4EW9Db3_HTySbpBTR-M,2322 +torch/testing/_internal/data/__init__.py,sha256=DiaaC4wLY-kzeqPWCEVKCSzOa61Vli38kuG2Hd50x3c,23 +torch/testing/_internal/data/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/data/__pycache__/network1.cpython-312.pyc,, +torch/testing/_internal/data/__pycache__/network2.cpython-312.pyc,, +torch/testing/_internal/data/network1.py,sha256=oui4qSVOL39z1DqyRW0Ua-rhpC1weEGhQTpZfy5dAKg,179 +torch/testing/_internal/data/network2.py,sha256=bDrLEHTqoZYGLSt_wXgE_CAW0H6dRB1Pqr3KBQqk1uw,210 +torch/testing/_internal/dist_utils.py,sha256=nTqwFPJjRmV2bY66w7-xYUXiSJKhrPr49PVsQsuG8-4,7480 +torch/testing/_internal/distributed/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/testing/_internal/distributed/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/distributed/__pycache__/checkpoint_utils.cpython-312.pyc,, +torch/testing/_internal/distributed/__pycache__/common_state_dict.cpython-312.pyc,, +torch/testing/_internal/distributed/__pycache__/ddp_under_dist_autograd_test.cpython-312.pyc,, +torch/testing/_internal/distributed/__pycache__/distributed_test.cpython-312.pyc,, +torch/testing/_internal/distributed/__pycache__/distributed_utils.cpython-312.pyc,, +torch/testing/_internal/distributed/__pycache__/fake_pg.cpython-312.pyc,, +torch/testing/_internal/distributed/__pycache__/multi_threaded_pg.cpython-312.pyc,, +torch/testing/_internal/distributed/__pycache__/rpc_utils.cpython-312.pyc,, +torch/testing/_internal/distributed/_shard/__init__.py,sha256=EhTGyPtX-bzRNfqTY2Ql8gEScx4267U_pGa_h69kMZU,28 +torch/testing/_internal/distributed/_shard/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/distributed/_shard/__pycache__/test_common.cpython-312.pyc,, +torch/testing/_internal/distributed/_shard/sharded_tensor/__init__.py,sha256=70t4YCtT-JTswiklFs8nflIqapiATfsqRRBEPn1WrTk,3277 +torch/testing/_internal/distributed/_shard/sharded_tensor/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/distributed/_shard/sharded_tensor/__pycache__/_test_ops_common.cpython-312.pyc,, +torch/testing/_internal/distributed/_shard/sharded_tensor/__pycache__/_test_st_common.cpython-312.pyc,, +torch/testing/_internal/distributed/_shard/sharded_tensor/_test_ops_common.py,sha256=8Ck-E45BioPPfkSzBQburMbrpgRo_D5BjfAtrX_aQi8,4146 +torch/testing/_internal/distributed/_shard/sharded_tensor/_test_st_common.py,sha256=gp_8I_sNMoO7zIC91cTvlZf3_Ri50Y3NDSp17PATLtY,1767 +torch/testing/_internal/distributed/_shard/test_common.py,sha256=D23lx0U9mhk83qzP1c06_ucYCzpck0AxA6Jkr7TbU_k,1262 +torch/testing/_internal/distributed/_tensor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/testing/_internal/distributed/_tensor/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/distributed/_tensor/__pycache__/common_dtensor.cpython-312.pyc,, +torch/testing/_internal/distributed/_tensor/common_dtensor.py,sha256=7Saw1LyBb4z4bxhLfK0dTb_SZ2AXK2OCmi6ZNNqAOBc,21173 +torch/testing/_internal/distributed/checkpoint_utils.py,sha256=H7CJqESoqx1GgV5PBP4Ef9gejDy_uw9710Aajk4bkIg,1570 +torch/testing/_internal/distributed/common_state_dict.py,sha256=PPQxTpIMF4o5xM3Y8ts8o8_aokyf_0WkImJ5Dz_4Fn8,4772 +torch/testing/_internal/distributed/ddp_under_dist_autograd_test.py,sha256=FwHXisCxEyn8krfrljU7L3frkPMdraMF254V67xhQ74,27501 +torch/testing/_internal/distributed/distributed_test.py,sha256=iumW0RcxUWknE5pfOF2tJvfFC9g_uE7mlWNPDq4G71w,446105 +torch/testing/_internal/distributed/distributed_utils.py,sha256=BAIe20A_ll1XFWo_TVW1sdotxg7L0L5AzD3zLSEfq8I,2014 +torch/testing/_internal/distributed/fake_pg.py,sha256=0ov08hekEIeikgZfD5TsaOqSQYCIE5Zbj724C1JwuXU,1067 +torch/testing/_internal/distributed/multi_threaded_pg.py,sha256=w1M0tAU3TSBgUvk7Kjp-9CP7swNFcz05VxIRsBlh0Yg,19450 +torch/testing/_internal/distributed/nn/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/testing/_internal/distributed/nn/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/distributed/nn/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/testing/_internal/distributed/nn/api/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/distributed/nn/api/__pycache__/remote_module_test.cpython-312.pyc,, +torch/testing/_internal/distributed/nn/api/remote_module_test.py,sha256=hHggwrRGm1mftUaSPOaQWMF_kZgnBV0RT2ncz_3MZJA,30419 +torch/testing/_internal/distributed/rpc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/testing/_internal/distributed/rpc/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/__pycache__/dist_autograd_test.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/__pycache__/dist_optimizer_test.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/__pycache__/faulty_agent_rpc_test.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/__pycache__/faulty_rpc_agent_test_fixture.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/__pycache__/rpc_agent_test_fixture.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/__pycache__/rpc_test.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/__pycache__/tensorpipe_rpc_agent_test_fixture.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/dist_autograd_test.py,sha256=XRApK26RNfcPyn8t9RQX3H6mvQTJ7gwCA1gKqFsQuZo,110188 +torch/testing/_internal/distributed/rpc/dist_optimizer_test.py,sha256=ZH-cuPAmuMVisgAE17mTwGYSLh0zV4iU97xkZ6xE3ko,10847 +torch/testing/_internal/distributed/rpc/examples/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/testing/_internal/distributed/rpc/examples/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/examples/__pycache__/parameter_server_test.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/examples/__pycache__/reinforcement_learning_rpc_test.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/examples/parameter_server_test.py,sha256=wkSqr4hi8vcAy47SfVE8_neR2A0PRTAfUGTBNnZ19Q0,4656 +torch/testing/_internal/distributed/rpc/examples/reinforcement_learning_rpc_test.py,sha256=itjzQJd5pFeQIYvWBpCokWQaLhC2JrjLBC831izyEbA,9487 +torch/testing/_internal/distributed/rpc/faulty_agent_rpc_test.py,sha256=KDED56wMhPlWN_lOOArAZl_9UBa4Aq6Qs_jOKKMbpPI,14458 +torch/testing/_internal/distributed/rpc/faulty_rpc_agent_test_fixture.py,sha256=CHD4rwJmR6lrLMCCdw258eZoPLwiI3CPG7bGhHViqo4,2285 +torch/testing/_internal/distributed/rpc/jit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/testing/_internal/distributed/rpc/jit/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/jit/__pycache__/dist_autograd_test.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/jit/__pycache__/rpc_test.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/jit/__pycache__/rpc_test_faulty.cpython-312.pyc,, +torch/testing/_internal/distributed/rpc/jit/dist_autograd_test.py,sha256=Ni54Fb6AXflYVNKelrl694bYUG3Rem9wYcJnq4WF_xs,4321 +torch/testing/_internal/distributed/rpc/jit/rpc_test.py,sha256=QWtaYpMM69VAfHOlc8XKynNgmLwCjGtGDze3XnyMYrU,48406 +torch/testing/_internal/distributed/rpc/jit/rpc_test_faulty.py,sha256=8W_Jn0bdF3bWWh7tE62Mrr5IaTZghtFZKSYomRlRF8w,8250 +torch/testing/_internal/distributed/rpc/rpc_agent_test_fixture.py,sha256=zhpzVAar7GiEroCkwV4YuWLnGnG1iFQ42zo_V2PLfVA,1937 +torch/testing/_internal/distributed/rpc/rpc_test.py,sha256=4knbvu1JnL5WTucVko44xWYiXQjv7QUJKmKJDgN2RPo,234563 +torch/testing/_internal/distributed/rpc/tensorpipe_rpc_agent_test_fixture.py,sha256=II8qPFD0KsVXco3dX_EXHVBNxanX05R_XNBS7HcQtQU,1063 +torch/testing/_internal/distributed/rpc_utils.py,sha256=GPzqr0ejSbqhMYys487-cwlOlbkD0_sZVTS8fMXeVdQ,6784 +torch/testing/_internal/dynamo_test_failures.py,sha256=JOZPEA3cGE6OYIiWNsPMlkIxxJnG0SF9lBGkpiCp39I,4824 +torch/testing/_internal/fake_config_module.py,sha256=jzxHbhxNE0yVCSk2sqN94LulD539l8bFrEaPzjI9zi8,957 +torch/testing/_internal/generated/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/testing/_internal/generated/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/generated/__pycache__/annotated_fn_args.cpython-312.pyc,, +torch/testing/_internal/generated/annotated_fn_args.py,sha256=BBl7-sTga01YXqu0CUkiN_inQZ-6GNLglDM6y996yCI,547903 +torch/testing/_internal/hop_db.py,sha256=j5ucGdJ90H1ttTxT3m_K6F9uKip7vV8hHgh68y2EWj8,11126 +torch/testing/_internal/hypothesis_utils.py,sha256=QOpvAf9jAtt66RVHBzHokJfARpZ_J4eWICC78tPouU8,14989 +torch/testing/_internal/inductor_utils.py,sha256=FjXl8UR5xekUpe2ozECx-D2sZZ_rTBfFdHhflHHRPcw,3788 +torch/testing/_internal/jit_metaprogramming_utils.py,sha256=aTaViSTBtEMBZ7U1e-7cdFPJxoMnEHe0TbHfaz4v9t4,33672 +torch/testing/_internal/jit_utils.py,sha256=fQuh_mWv7dY0zRfH03qqHQMfgFD_C3Ep6fxdQ8dUoCA,34880 +torch/testing/_internal/logging_tensor.py,sha256=bSA7GtsyuOWJwwwxC1gFOJarvVoQIHVpWznhGy8QZLs,7279 +torch/testing/_internal/logging_utils.py,sha256=RRj68fSMLQvMcItkPpUfeswOlZRwhLWXofcyO801nEA,7139 +torch/testing/_internal/opinfo/__init__.py,sha256=gMzdjsnJzsmJrkvmnXErEc9HTeG-5r_AIznCn0YKhog,120 +torch/testing/_internal/opinfo/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/opinfo/__pycache__/core.cpython-312.pyc,, +torch/testing/_internal/opinfo/__pycache__/refs.cpython-312.pyc,, +torch/testing/_internal/opinfo/__pycache__/utils.cpython-312.pyc,, +torch/testing/_internal/opinfo/core.py,sha256=SjEpwofwUIMbYu27Y1uzRQD9WDSeBCkGPtG5TbIg0Jw,128392 +torch/testing/_internal/opinfo/definitions/__init__.py,sha256=n7jml3GP_Y0t1riYluYCg1Qy-JPjUc_JJesyb1rsSgw,505 +torch/testing/_internal/opinfo/definitions/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/opinfo/definitions/__pycache__/_masked.cpython-312.pyc,, +torch/testing/_internal/opinfo/definitions/__pycache__/fft.cpython-312.pyc,, +torch/testing/_internal/opinfo/definitions/__pycache__/linalg.cpython-312.pyc,, +torch/testing/_internal/opinfo/definitions/__pycache__/nested.cpython-312.pyc,, +torch/testing/_internal/opinfo/definitions/__pycache__/signal.cpython-312.pyc,, +torch/testing/_internal/opinfo/definitions/__pycache__/sparse.cpython-312.pyc,, +torch/testing/_internal/opinfo/definitions/__pycache__/special.cpython-312.pyc,, +torch/testing/_internal/opinfo/definitions/_masked.py,sha256=Mi90HkyclBW4fGPk31bTX_nZ7hvsM-uCqsLoW98xGJE,48288 +torch/testing/_internal/opinfo/definitions/fft.py,sha256=dCpvL0wlPZiuZxI7oambbN3vWslsonAmIpzo5bq40rE,30279 +torch/testing/_internal/opinfo/definitions/linalg.py,sha256=yLrVTF71OdeTgwJjs88EinyCfGkeyFxEPrtWzukeg7Q,90645 +torch/testing/_internal/opinfo/definitions/nested.py,sha256=_SypvOv6QBjFDv_4F0XcJV3b98o_d-AqxU8NOmSgtVc,58135 +torch/testing/_internal/opinfo/definitions/signal.py,sha256=j6jL_XbBD75dk4rN84DG7t6zJ2CFbSfMqNoJC2RItRE,15751 +torch/testing/_internal/opinfo/definitions/sparse.py,sha256=if2e2kOzuV462vHxKmt5t3XNZUpfGes1uEgU1iWunwA,34705 +torch/testing/_internal/opinfo/definitions/special.py,sha256=eHEBHCxuSlpwpRAbWczDBwPEZuEH7W8ogYYRnO7jxVM,28607 +torch/testing/_internal/opinfo/refs.py,sha256=R9pnC9VvTcBBHQpkhYzlI3y6Xldhln2jV2RNp5vooGM,8246 +torch/testing/_internal/opinfo/utils.py,sha256=DPVvK2A4Y4O8RWjeR27jxu2bTwcD_FEpelGxf6CvzBI,8988 +torch/testing/_internal/optests/__init__.py,sha256=FSuVnX16NUi5lWMkTRnykRD5t79ixmQnP5IzAda1sno,379 +torch/testing/_internal/optests/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/optests/__pycache__/aot_autograd.cpython-312.pyc,, +torch/testing/_internal/optests/__pycache__/autograd_registration.cpython-312.pyc,, +torch/testing/_internal/optests/__pycache__/fake_tensor.cpython-312.pyc,, +torch/testing/_internal/optests/__pycache__/generate_tests.cpython-312.pyc,, +torch/testing/_internal/optests/__pycache__/make_fx.cpython-312.pyc,, +torch/testing/_internal/optests/aot_autograd.py,sha256=l20Ax3SW2HxF3EmlW8CGqRV92lXGWfdX3DbNxH0q4Qw,6497 +torch/testing/_internal/optests/autograd_registration.py,sha256=yY6JcMW5iTtZ--bNK6IbDsxvWcWGEyYFwcUtsc7sN3g,5824 +torch/testing/_internal/optests/fake_tensor.py,sha256=fe_mSRHFQYL6mzF8fybaBrLIOW9N6Retztpl_SNQXMY,269 +torch/testing/_internal/optests/generate_tests.py,sha256=7DrbtIePBoyX6IxPpgPEnlOOOiKS4HcbY3tyhw6v5lA,31772 +torch/testing/_internal/optests/make_fx.py,sha256=C4PqX2PYU8ZmQ5DF6Pc_VoBYidKxAQz-SLOWoc7onG8,3357 +torch/testing/_internal/quantization_torch_package_models.py,sha256=ZU4aq2H8SYQMgokcw1oOgalMNSFS5ekcjSeZn_49s-M,984 +torch/testing/_internal/static_module.py,sha256=KijDwJpMQ0RXVubvB5tSBEAmwEQLz_t8ZnJLkki0i3g,920 +torch/testing/_internal/subclasses.py,sha256=y1Wtx0F9fsuP3Kkzdz6TobtU9LZSolMVoGBL9ID1xCE,2610 +torch/testing/_internal/test_module/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/testing/_internal/test_module/__pycache__/__init__.cpython-312.pyc,, +torch/testing/_internal/test_module/__pycache__/future_div.cpython-312.pyc,, +torch/testing/_internal/test_module/__pycache__/no_future_div.cpython-312.pyc,, +torch/testing/_internal/test_module/future_div.py,sha256=fM41286qBrBQbyt0_B_o-6nP8hL7CLgfhfHs1iWkDv0,124 +torch/testing/_internal/test_module/no_future_div.py,sha256=Xrd0DiR35Q8NNHYXdwr2R_sw2KM6ei-pNRBcMBa-rI8,156 +torch/testing/_internal/torchbind_impls.py,sha256=7WstjA3e_jrXNIryHP_R__lb3z2a-PYFXkIqaYGu6yE,3981 +torch/testing/_internal/triton_utils.py,sha256=6HVFJojksNMY5iz1pCJXzQL_bon4hJXb3EKxj6Z4ko0,16499 +torch/testing/_internal/two_tensor.py,sha256=FBtAUrrfU7KFYRk2jmYjHOM7Qv2niOe9p6X26cPuNqc,3479 +torch/testing/_utils.py,sha256=dbcBod32X1nhDLxCl4JIbTopkmrlT4laTqiVOJxBuZQ,2091 +torch/torch_version.py,sha256=AylhARw9Zf6tQfGQPCCnsNhBoCcNRUiwZrWTKwwgDYc,2546 +torch/types.py,sha256=IbO1ut2yKEmeJvDIKy_o-hMK3_9CkZnHLZnNnHeEQOk,3607 +torch/utils/__init__.py,sha256=Q4ZUQMi6-SD-OVnBUyKw0ZSneqdhyWV14y1wsjpmC9Y,4174 +torch/utils/__pycache__/__init__.cpython-312.pyc,, +torch/utils/__pycache__/_backport_slots.cpython-312.pyc,, +torch/utils/__pycache__/_config_module.cpython-312.pyc,, +torch/utils/__pycache__/_content_store.cpython-312.pyc,, +torch/utils/__pycache__/_contextlib.cpython-312.pyc,, +torch/utils/__pycache__/_cpp_extension_versioner.cpython-312.pyc,, +torch/utils/__pycache__/_cxx_pytree.cpython-312.pyc,, +torch/utils/__pycache__/_device.cpython-312.pyc,, +torch/utils/__pycache__/_exposed_in.cpython-312.pyc,, +torch/utils/__pycache__/_foreach_utils.cpython-312.pyc,, +torch/utils/__pycache__/_freeze.cpython-312.pyc,, +torch/utils/__pycache__/_get_clean_triton.cpython-312.pyc,, +torch/utils/__pycache__/_import_utils.cpython-312.pyc,, +torch/utils/__pycache__/_mode_utils.cpython-312.pyc,, +torch/utils/__pycache__/_ordered_set.cpython-312.pyc,, +torch/utils/__pycache__/_python_dispatch.cpython-312.pyc,, +torch/utils/__pycache__/_pytree.cpython-312.pyc,, +torch/utils/__pycache__/_stats.cpython-312.pyc,, +torch/utils/__pycache__/_thunk.cpython-312.pyc,, +torch/utils/__pycache__/_traceback.cpython-312.pyc,, +torch/utils/__pycache__/_triton.cpython-312.pyc,, +torch/utils/__pycache__/_typing_utils.cpython-312.pyc,, +torch/utils/__pycache__/_zip.cpython-312.pyc,, +torch/utils/__pycache__/backend_registration.cpython-312.pyc,, +torch/utils/__pycache__/bundled_inputs.cpython-312.pyc,, +torch/utils/__pycache__/checkpoint.cpython-312.pyc,, +torch/utils/__pycache__/collect_env.cpython-312.pyc,, +torch/utils/__pycache__/cpp_backtrace.cpython-312.pyc,, +torch/utils/__pycache__/cpp_extension.cpython-312.pyc,, +torch/utils/__pycache__/deterministic.cpython-312.pyc,, +torch/utils/__pycache__/dlpack.cpython-312.pyc,, +torch/utils/__pycache__/file_baton.cpython-312.pyc,, +torch/utils/__pycache__/flop_counter.cpython-312.pyc,, +torch/utils/__pycache__/hooks.cpython-312.pyc,, +torch/utils/__pycache__/mkldnn.cpython-312.pyc,, +torch/utils/__pycache__/mobile_optimizer.cpython-312.pyc,, +torch/utils/__pycache__/model_zoo.cpython-312.pyc,, +torch/utils/__pycache__/module_tracker.cpython-312.pyc,, +torch/utils/__pycache__/show_pickle.cpython-312.pyc,, +torch/utils/__pycache__/throughput_benchmark.cpython-312.pyc,, +torch/utils/__pycache__/weak.cpython-312.pyc,, +torch/utils/_backport_slots.py,sha256=42S0GjWTLUO9mE7OVoD-pDmy3cn-3B85lFj7sRJul4E,4699 +torch/utils/_config_module.py,sha256=TkC54qOQx0qAHEMYEOHfTPlcXELLo3LicKYLA5JI99Y,22512 +torch/utils/_config_typing.pyi,sha256=bjWHYX2OMeX-WxL9X-JKOGzADXMRz0RlwFoDXu-_3w0,1215 +torch/utils/_content_store.py,sha256=InhcN6uHuJwER8aI7mDMlWiExgbDas0XWSqFKsE8q1c,9315 +torch/utils/_contextlib.py,sha256=nwTVoWtuuJFIuJrd_oR17tTLMxQxy-yASOtduaB-2LY,6179 +torch/utils/_cpp_extension_versioner.py,sha256=dF6WCk-hLwLFMkC165lTmeLpmCa-YJZyJYxR8E9sg-g,2075 +torch/utils/_cxx_pytree.py,sha256=9hwMvYkvIvW8FR6DMBlpCA8WE-NEW7IaDgOwaqeEbKg,37452 +torch/utils/_device.py,sha256=l7-2PR3wY9dOuIFHH5-VVhkXMx66_R61cfFnuYacY4k,3906 +torch/utils/_exposed_in.py,sha256=p5zMXcgQljOCL_cNC7ZnBv1mRBdXE0Uw9AU6Hw0ncrc,713 +torch/utils/_foreach_utils.py,sha256=xVNrr1pZzdeLyk4SGqWfcvoTIweUkcKGWiN2-u4IAZQ,2386 +torch/utils/_freeze.py,sha256=6cHKZ9PLPwwxFRMhK6e7Kfmei3pKw8zXV16YEpXqOQQ,10307 +torch/utils/_get_clean_triton.py,sha256=q-M8kmSVhG1V1WHOximLot7Nj1l2kgmLQ_C8rbNaX_8,5374 +torch/utils/_import_utils.py,sha256=fSjbydUyVHOw8XgPD7GwhSOPVoJpvyo9hzNB7Vj6HAc,1310 +torch/utils/_mode_utils.py,sha256=QUW47Nnin5rmnmskdfNqFxQqWWfs1XQXM8ZUVvEoq1Q,262 +torch/utils/_ordered_set.py,sha256=VxoT7DkmVo62AL4kAUzH3jLjXMimOIInZ9MqXla4uVU,5979 +torch/utils/_python_dispatch.py,sha256=A2xWi7Bt08MxCoGvvgA2GEa-Ek7yYKmnI7kCslw-AfU,29245 +torch/utils/_pytree.py,sha256=iq8rC4w-LeiNaa-v97ictPLmbE_999tszAdBiLl_tlk,57102 +torch/utils/_stats.py,sha256=5xwpk2wmMz1ZfVt7PVc3YkCOHQZ7MjGimrm-SNGbPnw,859 +torch/utils/_strobelight/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/utils/_strobelight/__pycache__/__init__.cpython-312.pyc,, +torch/utils/_strobelight/__pycache__/cli_function_profiler.cpython-312.pyc,, +torch/utils/_strobelight/cli_function_profiler.py,sha256=scIZ3w8Eo05f337q5dBJST-WfxC4FDjH_HCbOoxZKR8,11334 +torch/utils/_sympy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/utils/_sympy/__pycache__/__init__.cpython-312.pyc,, +torch/utils/_sympy/__pycache__/functions.cpython-312.pyc,, +torch/utils/_sympy/__pycache__/interp.cpython-312.pyc,, +torch/utils/_sympy/__pycache__/numbers.cpython-312.pyc,, +torch/utils/_sympy/__pycache__/printers.cpython-312.pyc,, +torch/utils/_sympy/__pycache__/reference.cpython-312.pyc,, +torch/utils/_sympy/__pycache__/singleton_int.cpython-312.pyc,, +torch/utils/_sympy/__pycache__/solve.cpython-312.pyc,, +torch/utils/_sympy/__pycache__/symbol.cpython-312.pyc,, +torch/utils/_sympy/__pycache__/value_ranges.cpython-312.pyc,, +torch/utils/_sympy/functions.py,sha256=hmcN14YLkjgqd4EhGLm5tTDFzfnjw5WcjD9rAV7F_wk,51165 +torch/utils/_sympy/interp.py,sha256=XG5T80463QiwE5cKsF9jbFAfgUWy9YDPgtS_xWXC6mQ,7382 +torch/utils/_sympy/numbers.py,sha256=FvfpF4qMhvL2_U6uss9AEM3KtzVWVCRiAVT3Dzfju00,11798 +torch/utils/_sympy/printers.py,sha256=tMvf153JaY7W3wZpybTABxFcOM5H1f4IVwwbVE2YQGc,18985 +torch/utils/_sympy/reference.py,sha256=XX9JLmhoUnrKshsPPtfTZXqgc5VTE-eouCEDlPyFQxc,14185 +torch/utils/_sympy/singleton_int.py,sha256=qmZE5Y_eko7F0h6KPB45OfhG3eeWTy_xrefo4N4RHm8,3063 +torch/utils/_sympy/solve.py,sha256=YSiuH43BoWroRT7QFp0VgUYB0QLYYLh41PgSXrU1BJ4,6706 +torch/utils/_sympy/symbol.py,sha256=lFBnMxx7j_49czDcIDVwXFe1Nlpk_74PVEJ_ilnDUhA,3703 +torch/utils/_sympy/value_ranges.py,sha256=aFLmvq0gNEC1qqi_SBAysOAUldFQX6V77lMAF-qI_ms,39662 +torch/utils/_thunk.py,sha256=ANhkLaR7G9l0ck5ozEW-sTaDiruj-3BWkjgF9AnhTxg,653 +torch/utils/_traceback.py,sha256=8yxEB6XGWNM5e9ccDiVNzlfulUxqz_w1e1efim7HPCI,10535 +torch/utils/_triton.py,sha256=nAtANsT2zmKaCGvKCRWVMajvscjuBogk9YtP8-p2epM,3771 +torch/utils/_typing_utils.py,sha256=RLt9ulicp151yZcRNF2slxNkMuGmMhOLMMxWFO0IhcE,392 +torch/utils/_zip.py,sha256=2RqcSBX_E0KC2tqxxy10ADvOUc6oS9_3U4iGaW-xUeQ,2540 +torch/utils/backcompat/__init__.py,sha256=xm_fpM35kLRNKv7cxaIE8mA7IrBDDumDXBTp0XbITeo,716 +torch/utils/backcompat/__pycache__/__init__.cpython-312.pyc,, +torch/utils/backend_registration.py,sha256=Dw7R7g3xFPLZKci5c9pxGmgauh8REctktdtHXSr4ao8,19640 +torch/utils/benchmark/__init__.py,sha256=HKYS3h8Ga20QnvZJYgekjWd2Dc82oreraUxoRCfNmjo,417 +torch/utils/benchmark/__pycache__/__init__.cpython-312.pyc,, +torch/utils/benchmark/examples/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/utils/benchmark/examples/__pycache__/__init__.cpython-312.pyc,, +torch/utils/benchmark/examples/__pycache__/blas_compare_setup.cpython-312.pyc,, +torch/utils/benchmark/examples/__pycache__/compare.cpython-312.pyc,, +torch/utils/benchmark/examples/__pycache__/fuzzer.cpython-312.pyc,, +torch/utils/benchmark/examples/__pycache__/op_benchmark.cpython-312.pyc,, +torch/utils/benchmark/examples/__pycache__/simple_timeit.cpython-312.pyc,, +torch/utils/benchmark/examples/__pycache__/spectral_ops_fuzz_test.cpython-312.pyc,, +torch/utils/benchmark/examples/blas_compare_setup.py,sha256=76ifjIjrfLrU2ON1kVJy6UJF1QhbWaCrsaEure2hso0,7385 +torch/utils/benchmark/examples/compare.py,sha256=lMgFmYuUuudfWeYBmBbhcTJCivzvX48G08V6IwXbILU,3014 +torch/utils/benchmark/examples/fuzzer.py,sha256=44i30rV1ZI2XvjjmgQwKn9uRHhPMzWu9-5q6qkiI7fI,2736 +torch/utils/benchmark/examples/op_benchmark.py,sha256=jL6vlb3CKQsrdJHtIPymHXoVlTA90IGs9VzZ-Wbv94s,4332 +torch/utils/benchmark/examples/simple_timeit.py,sha256=ZDSfha_eRCAwY1CFPWzzgSRut3JdXNIHdkUR5vuRuN8,586 +torch/utils/benchmark/examples/spectral_ops_fuzz_test.py,sha256=6sdnmWrpcPVZFfl7BxzIOCFrCFr8bVXTNGIpE9beZiU,4893 +torch/utils/benchmark/op_fuzzers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/utils/benchmark/op_fuzzers/__pycache__/__init__.cpython-312.pyc,, +torch/utils/benchmark/op_fuzzers/__pycache__/binary.cpython-312.pyc,, +torch/utils/benchmark/op_fuzzers/__pycache__/sparse_binary.cpython-312.pyc,, +torch/utils/benchmark/op_fuzzers/__pycache__/sparse_unary.cpython-312.pyc,, +torch/utils/benchmark/op_fuzzers/__pycache__/spectral.cpython-312.pyc,, +torch/utils/benchmark/op_fuzzers/__pycache__/unary.cpython-312.pyc,, +torch/utils/benchmark/op_fuzzers/binary.py,sha256=ysSfD2-iIH_4Z2qsFaNoKR1HtyMUK9LulcvG_6hil4Y,4243 +torch/utils/benchmark/op_fuzzers/sparse_binary.py,sha256=o7xSLUC8cuDBktdc7L3CXFR5o9Ryh6o-0YYqUFA4f0k,4325 +torch/utils/benchmark/op_fuzzers/sparse_unary.py,sha256=FGesxlpDbBsz-2dSrA91WUIC4ZsQmNuBXlgJdTlEBsI,3329 +torch/utils/benchmark/op_fuzzers/spectral.py,sha256=4VrLgIYZy9d25Wua5GJq9Qvl0XjZcU51gAtd92jiY1k,3718 +torch/utils/benchmark/op_fuzzers/unary.py,sha256=uGKaDaT895NcmpHPZbYascVqFqVkOdEF3MJc6JVTRSQ,3228 +torch/utils/benchmark/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/utils/benchmark/utils/__pycache__/__init__.cpython-312.pyc,, +torch/utils/benchmark/utils/__pycache__/_stubs.cpython-312.pyc,, +torch/utils/benchmark/utils/__pycache__/common.cpython-312.pyc,, +torch/utils/benchmark/utils/__pycache__/compare.cpython-312.pyc,, +torch/utils/benchmark/utils/__pycache__/compile.cpython-312.pyc,, +torch/utils/benchmark/utils/__pycache__/cpp_jit.cpython-312.pyc,, +torch/utils/benchmark/utils/__pycache__/fuzzer.cpython-312.pyc,, +torch/utils/benchmark/utils/__pycache__/sparse_fuzzer.cpython-312.pyc,, +torch/utils/benchmark/utils/__pycache__/timer.cpython-312.pyc,, +torch/utils/benchmark/utils/_stubs.py,sha256=Q04-6e9vD_hmCDRiaQZiMPVSo9J71ZLsloJSziPQykE,1016 +torch/utils/benchmark/utils/common.py,sha256=Df2U72vfjzWqU6_vONkXFoUZkI6pjnZ_lQxZhWbhTBw,14008 +torch/utils/benchmark/utils/compare.py,sha256=wHDjanBW0u2DKYg7OOeoTa3Yk0crv2k5wv9L7O7SP6M,13619 +torch/utils/benchmark/utils/compile.py,sha256=BLoqQrhhJ_snKm58G_P_mQ0XJ2np_kupMEwpfpojAiQ,7799 +torch/utils/benchmark/utils/cpp_jit.py,sha256=RTaM0dXmnG-Xi5MbwD9XK4oBKcz2zHEebnXRVfGk6x8,6983 +torch/utils/benchmark/utils/fuzzer.py,sha256=DREP5RJTfvj2dBqUIOlHhcAHTC2-dZn0cpVafYPT_ec,18828 +torch/utils/benchmark/utils/sparse_fuzzer.py,sha256=kYjpRDV4f9A08u_cVuMQRWQqd0u6BAJ8XXyQQgIexn4,5288 +torch/utils/benchmark/utils/timeit_template.cpp,sha256=Va3o8cMDuSgEBzW9lRDPnLjLme5AXDjxlbYz7t8oFTU,1052 +torch/utils/benchmark/utils/timer.py,sha256=Ymgqzzhh0Qrq6dyVA06yNVQLKJV5DO4PweAC8UK-X0g,21634 +torch/utils/benchmark/utils/valgrind_wrapper/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/utils/benchmark/utils/valgrind_wrapper/__pycache__/__init__.cpython-312.pyc,, +torch/utils/benchmark/utils/valgrind_wrapper/__pycache__/timer_interface.cpython-312.pyc,, +torch/utils/benchmark/utils/valgrind_wrapper/callgrind.h,sha256=XCIF1Vdbl-Gx3F6t3FfIxGI5Nxg_fBriBQTvtWVAASQ,5873 +torch/utils/benchmark/utils/valgrind_wrapper/compat_bindings.cpp,sha256=gPk9mKdSUgL8ld02ctjzbpYBCNwmzmejCGcrlzaTErI,848 +torch/utils/benchmark/utils/valgrind_wrapper/timer_callgrind_template.cpp,sha256=Mz8VIs_lJ0-swUxXsp7mX3U-B_IQNocow7BJAZGkmgA,1744 +torch/utils/benchmark/utils/valgrind_wrapper/timer_interface.py,sha256=-X2W6vOJQP2xPJmuiRa9AZR_kWGk3BYIRBybHsbquzQ,38152 +torch/utils/benchmark/utils/valgrind_wrapper/valgrind.h,sha256=duxM9eWNw9-pJLX9amnu0-5RBYcglE_pF-R0la7YS6s,429810 +torch/utils/bottleneck/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/utils/bottleneck/__main__.py,sha256=Z2m2Yqe-I00RP7tTlywnEstvutHhKepma1fUSHd6OVc,7444 +torch/utils/bottleneck/__pycache__/__init__.cpython-312.pyc,, +torch/utils/bottleneck/__pycache__/__main__.cpython-312.pyc,, +torch/utils/bundled_inputs.py,sha256=Jv7vUy23lwLOSoyXnzXY8YsrUlbmtzvFSWXc0g06ElM,23043 +torch/utils/checkpoint.py,sha256=EAQcuaebe6OGeTGmGqQzSnlV7tmtmo0zGddyfBCxVWw,67661 +torch/utils/collect_env.py,sha256=AI1jp7cxF6nvY5CS-2yl9ppGfEF0GXZ30eX2TEyAx4Y,25045 +torch/utils/cpp_backtrace.py,sha256=2Kqo--zoORQcKGnK2UFIFfhw9QfunH-iE00FuAMtUFY,495 +torch/utils/cpp_extension.py,sha256=m-ICmrIPjTLZd6TFWqo7nW5L7rFg9qrmJNRV7kgmGmc,112516 +torch/utils/data/__init__.py,sha256=hLegEpoYshuRLS1FBfcK4lEFWutzOPnNLSyw0XRBP_Y,1731 +torch/utils/data/__pycache__/__init__.cpython-312.pyc,, +torch/utils/data/__pycache__/backward_compatibility.cpython-312.pyc,, +torch/utils/data/__pycache__/dataloader.cpython-312.pyc,, +torch/utils/data/__pycache__/dataset.cpython-312.pyc,, +torch/utils/data/__pycache__/distributed.cpython-312.pyc,, +torch/utils/data/__pycache__/graph.cpython-312.pyc,, +torch/utils/data/__pycache__/graph_settings.cpython-312.pyc,, +torch/utils/data/__pycache__/sampler.cpython-312.pyc,, +torch/utils/data/_utils/__init__.py,sha256=s6_rW5jvxF4QgKSFRFdMn6Mq6M8fGUE4jd1jSbY300k,1679 +torch/utils/data/_utils/__pycache__/__init__.cpython-312.pyc,, +torch/utils/data/_utils/__pycache__/collate.cpython-312.pyc,, +torch/utils/data/_utils/__pycache__/fetch.cpython-312.pyc,, +torch/utils/data/_utils/__pycache__/pin_memory.cpython-312.pyc,, +torch/utils/data/_utils/__pycache__/signal_handling.cpython-312.pyc,, +torch/utils/data/_utils/__pycache__/worker.cpython-312.pyc,, +torch/utils/data/_utils/collate.py,sha256=dLVWTeR9n-0m91F9Ub6LrSXEbE3-keo8JjEhXKKKwPo,16381 +torch/utils/data/_utils/fetch.py,sha256=v2i1UiJf5WVWnNnuZzkLuouDlhthMYKqhop6mu2207k,2008 +torch/utils/data/_utils/pin_memory.py,sha256=VlRXlRqniiDXaV_jw05DnOhdQbjEA7ykLH88A6GzTO0,4480 +torch/utils/data/_utils/signal_handling.py,sha256=CAh-YmhwRc9N3o-Lh0lorW75NA8SEBD_aBwtfbM0mys,3250 +torch/utils/data/_utils/worker.py,sha256=0YcrPgL-fRskmQVQ35iRqLqBMnq5TC2R5qqqHdHi5ic,14174 +torch/utils/data/backward_compatibility.py,sha256=-KXzq0gPoz0oWnCs8fz0i1m1i3-e1ZBOU6_kKUf-KxA,320 +torch/utils/data/dataloader.py,sha256=xcskowjPGFcb2U_oN0bmh3FiNBI7XXabYbld0Cx9biI,78780 +torch/utils/data/datapipes/__init__.py,sha256=LwlHIcce6VnPe17EZHBEkX6e56_OIqO-gHTi8l5bUrU,89 +torch/utils/data/datapipes/__pycache__/__init__.cpython-312.pyc,, +torch/utils/data/datapipes/__pycache__/_decorator.cpython-312.pyc,, +torch/utils/data/datapipes/__pycache__/_hook_iterator.cpython-312.pyc,, +torch/utils/data/datapipes/__pycache__/_typing.cpython-312.pyc,, +torch/utils/data/datapipes/__pycache__/datapipe.cpython-312.pyc,, +torch/utils/data/datapipes/__pycache__/gen_pyi.cpython-312.pyc,, +torch/utils/data/datapipes/_decorator.py,sha256=TsvFFBvKqGBlKf4lFC3xmc3m69oSu4j9akZVFupzTfo,8051 +torch/utils/data/datapipes/_hook_iterator.py,sha256=s4S1DGvxPhTE5xNCGDe5Sw41Yev09jMrAkcWHoyW6bc,12228 +torch/utils/data/datapipes/_typing.py,sha256=h8ZicceKG0PM5TwHFv8CnWuqtEk6I3jCKeFd15q31EU,16769 +torch/utils/data/datapipes/dataframe/__init__.py,sha256=0IbAghO5FXrmCE4FdZuzNIiB9bLdRai-Y0AigyQopPo,342 +torch/utils/data/datapipes/dataframe/__pycache__/__init__.cpython-312.pyc,, +torch/utils/data/datapipes/dataframe/__pycache__/dataframe_wrapper.cpython-312.pyc,, +torch/utils/data/datapipes/dataframe/__pycache__/dataframes.cpython-312.pyc,, +torch/utils/data/datapipes/dataframe/__pycache__/datapipes.cpython-312.pyc,, +torch/utils/data/datapipes/dataframe/__pycache__/structures.cpython-312.pyc,, +torch/utils/data/datapipes/dataframe/dataframe_wrapper.py,sha256=fDJVNgC8pC10rKyyn2Z9Z3VJL8aJiQzLEg1P8aIJYh0,3421 +torch/utils/data/datapipes/dataframe/dataframes.py,sha256=qvpfsMXgPP4q0OXDzsnMVhTttM12bkrK-MBT0IFVGFo,13937 +torch/utils/data/datapipes/dataframe/datapipes.py,sha256=0dQPgpptm294bOf8-dDovUulilK69jvDlw2RJeBXrCk,4679 +torch/utils/data/datapipes/dataframe/structures.py,sha256=NHJQ6C4VME59sRN8xTYFq5ZQ4Dfg03H7u7uX5OlmlY4,624 +torch/utils/data/datapipes/datapipe.py,sha256=A7cDe7XK28tqEeTXkNXhHRkuHsgkBMNcWT2qz5KA9vQ,17196 +torch/utils/data/datapipes/datapipe.pyi,sha256=4lQdo4VpoUspMPsUO9QyS08xpuj5cUhJugukpSvNpxU,32994 +torch/utils/data/datapipes/gen_pyi.py,sha256=2DR7nVPTRB21H_skJYHEavSGbf_-nAX_tZBDQGZx0pw,11102 +torch/utils/data/datapipes/iter/__init__.py,sha256=GlUTH5tAd0CqDbBpwB4kP3KcQ9Vf7XmolxZ7sEM18z0,1880 +torch/utils/data/datapipes/iter/__pycache__/__init__.cpython-312.pyc,, +torch/utils/data/datapipes/iter/__pycache__/callable.cpython-312.pyc,, +torch/utils/data/datapipes/iter/__pycache__/combinatorics.cpython-312.pyc,, +torch/utils/data/datapipes/iter/__pycache__/combining.cpython-312.pyc,, +torch/utils/data/datapipes/iter/__pycache__/filelister.cpython-312.pyc,, +torch/utils/data/datapipes/iter/__pycache__/fileopener.cpython-312.pyc,, +torch/utils/data/datapipes/iter/__pycache__/grouping.cpython-312.pyc,, +torch/utils/data/datapipes/iter/__pycache__/routeddecoder.cpython-312.pyc,, +torch/utils/data/datapipes/iter/__pycache__/selecting.cpython-312.pyc,, +torch/utils/data/datapipes/iter/__pycache__/sharding.cpython-312.pyc,, +torch/utils/data/datapipes/iter/__pycache__/streamreader.cpython-312.pyc,, +torch/utils/data/datapipes/iter/__pycache__/utils.cpython-312.pyc,, +torch/utils/data/datapipes/iter/callable.py,sha256=YImLygWLxGdS6G58Ueua0lZ-u_1Lgrn5XF8dcRPwkdw,9291 +torch/utils/data/datapipes/iter/combinatorics.py,sha256=Hbe__YrGN7waBO1aji1WRCWgriNKYNFItfIfXIdofEk,6647 +torch/utils/data/datapipes/iter/combining.py,sha256=et_Sdj82jAMeilg2rzSrJouuuu2WksNaABJw7ZAaDjY,28065 +torch/utils/data/datapipes/iter/filelister.py,sha256=8EHaQQoH5KLT-ayQkGFMv_1940Dc_AP_uvv88GsMe68,2663 +torch/utils/data/datapipes/iter/fileopener.py,sha256=H_D872bQLodjVtiAr_hrZNu_nGZx7xWEfcTuT7LwJRM,2879 +torch/utils/data/datapipes/iter/grouping.py,sha256=MRNY5WRZ4xqNzaVZSYnXLcZlY66622HhlNcuApj_bR8,12724 +torch/utils/data/datapipes/iter/routeddecoder.py,sha256=K9zCpB0t8VXHvDIrD5FngG-SqSV2gLwd9oaLTmxH5MA,2780 +torch/utils/data/datapipes/iter/selecting.py,sha256=Z-_HPgvmSybNBAxIqIQqt9QGXxkX93-P5HjUgcxFmHM,3394 +torch/utils/data/datapipes/iter/sharding.py,sha256=4-hred-1J-OJoBJxLbq3Go3RCcCXYMzjojnvfypHmwc,3615 +torch/utils/data/datapipes/iter/streamreader.py,sha256=VL7p6svlQ2A3pGsUApxEu5UpS-UBWXEcSCEzCVbcntI,1472 +torch/utils/data/datapipes/iter/utils.py,sha256=sMV9f61yUSGJUr-5iqntIFonG4qkiNPb743DXJhvnNc,1863 +torch/utils/data/datapipes/map/__init__.py,sha256=oaALDshhVqcb4hGlksTfovGF1hTp2uLsKUntU_oUUpE,686 +torch/utils/data/datapipes/map/__pycache__/__init__.cpython-312.pyc,, +torch/utils/data/datapipes/map/__pycache__/callable.cpython-312.pyc,, +torch/utils/data/datapipes/map/__pycache__/combinatorics.cpython-312.pyc,, +torch/utils/data/datapipes/map/__pycache__/combining.cpython-312.pyc,, +torch/utils/data/datapipes/map/__pycache__/grouping.cpython-312.pyc,, +torch/utils/data/datapipes/map/__pycache__/utils.cpython-312.pyc,, +torch/utils/data/datapipes/map/callable.py,sha256=mq5gvLNJu7iKatrRwQHK3ivivGNVRakROlJXCXM0GBI,1925 +torch/utils/data/datapipes/map/combinatorics.py,sha256=OqJ33Pe8BW26pJ8sLtqRf2nwMsADfHA1fe6-rdlvf1Q,4299 +torch/utils/data/datapipes/map/combining.py,sha256=DOM7rfFViZr53LfF6v0QCPfm9iQb2KME_QKX5BuCGJs,3783 +torch/utils/data/datapipes/map/grouping.py,sha256=TXv0A1OcUZQUFE-1Yn73hWOSNKfEASAyIy-TmkSdqPc,2515 +torch/utils/data/datapipes/map/utils.py,sha256=T-o6wYR7rrC4bkQPW6ny068mX_oC3KhXOj9tczLvl6E,1628 +torch/utils/data/datapipes/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/utils/data/datapipes/utils/__pycache__/__init__.cpython-312.pyc,, +torch/utils/data/datapipes/utils/__pycache__/common.cpython-312.pyc,, +torch/utils/data/datapipes/utils/__pycache__/decoder.cpython-312.pyc,, +torch/utils/data/datapipes/utils/__pycache__/snapshot.cpython-312.pyc,, +torch/utils/data/datapipes/utils/common.py,sha256=Xurac3YF6RdT34soLCHvQsfSjRmM-gJLdLbDtrVlgXM,14103 +torch/utils/data/datapipes/utils/decoder.py,sha256=qJrW_TYGJDhuYQMB-I5jSpDXPbAHd_foWmgUg3Yvfpk,12373 +torch/utils/data/datapipes/utils/snapshot.py,sha256=spA3vQv1uRcp1x-C2QYCxtKmd0O3zxwhMydbuX1_zQ0,3167 +torch/utils/data/dataset.py,sha256=l7Jc1yUK3mFGoDXxKfUnvoUOxDD9MBNQJxdTLyEFZiI,19679 +torch/utils/data/distributed.py,sha256=dntdghaPN3ZMYFzSMoUvszH6pzdRKGBMkOKSmBiNObQ,6247 +torch/utils/data/graph.py,sha256=6e8YiRIU3FAC9fesfciKIrS5HtJrVD-e7yFznjMebYs,5990 +torch/utils/data/graph_settings.py,sha256=MTMiYbK3vI91TZS3IObkGw88H82KVg7DP_TSTXLMqYU,5725 +torch/utils/data/sampler.py,sha256=96yDJ-zUZtBzSp_xKUyT35M4zzCPyM6ttc1bwvDeDyo,13204 +torch/utils/deterministic.py,sha256=B4D1Q9GMAqQWEyFiOknB05rbroRGQ2uh7nfC_5oaV2w,633 +torch/utils/dlpack.py,sha256=iX_CA5cKb7JK7UyIcRwKMFDUuweJ0gZSYzM6mMLziHk,4559 +torch/utils/file_baton.py,sha256=8GDklb-ExJjGrDA7ppWjLnk76jpnvHNBsQWj6d5qjQc,1469 +torch/utils/flop_counter.py,sha256=4wlDrMZp4TH_Wqt2B8rbqy056hda-7OVGx6pJRg4qkE,28974 +torch/utils/hipify/__init__.py,sha256=aF1qTFTEaCr30mm2ii0Wqs4ybLcLlwuiMraorC40TkU,34 +torch/utils/hipify/__pycache__/__init__.cpython-312.pyc,, +torch/utils/hipify/__pycache__/constants.cpython-312.pyc,, +torch/utils/hipify/__pycache__/cuda_to_hip_mappings.cpython-312.pyc,, +torch/utils/hipify/__pycache__/hipify_python.cpython-312.pyc,, +torch/utils/hipify/__pycache__/version.cpython-312.pyc,, +torch/utils/hipify/constants.py,sha256=rw3CEBOON8oXjimIdKy57SkimpFnPbE5nnfdgLAxvuQ,1236 +torch/utils/hipify/cuda_to_hip_mappings.py,sha256=00NfiBpManKpAk-vy4pkst2eIKUcWhmUVPruav58OHQ,359860 +torch/utils/hipify/hipify_python.py,sha256=AMdrcX_ZDwjE0b49j0Z4P0Hk7ruCnUWWaC1NesBGUNo,48150 +torch/utils/hipify/version.py,sha256=crlYURA_2Ujkpz7iVPHovvxZRtvt4QBXF5AAFJzRfz0,23 +torch/utils/hooks.py,sha256=42sn4W4SJXSjlOAcNa8akiN5M08D9431MqAeG0lQy6o,9775 +torch/utils/jit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/utils/jit/__pycache__/__init__.cpython-312.pyc,, +torch/utils/jit/__pycache__/log_extract.cpython-312.pyc,, +torch/utils/jit/log_extract.py,sha256=R9hZmZd32vOb27ox1x7xn07NFeJgAc1C5CFyJKdCiTs,3877 +torch/utils/mkldnn.py,sha256=DrhTx2yIld-PoGHs0VjA1XVqHcyK9nf0_2AW31SPeTU,8142 +torch/utils/mobile_optimizer.py,sha256=Fgq2CGIPo6luo0LP_qxdh2i_pr7_m7zIXAVHG_kM1cw,6576 +torch/utils/model_dump/__init__.py,sha256=7WktbhMB1gM56G5r3u_bzKZDvX79iEiQ10PBTHmUN1c,17217 +torch/utils/model_dump/__main__.py,sha256=svI1TUOVGqYtclCPw-W63BvkPoNLcCr7aDbGLvygZ24,84 +torch/utils/model_dump/__pycache__/__init__.cpython-312.pyc,, +torch/utils/model_dump/__pycache__/__main__.cpython-312.pyc,, +torch/utils/model_dump/code.js,sha256=scnF-tVarNCTh96M1XMkgLtxOW1HhjLDmQuepBT1ygQ,19940 +torch/utils/model_dump/htm.mjs,sha256=JOcbbeVY2ZKboFvrDklqA61fm3gOUUbGIpGurydshqM,1232 +torch/utils/model_dump/preact.mjs,sha256=FCb9XuNKpcEpGfo2Vk-0Xrem_mEjEMuAHa48ViJ8R5w,10080 +torch/utils/model_dump/skeleton.html,sha256=HfQCnjnPz6n9HwVKm-kN9tpxlNU18c9V2TMBCIPzxeU,405 +torch/utils/model_zoo.py,sha256=IYGYw6RMBc0ZkJbCnYnSHMScUIJIstopRVNiByTeS6E,119 +torch/utils/module_tracker.py,sha256=NwjCHeFsCrySOocitxUhpiHhjlZJa-5YBU-XHaRKzHE,5555 +torch/utils/show_pickle.py,sha256=YKfsucj3Y9EjgDisw-kg7XdXkmfUkDK7HeMVcyu-u6s,5576 +torch/utils/tensorboard/__init__.py,sha256=YGLArUjW5nc55eldWX2KGcshm9oPqI9Bo0mvudH7H5U,447 +torch/utils/tensorboard/__pycache__/__init__.cpython-312.pyc,, +torch/utils/tensorboard/__pycache__/_convert_np.cpython-312.pyc,, +torch/utils/tensorboard/__pycache__/_embedding.cpython-312.pyc,, +torch/utils/tensorboard/__pycache__/_onnx_graph.cpython-312.pyc,, +torch/utils/tensorboard/__pycache__/_proto_graph.cpython-312.pyc,, +torch/utils/tensorboard/__pycache__/_pytorch_graph.cpython-312.pyc,, +torch/utils/tensorboard/__pycache__/_utils.cpython-312.pyc,, +torch/utils/tensorboard/__pycache__/summary.cpython-312.pyc,, +torch/utils/tensorboard/__pycache__/writer.cpython-312.pyc,, +torch/utils/tensorboard/_convert_np.py,sha256=8gYMkQjfYZNaU90KASMXwWzS1jWAGcYDvwuN_pAYOUc,739 +torch/utils/tensorboard/_embedding.py,sha256=A4LJrdz1lAVpaqAkx06W0HlqXph0pkb4RjwUNXupBcE,3310 +torch/utils/tensorboard/_onnx_graph.py,sha256=NwyaXYZBFdd3ncLR_o5tUi1xSEsXY_eyF4v9WBDgcpc,1948 +torch/utils/tensorboard/_proto_graph.py,sha256=Bj4ltnvvzYLKFrU1AVMsO8oIn41N8wlLx3_za-yQQRQ,1812 +torch/utils/tensorboard/_pytorch_graph.py,sha256=V2jORlppq-dG4eqjqYcHYxV2J2nDV12Ht6Bqe6gOuek,14084 +torch/utils/tensorboard/_utils.py,sha256=UWCGh8XeP8639nwRpQHzlc2Y7zKkiTklHd8f_bM-vrw,4314 +torch/utils/tensorboard/summary.py,sha256=87BkVE7Inxj76Pk6MGJsZNfuw9jAWD-kEfA4ZyxuaAU,35450 +torch/utils/tensorboard/writer.py,sha256=uCZmtWAtcxKD6TzsREqRR_yyephHpJbPpz5vBBdB-xA,47877 +torch/utils/throughput_benchmark.py,sha256=D2bkOW6DmV3EL9gUtyOtCrUu6ttLy0_qTvrH2ESaokM,6662 +torch/utils/viz/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torch/utils/viz/__pycache__/__init__.cpython-312.pyc,, +torch/utils/viz/__pycache__/_cycles.cpython-312.pyc,, +torch/utils/viz/_cycles.py,sha256=nI0XLkbJkoIamES1xw4aI5JwR-Q4ft0bGpV94gBHp40,15178 +torch/utils/weak.py,sha256=2djnT8KfpZvhFVRg4roLNjcuFyxfabFNGuhYPgPb7Ac,11418 +torch/version.py,sha256=euMcen7ULFGQv_MvPtH-7C3dbr4PkUnnFgr2WWdV1a8,279 +torch/xpu/__init__.py,sha256=j_21xToSCSaQqHGt3yVh5WpVaboKPIOA5NtYR3vHiUI,17200 +torch/xpu/__pycache__/__init__.cpython-312.pyc,, +torch/xpu/__pycache__/_gpu_trace.cpython-312.pyc,, +torch/xpu/__pycache__/_utils.cpython-312.pyc,, +torch/xpu/__pycache__/memory.cpython-312.pyc,, +torch/xpu/__pycache__/random.cpython-312.pyc,, +torch/xpu/__pycache__/streams.cpython-312.pyc,, +torch/xpu/_gpu_trace.py,sha256=SltmScL935QpIl4-EAwAGipel1iqlbYcDY1b_Ya_qP0,2448 +torch/xpu/_utils.py,sha256=M0jSr-gb8thX6GBTyCew6Zh2BpH01z2N8H26T5QH1RY,1630 +torch/xpu/memory.py,sha256=DDyPYQVmBFAUiUJFq0stMDfk8SVeXhSqbfedg6MwI9c,8249 +torch/xpu/random.py,sha256=FpXloR3OpHMdvd8SzEI72Lkx3rEOaR1aJzV0lFI1K1M,5394 +torch/xpu/streams.py,sha256=fHdEhVpkz-S7K-70R84_shbGooKKNHKNDi628ih7nzo,5655 +torchgen/__init__.py,sha256=H-SsfkUmMfiwvWtfi5h_wA6sZ18TnfDDgB_31K0Yt50,358 +torchgen/__pycache__/__init__.cpython-312.pyc,, +torchgen/__pycache__/code_template.cpython-312.pyc,, +torchgen/__pycache__/context.cpython-312.pyc,, +torchgen/__pycache__/gen.cpython-312.pyc,, +torchgen/__pycache__/gen_aoti_c_shim.cpython-312.pyc,, +torchgen/__pycache__/gen_backend_stubs.cpython-312.pyc,, +torchgen/__pycache__/gen_executorch.cpython-312.pyc,, +torchgen/__pycache__/gen_functionalization_type.cpython-312.pyc,, +torchgen/__pycache__/gen_lazy_tensor.cpython-312.pyc,, +torchgen/__pycache__/gen_schema_utils.cpython-312.pyc,, +torchgen/__pycache__/gen_vmap_plumbing.cpython-312.pyc,, +torchgen/__pycache__/local.cpython-312.pyc,, +torchgen/__pycache__/model.cpython-312.pyc,, +torchgen/__pycache__/native_function_generation.cpython-312.pyc,, +torchgen/__pycache__/utils.cpython-312.pyc,, +torchgen/__pycache__/yaml_utils.cpython-312.pyc,, +torchgen/aoti/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torchgen/aoti/__pycache__/__init__.cpython-312.pyc,, +torchgen/aoti/__pycache__/fallback_ops.cpython-312.pyc,, +torchgen/aoti/fallback_ops.py,sha256=SbLyN_Gh_KMijgO8yZ2B-9fgnXmgX7R0FUS4J-ZUtQc,6087 +torchgen/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torchgen/api/__pycache__/__init__.cpython-312.pyc,, +torchgen/api/__pycache__/autograd.cpython-312.pyc,, +torchgen/api/__pycache__/cpp.cpython-312.pyc,, +torchgen/api/__pycache__/dispatcher.cpython-312.pyc,, +torchgen/api/__pycache__/functionalization.cpython-312.pyc,, +torchgen/api/__pycache__/lazy.cpython-312.pyc,, +torchgen/api/__pycache__/meta.cpython-312.pyc,, +torchgen/api/__pycache__/native.cpython-312.pyc,, +torchgen/api/__pycache__/python.cpython-312.pyc,, +torchgen/api/__pycache__/structured.cpython-312.pyc,, +torchgen/api/__pycache__/translate.cpython-312.pyc,, +torchgen/api/__pycache__/ufunc.cpython-312.pyc,, +torchgen/api/__pycache__/unboxing.cpython-312.pyc,, +torchgen/api/autograd.py,sha256=Oog_YcN6KV19aCa05tzfpvWjt8X0e32tWrazjdApACs,39833 +torchgen/api/cpp.py,sha256=tHh_ZZmZB3ivNERhNFooRxasfcqfiT7ZBcbQI5akdhQ,17055 +torchgen/api/dispatcher.py,sha256=kgqqfqM9zA1VoaplHchLszU6Ptbozl63VxiAiseoguU,3574 +torchgen/api/functionalization.py,sha256=wUQBTWDpxOyCqOBCmHTZ5AavHy9jl1Ptn4WyGiTuY4Q,7765 +torchgen/api/lazy.py,sha256=IpDnGnH2zW6WJFLCSlPttoTTg0TLMRAsxXh8H9hhkR0,17521 +torchgen/api/meta.py,sha256=jtTIUQQvK4WQwYBPiK7CBfH9ih7sYEPYnWlXcjJ7Nvs,496 +torchgen/api/native.py,sha256=IwqYeY1PWcIpR7e4f3QOHYRezzn5xo1DmiOLcXFJ0Y0,5361 +torchgen/api/python.py,sha256=uoZazJXzaMdfOAiXdX2pEk_6v3NNXvhlk8ljyXCfbGI,60283 +torchgen/api/structured.py,sha256=Fj-oAMrqmnOnC2YZMthy60DgsPk87nX0LkZOEGBOrFI,6268 +torchgen/api/translate.py,sha256=qQjNcsYlvUZdrQ70rqxPpDIsKrMEaYyzXJvcZC0M9Oc,19734 +torchgen/api/types/__init__.py,sha256=C99zr_VE5z5WFZKdk93VW3ZN22NT4Hjxib3Pkk9T2VQ,149 +torchgen/api/types/__pycache__/__init__.cpython-312.pyc,, +torchgen/api/types/__pycache__/signatures.cpython-312.pyc,, +torchgen/api/types/__pycache__/types.cpython-312.pyc,, +torchgen/api/types/__pycache__/types_base.cpython-312.pyc,, +torchgen/api/types/signatures.py,sha256=MlW7q__nNaLw5VUpSD4ryczpL7wQvJfGEhSqELtnNWY,16124 +torchgen/api/types/types.py,sha256=7qw-vvbEAV1yt9hAtLgSROhjGBys0X0BtAYV7pab5HE,6733 +torchgen/api/types/types_base.py,sha256=f-DrNgLy-C7do-_TAlEI58H-dicVU7Zgl6JOOfplk9A,9240 +torchgen/api/ufunc.py,sha256=_CZftxat-hnDWlLlOHxtgm51BlusVVlWLzDmphJM3fg,6902 +torchgen/api/unboxing.py,sha256=eOLbJ1diUEiUN_xpw050jY1Nc6hUAEuf1kOSaIOOKbA,9622 +torchgen/code_template.py,sha256=qxLty5UyWZKA46paROwYwGJrMaQVlnIdz4RxVMaCuhg,3090 +torchgen/context.py,sha256=uNy8F--BVMSo-G5lBsbzuTSPTmC6egZeXIoaGhy6png,4190 +torchgen/dest/__init__.py,sha256=FbOiYHLsyT0FCZN7MHvnx0kkgdnee4TmmSueeDyqbQY,824 +torchgen/dest/__pycache__/__init__.cpython-312.pyc,, +torchgen/dest/__pycache__/lazy_ir.cpython-312.pyc,, +torchgen/dest/__pycache__/lazy_ts_lowering.cpython-312.pyc,, +torchgen/dest/__pycache__/native_functions.cpython-312.pyc,, +torchgen/dest/__pycache__/register_dispatch_key.cpython-312.pyc,, +torchgen/dest/__pycache__/ufunc.cpython-312.pyc,, +torchgen/dest/lazy_ir.py,sha256=HtMW_UlnMsUJfKZRYqzmP_GUbISCB5wzqvuWQNPvSps,29697 +torchgen/dest/lazy_ts_lowering.py,sha256=ToSekeRQ09J9NOutqYAgfSxQQyGElWq18oPU_LYzoig,1879 +torchgen/dest/native_functions.py,sha256=sImMYruoRS454K-TdPjBpABGBlDCFJP-YRt_NZmVKH8,3255 +torchgen/dest/register_dispatch_key.py,sha256=Z-7NbfLzMFJD52z363YNk4-XXh_gyK_-LbPsz56P9X8,42002 +torchgen/dest/ufunc.py,sha256=su4cOBIOMWD1wRilxmvm8_euMKXTO7eJEyCslKpp2E8,18391 +torchgen/executorch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torchgen/executorch/__pycache__/__init__.cpython-312.pyc,, +torchgen/executorch/__pycache__/model.cpython-312.pyc,, +torchgen/executorch/__pycache__/parse.cpython-312.pyc,, +torchgen/executorch/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torchgen/executorch/api/__pycache__/__init__.cpython-312.pyc,, +torchgen/executorch/api/__pycache__/custom_ops.cpython-312.pyc,, +torchgen/executorch/api/__pycache__/et_cpp.cpython-312.pyc,, +torchgen/executorch/api/__pycache__/unboxing.cpython-312.pyc,, +torchgen/executorch/api/custom_ops.py,sha256=Xvwm8zTDyzjhc4a1-Fdx_CaxcvPFytIfeFSXEO5NhuM,5659 +torchgen/executorch/api/et_cpp.py,sha256=M_3WFW3NCC2LXgfU0HBlg1ekbXWSuRNEjjY0Ownylc8,13364 +torchgen/executorch/api/types/__init__.py,sha256=Bh8bwLaHOwfBWYV-uANm9MPDA_Sl15wYATPBHHgL1-s,126 +torchgen/executorch/api/types/__pycache__/__init__.cpython-312.pyc,, +torchgen/executorch/api/types/__pycache__/signatures.cpython-312.pyc,, +torchgen/executorch/api/types/__pycache__/types.cpython-312.pyc,, +torchgen/executorch/api/types/signatures.py,sha256=sJpFqNqI8mWfHs25-hhmVQ5Y9dGmyf5xTpMUmVCeuNI,2643 +torchgen/executorch/api/types/types.py,sha256=v7o2uA_gdd4kprE1f9NhPDpabKfEdBnBIWGqpjMrCI0,2520 +torchgen/executorch/api/unboxing.py,sha256=p0Ph_D2z5yhSSKZuTfGHqCLiFYCIw5V5TrAbRpYe_Qc,7854 +torchgen/executorch/model.py,sha256=YtJlshl25ej0tZmKpr5AfhSBJuyxSO-irby4UNKzQTk,7883 +torchgen/executorch/parse.py,sha256=tHxuVaeXguJyG1iv5IqkhPQOa2ruZdDJttIsfhGuCPk,5575 +torchgen/gen.py,sha256=voWn43daipHt15WZxYNVzSSh2dKFwXK_-pK-ZP8jwQ8,119287 +torchgen/gen_aoti_c_shim.py,sha256=VAyzwIl1k5WPmuTj0B28_oagzCafNux2jQPFBM8EtU0,17793 +torchgen/gen_backend_stubs.py,sha256=FT20lFvUhE3ZrDkHUAfkKAVoWHopBmh2cYDSAzPd3NM,23003 +torchgen/gen_executorch.py,sha256=6vnO6VnsGnEFxkHjRfM7vMzsuVZux1XljHgyRXk4J00,37268 +torchgen/gen_functionalization_type.py,sha256=DnIchvu0ymRjDD3MR5sigIfesFrnSllyxbd8xSw2mvI,38970 +torchgen/gen_lazy_tensor.py,sha256=kjTHtTQEe9cvxr4BPZeuMWwPvW3juP_rqBOrD4eI0Uw,23325 +torchgen/gen_schema_utils.py,sha256=6sjmARHT1fdrPXsErIJKyHXhY2j8adxwvDB19whp0wo,3414 +torchgen/gen_vmap_plumbing.py,sha256=P7LR5OFaoqgthGaq3WHEmcnYTRm0CfhR1f8tzqZbrUU,9670 +torchgen/local.py,sha256=RG7AIYHMQCd1JGTLYJk4Agzt5FQn1SKsWbS34BOkibw,2241 +torchgen/model.py,sha256=G0YxuLgDnOqXGtUP6ns-N25BXYurpaR_oDSRlHPAcZg,115860 +torchgen/native_function_generation.py,sha256=pJSFCzxD8xgrRQ5V26kEVig3Xkvg_HbrmewzFRa7P34,30416 +torchgen/operator_versions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torchgen/operator_versions/__pycache__/__init__.cpython-312.pyc,, +torchgen/operator_versions/__pycache__/gen_mobile_upgraders.cpython-312.pyc,, +torchgen/operator_versions/__pycache__/gen_mobile_upgraders_constant.cpython-312.pyc,, +torchgen/operator_versions/gen_mobile_upgraders.py,sha256=WnXgdvPiX4q2W1t1BZ5Lo40ybziJiN8JekYU7bmw1KE,12815 +torchgen/operator_versions/gen_mobile_upgraders_constant.py,sha256=W57M1HWkrQzY_Vw259_PPBTRH41YVC2fFg5k2Tt_yCA,250 +torchgen/packaged/ATen/native/native_functions.yaml,sha256=4J7fkebYb01pVWv5sAskI6wJVwYxdUzeakhxJGTiWgw,616297 +torchgen/packaged/ATen/native/tags.yaml,sha256=aglMyV50BmddjbVD5-5HlNEm6pV0jV4o5rpGJxKlgO0,4356 +torchgen/packaged/ATen/templates/ATenOpList.cpp,sha256=2-bfZSImHz9rcx9v1LjiY1eT-btNz6A5UIMMi-F1i5k,1095 +torchgen/packaged/ATen/templates/CompositeViewCopyKernels.cpp,sha256=S7KFBelXFjlC6rxDimK2F-b5-WquNjJbxP1b_nhP7kk,2150 +torchgen/packaged/ATen/templates/DispatchKeyFunction.h,sha256=ApTWxDG1RjaC5DTjQpxbrkCaQmfWbdxUatDLM3nBP_E,725 +torchgen/packaged/ATen/templates/DispatchKeyFunctions.h,sha256=bW-d7rkZRIqmVkwOl8UmRLtjboz1XLb4nJUJ6ArRjC4,1966 +torchgen/packaged/ATen/templates/DispatchKeyFunctions_inl.h,sha256=ZAL9FVX2z3e-Dy7rFx7LpJ6B4Rgmb1n1zPFKlXjRJ9g,846 +torchgen/packaged/ATen/templates/DispatchKeyNativeFunctions.cpp,sha256=eKjvIeiCkoiG-imx-bdSaSijsa6YCPddR3eQE1H4eyE,197 +torchgen/packaged/ATen/templates/DispatchKeyNativeFunctions.h,sha256=Dc80YgjeS7IKhlrvDbcFfF9dK1gRHKzAoAlDWHZpvGM,403 +torchgen/packaged/ATen/templates/Function.h,sha256=4X19P2dRq7clcQloRACnmCI_pDgkXQ28yRYAo3RvC5c,522 +torchgen/packaged/ATen/templates/FunctionalInverses.h,sha256=6jdfM2a79k81bY_q1Qa2hYfBXlb19OZ_kMA2nxPS-GM,1264 +torchgen/packaged/ATen/templates/Functions.cpp,sha256=ztbdRrV921OmPkVSc6AepkzGvIUmC5_mtGRJXQOyJWs,3131 +torchgen/packaged/ATen/templates/Functions.h,sha256=m5ChjCleu5it8axXbNuLec9pU4U0Y0HBCxarkQAQfQI,4820 +torchgen/packaged/ATen/templates/LazyIr.h,sha256=o6jbaNUmVesCtDPi6W9REt8_hRrS6svFAe9xHiLwbJs,604 +torchgen/packaged/ATen/templates/LazyNonNativeIr.h,sha256=PKbQsvyOzry_u7iAtUnzKrF04BAXTIYY3zOMSnoDLBc,189 +torchgen/packaged/ATen/templates/MethodOperators.h,sha256=NClKeE6gjJAQpsZQGwOM6WqR3nmZOdIXMWkBi1ZldWE,854 +torchgen/packaged/ATen/templates/NativeFunction.h,sha256=m6DEzxpD_6O3VM_vBiMIM7iKktWt5-Y0CxaJ3LgDFgI,383 +torchgen/packaged/ATen/templates/NativeFunctions.h,sha256=Sbcv1aMyr_7HDs_ZOrHbdgSW7-Df9DHenZ1e7DhMXYo,1182 +torchgen/packaged/ATen/templates/NativeMetaFunction.h,sha256=cGSreOfBl6AZDUPu55pB8KHQBpZy-b9-kp7SZ1N5xLg,475 +torchgen/packaged/ATen/templates/NativeMetaFunctions.h,sha256=4yheSqOheiuuy2esGccOJ0oAyYzhOwyC3_04nrteL-A,325 +torchgen/packaged/ATen/templates/Operator.h,sha256=G5CQSOfdru8Ked2Tjg75ou-uudEiSDv_ocnheNcSd9M,443 +torchgen/packaged/ATen/templates/Operators.cpp,sha256=bawk3V-uv13iD-ZDflZzzSpkKiVjN-rx22rvqaluYVo,366 +torchgen/packaged/ATen/templates/Operators.h,sha256=lLjk91v_znrZfyQ4-7vqPd2x4Rch9Qj2WuorJOUWdgc,3274 +torchgen/packaged/ATen/templates/RedispatchFunctions.cpp,sha256=cZTM_p-qgCTl6FnXmv4lEFxAshOZ1AyAPSRTdZq2Iqs,322 +torchgen/packaged/ATen/templates/RedispatchFunctions.h,sha256=j3mkCuYJU4Lk6qIUXzeBlF9_Y3Ey1lZvfbRbP_T1SJQ,914 +torchgen/packaged/ATen/templates/RegisterBackendSelect.cpp,sha256=gqG1UAo7Y7TmIxdeSI0snk4XZKMGg_qRsYibtqzGYaQ,781 +torchgen/packaged/ATen/templates/RegisterCodegenUnboxedKernels.cpp,sha256=V_V0w8dRrA4mXBTX_p2bKzy2xa_NceoH0zz4fJRaClg,1160 +torchgen/packaged/ATen/templates/RegisterDispatchDefinitions.ini,sha256=bkH-GDEmYjCAYhL2xwX6369YyQjYXObWGuAzVJXsLZI,500 +torchgen/packaged/ATen/templates/RegisterDispatchKey.cpp,sha256=OWtXPh-c2BOH2NstkgWnsJxLan-Uu6RcgCizwAUSDdw,1736 +torchgen/packaged/ATen/templates/RegisterFunctionalization.cpp,sha256=R43dhxVQ8YT9b_lrHuW4OurBcb9JIVtkzs2IQfoZ18g,3394 +torchgen/packaged/ATen/templates/RegisterSchema.cpp,sha256=uvGTom__-QBGFWs6mdwiOuAqULY8PtkSQ-W0AVzIgrY,396 +torchgen/packaged/ATen/templates/RegistrationDeclarations.h,sha256=omjHl6z7mF7KpRdd7PKEbHplEHACz0IQC3_x0nvO4vo,164 +torchgen/packaged/ATen/templates/TensorBody.h,sha256=P0Io2meiPBtKxdrvLfQqgp0dPO0B1VWNTrg6jFEIaFc,29906 +torchgen/packaged/ATen/templates/TensorMethods.cpp,sha256=HTb6yR6OxbnfvpcnfGWMLiVqbxyejFzb40YwhONUnrE,2685 +torchgen/packaged/ATen/templates/UfuncCPU.cpp,sha256=sNuukoCbDy034J9FalXIP1B49QqkcRqg0nGrKMhzSFE,464 +torchgen/packaged/ATen/templates/UfuncCPUKernel.cpp,sha256=rtFLOYPfpBLyUAIeI_MSgnNMIxpGFvPd-jCtxwQ5gdU,364 +torchgen/packaged/ATen/templates/UfuncCUDA.cu,sha256=9nuaFvMTZlWn4_FdRL4gB886BG7kqS6MEW62s1AhnKg,515 +torchgen/packaged/ATen/templates/UnboxingFunctions.cpp,sha256=U83PTJxwRjKE2tkNzKmigWYHbFLB0a_MIUdWLj8atPY,744 +torchgen/packaged/ATen/templates/UnboxingFunctions.h,sha256=uOkK0X-nci7gucn7MD1c5pL-Fh52I464rOhzYJWHSyg,1058 +torchgen/packaged/ATen/templates/aten_interned_strings.h,sha256=ySu-vkTTqSEIOpgKhCg_v7tJab1eOWBEqKUGBePJr4g,827 +torchgen/packaged/ATen/templates/enum_tag.h,sha256=noIV15PR8ybSfEW7LdykYBK5da9O_NRM8QW-DV6WKlU,189 +torchgen/packaged/autograd/BUILD.bazel,sha256=5k-uc2W6OMFb0NuoB7VA91YyflbdR0YEmApN3V6r5SI,108 +torchgen/packaged/autograd/README.md,sha256=Z_hBdZ0049gw9XLEVrbmrxuEKF59h8pHnEDP3iZZ_aY,150 +torchgen/packaged/autograd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torchgen/packaged/autograd/__pycache__/__init__.cpython-312.pyc,, +torchgen/packaged/autograd/__pycache__/context.cpython-312.pyc,, +torchgen/packaged/autograd/__pycache__/gen_annotated_fn_args.cpython-312.pyc,, +torchgen/packaged/autograd/__pycache__/gen_autograd.cpython-312.pyc,, +torchgen/packaged/autograd/__pycache__/gen_autograd_functions.cpython-312.pyc,, +torchgen/packaged/autograd/__pycache__/gen_inplace_or_view_type.cpython-312.pyc,, +torchgen/packaged/autograd/__pycache__/gen_python_functions.cpython-312.pyc,, +torchgen/packaged/autograd/__pycache__/gen_trace_type.cpython-312.pyc,, +torchgen/packaged/autograd/__pycache__/gen_variable_factories.cpython-312.pyc,, +torchgen/packaged/autograd/__pycache__/gen_variable_type.cpython-312.pyc,, +torchgen/packaged/autograd/__pycache__/gen_view_funcs.cpython-312.pyc,, +torchgen/packaged/autograd/__pycache__/load_derivatives.cpython-312.pyc,, +torchgen/packaged/autograd/build.bzl,sha256=WB6MNefjiTn2EynM2msiIxLhBsrr_QG_gkQK42VN9do,362 +torchgen/packaged/autograd/context.py,sha256=2imEJAHPJDT0t-Sa69FUtKS_-4b9FEU5MiSiezfmprc,976 +torchgen/packaged/autograd/deprecated.yaml,sha256=nqwyinCg7yaWqCSYnt2K3e4cN9UhOn4EHnyjHqPbFAA,6384 +torchgen/packaged/autograd/derivatives.yaml,sha256=mvwgHp5A_SY4OkWvFg128_S3TzYhoDOe1qAyfH0I2e4,184299 +torchgen/packaged/autograd/gen_annotated_fn_args.py,sha256=daj1trxKFQFrPqDX48N5O4NdqCRVrbvTGsLyWrOUgKQ,4576 +torchgen/packaged/autograd/gen_autograd.py,sha256=RdGuCFgSWUBk8zRH7LaHA-wzlmOF2iY5n2jFPGuejSk,4764 +torchgen/packaged/autograd/gen_autograd_functions.py,sha256=pd4f_oqt8n8OmSmczzTjtd15ldWoKyN3sZbWuPwWMSY,36772 +torchgen/packaged/autograd/gen_inplace_or_view_type.py,sha256=tcXdnfTVkQkdKYo9rT01ghNqH1z21Sa4VfUh7M5zdTA,23395 +torchgen/packaged/autograd/gen_python_functions.py,sha256=Omx1inbPeH_pL7Js9V7dB7T88-Ehj39Jx4FrMaZpeXs,47667 +torchgen/packaged/autograd/gen_trace_type.py,sha256=vr_jVTkgwTkFjDjLM2-O--wQUYsyGiUsX7-4yti9Z1w,19444 +torchgen/packaged/autograd/gen_variable_factories.py,sha256=lC8DD0LLyjo8I_w3FIrzdDdd-HBU2TYV_HDclpX22FA,4595 +torchgen/packaged/autograd/gen_variable_type.py,sha256=fZnc1v39kGDyRQEYSB-K9Fmdxbw4fvYin6Pa1mqh04k,85883 +torchgen/packaged/autograd/gen_view_funcs.py,sha256=8LjGRG6rC7LaIpS9VbIAU6vs4fhWF1ln14YHxsdL-N8,11946 +torchgen/packaged/autograd/load_derivatives.py,sha256=7YvkTDvXR_oRGwgkv416DRY7G2gz-zZTAa2XtGueyiQ,41294 +torchgen/packaged/autograd/templates/ADInplaceOrViewType.cpp,sha256=Y_aTR4cYflFtyBbWYS4ukPk7YVV39GgZbbsXSJFx-PE,828 +torchgen/packaged/autograd/templates/Functions.cpp,sha256=IFRHd4JHlaJ-uDH3mjOzxRYvgpb6sZJ02Z-FSkmTlkI,643 +torchgen/packaged/autograd/templates/Functions.h,sha256=6SmhZf2IIxPrVvf5xjaoLeCmkBfLLFqnFUhlSOhGXF0,1628 +torchgen/packaged/autograd/templates/TraceType.cpp,sha256=atz5-v313Iyl9rgCfl47_ejuCZfLey1bBwrzXqXaAZc,735 +torchgen/packaged/autograd/templates/VariableType.cpp,sha256=hALVtwdH4Tax8xlZ0P3mlV8DeG8cg8_K00CVDFBo16M,1917 +torchgen/packaged/autograd/templates/VariableType.h,sha256=YR-TpqKjlrG5RHXJx_-XhQiUuI4bmMrm7OR_OhOlAcs,1522 +torchgen/packaged/autograd/templates/ViewFuncs.cpp,sha256=ZaBU6mFMxrFHUV-mJ5C5G-bnMCUJJIERx6mkv6FlA4s,283 +torchgen/packaged/autograd/templates/ViewFuncs.h,sha256=97-ircmuaEKtzul3qUwdmYAS2QdRwCwPYFanyWQ6Y5c,526 +torchgen/packaged/autograd/templates/annotated_fn_args.py.in,sha256=lRK-e23JYHNU9tOhKCPyvHe0VCkfE0oCTHPY870xcms,210 +torchgen/packaged/autograd/templates/python_enum_tag.cpp,sha256=yJ8tkTuDfywePj1rHVMFUAb1W94bLXzvEvcIHl0JFGc,510 +torchgen/packaged/autograd/templates/python_fft_functions.cpp,sha256=hX3IY0ydw_IKpZtItWPAufuPNEb-VnwIPBh7XNCIhH0,2032 +torchgen/packaged/autograd/templates/python_functions.cpp,sha256=9hWIAuGR4McZ3-3eGByN_-Xrs3MarHG3YZc8FX69Ztw,1158 +torchgen/packaged/autograd/templates/python_functions.h,sha256=sPbeuOK7oLweIhgvOSeaiowQoAy4OGT95GwAxo9uprs,362 +torchgen/packaged/autograd/templates/python_linalg_functions.cpp,sha256=Bn0M_Y087pMuOI-2yKIAc4f6zH2j_STCPLeWnbmZunc,1682 +torchgen/packaged/autograd/templates/python_nested_functions.cpp,sha256=jUWc9gx-WTyO1IU3x705D67icWO8zihMd12Q3d02lLM,2110 +torchgen/packaged/autograd/templates/python_nn_functions.cpp,sha256=gb6nXP7vliFyuZLREsv4d0Gs0WFfHs9-pWj63BaLEYQ,3614 +torchgen/packaged/autograd/templates/python_return_types.cpp,sha256=rF1xv6sEAKkT5Qr4fFUulozpXikWddFyakECVq9Sn_I,1271 +torchgen/packaged/autograd/templates/python_return_types.h,sha256=qezAy6s6ZpEt5CfCINVH2Pnjn1sRMZcFa_kCz_7b3GQ,212 +torchgen/packaged/autograd/templates/python_sparse_functions.cpp,sha256=J2mvrC6J71O3iEbob45odDb7uuY8UvvpQSiJRSn8nYg,1618 +torchgen/packaged/autograd/templates/python_special_functions.cpp,sha256=M8gD-seaEjkXjV0Qq4GEURKH_aGWYjPcun8GoMwD2Ek,2051 +torchgen/packaged/autograd/templates/python_torch_functions.cpp,sha256=GiTOx6SYABBjRDQjYbLE1_wZehaEYj6D2L_KqTTTvQA,2694 +torchgen/packaged/autograd/templates/python_variable_methods.cpp,sha256=QXcmFJo2wSB6ycf2Q9S--Bi5UL0I9y-S1UuOwemQ8d4,54884 +torchgen/packaged/autograd/templates/variable_factories.h,sha256=QFuWYylBWC-m7MdtD7y_SJV5hb8tLfPIMC6ZVPLy6AI,5772 +torchgen/selective_build/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torchgen/selective_build/__pycache__/__init__.cpython-312.pyc,, +torchgen/selective_build/__pycache__/operator.cpython-312.pyc,, +torchgen/selective_build/__pycache__/selector.cpython-312.pyc,, +torchgen/selective_build/operator.py,sha256=hNnVnr_mBoWaKYOQ1pRe8IPVjdc7VOrOYitha4iWt7k,6680 +torchgen/selective_build/selector.py,sha256=PQqSTqfo06ancrqAkGnfUEuG9FFaT6jSg3QrUPO47A0,13018 +torchgen/static_runtime/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 +torchgen/static_runtime/__pycache__/__init__.cpython-312.pyc,, +torchgen/static_runtime/__pycache__/config.cpython-312.pyc,, +torchgen/static_runtime/__pycache__/gen_static_runtime_ops.cpython-312.pyc,, +torchgen/static_runtime/__pycache__/generator.cpython-312.pyc,, +torchgen/static_runtime/config.py,sha256=jzyW-CalPLeaX8djIxs1uiJgEuBS7NZC7EzTHPVg9rs,14875 +torchgen/static_runtime/gen_static_runtime_ops.py,sha256=6cHkfR5qYEuNcCKDsmCeQRBPxWb7_bP9kIUOvqUXzzk,7659 +torchgen/static_runtime/generator.py,sha256=xyKb5_1pGxTI_WtC57dQqSKxKLONC4WSkzP2auEZnSM,27872 +torchgen/utils.py,sha256=0CZ48WuEN2X5iNh4qQWFZ91mTb4xIco4jbO6ChPw8i0,16993 +torchgen/yaml_utils.py,sha256=xMW2GvLaQKQGKMS-0JSYHhZeWo3z6TpdLqztDrptPyc,1106 diff --git a/REQUESTED b/REQUESTED new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/WHEEL b/WHEEL new file mode 100644 index 0000000000000000000000000000000000000000..917a3efd4517348f8cedb802697c7f16e690ab13 --- /dev/null +++ b/WHEEL @@ -0,0 +1,5 @@ +Wheel-Version: 1.0 +Generator: setuptools (72.1.0) +Root-Is-Purelib: false +Tag: cp312-cp312-win_amd64 + diff --git a/__init__.py b/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..a8b61af2c4b58ff14ab7e3b24bf22e8ec6a95da0 --- /dev/null +++ b/__init__.py @@ -0,0 +1,10 @@ +"""torchgen + +This module contains codegeneration utilities for PyTorch. It is used to +build PyTorch from source, but may also be used for out-of-tree projects +that extend PyTorch. + +Note well that we provide no BC guarantees for torchgen. If you're interested +in using torchgen and want the PyTorch team to be aware, please reach out +on GitHub. +""" diff --git a/activate b/activate new file mode 100644 index 0000000000000000000000000000000000000000..8b9c7f3a3def19016dad238288a9dd5034ebe159 --- /dev/null +++ b/activate @@ -0,0 +1,70 @@ +# This file must be used with "source bin/activate" *from bash* +# You cannot run it directly + +deactivate () { + # reset old environment variables + if [ -n "${_OLD_VIRTUAL_PATH:-}" ] ; then + PATH="${_OLD_VIRTUAL_PATH:-}" + export PATH + unset _OLD_VIRTUAL_PATH + fi + if [ -n "${_OLD_VIRTUAL_PYTHONHOME:-}" ] ; then + PYTHONHOME="${_OLD_VIRTUAL_PYTHONHOME:-}" + export PYTHONHOME + unset _OLD_VIRTUAL_PYTHONHOME + fi + + # Call hash to forget past commands. Without forgetting + # past commands the $PATH changes we made may not be respected + hash -r 2> /dev/null + + if [ -n "${_OLD_VIRTUAL_PS1:-}" ] ; then + PS1="${_OLD_VIRTUAL_PS1:-}" + export PS1 + unset _OLD_VIRTUAL_PS1 + fi + + unset VIRTUAL_ENV + unset VIRTUAL_ENV_PROMPT + if [ ! "${1:-}" = "nondestructive" ] ; then + # Self destruct! + unset -f deactivate + fi +} + +# unset irrelevant variables +deactivate nondestructive + +# on Windows, a path can contain colons and backslashes and has to be converted: +if [ "${OSTYPE:-}" = "cygwin" ] || [ "${OSTYPE:-}" = "msys" ] ; then + # transform D:\path\to\venv to /d/path/to/venv on MSYS + # and to /cygdrive/d/path/to/venv on Cygwin + export VIRTUAL_ENV=$(cygpath "C:\Users\migue\Downloads\Codigo\AI\HuggingModelAI\IAservicies\myenv") +else + # use the path as-is + export VIRTUAL_ENV="C:\Users\migue\Downloads\Codigo\AI\HuggingModelAI\IAservicies\myenv" +fi + +_OLD_VIRTUAL_PATH="$PATH" +PATH="$VIRTUAL_ENV/Scripts:$PATH" +export PATH + +# unset PYTHONHOME if set +# this will fail if PYTHONHOME is set to the empty string (which is bad anyway) +# could use `if (set -u; : $PYTHONHOME) ;` in bash +if [ -n "${PYTHONHOME:-}" ] ; then + _OLD_VIRTUAL_PYTHONHOME="${PYTHONHOME:-}" + unset PYTHONHOME +fi + +if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT:-}" ] ; then + _OLD_VIRTUAL_PS1="${PS1:-}" + PS1="(myenv) ${PS1:-}" + export PS1 + VIRTUAL_ENV_PROMPT="(myenv) " + export VIRTUAL_ENV_PROMPT +fi + +# Call hash to forget past commands. Without forgetting +# past commands the $PATH changes we made may not be respected +hash -r 2> /dev/null diff --git a/activate.bat b/activate.bat new file mode 100644 index 0000000000000000000000000000000000000000..f4b7e2505f12287a3743f8aa0b3b09caf86e3fd4 --- /dev/null +++ b/activate.bat @@ -0,0 +1,34 @@ +@echo off + +rem This file is UTF-8 encoded, so we need to update the current code page while executing it +for /f "tokens=2 delims=:." %%a in ('"%SystemRoot%\System32\chcp.com"') do ( + set _OLD_CODEPAGE=%%a +) +if defined _OLD_CODEPAGE ( + "%SystemRoot%\System32\chcp.com" 65001 > nul +) + +set VIRTUAL_ENV=C:\Users\migue\Downloads\Codigo\AI\HuggingModelAI\IAservicies\myenv + +if not defined PROMPT set PROMPT=$P$G + +if defined _OLD_VIRTUAL_PROMPT set PROMPT=%_OLD_VIRTUAL_PROMPT% +if defined _OLD_VIRTUAL_PYTHONHOME set PYTHONHOME=%_OLD_VIRTUAL_PYTHONHOME% + +set _OLD_VIRTUAL_PROMPT=%PROMPT% +set PROMPT=(myenv) %PROMPT% + +if defined PYTHONHOME set _OLD_VIRTUAL_PYTHONHOME=%PYTHONHOME% +set PYTHONHOME= + +if defined _OLD_VIRTUAL_PATH set PATH=%_OLD_VIRTUAL_PATH% +if not defined _OLD_VIRTUAL_PATH set _OLD_VIRTUAL_PATH=%PATH% + +set PATH=%VIRTUAL_ENV%\Scripts;%PATH% +set VIRTUAL_ENV_PROMPT=(myenv) + +:END +if defined _OLD_CODEPAGE ( + "%SystemRoot%\System32\chcp.com" %_OLD_CODEPAGE% > nul + set _OLD_CODEPAGE= +) diff --git a/code_template.py b/code_template.py new file mode 100644 index 0000000000000000000000000000000000000000..344bef87fe6564fc640b713c3d9091986499b838 --- /dev/null +++ b/code_template.py @@ -0,0 +1,103 @@ +from __future__ import annotations + +import re +from typing import TYPE_CHECKING + + +if TYPE_CHECKING: + from collections.abc import Mapping, Sequence + + +# match $identifier or ${identifier} and replace with value in env +# If this identifier is at the beginning of whitespace on a line +# and its value is a list then it is treated as +# block substitution by indenting to that depth and putting each element +# of the list on its own line +# if the identifier is on a line starting with non-whitespace and a list +# then it is comma separated ${,foo} will insert a comma before the list +# if this list is not empty and ${foo,} will insert one after. + + +class CodeTemplate: + substitution_str = r"(^[^\n\S]*)?\$([^\d\W]\w*|\{,?[^\d\W]\w*\,?})" + substitution = re.compile(substitution_str, re.MULTILINE) + + pattern: str + filename: str + + @staticmethod + def from_file(filename: str) -> CodeTemplate: + with open(filename) as f: + return CodeTemplate(f.read(), filename) + + def __init__(self, pattern: str, filename: str = "") -> None: + self.pattern = pattern + self.filename = filename + + def substitute( + self, env: Mapping[str, object] | None = None, **kwargs: object + ) -> str: + if env is None: + env = {} + + def lookup(v: str) -> object: + assert env is not None + return kwargs[v] if v in kwargs else env[v] + + def indent_lines(indent: str, v: Sequence[object]) -> str: + return "".join( + [indent + l + "\n" for e in v for l in str(e).splitlines()] + ).rstrip() + + def replace(match: re.Match[str]) -> str: + indent = match.group(1) + key = match.group(2) + comma_before = "" + comma_after = "" + if key[0] == "{": + key = key[1:-1] + if key[0] == ",": + comma_before = ", " + key = key[1:] + if key[-1] == ",": + comma_after = ", " + key = key[:-1] + v = lookup(key) + if indent is not None: + if not isinstance(v, list): + v = [v] + return indent_lines(indent, v) + elif isinstance(v, list): + middle = ", ".join([str(x) for x in v]) + if len(v) == 0: + return middle + return comma_before + middle + comma_after + else: + return str(v) + + return self.substitution.sub(replace, self.pattern) + + +if __name__ == "__main__": + c = CodeTemplate( + """\ + int foo($args) { + + $bar + $bar + $a+$b + } + int commatest(int a${,stuff}) + int notest(int a${,empty,}) + """ + ) + print( + c.substitute( + args=["hi", 8], + bar=["what", 7], + a=3, + b=4, + stuff=["things...", "others"], + empty=[], + ) + ) diff --git a/context.py b/context.py new file mode 100644 index 0000000000000000000000000000000000000000..a288d96559a5128ce576ba116778e7c26fb513e9 --- /dev/null +++ b/context.py @@ -0,0 +1,134 @@ +from __future__ import annotations + +import contextlib +import functools +from typing import Any, Callable, Optional, TYPE_CHECKING, TypeVar, Union + +import torchgen.local as local +from torchgen.model import ( + BackendIndex, + DispatchKey, + NativeFunction, + NativeFunctionsGroup, + NativeFunctionsViewGroup, +) +from torchgen.utils import context, S, T + + +if TYPE_CHECKING: + from collections.abc import Iterator + + +# Helper functions for defining generators on things in the model + +F = TypeVar( + "F", + NativeFunction, + NativeFunctionsGroup, + NativeFunctionsViewGroup, + Union[NativeFunction, NativeFunctionsGroup], + Union[NativeFunction, NativeFunctionsViewGroup], +) + +F2 = TypeVar( + "F2", + NativeFunction, + NativeFunctionsGroup, + Optional[NativeFunction], + bool, + str, +) + +F3 = TypeVar("F3", tuple[NativeFunction, Any], list[NativeFunction]) + + +@contextlib.contextmanager +def native_function_manager( + g: NativeFunctionsGroup | NativeFunctionsViewGroup | NativeFunction, +) -> Iterator[None]: + if isinstance(g, NativeFunctionsGroup): + # By default, we associate all errors with structured native functions + # with the out variant. In some cases, it might be better to have + # a more specific place to hang things; if so, use + # native_function_manager again on the inside + f = g.out + elif isinstance(g, NativeFunctionsViewGroup): + # We associate errors with the view operator + f = g.view + else: + f = g + with context(lambda: f"in native_functions.yaml line {f.loc}:\n {f.func}"): + with local.parametrize( + use_const_ref_for_mutable_tensors=f.use_const_ref_for_mutable_tensors, + use_ilistref_for_tensor_lists=f.part_of_structured_group, + ): + yield + + +# Given a function that operates on NativeFunction, wrap it into a new function +# that sets some appropriate context managers for that native function. +# YOU MUST WRAP FUNCTIONS IN THIS for calls to api modules to be sound +# (you will get an error if we try to access the local variables without having +# set them). +def with_native_function(func: Callable[[F], T]) -> Callable[[F], T]: + @functools.wraps(func) + def wrapper(f: F) -> T: + with native_function_manager(f): + return func(f) + + return wrapper + + +def with_native_function_and(func: Callable[[F, F2], T]) -> Callable[[F, F2], T]: + @functools.wraps(func) + def wrapper(f: F, f2: F2) -> T: + # The first native_function is assumed to be the one with the appropriate context. + with native_function_manager(f): + return func(f, f2) + + return wrapper + + +def method_with_native_function(func: Callable[[S, F], T]) -> Callable[[S, F], T]: + @functools.wraps(func) + def wrapper(slf: S, f: F) -> T: + with native_function_manager(f): + return func(slf, f) + + return wrapper + + +def method_with_nested_native_function( + func: Callable[[S, F3], T], +) -> Callable[[S, F3], T]: + @functools.wraps(func) + def wrapper(slf: S, f: F3) -> T: + with native_function_manager(f[0]): + return func(slf, f) + + return wrapper + + +# Convenience decorator for functions that explicitly take in a BackendIndex, +# instead of indirectly taking one in as a closure +def with_native_function_and_index( + func: Callable[[F, BackendIndex], T], +) -> Callable[[F, BackendIndex], T]: + @functools.wraps(func) + def wrapper(f: F, backend_index: BackendIndex) -> T: + with native_function_manager(f): + return func(f, backend_index) + + return wrapper + + +# Convenience decorator for functions that explicitly take in a Dict of BackendIndices +def with_native_function_and_indices( + func: Callable[[F, dict[DispatchKey, BackendIndex]], T], +) -> Callable[[F, dict[DispatchKey, BackendIndex]], T]: + @functools.wraps(func) + def wrapper(f: F, backend_indices: dict[DispatchKey, BackendIndex]) -> T: + with native_function_manager(f): + return func(f, backend_indices) + + return wrapper diff --git a/datasets-cli.exe b/datasets-cli.exe new file mode 100644 index 0000000000000000000000000000000000000000..ff94112fd677674efb02c2c12220560624d0da29 --- /dev/null +++ b/datasets-cli.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ecc3f2798b65a5b9ee125a1bf86f62d05a56e9210e70dddff9a6895fae506a5 +size 108451 diff --git a/deactivate.bat b/deactivate.bat new file mode 100644 index 0000000000000000000000000000000000000000..44dae49537073789b536689bb940456e65929b99 --- /dev/null +++ b/deactivate.bat @@ -0,0 +1,22 @@ +@echo off + +if defined _OLD_VIRTUAL_PROMPT ( + set "PROMPT=%_OLD_VIRTUAL_PROMPT%" +) +set _OLD_VIRTUAL_PROMPT= + +if defined _OLD_VIRTUAL_PYTHONHOME ( + set "PYTHONHOME=%_OLD_VIRTUAL_PYTHONHOME%" + set _OLD_VIRTUAL_PYTHONHOME= +) + +if defined _OLD_VIRTUAL_PATH ( + set "PATH=%_OLD_VIRTUAL_PATH%" +) + +set _OLD_VIRTUAL_PATH= + +set VIRTUAL_ENV= +set VIRTUAL_ENV_PROMPT= + +:END diff --git a/distutils-precedence.pth b/distutils-precedence.pth new file mode 100644 index 0000000000000000000000000000000000000000..c659194195f07bd6f19b5522515551309af14a3d --- /dev/null +++ b/distutils-precedence.pth @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2638ce9e2500e572a5e0de7faed6661eb569d1b696fcba07b0dd223da5f5d224 +size 151 diff --git a/entry_points.txt b/entry_points.txt new file mode 100644 index 0000000000000000000000000000000000000000..43e5bc29823736ad435669527c514ef7980aaf7c --- /dev/null +++ b/entry_points.txt @@ -0,0 +1,6 @@ +[console_scripts] +torchfrtrace = tools.flight_recorder.fr_trace:main +torchrun = torch.distributed.run:main + +[torchrun.logs_specs] +default = torch.distributed.elastic.multiprocessing:DefaultLogsSpecs diff --git a/f2py.exe b/f2py.exe new file mode 100644 index 0000000000000000000000000000000000000000..4a06b1d2b38a26ce23a0f4710875debb04ff13f8 --- /dev/null +++ b/f2py.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5463826983b536494b9bf027c1fab304632aefe10c03e89f0145a7543cb69d16 +size 108440 diff --git a/gen.py b/gen.py new file mode 100644 index 0000000000000000000000000000000000000000..192a32c6031c570fbd5b168e9013330bed884851 --- /dev/null +++ b/gen.py @@ -0,0 +1,3064 @@ +from __future__ import annotations + +import argparse +import functools +import json +import keyword +import os +from collections import defaultdict, namedtuple, OrderedDict +from dataclasses import dataclass, field +from pathlib import Path +from typing import Any, Callable, Literal, TYPE_CHECKING, TypeVar + +import yaml + +import torchgen.api.dispatcher as dispatcher +import torchgen.api.meta as meta +import torchgen.api.native as native +import torchgen.api.structured as structured +import torchgen.dest as dest +from torchgen.aoti.fallback_ops import inductor_fallback_ops +from torchgen.api import cpp +from torchgen.api.translate import translate +from torchgen.api.types import ( + Binding, + CppSignature, + CppSignatureGroup, + DispatcherSignature, + NamedCType, + NativeSignature, + SpecialArgName, +) +from torchgen.context import ( + method_with_native_function, + native_function_manager, + with_native_function, + with_native_function_and_indices, +) +from torchgen.gen_aoti_c_shim import ( + gen_aoti_c_shim, + gen_static_dispatch_backend_call_signature, + get_fallback_op_name, + get_header_for_aoti, +) +from torchgen.gen_functionalization_type import ( + gen_functionalization_definition, + gen_functionalization_registration, + gen_functionalization_view_inverse_declaration, + GenCompositeViewCopyKernel, +) +from torchgen.gen_vmap_plumbing import gen_all_vmap_plumbing +from torchgen.model import ( + Argument, + BackendIndex, + BackendMetadata, + BaseOperatorName, + DEFAULT_KERNEL_NAMESPACE, + dispatch_device_map, + DispatchKey, + FRAGMENT_NAMESPACES, + FunctionSchema, + is_cuda_dispatch_key, + is_generic_dispatch_key, + is_ufunc_dispatch_key, + is_xpu_dispatch_key, + Location, + NativeFunction, + NativeFunctionsGroup, + NativeFunctionsViewGroup, + OperatorName, + OptionalType, + SchemaKind, + SelfArgument, + STRUCTURED_DISPATCH_KEYS, + TensorOptionsArguments, + Type, + Variant, + ViewSchemaKind, +) +from torchgen.native_function_generation import ( + add_generated_native_functions, + gen_composite_functional_kernel, + gen_composite_out_kernel, + pre_group_native_functions, +) +from torchgen.selective_build.selector import SelectiveBuilder +from torchgen.utils import ( + assert_never, + concatMap, + context, + FileManager, + make_file_manager, + mapMaybe, + NamespaceHelper, + Target, +) +from torchgen.yaml_utils import YamlDumper, YamlLoader + + +if TYPE_CHECKING: + from collections.abc import Sequence + + +T = TypeVar("T") + +# Welcome to the ATen code generator v2! The ATen code generator is +# responsible for parsing native_functions.yaml and then generating +# various generated files (e.g., TypeDefault.cpp) based on the operators +# defined in this file. This means that the code generator knows how to +# parse function schema, and then translate this into various C++ types +# and boilerplate code. +# +# Some things to know about this file when you modify it: +# +# - This file has STRICT mypy typechecking. Typecheck it with +# `mypy --config mypy-strict.ini` in the root source directory +# +# - Most of the heavy lifting lives in external modules: +# - 'model' has the data model for native_functions.yaml. The classes +# in those file represent what you see when you look at +# a native_functions.yaml +# - 'api' has conversions for how to translate JIT schema into +# the various C++ APIs that the codegen interacts with. There +# are in fact THREE different C++ APIs: the public C++ API, +# the dispatcher API, and the legacy dispatcher API. See each +# of these respective files for more information + +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # +# +# HELPER FUNCTIONS +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # + + +# A custom loader for YAML to let us also keep track of line numbers +# of each entry in the YAML file +class LineLoader(YamlLoader): + def construct_mapping(self, node, deep=False): # type: ignore[no-untyped-def] + mapping = super().construct_mapping(node, deep=deep) # type: ignore[no-untyped-call] + # Add 1 so line numbering starts at 1 + mapping["__line__"] = node.start_mark.line + 1 + return mapping + + +# Parse native_functions.yaml into a sequence of NativeFunctions and Backend Indices. +ParsedYaml = namedtuple("ParsedYaml", ["native_functions", "backend_indices"]) + + +_GLOBAL_PARSE_NATIVE_YAML_CACHE: dict[str, ParsedYaml] = {} +_GLOBAL_PARSE_TAGS_YAML_CACHE: dict[str, set[str]] = {} + + +def file_manager_from_dispatch_key( + dispatch_key: DispatchKey, + device_fms: dict[str, FileManager], + default_fm: FileManager, +) -> FileManager: + fm = device_fms.get( + next( + ( + device + for check, device in dispatch_device_map.items() + if check(dispatch_key) + ), + "", + ), + default_fm, + ) + return fm + + +def parse_native_yaml_struct( + es: object, + valid_tags: set[str], + ignore_keys: set[DispatchKey] | None = None, + path: str = "", + skip_native_fns_gen: bool = False, +) -> ParsedYaml: + assert isinstance(es, list) + rs: list[NativeFunction] = [] + bs: dict[DispatchKey, dict[OperatorName, BackendMetadata]] = defaultdict(dict) + for e in es: + assert isinstance(e, dict), f"expected to be dict: {e}" + assert isinstance(e.get("__line__"), int), e + loc = Location(path, e["__line__"]) + funcs = e.get("func") + assert funcs is not None, f"missed 'func' in {e}" + with context(lambda: f"in {loc}:\n {funcs}"): + func, m = NativeFunction.from_yaml(e, loc, valid_tags, ignore_keys) + rs.append(func) + BackendIndex.grow_index(bs, m) + error_check_native_functions(rs) + # Default dict is to prevent the codegen from barfing when we have a dispatch key that has no kernels yet. + indices: dict[DispatchKey, BackendIndex] = defaultdict( + lambda: BackendIndex( + dispatch_key=DispatchKey.Undefined, + use_out_as_primary=True, + external=False, + device_guard=False, + # I'm actually not sure about this; undefined could be hit on + # empty TensorList, hypothetically that could have sizes in it + index={}, + ) + ) + if not skip_native_fns_gen: + add_generated_native_functions(rs, bs) + for k, v in bs.items(): + # All structured in-tree operators are implemented in terms of their out operator. + indices[k] = BackendIndex( + dispatch_key=k, + use_out_as_primary=True, + external=False, + # Only cuda-like devices in tree require device guards + device_guard=is_cuda_dispatch_key(k) or is_xpu_dispatch_key(k), + index=v, + ) + return ParsedYaml(rs, indices) + + +def parse_tags_yaml_struct(es: object, path: str = "") -> set[str]: + assert isinstance(es, list) + rs: set[str] = set() + for e in es: + assert isinstance(e.get("__line__"), int), e + loc = Location(path, e["__line__"]) + tags = e.get("tag") + with context(lambda: f"in {loc}:\n {tags}"): + e_i = e.copy() + name = e_i.pop("tag") + desc = e_i.pop("desc", "") + # ensure that each tag has a non-empty description + assert desc != "" + rs.add(name) + return rs + + +@functools.cache +def parse_tags_yaml(path: str) -> set[str]: + global _GLOBAL_PARSE_TAGS_YAML_CACHE + if path not in _GLOBAL_PARSE_TAGS_YAML_CACHE: + with open(path) as f: + es = yaml.load(f, Loader=LineLoader) + _GLOBAL_PARSE_TAGS_YAML_CACHE[path] = parse_tags_yaml_struct(es, path=path) + + return _GLOBAL_PARSE_TAGS_YAML_CACHE[path] + + +def parse_native_yaml( + path: str, + tags_yaml_path: str, + ignore_keys: set[DispatchKey] | None = None, + *, + skip_native_fns_gen: bool = False, + loaded_yaml: object | None = None, +) -> ParsedYaml: + global _GLOBAL_PARSE_NATIVE_YAML_CACHE + if path not in _GLOBAL_PARSE_NATIVE_YAML_CACHE: + valid_tags = parse_tags_yaml(tags_yaml_path) + + # if a loaded yaml is provided, use that instead of reading from path + if loaded_yaml is None: + with open(path) as f: + es = yaml.load(f, Loader=LineLoader) + else: + es = loaded_yaml + + _GLOBAL_PARSE_NATIVE_YAML_CACHE[path] = parse_native_yaml_struct( + es, + valid_tags, + ignore_keys, + path=path, + skip_native_fns_gen=skip_native_fns_gen, + ) + + return _GLOBAL_PARSE_NATIVE_YAML_CACHE[path] + + +# Some assertions are already performed during parsing, but those are only within a single NativeFunction. +# Assertions here are meant to be performed across NativeFunctions. +def error_check_native_functions(funcs: Sequence[NativeFunction]) -> None: + func_map: dict[OperatorName, NativeFunction] = {} + base_func_map: dict[BaseOperatorName, list[NativeFunction]] = defaultdict(list) + for f in funcs: + func_map[f.func.name] = f + base_func_map[f.func.name.name].append(f) + for f in funcs: + if f.structured_delegate is not None: + delegate_func = func_map.get(f.structured_delegate) + assert delegate_func is not None, ( + f"{f.func.name} is marked as a structured_delegate pointing to " + f"{f.structured_delegate}, but {f.structured_delegate} is missing." + ) + assert delegate_func.structured, ( + f"{f.func.name} is marked as a structured_delegate pointing to " + f"{f.structured_delegate}, but {f.structured_delegate} is not marked as structured. " + f"Consider adding 'structured=True' to the delegated operator" + ) + + # Check for reserved Python keywords + PYTHON_RESERVED_KEYWORDS = set(keyword.kwlist) + # List of pre-existing operators that are known to have reserved keywords + # Exclusion list is used to suppress the assertion for these operators + EXCLUSION_LIST = { + ("_has_compatible_shallow_copy_type", "from"), + ("random_.from", "from"), + ("uniform_", "from"), + } + + for arg in f.func.arguments.flat_all: + if arg.name in PYTHON_RESERVED_KEYWORDS: + if (str(f.func.name), arg.name) not in EXCLUSION_LIST: + raise AssertionError( + f"Argument name '{arg.name}' in function '{f.func.name}' is a reserved Python keyword." + ) + # See Note [resize_ in Functionalization] + # resize_() is technically an inplace view op (and therefore needs the tag), + # but it would be overkill to add a true "view" variant of resize. + # Instead, resize_() gets special treatment in functionalization, + # and we have a resize() op that is non-aliasing + functional. + if ( + "inplace_view" in f.tags + and str(f.func.name) != "resize_" + and str(f.func.name) != "resize_as_" + and str(f.func.name.name) != "set_" + ): + base_name = f.func.name.name + assert base_name.inplace, ( + f"{f.func.name} is marked with tag: inplace_view, but it doesn't follow the naming " + "convention for inplace ops - the codegen expects the base name to have a trailing underscore. " + ) + out_of_place_base_name = BaseOperatorName( + base_name.base, False, base_name.dunder_method + ) + assert len(base_func_map[out_of_place_base_name]) > 0, ( + f"{f.func.name} is marked with tag: inplace_view. The codegen expects there to be a corresponding " + f"out-of-place view op with the name '{base_name}' and matching schema, but it didn't find one. " + ) + + +def cpp_string(s: str) -> str: + """Convert a python string into a c++ string literal""" + s = s.replace("\\", "\\\\") + s = s.replace('"', '\\"') + s = s.replace("\a", "\\a") + s = s.replace("\b", "\\b") + s = s.replace("\f", "\\f") + s = s.replace("\n", "\\n") + s = s.replace("\v", "\\v") + s = s.replace("\t", "\\t") + return f'"{s}"' + + +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # +# +# C++ CODE GENERATION +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # + +# Most functions in this section are curried: they consist of a function +# that takes some parameters (e.g., what is to be generated) which itself +# returns a function that actually maps NativeFunction to the code +# to be generated. This pattern makes it convenient to use map, concatMap +# and similar functional combinators. + + +def static_dispatch_keys(backends: list[BackendIndex]) -> list[DispatchKey]: + if len(backends) == 0: + return [] + else: + return [backend.dispatch_key for backend in backends] + [ + DispatchKey.CompositeImplicitAutograd, + DispatchKey.CompositeImplicitAutogradNestedTensor, + DispatchKey.CompositeExplicitAutograd, + DispatchKey.CompositeExplicitAutogradNonFunctional, + ] + + +def get_static_dispatch_backend( + f: NativeFunction, backend_index: BackendIndex +) -> DispatchKey | None: + if f.structured_delegate is not None or backend_index.has_kernel(f): + # TODO: for ops with structured_delegate it should check the dispatch table of + # the out variant instead. For now, these structured ops all have CPU/CUDA kernels + # so we always dispatch to the `backend`, but this could be wrong when we + # migrate math/default_backend ops to use structured delegate. + return backend_index.dispatch_key + elif f.has_composite_explicit_autograd_kernel: + return DispatchKey.CompositeExplicitAutograd + elif f.has_composite_explicit_autograd_non_functional_kernel: + return DispatchKey.CompositeExplicitAutogradNonFunctional + elif f.has_composite_implicit_autograd_kernel: + return DispatchKey.CompositeImplicitAutograd + elif f.has_composite_implicit_autograd_nested_tensor_kernel: + return DispatchKey.CompositeImplicitAutogradNestedTensor + return None + + +def static_dispatch_ops_header( + f: NativeFunction, backend_index: list[BackendIndex] +) -> str | None: + if backend_index is None or f.manual_kernel_registration: + return None + + output = [] + for index in backend_index: + dispatch_key = get_static_dispatch_backend(f, index) + if dispatch_key is not None: + output.append( + f"#include " + ) + return "\n".join(output) + + +def static_dispatch_extra_headers(backends: list[BackendIndex]) -> list[str]: + return [ + f"#include " + for dispatch_key in static_dispatch_keys(backends) + ] + + +# Translates arguments of `sig` to CppSignature bindings. +# Note that we have a special case for `memory_format` argument and this case is not covered by +# tools.codegen.api.translate() yet as its application is limited to static dispatch. +def translate_args( + sig: CppSignature | DispatcherSignature, + cpp_sig: CppSignature, +) -> str: + # Adds SpecialArgName.possibly_redundant_memory_format NamedCType for memory_format bindings + def add_spl_memory_format_binding(input_bindings: list[Binding]) -> list[Binding]: + output_bindings: list[Binding] = [] + for binding in input_bindings: + if binding.name == "memory_format": + spl_mem_format_binding = Binding( + nctype=NamedCType( + SpecialArgName.possibly_redundant_memory_format, + binding.nctype.type, + ), + name=binding.name, + default=binding.default, + argument=binding.argument, + ) + output_bindings.append(spl_mem_format_binding) + else: + output_bindings.append(binding) + return output_bindings + + src_bindings = list(sig.arguments()) + goal_bindings = list(cpp_sig.arguments()) + # When last argument of CPP signature has SpecialArgName.possibly_redundant_memory_format NCType, + # get memory_format bindings of dispatcher signature to have the same NCType as well + for arg in goal_bindings: + if arg.nctype.name == SpecialArgName.possibly_redundant_memory_format: + src_bindings = add_spl_memory_format_binding(src_bindings) + break + exprs = translate(src_bindings, goal_bindings) + return ", ".join(a.expr for a in exprs) + + +def generate_static_dispatch_backend_call( + sig: CppSignature | DispatcherSignature, + f: NativeFunction, + backend_index: BackendIndex, +) -> str: + cpp_sig = gen_static_dispatch_backend_call_signature(sig, f) + name = cpp_sig.name() + exprs = translate_args(sig, cpp_sig) + backend_metadata = backend_index.get_kernel(f) + kernel_ns = ( + backend_metadata.cpp_namespace + if backend_metadata and backend_metadata.cpp_namespace + else DEFAULT_KERNEL_NAMESPACE + ) + ns = kernel_ns.replace("::native", "") + return f"return {ns}::{backend_index.dispatch_key.lower()}::{name}({exprs});" + + +def generate_static_dispatch_fallback_call( + sig: CppSignature | DispatcherSignature, + f: NativeFunction, + backend_indices: list[BackendIndex], +) -> str: + cpp_sigs = CppSignatureGroup.from_native_function( + f, method=False, fallback_binding=False + ) + if sig.symint and f.func.has_symint(): + cpp_sig = cpp_sigs.symint_signature + else: + cpp_sig = cpp_sigs.signature + assert cpp_sig is not None + name = cpp_sig.name() + exprs = translate_args(sig, cpp_sig) + ns = DEFAULT_KERNEL_NAMESPACE.replace("::native", "") + if f.has_composite_explicit_autograd_kernel: + return f"return {ns}::{DispatchKey.CompositeExplicitAutograd.lower()}::{name}({exprs});" + elif f.has_composite_explicit_autograd_non_functional_kernel: + return f"return {ns}::{DispatchKey.CompositeExplicitAutogradNonFunctional.lower()}::{name}({exprs});" + elif f.has_composite_implicit_autograd_kernel: + return f"return {ns}::{DispatchKey.CompositeImplicitAutograd.lower()}::{name}({exprs});" + elif f.has_composite_implicit_autograd_nested_tensor_kernel: + return f"return {ns}::{DispatchKey.CompositeImplicitAutogradNestedTensor.lower()}::{name}({exprs});" + else: + return f"""TORCH_CHECK(false, "Static dispatch does not support {name} for\ +{', '.join([str(index.dispatch_key)for index in backend_indices])} ");""" + + +def static_dispatch( + sig: CppSignature | DispatcherSignature, + f: NativeFunction, + backend_indices: list[BackendIndex], +) -> str: + """ + For a given `NativeFunction`, find out the corresponding backend and dispatch to it. If more than one + backends exsit, fallback to static dispatch by determining dispatch key from inputs. + Arguments: + sig: A CppSignature or DispatcherSignature for this native function we want to use. + f: NativeFunction to generate static dispatch. + backend_indices: All available backends. + Return: + C++ code to call backend-specific functions, e.g., "return at::cpu::add(self, other, scale);" + """ + if len(backend_indices) == 0 or f.manual_kernel_registration: + return "" + + keys = [ + b + for b in backend_indices + if b.has_kernel(f) + or ( + f.structured_delegate is not None + and b.dispatch_key in STRUCTURED_DISPATCH_KEYS + ) + ] + if len(keys) == 1: + return generate_static_dispatch_backend_call(sig, f, keys[0]) + elif len(keys) == 0: + return generate_static_dispatch_fallback_call(sig, f, backend_indices) + + native_tensor_args = [ + a.name + for a in sig.arguments() + if isinstance(a.argument, SelfArgument) + or isinstance(a.argument, Argument) + and a.argument.type.is_tensor_like() + ] + tensor_args = ", ".join(native_tensor_args) + tensor_opts = f.func.arguments.tensor_options + + stmts = [] + subexprs: list[str] = [] + if tensor_opts is not None: + subexprs.append( + "DispatchKeySet(c10::computeDispatchKey(dtype, layout, device))" + ) + if tensor_args != "": + subexprs.append(f"c10::detail::multi_dispatch_key_set({tensor_args})") + stmts.append(f"""DispatchKeySet _dk_set = {' | '.join(subexprs)};""") + stmts.append("DispatchKey _dk = c10::highestPriorityBackendTypeId(_dk_set);") + + dispatch_code = [] + for index in keys: + dispatch_code.append(f"""case DispatchKey::{index.dispatch_key}:""") + dispatch_code.append( + f"""\t{generate_static_dispatch_backend_call(sig, f, index)};""" + ) + + fallback = generate_static_dispatch_fallback_call(sig, f, backend_indices) + connector = "\n\t\t" + + return f""" + {connector.join(stmts)} + switch (_dk) {{ + {connector.join(dispatch_code)} + default: + {fallback} + }} + """ + + +# Generates RegisterSchema.cpp. Depending on the selector, either +# all schemas are registered, or only some are (in the case of +# selective build) +@dataclass(frozen=True) +class RegisterSchema: + selector: SelectiveBuilder + known_tags: dict[str, int] = field(default_factory=dict) + + @method_with_native_function + def __call__(self, f: NativeFunction) -> str | None: + if not self.selector.is_native_function_selected(f): + return None + tags = "{" + ", ".join(f"at::Tag::{tag}" for tag in sorted(f.tags)) + "}" + if tags == "{}": + return f"m.def({cpp_string(str(f.func))}, {{}});\n" + maybe_tags = "" + if tags not in self.known_tags: + idx = len(self.known_tags) + self.known_tags[tags] = idx + maybe_tags = f"const std::vector tags_{idx} = {tags};\n" + return f"{maybe_tags}m.def({cpp_string(str(f.func))}, tags_{self.known_tags[tags]});\n" + + +# Generates Operators.h and Operators.cpp. +# These provide macros that, given an operator and overload name, allow users +# to access an "un-overloaded" function version of the operator. This +# is useful for extension writers who want to (1) want to decltype the operator +# and (2) don't want to worry about method-only operators. +@dataclass(frozen=True) +class ComputeOperators: + target: Literal[Target.DECLARATION, Target.DEFINITION] + static_dispatch_backend_indices: list[BackendIndex] + + @method_with_native_function + def __call__(self, f: NativeFunction) -> str: + sig = DispatcherSignature.from_schema(f.func) + name = f.func.name.unambiguous_name() + + if self.target is Target.DECLARATION: + # Note [The ATen Operators API] + # The ATen Operators API lives in the at::_ops namespace, and contains compile-time + # metadata about each operator + entry points into the Dispatcher. + # The C++ function, method, and redispatch API's are all implemented as wrappers + # into various bits of the structs defined here. + # + # Important characteristics about the Operators API: + # (1) It follows the Dispatcher API. + # This is kind of necessary to avoid overhead. + # For example: if it followed the C++ API, then all of the faithful C++ factory functions + # would need to wrap their arguments into TensorOptions only to unwrap them again. + # (2) Overload names are disambiguated. + # This is helpful for pytorch extenders who would like to decltype() an aten operator, + # that has overloads, e.g. decltype(at::_ops::mul_Tensor::call) + # (3) No argument defaulting is allowed. + # This is more of an implementation detail to avoid #include cycles, + # since TensorBody.h (which defines the Tensor class) needs to include this file. + # (4) manual_cpp_bindings and faithful names are not included in the API. + # This applies to stuff like __dispatch__is_complex(), and add_outf(). + # These aren't "real aten ops", they're just additional functions provided by the C++ API. + # They're implemented as wrappers in Functions.h that call into the actual operators + # defined here, i.e. at::_ops::is_complex::call() and at::_ops::add_out::call(). + # This means that ATEN_OP(is_complex) will not fastpath, and will go through the dispatcher. + return f""" +struct TORCH_API {name} {{ + using schema = {sig.type()}; + using ptr_schema = schema*; + // See Note [static constexpr char* members for windows NVCC] + static constexpr const char* name = "aten::{f.func.name.name}"; + static constexpr const char* overload_name = "{f.func.name.overload_name}"; + static constexpr const char* schema_str = {cpp_string(str(f.func))}; + static {sig.defn(name="call", is_redispatching_fn=False)}; + static {sig.defn(name="redispatch", is_redispatching_fn=True)}; +}};""" + + elif self.target is Target.DEFINITION: + defns = f""" +// aten::{f.func} +static C10_NOINLINE c10::TypedOperatorHandle<{name}::schema> create_{name}_typed_handle() {{ + return c10::Dispatcher::singleton() + .findSchemaOrThrow({name}::name, {name}::overload_name) + .typed<{name}::schema>(); +}} +""" + for is_redispatching_fn in [False, True]: + if is_redispatching_fn: + dispatcher_exprs_str = ", ".join( + ["dispatchKeySet"] + [a.name for a in sig.arguments()] + ) + method_base = "redispatch" + else: + dispatcher_exprs_str = ", ".join([a.name for a in sig.arguments()]) + method_base = "call" + + dispatcher_call = method_base + method_name = f"{name}::{method_base}" + + fn_body = f""" + static auto op = create_{name}_typed_handle(); + return op.{dispatcher_call}({dispatcher_exprs_str});""" + + if ( + not is_redispatching_fn + and len(self.static_dispatch_backend_indices) > 0 + ): + # call() should go through static dispatch + fn_body = static_dispatch( + sig, f, backend_indices=self.static_dispatch_backend_indices + ) + defns += f""" +// aten::{f.func} +{sig.defn(name=method_name, is_redispatching_fn=is_redispatching_fn)} {{ + {fn_body} +}} +""" + return defns + else: + assert_never(self.target) + + +# Generates Functions.h, which provides the functional public C++ API, +# and the scaffolding to call into the dispatcher from these functions. +@dataclass(frozen=True) +class ComputeFunction: + @method_with_native_function + def __call__(self, f: NativeFunction) -> str | None: + sig_group = CppSignatureGroup.from_native_function( + f, method=False, fallback_binding=f.manual_cpp_binding + ) + has_symint = f.func.has_symint() + + result = "" + for sig in sig_group.signatures(): + # See Note [The ATen Operators API] + target_sig = DispatcherSignature.from_schema(f.func) + exprs = translate(sig.arguments(), target_sig.arguments()) + exprs_str = ", ".join([e.expr for e in exprs]) + + if sig.symint: + intlike_t = "c10::SymInt" + else: + intlike_t = "int64_t" + + if Variant.function in f.variants: + result += f""" +// aten::{f.func} +inline {sig.decl()} {{ + return at::_ops::{f.func.name.unambiguous_name()}::call({exprs_str}); +}}""" + + # The template function can be used from template situations + # where you want to switch between the symint or not version + # depending on a template argument + # + # NB: we ALWAYS generate this even for methods. But we put it in + # this header so it can take advantage of per-op headers + if has_symint: + result += f""" +namespace symint {{ + template >> + {sig.decl(suppress_symint_suffix=True)} {{ + return at::_ops::{f.func.name.unambiguous_name()}::call({exprs_str}); + }} +}} +""" + return result + + +# Generates TensorBody.h. This file provides the object-oriented (method-based) +# public C++ API, and the scaffolding to call into the dispatcher from these functions. +@dataclass(frozen=True) +class ComputeTensorMethod: + target: Literal[Target.DECLARATION, Target.DEFINITION] + static_dispatch_backend_indices: list[BackendIndex] + + @method_with_native_function + def __call__(self, f: NativeFunction) -> str | None: + if Variant.method not in f.variants: + return None + + assert not f.func.is_out_fn() + assert f.func.arguments.self_arg is not None + + sig_group = CppSignatureGroup.from_native_function( + f, method=True, fallback_binding=f.manual_cpp_binding + ) + + if self.target is Target.DECLARATION: + result = "" + for sig in sig_group.signatures(): + result += f"{sig.decl()} const;\n" + return result + + if self.target is not Target.DEFINITION: + assert_never(self.target) + + result = "" + + for sig in sig_group.signatures(): + target_sig = DispatcherSignature.from_schema(f.func) + exprs = translate(sig.arguments(), target_sig.arguments(), method=True) + exprs_str = ", ".join([e.expr for e in exprs]) + + result += f""" +// aten::{f.func} +inline {sig.defn(prefix="Tensor::")} const {{ + return at::_ops::{f.func.name.unambiguous_name()}::call({exprs_str}); +}} +""" + + return result + + +# Generates RedispatchFunctions.h. +# This is similar to the C++ API defined in Functions.h, but provides access +# to the dispatcher's redispatch API. +@dataclass(frozen=True) +class ComputeRedispatchFunction: + @method_with_native_function + def __call__(self, f: NativeFunction) -> str | None: + # We unconditionally generate function variants of the redispatch API. + # This is mainly because we can namespace functions separately, but not methods, + sig_group = CppSignatureGroup.from_native_function( + f, method=False, fallback_binding=f.manual_cpp_binding + ) + + result = "" + for sig in sig_group.signatures(): + target_sig = DispatcherSignature.from_schema(f.func) + exprs = translate(sig.arguments(), target_sig.arguments()) + exprs_str = ", ".join(["dispatchKeySet"] + [a.expr for a in exprs]) + + result += f""" +// aten::{f.func} +inline {sig.decl(is_redispatching_fn=True)} {{ + return at::_ops::{f.func.name.unambiguous_name()}::redispatch({exprs_str}); +}} +""" + + return result + + +# Generates ATenOpList.cpp, a runtime accessible list of all aten +# operators. +# TODO: This was historically used to help some JIT interop code +# figure out whether or not to treat aten namespace'd operators +# one way or another, we should reevaluate if this is actually needed. +@with_native_function +def compute_aten_op(f: NativeFunction) -> str: + return f'{{"aten::{f.func.name.name}", "{f.func.name.overload_name}"}},' + + +# Generates MetaFunctions.h +def compute_meta_function_declaration(g: NativeFunctionsGroup) -> str | None: + if not g.structured: + return None + with native_function_manager(g.out): + name = meta.name(g) + args = structured.meta_arguments(g) + args_str = ", ".join(a.decl() for a in args) + parent_class = g.out.structured_inherits + if parent_class is None: + parent_class = "at::impl::MetaBase" + meta_return = "void" + precomputed = g.out.precomputed if g.structured else None + + if precomputed: + # Generate the template declaration with one bool parameter for each + # precomputed element. Each parameter is true if the corresponding (in + # terms of position) precomputed element has been set. + precomputed_values = [*precomputed.replace.values(), precomputed.add] + precomputed_elements = [ + elem for replace_list in precomputed_values for elem in replace_list + ] + precomputed_template_parameters = [ + elem.name.upper() for elem in precomputed_elements + ] + precomputed_template_params_str = ", ".join( + f"bool {param} = false" for param in precomputed_template_parameters + ) + precompute_template_decl = f"template <{precomputed_template_params_str}>" + + # Generate a string containing declarations of all precomputed elements. + precomputed_elements_with_cpp_types = [ + structured.argument_type(elem, binds=elem.name) + for elem in precomputed_elements + ] + + precomputed_elements_decl = ";\n".join( + f"{elem.cpp_type(strip_ref=True)} {elem.name}" + for elem in precomputed_elements_with_cpp_types + ) + + # Generate "setter" methods for each precomputed element. Each method will return + # a new instance of precompute_out with the template parameter that corresponds to + # the member set by the method to true (to indicate that it has been set). + setter_methods = [] + for i, elem in enumerate(precomputed_elements): + # Generate the signature. The return type will be the same + # as the type of `this` but with the template parameter + # corresponding to the element set by this method set to true. + # The assert generated below will ensure that this template + # parameter is false on the type of `this`. + return_ty_templates = ", ".join( + precomputed_template_parameters[:i] + + ["true"] + + precomputed_template_parameters[i + 1 :] + ) + return_ty = f"precompute_out<{return_ty_templates}>" + elem_cpp_ty = precomputed_elements_with_cpp_types[i].cpp_type( + strip_ref=True + ) + signature = f"{return_ty} set_{elem.name}({elem_cpp_ty} value)" + + # Generate an assert which checks that the + # template parameter corresponding to the precomputed + # element that is set by this method is false on the + # class corresponding to the object that `this` points to. + # This ensures that each element can be set only once. + assert_msg = f'"{elem.name} already set"' + assert_stmt = f"static_assert({precomputed_template_parameters[i]} == false, {assert_msg});" + + # Generate the new object construction block. All state + # except the element that this method sets is copied from the + # object that `this` points to. The value for the element that + # the method sets is taken from a method parameter. + construction_stmts = [] + construction_stmts.append(f"{return_ty} ret;") + + for j, elem in enumerate(precomputed_elements): + if i == j: + construction_stmts.append(f"ret.{elem.name} = value;") + else: + construction_stmts.append( + f"ret.{elem.name} = this->{elem.name};" + ) + + construction_stmts.append("return ret;") + construction_block = "\n".join(construction_stmts) + + setter_methods.append( + f""" + {signature} {{ + {assert_stmt} + {construction_block} + }} + """ + ) + setter_methods_decl = "\n".join(setter_methods) + + # Meta should return an instance of the struct containing the precomputed elements. + meta_return_template_params = ", ".join( + ["true"] * len(precomputed_template_parameters) + ) + # This typedef (actually a using statement) is needed so that TORCH_META_FUNC can reuse the return + # type (which has a variable number of template parameters). + meta_return_typedef = f"using meta_return_ty = precompute_out <{meta_return_template_params}>;" + meta_return = "meta_return_ty" + precomputed_decl = f""" + {precompute_template_decl} + struct TORCH_API precompute_out {{ + {setter_methods_decl} + {precomputed_elements_decl}; + }};""" + else: + meta_return_typedef = "" + precomputed_decl = "" + + return f"""\ +struct TORCH_API structured_{name} : public {parent_class} {{ + {precomputed_decl} + {meta_return_typedef} + {meta_return} meta({args_str}); +}}; +""" + + +def needs_backend_select(f: NativeFunction, selector: SelectiveBuilder) -> bool: + name = str(f.func.name.name) + if name.endswith("_like") or name.startswith("new_"): + return False + if f.func.arguments.tensor_options is None: + return False + return selector.is_native_function_selected(f) + + +# Generates RegisterBackendSelect.cpp, a series of kernels which provide +# specialized computation of dispatch key for operator signatures which cannot +# be easily done automatically using templating. +@dataclass(frozen=True) +class ComputeBackendSelect: + target: Literal[Target.DEFINITION, Target.REGISTRATION] + + # Selector object to determine which operators to generate + # registration code for. + selector: SelectiveBuilder + + @method_with_native_function + def __call__(self, f: NativeFunction) -> str | None: + if not needs_backend_select(f, self.selector): + return None + + name = native.name(f.func) + # BackendSelect can go to Meta, so it must preserve symints + native_sig = NativeSignature(f.func, symint=True) + + native_tensor_args = [ + a + for a in native_sig.arguments() + if isinstance(a.argument, Argument) and a.argument.type.is_tensor_like() + ] + + dispatcher_sig = DispatcherSignature.from_schema(f.func) + + sig: NativeSignature | DispatcherSignature + sig = dispatcher_sig + dispatcher_exprs = dispatcher_sig.exprs() + dispatch_key = "c10::computeDispatchKey(dtype, layout, device)" + + if self.target is Target.DEFINITION: + # I don't think there's actually a good reason to generate + # these two cases differently + # The first case could probably be improved though- it calls computeDispatchKeySet(), + # which looks at TLS dispatch keys- there should not be any by the time we reach backend select. + if native_tensor_args: + assert f.func.arguments.has_tensor_arg() + tensor_args = ", ".join(a.name for a in native_tensor_args) + compute_dk = f"""\ +DispatchKeySet _dk_set = c10::DispatchKeySet({dispatch_key}) | c10::detail::multi_dispatch_key_set({tensor_args}); +DispatchKeySet _dk_mask = c10::DispatchKeySet(DispatchKeySet::FULL_AFTER, DispatchKey::BackendSelect); +DispatchKeySet _dk = c10::impl::computeDispatchKeySet(_dk_set, _dk_mask);""" + else: + assert not f.func.arguments.has_tensor_arg() + compute_dk = ( + f"DispatchKeySet _dk = c10::DispatchKeySet({dispatch_key});" + ) + return f"""\ +// aten::{f.func} +C10_ALWAYS_INLINE +{sig.defn(name)} {{ + {compute_dk} + return at::_ops::{f.func.name.unambiguous_name()}::redispatch( + _dk, {', '.join(a.expr for a in dispatcher_exprs)}); +}} +""" + elif self.target is Target.REGISTRATION: + return f"""m.impl("aten::{f.func.name}", TORCH_FN({name}));""" + else: + assert_never(self.target) + + +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # +# +# YAML CODE GENERATION +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # + + +def format_yaml(data: object) -> str: + # Ignore alias in Dumper + YamlDumper.ignore_aliases = lambda self, data: True # type: ignore[assignment] + + # Support serializing OrderedDict + def dict_representer(dumper: Any, data: Any) -> Any: + return dumper.represent_dict(data.items()) + + YamlDumper.add_representer(OrderedDict, dict_representer) # type: ignore[no-untyped-call] + # Some yaml parsers (e.g. Haskell's) don't understand line breaks. + # width=1e9 turns off optional line breaks and improves + # the portability of the outputted yaml. + return yaml.dump(data, default_flow_style=False, Dumper=YamlDumper, width=1e9) # type: ignore[no-any-return, call-overload] + + +# For some reason, some defaults we write to YAML are written as native +# YAML objects, rather than doing them uniformly as strings. This +# function detects those cases and converts them into native Python +# objects. +def pythonify_default(s: str) -> object: + if s == "true": + return True + elif s == "false": + return False + + try: + return int(s) + except ValueError: + try: + return float(s) + except ValueError: + return s + + +# What is a dynamic type? Over time, the semantic meaning of +# dynamic type has degraded to meaninglessness (in the old days, +# it captured dtype-ness of types, but that has gone away with +# the removal of TH). These days, it's mostly the same thing as +# the C++ API argument type, except that Tensor and Tensor? +# arguments simply present as Tensor. +# +# TODO: Get rid of dynamic_type, after getting tools/autograd +# to use the new codegen framework +def dynamic_type(t: Type) -> str: + if isinstance(t, OptionalType): + return dynamic_type(t.elem) + # Note we don't use t.is_tensor_like() here because it would + # also include Tensor[] + if str(t) == "Tensor": + return "at::Tensor" + # This is a legacy concept, so never report SymInt + return cpp.argumenttype_type( + t, mutable=False, binds="__placeholder__", symint=False + ).cpp_type() + + +def compute_method_of_yaml(variants: set[Variant]) -> list[str]: + # This is written out explicitly to ensure that Tensor and + # namespace are put into the list in the right order + method_of = ["Type"] + if Variant.method in variants: + method_of.append("Tensor") + if Variant.function in variants: + method_of.append("namespace") + return method_of + + +def compute_returns_yaml( + f: NativeFunction, +) -> tuple[list[dict[str, str]], dict[str, str]]: + # Note [name and field_name] + # ~~~~~~~~~~~~~~~~~~~~~~~~~~ + # To understand name_to_field_name, we must first talk about this + # schema: + # + # lstsq.X(Tensor self, Tensor A, *, Tensor(a!) X, Tensor(b!) qr) -> (Tensor(a!) solution, Tensor(b!) QR) + # + # There is something very odd about this schema: it is an out + # variant of the function (that is to say, it will convert into + # at::lstsq_out() in the C++ API), but the names of the output + # return arguments don't match the keyword argument names of + # the inputs. It TURNS OUT that in this situation, the historical + # Declarations.yaml we want to output is this (abbreviated to + # only show relevant fields): + # + # arguments: + # ... + # - field_name: solution + # name: X + # - field_name: QR + # name: qr + # ... + # + # returns: + # - field_name: solution + # name: X + # - field_name: QR + # name: qr + # + # The name of the return fields is stored in 'field_name', and the + # name of the arguments is stored in 'name'. So when we process + # arguments, we need a way to get at the corresponding return. At + # the moment, this is most conveniently done by constructing a + # mapping from name (the argument concept) to field_name (the + # return concept) while processing return arguments, since we don't + # directly maintain this correspondence in the modeling of function + # schema itself. + # + # See also https://github.com/pytorch/pytorch/issues/43114 + name_to_field_name: dict[str, str] = {} + + # Compute the returns field of the YAML entry + names = cpp.return_names(f) + returns = [] + for i, (r, name) in enumerate(zip(f.func.returns, names)): + ret = { + "dynamic_type": dynamic_type(r.type), + "name": name, + # legacy, report ints + "type": cpp.return_type(r, symint=False).cpp_type(), + } + + if r.name: + # See Note [name and field_name] + ret["field_name"] = r.name + if f.func.is_out_fn(): + name_to_field_name[f.func.arguments.out[i].name] = r.name + + returns.append(ret) + + return returns, name_to_field_name + + +# arguments in yaml roughly corresponds to the public C++ API +def compute_cpp_argument_yaml( + cpp_a: Binding, + *, + schema_order: bool, + kwarg_only_set: set[str], + out_arg_set: set[str], + name_to_field_name: dict[str, str], +) -> object: + if isinstance(cpp_a.argument, TensorOptionsArguments): + arg: dict[str, object] = { + "annotation": None, + "dynamic_type": "at::TensorOptions", + "is_nullable": False, + "name": cpp_a.name, + "type": cpp_a.type, + "kwarg_only": True, + } + if cpp_a.default is not None: + arg["default"] = cpp_a.default + return arg + elif isinstance(cpp_a.argument, SelfArgument): + raise AssertionError + elif isinstance(cpp_a.argument, Argument): + return compute_argument_yaml( + cpp_a.argument, + schema_order=schema_order, + kwarg_only_set=kwarg_only_set, + out_arg_set=out_arg_set, + name_to_field_name=name_to_field_name, + ) + + +def compute_argument_yaml( + a: Argument, + *, + schema_order: bool, + kwarg_only_set: set[str], + out_arg_set: set[str], + name_to_field_name: dict[str, str], +) -> object: + arg: dict[str, object] = { + "annotation": str(a.annotation) if a.annotation else None, + "dynamic_type": dynamic_type(a.type), + "is_nullable": a.type.is_nullable(), + "name": a.name, + # legacy, report ints + "type": cpp.argument_type(a, binds="__placeholder__", symint=False).cpp_type(), + } + if a.default is not None: + arg["default"] = pythonify_default( + cpp.default_expr(a.default, a.type, symint=False) + ) + if a.name in kwarg_only_set: + arg["kwarg_only"] = True + if a.name in out_arg_set: + arg["output"] = True + arg["allocate"] = True + # See Note [name and field_name] + if a.name in name_to_field_name: + arg["field_name"] = name_to_field_name[a.name] + # Historically, booleans don't get their size recorded, because it + # is already built into the cpp type (e.g., std::array) + l = a.type.is_list_like() + if l is not None and l.size is not None and str(l.elem) != "bool": + arg["size"] = l.size + return arg + + +@with_native_function +def compute_declaration_yaml(f: NativeFunction) -> object: + returns, name_to_field_name = compute_returns_yaml(f) + + # These sets are used to conveniently test if an argument is a + # kwarg-only or out argument + kwarg_only_set = {a.name for a in f.func.arguments.flat_kwarg_only} + out_arg_set = {a.name for a in f.func.arguments.out} + + sig_group = CppSignatureGroup.from_native_function( + f, method=False, fallback_binding=False + ) + cpp_args = sig_group.signature.arguments() + arguments = [ + compute_cpp_argument_yaml( + cpp_a, + schema_order=False, + kwarg_only_set=kwarg_only_set, + out_arg_set=out_arg_set, + name_to_field_name=name_to_field_name, + ) + for cpp_a in cpp_args + ] + + schema_order_jit_arguments = list(f.func.schema_order_arguments()) + + schema_order_arguments = [ + compute_argument_yaml( + a, + schema_order=True, + kwarg_only_set=kwarg_only_set, + out_arg_set=out_arg_set, + name_to_field_name=name_to_field_name, + ) + for a in schema_order_jit_arguments + ] + + cpp_schema_order_types = [ + # NB: method here doesn't matter + r.type + for a in schema_order_jit_arguments + for r in cpp.argument( + a, + method=False, + cpp_no_default_args=set(), + faithful=False, + symint=False, + has_tensor_options=False, + ) + ] + + # legacy, report ints + cpp_returns = cpp.returns_type(f.func.returns, symint=False).cpp_type() + schema_order_cpp_signature = f"{cpp_returns} ({', '.join(cpp_schema_order_types)})" + + is_factory_method = ( + any(isinstance(a.argument, TensorOptionsArguments) for a in cpp_args) + and Variant.method not in f.variants + ) + + return OrderedDict( + [ + ("name", cpp.name(f.func)), + ("operator_name", str(f.func.name.name)), + ("overload_name", str(f.func.name.overload_name)), + ("manual_kernel_registration", f.manual_kernel_registration), + ( + "category_override", + f.category_override if f.category_override is not None else "", + ), + ("schema_string", f"aten::{f.func}"), + ("arguments", arguments), + ("schema_order_cpp_signature", schema_order_cpp_signature), + ("schema_order_arguments", schema_order_arguments), + ("method_of", compute_method_of_yaml(f.variants)), + ("mode", "native"), + ("python_module", "" if f.python_module is None else f.python_module), + ("returns", returns), + ("inplace", f.func.name.name.inplace), + ("is_factory_method", is_factory_method), + ("abstract", f.is_abstract), + ("device_guard", f.device_guard), + ("with_gil", False), + ("deprecated", False), + ("has_math_kernel", f.has_composite_implicit_autograd_kernel), + ] + ) + + +# See Note [Auto generated composite kernels] +def has_autogenerated_composite_kernel(f: NativeFunction) -> bool: + return (f.structured or f.structured_delegate is not None) and ( + f.func.kind() == SchemaKind.functional or f.func.kind() == SchemaKind.inplace + ) + + +@with_native_function_and_indices +def compute_registration_declarations( + f: NativeFunction, backend_indices: dict[DispatchKey, BackendIndex] +) -> str: + name = dispatcher.name(f.func) + returns_type = dispatcher.returns_type( + f.func.returns + ).cpp_type_registration_declarations() + args = dispatcher.arguments(f.func) + args_str = ", ".join(a.no_default().decl_registration_declarations() for a in args) + comment_data: dict[str, str] = { + "schema": f"aten::{f.func}", + # TODO: What exactly is the semantics of the 'dispatch' field? + "dispatch": str( + {k for k, v in backend_indices.items() if v.has_kernel(f)} + != {DispatchKey.CompositeImplicitAutograd} + and {k for k, v in backend_indices.items() if v.has_kernel(f)} + != { + DispatchKey.CompositeImplicitAutograd, + DispatchKey.CompositeImplicitAutogradNestedTensor, + } + ), + "default": str(f.has_composite_kernel or has_autogenerated_composite_kernel(f)), + } + return f"""{returns_type} {name}({args_str}); // {json.dumps(comment_data)} +""" + + +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # +# +# RUN IT ALL +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # + + +def get_custom_build_selector( + provided_op_registration_allowlist: list[str] | None, + op_selection_yaml_path: str | None, +) -> SelectiveBuilder: + assert not ( + provided_op_registration_allowlist is not None + and op_selection_yaml_path is not None + ), ( + "Both provided_op_registration_allowlist and " + + "op_selection_yaml_path can NOT be provided at the " + + "same time." + ) + + op_registration_allowlist: set[str] | None = None + if provided_op_registration_allowlist is not None: + op_registration_allowlist = set(provided_op_registration_allowlist) + + if op_registration_allowlist is not None: + selector = SelectiveBuilder.from_legacy_op_registration_allow_list( + op_registration_allowlist, + True, + False, + ) + elif op_selection_yaml_path is not None: + selector = SelectiveBuilder.from_yaml_path(op_selection_yaml_path) + else: + selector = SelectiveBuilder.get_nop_selector() + + return selector + + +def get_grouped_by_view_native_functions( + native_functions: Sequence[NativeFunction], +) -> Sequence[NativeFunction | NativeFunctionsViewGroup]: + def maybe_create_view_group( + d: dict[ViewSchemaKind | SchemaKind, NativeFunction], + ) -> list[NativeFunction | NativeFunctionsViewGroup]: + funcs: list[NativeFunction | NativeFunctionsViewGroup] = [] + if ViewSchemaKind.aliasing in d: + view = d.pop(ViewSchemaKind.aliasing) + view_inplace = d.pop(ViewSchemaKind.aliasing_inplace, None) + view_copy = d.pop(SchemaKind.functional, None) + + funcs.append( + NativeFunctionsViewGroup( + view=view, + view_copy=view_copy, + view_inplace=view_inplace, + ) + ) + # Take the remaining functions that weren't part of the view group + # and emit them separately + funcs.extend(d.values()) + return funcs + + grouped_by_views: dict[ + FunctionSchema, dict[SchemaKind | ViewSchemaKind, NativeFunction] + ] = defaultdict(dict) + for f in native_functions: + schema = f.func.view_signature() + view_kind: ViewSchemaKind = f.view_schema_kind + # We need to group up ops relevant to the same "view", consisting of: + # view op (ViewSchemaKind.aliasing) + # view_inplace op (ViewSchemaKind.aliasing_inplace) + # view_copy op (SchemaKind.functional) + if view_kind == ViewSchemaKind.non_aliasing: + kind = f.func.kind() + assert kind not in grouped_by_views[schema] + grouped_by_views[schema][kind] = f + else: + assert ( + view_kind not in grouped_by_views[schema] + ), f"{view_kind} already in {grouped_by_views[schema].keys()}" + grouped_by_views[schema][view_kind] = f + + return list(concatMap(maybe_create_view_group, grouped_by_views.values())) + + +def get_grouped_native_functions( + native_functions: Sequence[NativeFunction], +) -> Sequence[NativeFunction | NativeFunctionsGroup]: + def flatten_pre_group( + d: dict[SchemaKind, NativeFunction], + ) -> Sequence[NativeFunction | NativeFunctionsGroup]: + r = NativeFunctionsGroup.from_dict(d) + if r is None: + # Invariant: any NativeFunctions that are code-generated + # should have been grouped into NativeFunctionsGroup objects + assert not any("generated" in f.tags for f in d.values()) + return list(d.values()) + else: + return [r] + + # TODO: how come ValuesView isn't a Sequence lol + pre_grouped_native_functions = pre_group_native_functions(native_functions) + return list( + concatMap(flatten_pre_group, list(pre_grouped_native_functions.values())) + ) + + +def get_ns_grouped_kernels( + *, + grouped_native_functions: Sequence[NativeFunction | NativeFunctionsGroup], + backend_indices: dict[DispatchKey, BackendIndex], + native_function_decl_gen: Callable[ + [NativeFunctionsGroup | NativeFunction, BackendIndex], list[str] + ] = dest.compute_native_function_declaration, +) -> dict[str, list[str]]: + ns_grouped_kernels: dict[str, list[str]] = defaultdict(list) + for f in grouped_native_functions: + native_function_namespaces = set() + dispatch_keys = set() + for dispatch_key, backend_idx in backend_indices.items(): + backend_metadata = backend_idx.get_kernel(f) + if backend_metadata: + namespace = backend_metadata.cpp_namespace + dispatch_keys.add(dispatch_key) + native_function_namespaces.add(namespace) + else: + namespace = DEFAULT_KERNEL_NAMESPACE + assert ( + len(native_function_namespaces) <= 1 + ), f"Codegen only supports one namespace per operator, got {native_function_namespaces} from {dispatch_keys}" + ns_grouped_kernels[namespace].extend( + native_function_decl_gen(f, backend_idx) + ) + return ns_grouped_kernels + + +def get_native_function_declarations_from_ns_grouped_kernels( + *, + ns_grouped_kernels: dict[str, list[str]], +) -> list[str]: + declarations: list[str] = [] + newline = "\n" + for namespace, kernels in ns_grouped_kernels.items(): + ns_helper = NamespaceHelper( + namespace_str=namespace, + entity_name="", + max_level=4, + ) + # Convert to a set first to remove duplicate kernel names. Backends are + # allowed to repeat kernel names; only generate the declaration once! + ordered_kernels = list(OrderedDict.fromkeys(kernels)) + declarations.extend( + f""" +{ns_helper.prologue} +{newline.join(ordered_kernels)} +{ns_helper.epilogue} + """.split(newline) + ) + return declarations + + +# Return native function declarations grouped by their namespaces. +def get_native_function_declarations( + *, + grouped_native_functions: Sequence[NativeFunction | NativeFunctionsGroup], + backend_indices: dict[DispatchKey, BackendIndex], + native_function_decl_gen: Callable[ + [NativeFunctionsGroup | NativeFunction, BackendIndex], list[str] + ] = dest.compute_native_function_declaration, +) -> list[str]: + """ + Generate kernel declarations, in `NativeFunction(s).h`. + :param grouped_native_functions: a sequence of `NativeFunction` or `NativeFunctionGroup`. + :param backend_indices: kernel collections grouped by dispatch key. + :param native_function_decl_gen: callable to generate kernel declaration for each `NativeFunction`. + :return: a list of string, from the string with all declarations, grouped by namespaces, split by newline. + """ + + ns_grouped_kernels = get_ns_grouped_kernels( + grouped_native_functions=grouped_native_functions, + backend_indices=backend_indices, + native_function_decl_gen=native_function_decl_gen, + ) + return get_native_function_declarations_from_ns_grouped_kernels( + ns_grouped_kernels=ns_grouped_kernels + ) + + +def get_kernel_namespace( + *, f: NativeFunction | NativeFunctionsGroup, backend_idx: BackendIndex +) -> str: + backend_metadata = backend_idx.get_kernel(f) + assert not backend_metadata or "::native" in backend_metadata.cpp_namespace, ( + f"The kernel for function {f.func.name if isinstance(f, NativeFunction) else f.functional.func.name} " + f"with dispatch key {backend_idx.dispatch_key}" + f" has a namespace {backend_metadata.cpp_namespace} and it's not ending with '::native'." + ) + return ( + backend_metadata.cpp_namespace if backend_metadata else DEFAULT_KERNEL_NAMESPACE + ) + + +# Return native function definitions grouped by dispatch key and custom namespace. +# Used in RegisterDispatchKey.cpp and etc. +def get_native_function_definitions( + *, + fm: FileManager, + grouped_native_functions: Sequence[NativeFunction | NativeFunctionsGroup], + dispatch_key: DispatchKey, + backend_idx: BackendIndex, + selector: SelectiveBuilder, + rocm: bool, + symint: bool, + skip_dispatcher_op_registration: bool, + gen_dispatch_helpers: bool, +) -> list[str]: + definitions: list[str] = [] + ns_definitions: dict[str, list[str]] = defaultdict(list) + anonymous_definitions: dict[str, list[str]] = defaultdict(list) + registrations: dict[str, dict[str, list[str]]] = defaultdict(dict) + newline = "\n" + ns_gen = dest.RegisterDispatchKey( + backend_idx, + Target.NAMESPACED_DEFINITION, + selector, + rocm=rocm, + symint=symint, + class_method_name=None, + skip_dispatcher_op_registration=skip_dispatcher_op_registration, + ) + anonymous_gen = dest.RegisterDispatchKey( + backend_idx, + Target.ANONYMOUS_DEFINITION, + selector, + rocm=rocm, + symint=symint, + class_method_name=None, + skip_dispatcher_op_registration=skip_dispatcher_op_registration, + ) + reg_gen = dest.RegisterDispatchKey( + backend_idx, + Target.REGISTRATION, + selector, + rocm=rocm, + symint=symint, + class_method_name=None, + skip_dispatcher_op_registration=skip_dispatcher_op_registration, + ) + for f in grouped_native_functions: + kernel_namespace = get_kernel_namespace(f=f, backend_idx=backend_idx).replace( + "::native", "" + ) + + ns_definitions[kernel_namespace].extend( + ns_gen(f), + ) + anonymous_definitions[kernel_namespace].extend( + anonymous_gen(f), + ) + namespace = ( + f.namespace if isinstance(f, NativeFunction) else f.functional.namespace + ) + if namespace not in registrations[kernel_namespace]: + registrations[kernel_namespace] = defaultdict(list) + registrations[kernel_namespace][namespace].extend( + reg_gen(f), + ) + + for kernel_namespace in ns_definitions: + if len(ns_definitions[kernel_namespace]) == 0: + continue + ns_helper = NamespaceHelper(namespace_str=kernel_namespace) + registration_body = "" + for namespace in registrations[kernel_namespace]: + if not registrations[kernel_namespace][namespace]: + continue + registration_body += f""" +TORCH_LIBRARY_IMPL({namespace}, {dispatch_key}, m) {{ + {newline.join(registrations[kernel_namespace][namespace])} +}}""" + definitions.extend( + fm.substitute_with_template( + "RegisterDispatchDefinitions.ini", + lambda: { + "ns_prologue": ns_helper.prologue, + "ns_epilogue": ns_helper.epilogue, + "dispatch_helpers": dest.gen_registration_helpers(backend_idx) + if gen_dispatch_helpers + else [], + "dispatch_anonymous_definitions": anonymous_definitions[ + kernel_namespace + ], + "static_init_dispatch_registrations": "" + if skip_dispatcher_op_registration + else registration_body, + "deferred_dispatch_registrations": "", + "dispatch_namespace": dispatch_key.lower(), + "dispatch_namespaced_definitions": ns_definitions[kernel_namespace], + }, + ).split(newline) + ) + + return definitions + + +# Return native function declarations grouped by dispatch key and custom namespace. +# Used in CPUFunctions_inl.h and etc. +def get_namespaced_declaration( + *, + grouped_native_functions: Sequence[NativeFunction | NativeFunctionsGroup], + dispatch_key: DispatchKey, + backend_idx: BackendIndex, + selector: SelectiveBuilder, + rocm: bool, + symint: bool, +) -> list[str]: + declarations: list[str] = [] + ns_grouped_kernels: dict[str, list[str]] = defaultdict(list) + newline = "\n" + func = dest.RegisterDispatchKey( + backend_idx, + Target.NAMESPACED_DECLARATION, + selector, + rocm=rocm, + class_method_name=None, + skip_dispatcher_op_registration=False, + symint=symint, + ) + for f in grouped_native_functions: + namespace = get_kernel_namespace(f=f, backend_idx=backend_idx).replace( + "native", dispatch_key.lower() + ) + + ns_grouped_kernels[namespace].extend( + func(f), + ) + + for namespace, kernels in ns_grouped_kernels.items(): + if len(kernels) == 0: + continue + ns_helper = NamespaceHelper( + namespace_str=namespace, entity_name="", max_level=3 + ) + ordered_kernels = list(OrderedDict.fromkeys(kernels)) + declarations.extend( + f""" +{ns_helper.prologue} +{newline.join(ordered_kernels)} +{ns_helper.epilogue} + """.split(newline) + ) + return declarations + + +# Return native function schema registration code for aten and other namespaces. +def get_native_function_schema_registrations( + *, + native_functions: Sequence[NativeFunction], + schema_selector: SelectiveBuilder, +) -> tuple[list[str], str]: + ns_native_functions: dict[str, list[NativeFunction]] = defaultdict(list) + for native_function in native_functions: + ns_native_functions[native_function.namespace].append(native_function) + schema_registrations = "" + aten_schema_registrations = [] + custom_namespace = None + for namespace, funcs in ns_native_functions.items(): + schema_registrations_body = list( + mapMaybe(RegisterSchema(schema_selector), funcs) + ) + # NB: we have to separate aten namespace registration from other namespaces, + # because in the template we hardcoded an operator for ATen already. + if namespace == "aten": + aten_schema_registrations = schema_registrations_body + else: + custom_namespace = namespace + tab = "\t" + # if the namespace is predefined, we should use define a library fragment + # instead of a new library + torch_library_macro = ( + "TORCH_LIBRARY_FRAGMENT" + if namespace in FRAGMENT_NAMESPACES + else "TORCH_LIBRARY" + ) + schema_registrations += f""" +{torch_library_macro}({custom_namespace}, m) {{ + {tab.join(schema_registrations_body)} +}};""" + return (aten_schema_registrations, schema_registrations) + + +def gen_aggregated_headers( + *, + native_functions: Sequence[NativeFunction], + grouped_native_functions: Sequence[NativeFunction | NativeFunctionsGroup], + structured_native_functions: Sequence[NativeFunctionsGroup], + static_dispatch_idx: list[BackendIndex], + selector: SelectiveBuilder, + backend_indices: dict[DispatchKey, BackendIndex], + cpu_fm: FileManager, + device_fms: dict[str, FileManager], + functions_keys: set[DispatchKey], + dispatch_keys: Sequence[DispatchKey], + rocm: bool, +) -> None: + # Buck doesn't support dynamic output files, so we aggregate all operator + # headers into a single file + cpu_fm.write( + "NativeMetaFunctions.h", + lambda: { + "NativeMetaFunctions_includes": [], + "NativeMetaFunctions_declarations": list( + mapMaybe(compute_meta_function_declaration, structured_native_functions) + ), + }, + ) + method_native_functions = [ + fn for fn in native_functions if Variant.method in fn.variants + ] + non_method_native_functions = [ + fn for fn in native_functions if fn not in method_native_functions + ] + cpu_fm.write( + "MethodOperators.h", + lambda: { + "MethodOperators_includes": [], + "MethodOperators_declarations": list( + mapMaybe( + ComputeOperators( + Target.DECLARATION, + static_dispatch_backend_indices=static_dispatch_idx, + ), + method_native_functions, + ) + ), + }, + ) + cpu_fm.write( + "Operators.h", + lambda: { + "Operators_includes": ["#include "], + "Operators_declarations": list( + mapMaybe( + ComputeOperators( + Target.DECLARATION, + static_dispatch_backend_indices=static_dispatch_idx, + ), + non_method_native_functions, + ) + ), + }, + ) + cpu_fm.write( + "Functions.h", + lambda: { + "static_dispatch_extra_headers": static_dispatch_extra_headers( + static_dispatch_idx + ), + "Functions_includes": ["#include "], + "Functions_declarations": list( + mapMaybe( + ComputeFunction(), + native_functions, + ) + ), + }, + ) + declarations = get_native_function_declarations( + grouped_native_functions=grouped_native_functions, + backend_indices=backend_indices, + ) + cpu_fm.write( + "NativeFunctions.h", + lambda: { + "NativeFunctions_includes": ["#include "], + "NativeFunctions_declarations": declarations, + }, + ) + + for dispatch_key in dispatch_keys: + fm = file_manager_from_dispatch_key(dispatch_key, device_fms, cpu_fm) + if dispatch_key in functions_keys: + inl_headers = f"#include " + + fm.write_with_template( + f"{dispatch_key}Functions.h", + "DispatchKeyFunctions.h", + lambda: { + "dispatch_key": str(dispatch_key), + "inline_headers": inl_headers, + }, + ) + fm.write_with_template( + f"{dispatch_key}Functions_inl.h", + "DispatchKeyFunctions_inl.h", + lambda: { + "DispatchKeyFunctions_inl_includes": [], + "dispatch_namespace": dispatch_key.lower(), + "dispatch_namespaced_declarations": get_namespaced_declaration( + grouped_native_functions=grouped_native_functions, + dispatch_key=dispatch_key, + backend_idx=backend_indices[dispatch_key], + selector=selector, + rocm=rocm, + symint=True, + ), + }, + ) + + del fm + + +def gen_per_operator_headers( + *, + native_functions: Sequence[NativeFunction], + grouped_native_functions: Sequence[NativeFunction | NativeFunctionsGroup], + static_dispatch_idx: list[BackendIndex], + selector: SelectiveBuilder, + backend_indices: dict[DispatchKey, BackendIndex], + cpu_fm: FileManager, + device_fms: dict[str, FileManager], + ops_fm: FileManager, + functions_keys: set[DispatchKey], + dispatch_keys: Sequence[DispatchKey], + rocm: bool, +) -> None: + # For CMake builds, split operator declarations into separate headers in + # the ATen/ops folder to split up header dependencies + functions_by_root_name: dict[str, list[NativeFunction]] = defaultdict(list) + for fn in native_functions: + functions_by_root_name[fn.root_name].append(fn) + + grouped_functions_by_root_name: dict[ + str, list[NativeFunction | NativeFunctionsGroup] + ] = defaultdict(list) + for group in grouped_native_functions: + name = group.root_name + grouped_functions_by_root_name[name].append(group) + + for name, functions in functions_by_root_name.items(): + ops_fm.write_with_template( + f"{name}_ops.h", + "Operator.h", + lambda: { + "declarations": list( + mapMaybe( + ComputeOperators( + Target.DECLARATION, + static_dispatch_backend_indices=static_dispatch_idx, + ), + functions, + ) + ), + }, + ) + + ops_fm.write_with_template( + f"{name}.h", + "Function.h", + lambda: { + "static_dispatch_ops_headers": list( + mapMaybe( + lambda fn: static_dispatch_ops_header( + fn, backend_index=static_dispatch_idx + ), + functions, + ) + ), + "operator_includes": f"#include ", + "function_definitions": list( + mapMaybe( + ComputeFunction(), + functions, + ) + ), + }, + ) + + grouped_functions = grouped_functions_by_root_name.get(name, []) + structured_functions = [ + fn + for fn in grouped_functions + if isinstance(fn, NativeFunctionsGroup) and fn.structured + ] + is_structured = len(structured_functions) > 0 + + if is_structured: + ops_fm.write_with_template( + f"{name}_meta.h", + "NativeMetaFunction.h", + lambda: { + "meta_function_declarations": list( + mapMaybe( + compute_meta_function_declaration, structured_functions + ) + ), + }, + ) + declarations = get_native_function_declarations( + grouped_native_functions=grouped_functions, + backend_indices=backend_indices, + native_function_decl_gen=dest.compute_native_function_declaration, + ) + ops_fm.write_with_template( + f"{name}_native.h", + "NativeFunction.h", + lambda: { + "extra_includes": ( + f"#include " if is_structured else [] + ), + "native_function_declarations": declarations, + }, + ) + + for category, suffix in [ + ("Functions", ""), + ("Operators", "_ops"), + ("NativeMetaFunctions", "_meta"), + ("NativeFunctions", "_native"), + ]: + cpu_fm.write( + f"{category}.h", + lambda: { + f"{category}_includes": [ + f"#include " + for name in sorted(functions_by_root_name.keys()) + ], + f"{category}_declarations": [], + }, + ) + + for dispatch_key in dispatch_keys: + if dispatch_key not in functions_keys: + continue + + dispatch_namespace = dispatch_key.lower() + dispatch_names = [] + + for name, functions in functions_by_root_name.items(): + grouped_functions = grouped_functions_by_root_name.get(name, []) + declarations = list( + concatMap( + dest.RegisterDispatchKey( + backend_indices[dispatch_key], + Target.NAMESPACED_DECLARATION, + selector, + rocm=rocm, + symint=True, + class_method_name=None, + skip_dispatcher_op_registration=False, + ), + grouped_functions, + ) + ) + + if len(declarations) == 0: + continue + + dispatch_names.append(name) + ops_fm.write_with_template( + f"{name}_{dispatch_namespace}_dispatch.h", + "DispatchKeyFunction.h", + lambda: { + "dispatch_namespace": dispatch_namespace, + "dispatch_namespaced_declarations": declarations, + }, + ) + + fm = file_manager_from_dispatch_key(dispatch_key, device_fms, cpu_fm) + inl_headers = f"#include " + + fm.write_with_template( + f"{dispatch_key}Functions.h", + "DispatchKeyFunctions.h", + lambda: { + "dispatch_key": str(dispatch_key), + "inline_headers": inl_headers, + }, + ) + fm.write_with_template( + f"{dispatch_key}Functions_inl.h", + "DispatchKeyFunctions_inl.h", + lambda: { + "dispatch_namespace": dispatch_namespace, + "DispatchKeyFunctions_inl_includes": [ + f"#include " + for name in sorted(dispatch_names) + ], + "dispatch_namespaced_declarations": [], + }, + ) + del fm + + cpu_fm.write( + "MethodOperators.h", + lambda: { + "MethodOperators_includes": sorted( + f"#include " + for name, functions in functions_by_root_name.items() + if any(Variant.method in fn.variants for fn in functions) + ), + "MethodOperators_declarations": [], + }, + ) + + +def gen_headers( + *, + native_functions: Sequence[NativeFunction], + valid_tags: set[str], + grouped_native_functions: Sequence[NativeFunction | NativeFunctionsGroup], + structured_native_functions: Sequence[NativeFunctionsGroup], + static_dispatch_idx: list[BackendIndex], + selector: SelectiveBuilder, + backend_indices: dict[DispatchKey, BackendIndex], + core_fm: FileManager, + cpu_fm: FileManager, + device_fms: dict[str, FileManager], + ops_fm: FileManager, + dispatch_keys: Sequence[DispatchKey], + functions_keys: set[DispatchKey], + rocm: bool, + per_operator_headers: bool, +) -> None: + if per_operator_headers: + gen_per_operator_headers( + native_functions=native_functions, + grouped_native_functions=grouped_native_functions, + static_dispatch_idx=static_dispatch_idx, + selector=selector, + backend_indices=backend_indices, + cpu_fm=cpu_fm, + device_fms=device_fms, + ops_fm=ops_fm, + dispatch_keys=dispatch_keys, + functions_keys=functions_keys, + rocm=rocm, + ) + else: + gen_aggregated_headers( + native_functions=native_functions, + grouped_native_functions=grouped_native_functions, + structured_native_functions=structured_native_functions, + static_dispatch_idx=static_dispatch_idx, + selector=selector, + backend_indices=backend_indices, + cpu_fm=cpu_fm, + device_fms=device_fms, + dispatch_keys=dispatch_keys, + functions_keys=functions_keys, + rocm=rocm, + ) + + core_fm.write( + "TensorBody.h", + lambda: { + "tensor_method_declarations": list( + mapMaybe( + ComputeTensorMethod( + target=Target.DECLARATION, + static_dispatch_backend_indices=static_dispatch_idx, + ), + native_functions, + ) + ), + "tensor_method_definitions": list( + mapMaybe( + ComputeTensorMethod( + target=Target.DEFINITION, + static_dispatch_backend_indices=static_dispatch_idx, + ), + native_functions, + ) + ), + }, + ) + + cpu_fm.write( + "RedispatchFunctions.h", + lambda: { + "function_redispatch_definitions": list( + mapMaybe(ComputeRedispatchFunction(), native_functions) + ), + }, + ) + + cpu_fm.write( + "RegistrationDeclarations.h", + lambda: { + "registration_declarations": [ + compute_registration_declarations(f, backend_indices) + for f in native_functions + ], + }, + ) + + cpu_fm.write( + "VmapGeneratedPlumbing.h", lambda: gen_all_vmap_plumbing(native_functions) + ) + + def gen_aten_interned_strings() -> dict[str, str]: + attrs: set[str] = set() # All function argument names + names = set() # All ATen function names + for func in native_functions: + names.add(str(func.func.name.name)) + # Some operators don't have a functional variant but we still create a + # symbol without the underscore + names.add(func.func.name.name.base) + + attrs.update(arg.name for arg in func.func.schema_order_arguments()) + + # These are keywords in C++, so aren't valid symbol names + # https://en.cppreference.com/w/cpp/language/operator_alternative + names -= { + "and", + "and_eq", + "bitand", + "bitor", + "compl", + "not", + "not_eq", + "or", + "or_eq", + "xor", + "xor_eq", + } + + return { + "aten_symbols": " \\\n".join( + [f"_(aten, {name})" for name in sorted(names)] + ), + "attr_symbols": " \\\n".join( + [f"_(attr, {name})" for name in sorted(attrs)] + ), + } + + core_fm.write("aten_interned_strings.h", gen_aten_interned_strings) + + def gen_tags_enum() -> dict[str, str]: + return {"enum_of_valid_tags": (",\n".join(sorted(valid_tags)))} + + core_fm.write("enum_tag.h", gen_tags_enum) + + +def gen_source_files( + *, + native_functions: Sequence[NativeFunction], + grouped_native_functions: Sequence[NativeFunction | NativeFunctionsGroup], + structured_native_functions: Sequence[NativeFunctionsGroup], + view_groups: Sequence[NativeFunctionsViewGroup], + selector: SelectiveBuilder, + static_dispatch_idx: list[BackendIndex], + backend_indices: dict[DispatchKey, BackendIndex], + aoti_fm: FileManager, + core_fm: FileManager, + cpu_vec_fm: FileManager, + cpu_fm: FileManager, + device_fms: dict[str, FileManager], + dispatch_keys: Sequence[DispatchKey], + functions_keys: set[DispatchKey], + rocm: bool, + force_schema_registration: bool, + per_operator_headers: bool, + skip_dispatcher_op_registration: bool, + update_aoti_c_shim: bool, + aoti_backends: set[DispatchKey], + extend_aoti_c_shim: bool, +) -> None: + extra_cuda_headers = """\ +#include +#include +#include +#include """ + if rocm: + extra_cuda_headers = """\ +#include +#include +#include +#include """ + + for dispatch_key in dispatch_keys: + fm = file_manager_from_dispatch_key(dispatch_key, device_fms, cpu_fm) + if per_operator_headers: + + def operator_headers() -> list[str]: + headers = [] + for g in grouped_native_functions: + is_registered = False + if backend_index.has_kernel(g): + is_registered = True + # The above has_kernel test on a group will only test for + # the existence of out dispatch, because that's how + # structured kernels work. But sometimes functions can be + # grouped but not be structured, and then you need to check + # each individual piece, as they may have manual dispatch + # entries. + elif isinstance(g, NativeFunctionsGroup) and any( + backend_index.has_kernel(fn) for fn in g.functions() + ): + is_registered = True + # TODO: this condition is a bit questionable + # (It has to do with the fact that structured kernels get generated kernels + # to the Meta + CompositeExplicitAutogradNonFunctional keys). + elif g.structured and dispatch_key in ( + DispatchKey.Meta, + DispatchKey.CompositeExplicitAutogradNonFunctional, + ): + is_registered = True + if not is_registered: + continue + + headers.append(f"#include ") + if ( + dispatch_key + == DispatchKey.CompositeExplicitAutogradNonFunctional + ): + headers.append(f"#include ") + if dispatch_key in functions_keys: + headers.append( + f"#include " + ) + + return sorted(set(headers)) + + else: + + def operator_headers() -> list[str]: + headers = ["#include "] + if dispatch_key == DispatchKey.CompositeExplicitAutogradNonFunctional: + headers.append("#include ") + if dispatch_key in functions_keys: + headers.append(f"#include ") + return headers + + backend_index = backend_indices[dispatch_key] + ns_grouped_native_functions = defaultdict(list) + for grouped_native_function in grouped_native_functions: + namespace = ( + grouped_native_function.namespace + if isinstance(grouped_native_function, NativeFunction) + else grouped_native_function.functional.namespace + ) + ns_grouped_native_functions[namespace].append(grouped_native_function) + + dispatch_namespace = str(dispatch_key).lower() + + # CompositeImplicitAutogradNestdTensor does not currently user the helpers generated + # compilation will fail when `-Werror=unused-function` flag is set + gen_dispatch_helpers: bool = ( + dispatch_key != DispatchKey.CompositeImplicitAutogradNestedTensor + ) + + dispatch_definitions = get_native_function_definitions( + fm=fm, + grouped_native_functions=grouped_native_functions, + dispatch_key=dispatch_key, + backend_idx=backend_index, + selector=selector, + rocm=rocm, + symint=True, + skip_dispatcher_op_registration=skip_dispatcher_op_registration, + gen_dispatch_helpers=gen_dispatch_helpers, + ) + fm.write_with_template( + f"Register{dispatch_key}.cpp", + "RegisterDispatchKey.cpp", + lambda: { + "extra_cuda_headers": extra_cuda_headers + if is_cuda_dispatch_key(dispatch_key) + else "", + "external_backend_headers": "", + "dispatch_headers": dest.gen_registration_headers( + backend_index, per_operator_headers, rocm + ), + "ops_headers": operator_headers(), + "dispatch_helpers": "", + "dispatch_definitions": dispatch_definitions, + }, + ) + + for g in structured_native_functions: + if not g.out.ufunc_inner_loop or not is_ufunc_dispatch_key(dispatch_key): + continue + name = g.functional.func.name.name + if dispatch_key is DispatchKey.CPU: + assert fm is cpu_fm + fm.write_with_template( + f"UfuncCPU_{name}.cpp", + "UfuncCPU.cpp", + lambda: { + "meta_declaration": compute_meta_function_declaration(g), + "native_declaration": dest.compute_native_function_declaration( + g, backend_indices[dispatch_key] + ), + "native_definitions": dest.compute_ufunc_cpu(g), + }, + ) + cpu_vec_fm.write_with_template( + f"UfuncCPUKernel_{name}.cpp", + "UfuncCPUKernel.cpp", + lambda: { + "name": name, + "native_definitions": dest.compute_ufunc_cpu_kernel(g), + }, + ) + elif dispatch_key is DispatchKey.CUDA: + cuda_headers = "#include " + if rocm: + cuda_headers = "#include " + fm.write_with_template( + f"UfuncCUDA_{name}.cu", + "UfuncCUDA.cu", + lambda: { + "name": name, + "cuda_headers": cuda_headers, + "meta_declaration": compute_meta_function_declaration(g), + "native_declaration": dest.compute_native_function_declaration( + g, backend_indices[dispatch_key] + ), + "native_definitions": dest.compute_ufunc_cuda(g), + }, + ) + else: + raise AssertionError(f"unrecognized {dispatch_key} for ufunc") + + structured_func_group_dict = {} + for func_group in structured_native_functions: + for func in func_group.functions(): + if func.structured_delegate is not None: + structured_func_group_dict[func.structured_delegate] = func_group + break + + if dispatch_key in aoti_backends: + fallbacks = {} + for func in native_functions: + op_name = get_fallback_op_name(func) + if op_name in inductor_fallback_ops: + fallbacks[op_name] = func + fallback_native_functions = tuple( + value for _, value in sorted(fallbacks.items()) + ) + + # header files were checked in for ABI-compatiblilty checking + header_file_name = f"c_shim_{dispatch_key.lower()}.h" + new_header = gen_aoti_c_shim( + fallback_native_functions, + structured_func_group_dict, + dispatch_key, + backend_indices, + header=True, + extend_aoti_c_shim=extend_aoti_c_shim, + includes="", + ) + if update_aoti_c_shim: + aoti_fm.write( + header_file_name, + lambda: new_header, + ) + else: + try: + with open( + os.path.join(aoti_fm.install_dir, header_file_name) + ) as old_file: + old_header = old_file.read() + assert old_header == new_header, """ + +WARNING: The generated AOTInductor C shim header files have unexpectedly changed. This +indicates an AOTInductor fallback operator ABI backward compatibility breakage!!! +Only in a limited number of situations, this is allowed: + +1. You added a fallback op to the inductor_fallback_ops list in torchgen/aoti/fallback_ops.py. +If that's the case, run `python torchgen/gen.py --update-aoti-c-shim` to update the existing +C shim header files. + +2. You added a new default argument to an existing fallback op. This is clearly a BC breaking +change in the AOTInductor land. In this case, you need to keep a manual copy of that existing +fallback op in a file, e.g. torch/csrc/inductor/aoti_torch/c/shim.h, bump up the version +number of that fallback op in the newly generated C shim files, and update the cpp wrapper +codegen to generate the correct cpp call for this op. Contact AOTInductor team for assistance. + + """ + except FileNotFoundError: + print( + f"{os.path.join(aoti_fm.install_dir, header_file_name)} not found" + ) + + # cpp files are always generated on-the-fly + def headers_for_aoti() -> str: + headers = [] + for func in fallback_native_functions: + header = get_header_for_aoti( + func, + structured_func_group_dict, + dispatch_key, + backend_indices, + extend_aoti_c_shim=extend_aoti_c_shim, + ) + if header is not None: + headers.append(header) + return "\n".join(sorted(set(headers))) + + extra_headers = ( + extra_cuda_headers if is_cuda_dispatch_key(dispatch_key) else "" + ) + + aoti_fm.write( + f"c_shim_{dispatch_key.lower()}.cpp", + lambda: gen_aoti_c_shim( + fallback_native_functions, + structured_func_group_dict, + dispatch_key, + backend_indices, + header=False, + extend_aoti_c_shim=extend_aoti_c_shim, + includes=headers_for_aoti() + "\n" + extra_headers, + ), + ) + + del fm + + # BackendSelect is generated specially + def gen_backend_select() -> dict[str, list[str]]: + relevant_fns = [ + fn for fn in native_functions if needs_backend_select(fn, selector) + ] + return { + "ops_headers": [ + f"#include " for fn in relevant_fns + ], + "backend_select_method_definitions": list( + mapMaybe( + ComputeBackendSelect(Target.DEFINITION, selector), relevant_fns + ) + ), + "backend_select_function_registrations": list( + mapMaybe( + ComputeBackendSelect(Target.REGISTRATION, selector), relevant_fns + ) + ), + } + + cpu_fm.write("RegisterBackendSelect.cpp", gen_backend_select) + + schema_selector = selector + if force_schema_registration: + schema_selector = SelectiveBuilder.get_nop_selector() + + ( + aten_schema_registrations, + schema_registrations, + ) = get_native_function_schema_registrations( + native_functions=native_functions, schema_selector=schema_selector + ) + cpu_fm.write( + "RegisterSchema.cpp", + lambda: { + "aten_schema_registrations": [] + if skip_dispatcher_op_registration + else aten_schema_registrations, + "schema_registrations": [] + if skip_dispatcher_op_registration + else schema_registrations, + }, + ) + + def key_func( + fn: NativeFunction | NativeFunctionsGroup | NativeFunctionsViewGroup, + ) -> str: + return fn.root_name + + cpu_fm.write_sharded( + "Operators.cpp", + native_functions, + key_fn=key_func, + env_callable=lambda fn: { + "operator_headers": [f"#include "], + "definitions": [ + ComputeOperators( + Target.DEFINITION, + static_dispatch_backend_indices=static_dispatch_idx, + )(fn) + ], + }, + base_env={ + "static_dispatch_extra_headers": static_dispatch_extra_headers( + static_dispatch_idx + ), + }, + num_shards=5, + sharded_keys={ + "operator_headers", + "definitions", + "static_dispatch_extra_headers", + }, + ) + + cpu_fm.write("Functions.cpp", dict) + + core_fm.write("TensorMethods.cpp", dict) + + core_fm.write( + "ATenOpList.cpp", + lambda: { + "aten_ops": list(mapMaybe(compute_aten_op, native_functions)), + }, + ) + + def functionalization_env_callable( + g: NativeFunction | NativeFunctionsGroup | NativeFunctionsViewGroup, + ) -> dict[str, list[str]]: + def gen_op_headers( + g: NativeFunction | NativeFunctionsGroup | NativeFunctionsViewGroup, + ) -> list[str]: + if isinstance(g, NativeFunctionsViewGroup): + # view ops always get a functionalization kernel + headers = [ + f"#include ", + f"#include ", + ] + if g.view_copy is not None: + headers += [ + f"#include ", + f"#include ", + ] + return headers + elif isinstance(g, NativeFunctionsGroup): + headers = [ + f"#include ", + f"#include ", + f"#include ", + f"#include ", + ] + if g.inplace is not None: + headers += [ + f"#include ", + f"#include ", + ] + if g.mutable is not None: + headers += [ + f"#include ", + f"#include ", + ] + return headers + else: + return [ + f"#include ", + f"#include ", + ] + + return { + "ops_headers": gen_op_headers(g), + "func_definitions": gen_functionalization_definition( + selector, + g, + ), + "func_registrations": gen_functionalization_registration( + selector, + g, + backend_indices[DispatchKey.CompositeImplicitAutograd], + ), + } + + all_groups: list[ + NativeFunction | NativeFunctionsGroup | NativeFunctionsViewGroup + ] = list(structured_native_functions) + list( + view_groups # type: ignore[assignment, arg-type, operator] + ) + # Note: all operators that functionalization needs to handle (mutable and aliasing ops) should be grouped properly. + # The only reason we really need to deal with direct NativeFunctions here (instead of the groups) is because: + # (1) We can provide better error checking (error out if someone introduces a mutable op that doesn't obey the grouping logic) + # (2) functionalization needs to manually register CompositeImplicitAutograd kernels, which might not be grouped. + # Although this could go away long-term if we add a dedicated dispatch key for decompositions. + structured_map: dict[OperatorName, NativeFunction] = { + f.func.name: f + for f in concatMap(lambda g: list(g.functions()), structured_native_functions) + } + view_map: dict[OperatorName, NativeFunction] = { + f.func.name: f for f in concatMap(lambda g: list(g.functions()), view_groups) + } + all_groups.extend( + f + for f in native_functions + if f.func.name not in structured_map and f.func.name not in view_map + ) + + cpu_fm.write_sharded( + "RegisterFunctionalization.cpp", + all_groups, + key_fn=key_func, + env_callable=functionalization_env_callable, + num_shards=4, + sharded_keys={ + "ops_headers", + "func_definitions", + "func_registrations", + "func_add_back_views_definitions", + "func_add_back_views_registrations", + }, + ) + + cpu_fm.write( + "FunctionalInverses.h", + lambda: { + "view_inverse_declarations": list( + mapMaybe( + lambda g: gen_functionalization_view_inverse_declaration( + selector, g + ), + view_groups, + ) + ) + }, + ) + + # Note [view_copy NativeFunctions] + # Every view operator in native_functions.yaml that is not CompositeImplicitAutograd + # needs to have a corresponding non-aliasing {view}_copy variant. + # Backends that use functionalization and don't know how to handle aliasing ops + # are expected to implement kernels for these {view}_copy kernels instead. + # The code for {view}_copy operators in core is pretty boilerplate-heavy however, + # so we codegen the following: + # (1) A CompositeExplicitAutogradNonFunctional kernel for every {view}_copy operator. + # These are never explicitly invoked by the functionalization pass, + # but they could theoretically be called from user code (I added these kernels for completeness, + # since the ops are part of the public API). + # (2) A derivative formula for every {view}_copy operator + # {view}_copy operators can re-use the same derivative formulas as their {view} op counterparts, + # so rather than stamping all of the entries out in derivatives.yaml, + # we codegen them in. + # This is similar to how autograd codegen doesn't require inplace ops to have a derivatives.yaml entry. + cpu_fm.write( + "CompositeViewCopyKernels.cpp", + lambda: { + "ops_headers": [ + "\n".join( + f"#include \n" + # NB: this include is important as it ensures we + # set the visibility on generated view_copy kernels + # correctly + f"#include " + for f in ( + [g.view] if g.view_copy is None else [g.view, g.view_copy] + ) + ) + for g in view_groups + ] + + [ + "\n".join( + f"#include \n" + # NB: this include is also important for correct visibility + f"#include " + for f in [g.inplace, g.mutable, g.functional] + if f is not None and "generated" not in f.tags + ) + for g in structured_native_functions + ], + "CompositeViewCopyKernel_Definitions": list( + mapMaybe( + GenCompositeViewCopyKernel( + backend_indices[ + DispatchKey.CompositeExplicitAutogradNonFunctional + ] + ), + view_groups, + ) + ), + "GeneratedCompositeFunctional_Definitions": list( + mapMaybe( + gen_composite_functional_kernel, + structured_native_functions, + ) + ), + "GeneratedCompositeOut_Definitions": list( + mapMaybe( + gen_composite_out_kernel, + structured_native_functions, + ) + ), + }, + ) + + +def gen_declarations_yaml( + cpu_fm: FileManager, native_functions: Sequence[NativeFunction] +) -> None: + cpu_fm.write( + "Declarations.yaml", + lambda: format_yaml([compute_declaration_yaml(f) for f in native_functions]), + ) + + +def get_torchgen_root() -> Path: + """ + If you're depending on torchgen out-of-tree, you can use the root to figure + out the path to native_functions.yaml + """ + return Path(__file__).parent.resolve() + + +def main() -> None: + parser = argparse.ArgumentParser(description="Generate ATen source files") + parser.add_argument( + "-s", + "--source-path", + help="path to source directory for ATen", + default="aten/src/ATen", + ) + parser.add_argument( + "-o", + "--output-dependencies", + help="output a list of dependencies into the given file and exit", + ) + parser.add_argument( + "--dry-run", + action="store_true", + help="run without writing any files (still updates outputs)", + ) + parser.add_argument( + "--per-operator-headers", + action="store_true", + help="generate separate headers per operator in ATen/ops", + ) + parser.add_argument( + "-d", + "--install-dir", + "--install_dir", + help="output directory", + default="build/aten/src/ATen", + ) + parser.add_argument( + "--aoti-install-dir", + "--aoti_install_dir", + help="output directory for AOTInductor shim", + default="torch/csrc/inductor/aoti_torch/generated", + ) + parser.add_argument( + "--rocm", + action="store_true", + help="reinterpret CUDA as ROCm/HIP and adjust filepaths accordingly", + ) + parser.add_argument( + "--mps", + action="store_true", + help="Generate MPS registration code when set", + ) + parser.add_argument( + "--xpu", + action="store_true", + help="Generate XPU registration code when set", + ) + + # TODO: --op-registration-whitelist will be removed when all call-sites + # for gen.py are moved over to using the operator YAML file for mobile + # custom build. + parser.add_argument( + "--op-registration-whitelist", + "--op_registration_whitelist", + nargs="*", + help="filter op registrations by the whitelist (if set); " + "each item is `namespace`::`operator name` without overload name; " + "e.g.: aten::empty aten::conv2d ...", + ) + parser.add_argument( + "--op-selection-yaml-path", + "--op_selection_yaml_path", + help="Provide a path to the operator selection (for custom build) YAML " + "that contains the information about the set of selected operators " + "and their categories (training, ...). Each operator is either a " + "full operator name with overload or just a bare operator name. " + "The operator names also contain the namespace prefix (e.g. aten::)", + ) + parser.add_argument( + "--backend-whitelist", + "--backend_whitelist", + nargs="*", + help="filter dispatch backend by the whitelist (if set), " + "e.g.: CPU CUDA QuantizedCPU ...", + ) + parser.add_argument( + "--static-dispatch-backend", + "--static_dispatch_backend", + nargs="*", + help="generate static dispatch code for the specific backend (if set)", + ) + parser.add_argument( + "--skip-dispatcher-op-registration", + "--skip_dispatcher_op_registration", + action="store_true", + help="Avoid registering operators into the dispatcher.", + ) + parser.add_argument( + "--force-schema-registration", + "--force_schema_registration", + action="store_true", + help="force it to generate schema-only registrations for all ops, including" + "those that are not listed on --op-registration-whitelist", + ) + parser.add_argument( + "--generate", + type=str, + nargs="*", + choices=["headers", "sources", "declarations_yaml"], + default=["headers", "sources", "declarations_yaml"], + help="Generate only a subset of files", + ) + parser.add_argument( + "--update-aoti-c-shim", + action="store_true", + help="Update AOTInductor C shim after adding an entry to inductor_fallback_ops in torchgen/aoti/fallback_ops.py. " + "WARNING: Do not use this unless you are sure what you are doing!!!", + ) + parser.add_argument( + "--extend-aoti-c-shim", + action="store_true", + help="This Flag indicates the generation of c shims for out-of-tree ATen ops," + "which is an extension to the In-tree ATen op c shims. This flag needs to be combined with" + "---source-path=" + "--aoti-install-dir=/extend" + " default is torch/csrc/inductor/aoti_torch/generated/extend" + "WARNING: Do not use this unless you are sure what you are doing!!!", + ) + + options = parser.parse_args() + + selector = get_custom_build_selector( + options.op_registration_whitelist, + options.op_selection_yaml_path, + ) + + native_yaml_path = os.path.join(options.source_path, "native/native_functions.yaml") + tags_yaml_path = os.path.join(options.source_path, "native/tags.yaml") + + from torchgen.model import dispatch_keys + + # TODO: stop generating CUDA kernels for non-CUDA builds + ignore_keys = set() + if not options.mps: + ignore_keys.add(DispatchKey.MPS) + + if DispatchKey.MPS in dispatch_keys: + del dispatch_keys[dispatch_keys.index(DispatchKey.MPS)] + + if not options.xpu: + ignore_keys.add(DispatchKey.XPU) + + if DispatchKey.XPU in dispatch_keys: + del dispatch_keys[dispatch_keys.index(DispatchKey.XPU)] + + parsed_yaml = parse_native_yaml(native_yaml_path, tags_yaml_path, ignore_keys) + valid_tags = _GLOBAL_PARSE_TAGS_YAML_CACHE[tags_yaml_path] + native_functions, backend_indices = ( + parsed_yaml.native_functions, + parsed_yaml.backend_indices, + ) + + grouped_native_functions = get_grouped_native_functions(native_functions) + + structured_native_functions = [ + g for g in grouped_native_functions if isinstance(g, NativeFunctionsGroup) + ] + native_functions_with_view_groups = get_grouped_by_view_native_functions( + native_functions + ) + view_groups = [ + g + for g in native_functions_with_view_groups + if isinstance(g, NativeFunctionsViewGroup) + ] + + # NB: It is mandatory to NOT use os.path.join here, as the install directory + # will eventually be ingested by cmake, which does not respect Windows style + # path slashes. If you switch this to use os.path.join, you'll get an error + # like: + # + # Syntax error in cmake code when parsing string + # + # C:/Jenkins/workspace/pytorch-builds/pytorch-win-ws2016-cuda9-cudnn7-py3-build/build/aten/src/ATen\core/TensorMethods.h + # + # Invalid character escape '\c'. + core_install_dir = f"{options.install_dir}/core" + Path(core_install_dir).mkdir(parents=True, exist_ok=True) + ops_install_dir = f"{options.install_dir}/ops" + Path(ops_install_dir).mkdir(parents=True, exist_ok=True) + + aoti_install_dir = f"{options.aoti_install_dir}" + Path(aoti_install_dir).mkdir(parents=True, exist_ok=True) + + core_fm = make_file_manager(options=options, install_dir=core_install_dir) + cpu_fm = make_file_manager(options=options) + cpu_vec_fm = make_file_manager(options=options) + cuda_fm = make_file_manager(options=options) + ops_fm = make_file_manager(options=options, install_dir=ops_install_dir) + aoti_fm = make_file_manager(options=options, install_dir=aoti_install_dir) + device_fms = {"cuda": cuda_fm} + if options.xpu: + device_fms["xpu"] = make_file_manager(options=options) + + # Only a limited set of dispatch keys get CPUFunctions.h headers generated + # for them; this is the set + functions_keys = { + DispatchKey.CPU, + DispatchKey.CUDA, + DispatchKey.CompositeImplicitAutograd, + DispatchKey.CompositeImplicitAutogradNestedTensor, + DispatchKey.CompositeExplicitAutograd, + DispatchKey.CompositeExplicitAutogradNonFunctional, + DispatchKey.Meta, + } + + aoti_backends = { + DispatchKey.CPU, + DispatchKey.CUDA, + } + + if options.mps: + functions_keys.add(DispatchKey.MPS) + + if options.xpu: + functions_keys.add(DispatchKey.XPU) + aoti_backends.add(DispatchKey.XPU) + + if options.backend_whitelist: + dispatch_keys = [ + k + for k in dispatch_keys + if is_generic_dispatch_key(k) or str(k) in options.backend_whitelist + ] + + static_dispatch_idx: list[BackendIndex] = [] + if options.static_dispatch_backend: + static_dispatch_idx = [ + backend_indices[DispatchKey.parse(key)] + for key in options.static_dispatch_backend + ] + for key in options.static_dispatch_backend: + dp_key = DispatchKey.parse(key) + if dp_key not in functions_keys: + functions_keys.add(dp_key) + + if "sources" in options.generate: + gen_source_files( + native_functions=native_functions, + grouped_native_functions=grouped_native_functions, + structured_native_functions=structured_native_functions, + view_groups=view_groups, + selector=selector, + static_dispatch_idx=static_dispatch_idx, + backend_indices=backend_indices, + aoti_fm=aoti_fm, + core_fm=core_fm, + cpu_vec_fm=cpu_vec_fm, + cpu_fm=cpu_fm, + device_fms=device_fms, + dispatch_keys=dispatch_keys, + functions_keys=functions_keys, + rocm=options.rocm, + force_schema_registration=options.force_schema_registration, + per_operator_headers=options.per_operator_headers, + skip_dispatcher_op_registration=options.skip_dispatcher_op_registration, + update_aoti_c_shim=options.update_aoti_c_shim, + aoti_backends=aoti_backends, + extend_aoti_c_shim=options.extend_aoti_c_shim, + ) + + if "headers" in options.generate: + gen_headers( + native_functions=native_functions, + valid_tags=valid_tags, + grouped_native_functions=grouped_native_functions, + structured_native_functions=structured_native_functions, + static_dispatch_idx=static_dispatch_idx, + selector=selector, + backend_indices=backend_indices, + core_fm=core_fm, + cpu_fm=cpu_fm, + device_fms=device_fms, + ops_fm=ops_fm, + dispatch_keys=dispatch_keys, + functions_keys=functions_keys, + rocm=options.rocm, + per_operator_headers=options.per_operator_headers, + ) + + if "declarations_yaml" in options.generate: + gen_declarations_yaml(native_functions=native_functions, cpu_fm=cpu_fm) + + if options.output_dependencies: + depfile_path = Path(options.output_dependencies).resolve() + depfile_name = depfile_path.name + depfile_stem = depfile_path.stem + + for fm, prefix in [ + (cpu_fm, ""), + (cpu_vec_fm, "cpu_vec_"), + (core_fm, "core_"), + (ops_fm, "ops_"), + ] + [(device_fm, f"{device}_") for device, device_fm in device_fms.items()]: + varname = prefix + depfile_stem + path = depfile_path.parent / (prefix + depfile_name) + fm.write_outputs(varname, str(path)) + + +if __name__ == "__main__": + main() diff --git a/gen_aoti_c_shim.py b/gen_aoti_c_shim.py new file mode 100644 index 0000000000000000000000000000000000000000..b8dc838f994bd29438892e75adfab9228678506f --- /dev/null +++ b/gen_aoti_c_shim.py @@ -0,0 +1,508 @@ +from __future__ import annotations + +import textwrap +from dataclasses import dataclass +from typing import TYPE_CHECKING + +from torchgen.api.types import DispatcherSignature +from torchgen.api.types.signatures import CppSignature, CppSignatureGroup +from torchgen.context import method_with_native_function +from torchgen.model import ( + Argument, + BackendIndex, + BaseTy, + BaseType, + DispatchKey, + FunctionSchema, + ListType, + NativeFunction, + NativeFunctionsGroup, + OperatorName, + OptionalType, + Type, +) +from torchgen.utils import mapMaybe + + +if TYPE_CHECKING: + from collections.abc import Sequence + + +base_type_to_c_type = { + BaseTy.Tensor: "AtenTensorHandle", + BaseTy.bool: "int32_t", # Use int to pass bool + BaseTy.int: "int64_t", + BaseTy.SymInt: "int64_t", # Inductor-generated code won't see a SymInt + BaseTy.Scalar: "double", # Use double to pass both integer and floating point + BaseTy.float: "double", # TODO: how about other floating point types? + BaseTy.str: "const char*", + BaseTy.DeviceIndex: "int32_t", + BaseTy.Layout: "int32_t", # Represent enum as int + BaseTy.MemoryFormat: "int32_t", # Represent enum as int + BaseTy.ScalarType: "int32_t", # Represent enum as int + BaseTy.Generator: "AtenGeneratorHandle", +} + +base_type_to_aten_type = { + BaseTy.Tensor: "at::Tensor", + BaseTy.bool: "bool", + BaseTy.int: "int64_t", + BaseTy.SymInt: "c10::SymInt", + BaseTy.Scalar: "c10::Scalar", + BaseTy.float: "double", + BaseTy.str: "c10::string_view", + BaseTy.DeviceIndex: "c10::DeviceIndex", + BaseTy.Layout: "c10::Layout", + BaseTy.MemoryFormat: "c10::MemoryFormat", + BaseTy.ScalarType: "c10::ScalarType", + BaseTy.Generator: "at::Generator", +} + +base_type_to_callsite_expr = { + BaseTy.Tensor: "*tensor_handle_to_tensor_pointer", + BaseTy.bool: "", + BaseTy.int: "", + BaseTy.SymInt: "", + BaseTy.Scalar: "", + BaseTy.float: "", + BaseTy.str: "", + BaseTy.DeviceIndex: "static_cast", + BaseTy.Layout: "static_cast", + BaseTy.MemoryFormat: "static_cast", + BaseTy.ScalarType: "static_cast", + BaseTy.Generator: "*generator_handle_to_generator_pointer", +} + + +# convert args to C types, names in declarations, and expressions in function bodies +def convert_arg_type_and_name( # type: ignore[return] + typ: Type, + name: str, +) -> tuple[list[str], list[str], list[str], list[str]]: + if isinstance(typ, BaseType): + if typ.name in base_type_to_c_type: + return ( + [base_type_to_c_type[typ.name]], + [name], + [base_type_to_aten_type[typ.name]], + [ + f"{base_type_to_callsite_expr[typ.name]}({name})" + if base_type_to_callsite_expr[typ.name] + else name + ], + ) + elif typ.name == BaseTy.Device: + return ( + ["int32_t", "int32_t"], + [name, name + "_index_"], + ["c10::Device"], + [ + f"c10::Device(static_cast({name}), static_cast({name}_index_))" + ], + ) + else: + # TODO: BaseTy.Dimname, etc. + raise NotImplementedError(f"TODO: add support for arg type {repr(typ)}") + elif isinstance(typ, OptionalType): + c_types, names, aten_types, callsite_exprs = convert_arg_type_and_name( + typ.elem, name + ) + j = 0 # index for names + new_aten_types = [] + new_callsite_exprs = [] + for aten_type in aten_types: + # Use pointer to denote optional type + c_types[j] = c_types[j] + "*" + if aten_type.startswith("c10::ArrayRef<"): + # ArrayRef is passed as pointer + size, but no need to add "*" to the size argument + new_aten_types.append(f"::std::optional<{aten_type}>") + base_type = aten_type[len("c10::ArrayRef<") : -1] + new_callsite_exprs.append( + f"pointer_to_optional_list<{base_type}>({names[j]}, {names[j + 1]})" + ) + j += 2 + elif aten_type == "c10::Device": + # Device is passed as device_type + device_index + new_aten_types.append("::std::optional") + new_callsite_exprs.append( + f"pointer_to_optional_device({names[j]}, {names[j + 1]})" + ) + j += 2 + else: + new_aten_types.append(f"::std::optional<{aten_type}>") + new_callsite_exprs.append( + f"pointer_to_optional<{aten_type}>({names[j]})" + ) + j += 1 + + return ( + c_types, + names, + new_aten_types, + new_callsite_exprs, + ) + elif isinstance(typ, ListType): + # Need to explictly pass the list as pointer + length + c_types, names, aten_types, _ = convert_arg_type_and_name(typ.elem, name) + assert len(c_types) == 1, "ListType with unsupported element type " + repr(typ) + + # The list content should never be modified + c_types[0] = f"const {c_types[0]}*" + c_types.append("int64_t") + name = names[0] + names.append(name + "_len_") + + atype = aten_types[0] + callsite_exprs = [] + if atype == "bool": + # no converter from std::vector to c10::ArrayRef + # construct std::array instead + assert typ.size is not None + callsite_exprs.append(f"pointer_to_list<{typ.size}>({name})") + elif atype == "::std::optional": + # convert from std::vector<::std::optional> to c10::List<::std::optional> + callsite_exprs.append( + f"c10::List<{atype}>(c10::ArrayRef<{atype}>(pointer_to_list<{atype}>({name}, {name}_len_)))" + ) + else: + callsite_exprs.append(f"pointer_to_list<{atype}>({name}, {name}_len_)") + + aten_types = [f"c10::ArrayRef<{t}>" for t in aten_types] + return ( + c_types, + names, + aten_types, + callsite_exprs, + ) + + +def zip_type_and_name(types: list[str], names: list[str]) -> list[str]: + return [typ + " " + name for typ, name in zip(types, names)] + + +# Generate argument declarations and callsite expressions +def gen_arguments(flat_arguments: Sequence[Argument]) -> tuple[list[str], list[str]]: + types = [] + new_names = [] + callsite_exprs = [] + for arg in flat_arguments: + new_types, names, _, new_callsite_exprs = convert_arg_type_and_name( + arg.type, arg.name + ) + types.extend(new_types) + new_names.extend(names) + callsite_exprs.extend(new_callsite_exprs) + return zip_type_and_name(types, new_names), callsite_exprs + + +# Return values are passed out as pointer arguments because all the C shim functions +# are expected to return AOTITorchError. +# Generate returns as declarations and callsite expressions +def gen_returns(schema: FunctionSchema) -> tuple[list[str], list[str]]: + types = [] + names = [] + for idx, ret in enumerate(schema.returns): + names.append(f"ret{idx}") + if isinstance(ret.type, BaseType) and ret.type.name in base_type_to_c_type: + types.append(base_type_to_c_type[ret.type.name] + "*") + else: + raise NotImplementedError( + f"TODO: add support for return type {repr(ret.type)}" + ) + + def convert_return(typ: BaseType, val: str) -> str: + if typ.name == BaseTy.Tensor: + return f"new_tensor_handle(std::move({val}));" + elif typ.name == BaseTy.SymInt: + return f"{val}.expect_int()" + elif typ.name == BaseTy.Scalar: + return f"{val}.toDouble()" + else: + return val + + ret_pointer_can_be_null = False + unambiguous_name = schema.name.unambiguous_name() + for name in [ + "_scaled_dot_product_flash_attention", + "_scaled_dot_product_efficient_attention", + "_scaled_dot_product_cudnn_attention", + "convolution_backward", + ]: + if name in unambiguous_name: + ret_pointer_can_be_null = True + break + + callsite_exprs: list[str] = [] + for idx, ret in enumerate(schema.returns): + tmp = "tmp_result" if len(names) == 1 else f"std::get<{idx}>(tmp_result)" + assert isinstance(ret.type, BaseType) + rval = convert_return(ret.type, tmp) + if ret_pointer_can_be_null: + callsite_exprs.append(f"if ({names[idx]}) {{ *{names[idx]} = {rval}; }}") + else: + callsite_exprs.append(f"*{names[idx]} = {rval};") + + return zip_type_and_name(types, names), callsite_exprs + + +# gen.py generates header first and then src, so caching the result here to avoid duplicate work +declaration_definition_cache: dict[tuple[str, str, str], tuple[str, str]] = {} + + +def gen_declaration_and_definition( + schema: FunctionSchema, device: str, backend_call: str +) -> tuple[str, str]: + func_name = schema.name.unambiguous_name() + + global declaration_definition_cache + if (func_name, device, backend_call) in declaration_definition_cache: + return declaration_definition_cache[(func_name, device, backend_call)] + + if schema.is_out_fn(): + # out_variant has out arguments in the front, and it's ok to ignore return values + # because C shim functions only return AOTITorchError + args, callsite_exprs = gen_arguments( + [*schema.arguments.out, *schema.arguments.flat_non_out] + ) + ret_assignments: list[str] = [] + else: + args, callsite_exprs = gen_arguments(schema.arguments.flat_all) + # ignore return values for inplace ops + ret_declarations, ret_assignments = ( + ([], []) if schema.name.name.inplace else gen_returns(schema) + ) + args.extend(ret_declarations) + + declaration = f"AOTITorchError aoti_torch_{device}_{func_name}({', '.join(args)})" + + tmp_result = "auto tmp_result = " if ret_assignments else "" + ret_assignments_str = "\n" + "\n".join(ret_assignments) if ret_assignments else "" + definition = f""" +{declaration} {{ + AOTI_TORCH_CONVERT_EXCEPTION_TO_ERROR_CODE({{ + {tmp_result}{backend_call}( +{textwrap.indent(', '.join(callsite_exprs), " ")} + );{textwrap.indent(ret_assignments_str, " ")} + }}); +}} +""" + declaration_definition_cache[(func_name, device, backend_call)] = ( + declaration, + definition, + ) + return declaration, definition + + +def gen_static_dispatch_backend_call_signature( + sig: CppSignature | DispatcherSignature, + f: NativeFunction, +) -> CppSignature: + sig = DispatcherSignature.from_schema(f.func) + cpp_sigs = CppSignatureGroup.from_native_function( + f, method=False, fallback_binding=False + ) + if sig.symint and f.func.has_symint(): + cpp_sig = cpp_sigs.symint_signature + else: + cpp_sig = cpp_sigs.signature + assert cpp_sig is not None + return cpp_sig + + +def gen_static_dispatch_backend_call( + f: NativeFunction, + backend_index: BackendIndex, +) -> str: + sig = DispatcherSignature.from_schema(f.func) + cpp_sig = gen_static_dispatch_backend_call_signature(sig, f) + return f"at::{backend_index.dispatch_key.lower()}::{cpp_sig.name()}" + + +def get_backend_index_for_aoti( + func: NativeFunction, + func_group_mapping: dict[OperatorName, NativeFunctionsGroup], + dispatch_key: DispatchKey, + backend_indices: dict[DispatchKey, BackendIndex], + extend_aoti_c_shim: bool, +) -> BackendIndex | None: + backend_index = None + if backend_indices[dispatch_key].has_kernel(func) or ( + func.structured_delegate is not None + and func.structured_delegate in func_group_mapping + and backend_indices[dispatch_key].has_kernel( + func_group_mapping[func.structured_delegate] + ) + ): + backend_index = backend_indices[dispatch_key] + else: + # for the extend out-of-tree kernels, we don't need to + # duplicatly create C shim wrappers for other dispatch keys + if extend_aoti_c_shim: + return backend_index + + elif backend_indices[DispatchKey.CompositeExplicitAutograd].has_kernel(func): + # We need to create C shim wrappers for CompositeExplicitAutograd kernels + backend_index = backend_indices[DispatchKey.CompositeExplicitAutograd] + elif backend_indices[ + DispatchKey.CompositeExplicitAutogradNonFunctional + ].has_kernel(func): + # We need to create C shim wrappers for CompositeExplicitAutogradNonFunctional kernels + backend_index = backend_indices[ + DispatchKey.CompositeExplicitAutogradNonFunctional + ] + elif backend_indices[DispatchKey.CompositeImplicitAutograd].has_kernel(func): + backend_index = backend_indices[DispatchKey.CompositeImplicitAutograd] + + return backend_index + + +def get_header_for_aoti( + func: NativeFunction, + func_group_mapping: dict[OperatorName, NativeFunctionsGroup], + dispatch_key: DispatchKey, + backend_indices: dict[DispatchKey, BackendIndex], + extend_aoti_c_shim: bool, +) -> str | None: + backend_index = get_backend_index_for_aoti( + func, func_group_mapping, dispatch_key, backend_indices, extend_aoti_c_shim + ) + return ( + None + if backend_index is None + else f"#include " + ) + + +def get_fallback_op_name(func: NativeFunction) -> str: + return ( + f"{func.namespace}.{func.func.name.name}.{func.func.name.overload_name}" + if func.func.name.overload_name + else f"{func.namespace}.{func.func.name.name}.default" + ) + + +def gen_c_shim( + func: NativeFunction, + func_group_mapping: dict[OperatorName, NativeFunctionsGroup], + dispatch_key: DispatchKey, + backend_indices: dict[DispatchKey, BackendIndex], + header: bool, + extend_aoti_c_shim: bool, +) -> str | None: + backend_index = get_backend_index_for_aoti( + func, func_group_mapping, dispatch_key, backend_indices, extend_aoti_c_shim + ) + if backend_index is None: + return None + + schema = func.func + device = dispatch_key.lower() + backend_call = gen_static_dispatch_backend_call( + func, + backend_index, + ) + + try: + if header: + declaration, _ = gen_declaration_and_definition( + schema, device, backend_call + ) + return f"AOTI_TORCH_EXPORT {declaration};" + else: + _, definition = gen_declaration_and_definition(schema, device, backend_call) + return definition + + except NotImplementedError: + return None + + +@dataclass(frozen=True) +class ShimGenerator: + func_group_mapping: dict[OperatorName, NativeFunctionsGroup] + dispatch_key: DispatchKey + backend_indices: dict[DispatchKey, BackendIndex] + header: bool # True to generate .h and False to generate .cpp + extend_aoti_c_shim: bool + + @method_with_native_function + def __call__( + self, + func: NativeFunction, + ) -> str | None: + result = gen_c_shim( + func, + self.func_group_mapping, + self.dispatch_key, + self.backend_indices, + self.header, + self.extend_aoti_c_shim, + ) + return result + + +def gen_aoti_c_shim( + native_functions: Sequence[NativeFunction], + func_group_mapping: dict[OperatorName, NativeFunctionsGroup], + dispatch_key: DispatchKey, + backend_indices: dict[DispatchKey, BackendIndex], + header: bool, + extend_aoti_c_shim: bool, + includes: str = "", +) -> str: + body = "\n".join( + list( + mapMaybe( + ShimGenerator( + func_group_mapping, + dispatch_key, + backend_indices, + header, + extend_aoti_c_shim, + ), + native_functions, + ) + ) + ) + device = dispatch_key.lower() + warning = """ +// WARNING: THIS FILE IS AUTOGENERATED BY torchgen. DO NOT MODIFY BY HAND. +// See https://github.com/pytorch/pytorch/blob/7e86a7c0155295539996e0cf422883571126073e/torchgen/gen.py#L2424-L2436 for details""" + + if header: + return f""" +{warning} + +#pragma once + +#include + +#ifdef __cplusplus +extern "C" {{ +#endif + +{body} + +#ifdef __cplusplus +}} // extern "C" +#endif +""" + + else: + return f""" +{warning} + +#include +#include + +#ifndef AT_PER_OPERATOR_HEADERS +#include +#include +#include +#include +#else +{includes} +#endif + +using namespace torch::aot_inductor; + +{body}""" diff --git a/gen_backend_stubs.py b/gen_backend_stubs.py new file mode 100644 index 0000000000000000000000000000000000000000..c59215e4d7401b9374e3224874f0c3d9311c6c99 --- /dev/null +++ b/gen_backend_stubs.py @@ -0,0 +1,615 @@ +from __future__ import annotations + +import argparse +import os +import re +from collections import Counter, defaultdict, namedtuple +from pathlib import Path +from typing import TYPE_CHECKING + +import yaml + +import torchgen.api.dispatcher as dispatcher +import torchgen.dest as dest +from torchgen.api.types import DispatcherSignature +from torchgen.code_template import CodeTemplate +from torchgen.context import native_function_manager +from torchgen.gen import get_grouped_native_functions, parse_native_yaml +from torchgen.model import ( + BackendIndex, + BackendMetadata, + DispatchKey, + NativeFunction, + NativeFunctionsGroup, + OperatorName, +) +from torchgen.selective_build.selector import SelectiveBuilder +from torchgen.utils import concatMap, context, FileManager, NamespaceHelper, Target +from torchgen.yaml_utils import YamlLoader + + +if TYPE_CHECKING: + from collections.abc import Sequence + + +# Parses the external backend's yaml, and adds a new BackendIndex for the backend's dispatch key. +# Returns a Tuple of (backend_key, autograd_key, cpp_namespace, updated BackendIndex mapping) +ParsedExternalYaml = namedtuple( + "ParsedExternalYaml", + ["backend_key", "autograd_key", "class_name", "cpp_namespace", "backend_indices"], +) + + +def parse_backend_yaml( + backend_yaml_path: str, + grouped_native_functions: Sequence[NativeFunction | NativeFunctionsGroup], + backend_indices: dict[DispatchKey, BackendIndex], +) -> ParsedExternalYaml: + native_functions_map: dict[OperatorName, NativeFunction] = { + f.func.name: f + for f in concatMap( + lambda f: [f] if isinstance(f, NativeFunction) else list(f.functions()), + grouped_native_functions, + ) + } + + with open(backend_yaml_path) as f: + yaml_values = yaml.load(f, Loader=YamlLoader) + assert isinstance(yaml_values, dict) + + valid_keys = [ + "backend", + "class_name", + "cpp_namespace", + "extra_headers", + "supported", + "autograd", + "full_codegen", + "non_native", + "ir_gen", + "symint", + ] + + backend = yaml_values.pop("backend", None) + assert backend is not None, 'You must provide a value for "backend"' + + class_name = yaml_values.pop("class_name", None) + + cpp_namespace = yaml_values.pop("cpp_namespace", None) + assert cpp_namespace is not None, 'You must provide a value for "cpp_namespace"' + + # Mostly just defaulting to false to stick with LazyTensor convention. + use_out_as_primary = yaml_values.pop("use_out_as_primary", False) + assert isinstance( + use_out_as_primary, bool + ), f"You must provide either True or False for use_out_as_primary. Provided: {use_out_as_primary}" + + use_device_guard = yaml_values.pop("device_guard", False) + assert isinstance( + use_device_guard, bool + ), f"You must provide either True or False for device_guard. Provided: {use_device_guard}" + + supported = yaml_values.pop("supported", []) + if supported is None: + supported = [] # Allow an empty list of supported ops + assert isinstance( + supported, list + ), f'expected "supported" to be a list, but got: {supported} (of type {type(supported)})' + + symint = yaml_values.pop("symint", []) + if symint is None: + symint = [] # Allow an empty list of symint ops + assert isinstance( + symint, list + ), f'expected "symint" to be a list, but got: {supported} (of type {type(supported)})' + symint_set = set(symint) + + supported_autograd = yaml_values.pop("autograd", []) + assert isinstance( + supported_autograd, list + ), f'expected "autograd" to be a list, but got: {supported_autograd}' + + # full_codegen is ignored by parse_backend_yaml, and re-parsed in gen_lazy_tensor.py + full_codegen = yaml_values.pop("full_codegen", []) + supported.extend(full_codegen) + + # non_native is ignored by parse_backend_yaml, and re-parsed in gen_lazy_tensor.py + yaml_values.pop("non_native", {}) + + # ir_gen is ignored by parse_backend_yaml, and re-parsed in gen_lazy_tensor.py + yaml_values.pop("ir_gen", {}) + + assert ( + len(yaml_values.keys()) == 0 + ), f'{backend_yaml_path} contains unexpected keys: {", ".join(yaml_values.keys())}. \ +Only the following keys are supported: {", ".join(valid_keys)}' + + def create_backend_index( + backend_ops: list[str], + symint_ops: set[str], + dispatch_key: DispatchKey, + *, + use_out_as_primary: bool, + use_device_guard: bool, + ) -> BackendIndex: + metadata: dict[OperatorName, BackendMetadata] = {} + for op in backend_ops: + op_name = OperatorName.parse(op) + assert ( + op_name in native_functions_map + ), f"Found an invalid operator name: {op_name}" + # See Note [External Backends Follow Dispatcher API] + kernel_name = dispatcher.name(native_functions_map[op_name].func) + if op in symint_ops: + kernel_name += "_symint" + # TODO: allow structured external backends later. + m = BackendMetadata( + kernel=kernel_name, structured=False, cpp_namespace=cpp_namespace + ) + metadata[op_name] = m + return BackendIndex( + dispatch_key=dispatch_key, + use_out_as_primary=use_out_as_primary, + external=True, + device_guard=use_device_guard, + index=metadata, + ) + + backend_key: DispatchKey | None = None + if len(supported) > 0: + with context( + lambda: f'The provided value for "backend" must be a valid DispatchKey, but got {backend}.' + ): + backend_key = DispatchKey.parse(backend) + + backend_idx = create_backend_index( + supported, + symint_set, + backend_key, + use_out_as_primary=use_out_as_primary, + use_device_guard=use_device_guard, + ) + assert backend_key not in backend_indices + backend_indices[backend_key] = backend_idx + + autograd_key: DispatchKey | None = None + if len(supported_autograd) > 0: + with context( + lambda: f'The "autograd" key was specified, which indicates that you would like to override \ +the behavior of autograd for some operators on your backend. However "Autograd{backend}" is not a valid DispatchKey.' + ): + autograd_key = DispatchKey.parse(f"Autograd{backend}") + + autograd_idx = create_backend_index( + supported_autograd, + symint_set, + autograd_key, + use_out_as_primary=use_out_as_primary, + use_device_guard=use_device_guard, + ) + assert autograd_key not in backend_indices + backend_indices[autograd_key] = autograd_idx + + for g in grouped_native_functions: + if isinstance(g, NativeFunction): + forward_kernels = ( + [] + if backend_key is None + else [ + m + for m in [backend_indices[backend_key].get_kernel(g)] + if m is not None + ] + ) + backward_kernels = ( + [] + if autograd_key is None + else [ + m + for m in [backend_indices[autograd_key].get_kernel(g)] + if m is not None + ] + ) + else: + forward_kernels = ( + [] + if backend_key is None + else [ + m + for m in [ + backend_indices[backend_key].get_kernel(f) + for f in g.functions() + ] + if m is not None + ] + ) + backward_kernels = ( + [] + if autograd_key is None + else [ + m + for m in [ + backend_indices[autograd_key].get_kernel(f) + for f in g.functions() + ] + if m is not None + ] + ) + + forward_kernels = [f for f in forward_kernels if f is not None] + backward_kernels = [f for f in backward_kernels if f is not None] + assert ( + len(forward_kernels) == 0 or len(backward_kernels) == 0 + ), f'Currently, all variants of an op must either be registered to a backend key, or to a backend\'s \ +autograd key. They cannot be mix and matched. If this is something you need, feel free to create an issue! \ +{forward_kernels[0].kernel} is listed under "supported", but {backward_kernels[0].kernel} is listed under "autograd".' + + return ParsedExternalYaml( + backend_key, autograd_key, class_name, cpp_namespace, backend_indices + ) + + +def error_on_missing_kernels( + native_functions: Sequence[NativeFunction], + backend_indices: dict[DispatchKey, BackendIndex], + backend_key: DispatchKey, + autograd_key: DispatchKey | None, + class_name: str, + kernel_defn_file_path: str, + full_codegen: list[OperatorName] | None = None, +) -> None: + try: + with open(kernel_defn_file_path) as f: + backend_defns = f.read() + except OSError as e: + raise AssertionError( + f"Unable to read from the specified impl_path file: {kernel_defn_file_path}" + ) from e + + if full_codegen is None: + full_codegen = [] + + indices = [backend_indices[backend_key].index] + ( + [] if autograd_key is None else [backend_indices[autograd_key].index] + ) + # Quick mapping from each OperatorName used by the external backend + # to its backend kernel name + expected_backend_op_names: dict[OperatorName, str] = dict( + list( + concatMap( + lambda index: [ + (op_name, metadata.kernel) for op_name, metadata in index.items() + ], + indices, + ) + ) + ) + expected_backend_native_funcs: list[NativeFunction] = [ + f + for f in native_functions + if f.func.name in expected_backend_op_names.keys() + and f.func.name not in full_codegen + ] + expected_backend_kernel_name_counts: dict[str, list[NativeFunction]] = defaultdict( + list + ) + for native_f in expected_backend_native_funcs: + expected_backend_kernel_name_counts[ + expected_backend_op_names[native_f.func.name] + ].append(native_f) + + # This just looks for lines containing "foo(", and assumes that the kernel foo has been implemented. + # It might cause false negatives (we won't catch all cases), but that's ok - if we catch a missing kernel + # here, then we get a nicer error message. If we miss it, you get a linker error. + kernel_defn_regex = rf"(.*){class_name}::\s*([\w\d]*)\(" + actual_backend_kernel_name_counts = Counter( + # A bit unwieldy (this could probably be moved into regex), + # but we don't want to include kernel names that come from function calls, + # like "return torch_xla::XLANativeFunctions::empty_strided_symint(...)". + # Easy check is to ignore any lines with colons before the class name. + [ + y + for (x, y) in re.findall(kernel_defn_regex, backend_defns) + if not x.endswith(":") + ] + ) + + missing_kernels_err_msg = "" + for expected_name, funcs in expected_backend_kernel_name_counts.items(): + expected_overload_count = len(funcs) + actual_overload_count = actual_backend_kernel_name_counts[expected_name] + if expected_overload_count != actual_overload_count: + + def create_decl(f: NativeFunction) -> str: + with native_function_manager(f): + return DispatcherSignature.from_schema(f.func).decl() + + expected_schemas_str = "\n".join([create_decl(f) for f in funcs]) + missing_kernels_err_msg += f""" +{class_name} is missing a kernel definition for {expected_name}. We found {actual_overload_count} kernel(s) with that name, +but expected {expected_overload_count} kernel(s). The expected function schemas for the missing operator are: +{expected_schemas_str} + +""" + assert missing_kernels_err_msg == "", missing_kernels_err_msg + + +def main() -> None: + parser = argparse.ArgumentParser(description="Generate backend stub files") + parser.add_argument( + "-s", + "--source-yaml", + "--source_yaml", + help="path to source yaml file containing operator external definitions", + ) + parser.add_argument("-o", "--output-dir", "--output_dir", help="output directory") + parser.add_argument( + "--dry-run", "--dry_run", type=bool, default=False, help="output directory" + ) + parser.add_argument( + "--impl-path", + "--impl_path", + type=str, + default=None, + help="path to the source C++ file containing kernel definitions", + ) + options = parser.parse_args() + + run(options.source_yaml, options.output_dir, options.dry_run, options.impl_path) + + +def gen_dispatchkey_nativefunc_headers( + fm: FileManager, + class_name: str, + cpp_namespace: str, + backend_indices: dict[DispatchKey, BackendIndex], + grouped_native_functions: Sequence[NativeFunction | NativeFunctionsGroup], + backend_dispatch_key: DispatchKey, + autograd_dispatch_key: DispatchKey | None, + backend_name: str = "", +) -> None: + assert class_name is not None + generated_comment = ( + "Autogenerated file by gen_backend_stubs.py. Do not edit directly!" + ) + + # Convert to a set first to remove duplicate kernel names. + # Backends are allowed to repeat kernel names; only generate the declaration once! + # Sort for deterministic output. + backend_declarations = sorted( + set( + concatMap( + lambda f: dest.compute_native_function_declaration( + f, backend_indices[backend_dispatch_key] + ), + grouped_native_functions, + ) + ) + ) + autograd_declarations = sorted( + set( + concatMap( + lambda f: [] + if autograd_dispatch_key is None + else dest.compute_native_function_declaration( + f, backend_indices[autograd_dispatch_key] + ), + grouped_native_functions, + ) + ) + ) + + ns_helper = NamespaceHelper(cpp_namespace) + fm.write_with_template( + f"{backend_dispatch_key}NativeFunctions.h", + "DispatchKeyNativeFunctions.h", + lambda: { + "generated_comment": generated_comment, + "namespace_prologue": ns_helper.prologue, + "class_name": class_name, + "namespace_epilogue": ns_helper.epilogue, + "dispatch_declarations": backend_declarations + autograd_declarations, + "BackendName": backend_name, + "DispatchKey": backend_dispatch_key, + }, + ) + + +def gen_dispatcher_registrations( + fm: FileManager, + output_dir: str, + class_name: str, + backend_indices: dict[DispatchKey, BackendIndex], + grouped_native_functions: Sequence[NativeFunction | NativeFunctionsGroup], + backend_dispatch_key: DispatchKey, + dispatch_key: DispatchKey, + selector: SelectiveBuilder, + # build_in_tree is true for lazy TS backend and affects include paths, not used for external backends + build_in_tree: bool = False, + per_operator_headers: bool = False, + backend_name: str = "", + eager_registration: bool = True, +) -> None: + headers = [ + f"{output_dir}/{backend_dispatch_key}NativeFunctions.h", + ] + if build_in_tree: + external_backend_headers_str = "\n".join(f"#include <{h}>" for h in headers) + else: + external_backend_headers_str = "\n".join(f'#include "{h}"' for h in headers) + + assert class_name is not None + backend_index = backend_indices[dispatch_key] + + dispatch_registrations_body = list( + concatMap( + dest.RegisterDispatchKey( + backend_index, + Target.REGISTRATION, + selector, + rocm=False, + symint=True, + class_method_name=f"{class_name}", + skip_dispatcher_op_registration=False, + ), + grouped_native_functions, + ) + ) + newline = "\n" + ns_helper = NamespaceHelper(namespace_str="at") + deferred_dispatch_registrations = "" + static_init_dispatch_registrations = "" + if eager_registration: + static_template = CodeTemplate( + """\ +TORCH_LIBRARY_IMPL(aten, $dispatch_key, m) { + $dispatch_registrations_body +}""" + ) + static_init_dispatch_registrations = static_template.substitute( + dispatch_key=dispatch_key, + dispatch_registrations_body=dispatch_registrations_body, + ) + else: + deferred_template = CodeTemplate( + """\ +TORCH_API void Register${backend_name}${dispatch_key}NativeFunctions(); +TORCH_API void Register${backend_name}${dispatch_key}NativeFunctions() { + static auto m = MAKE_TORCH_LIBRARY_IMPL(aten, $dispatch_key); + $dispatch_registrations_body +}""" + ) + deferred_dispatch_registrations = deferred_template.substitute( + backend_name=backend_name, + dispatch_key=dispatch_key, + dispatch_registrations_body=dispatch_registrations_body, + ) + + fm.write_with_template( + f"Register{dispatch_key}.cpp", + "RegisterDispatchKey.cpp", + lambda: { + "extra_cuda_headers": "", + "external_backend_headers": external_backend_headers_str, + "ops_headers": "#include " + if not per_operator_headers + else "", + "DispatchKey": dispatch_key, + "dispatch_namespace": dispatch_key.lower(), + "dispatch_headers": dest.gen_registration_headers( + backend_index, per_operator_headers=per_operator_headers, rocm=False + ), + "dispatch_definitions": fm.substitute_with_template( + "RegisterDispatchDefinitions.ini", + lambda: { + "ns_prologue": ns_helper.prologue, + "ns_epilogue": ns_helper.epilogue, + "static_init_dispatch_registrations": static_init_dispatch_registrations, + "deferred_dispatch_registrations": deferred_dispatch_registrations, + "dispatch_helpers": dest.gen_registration_helpers(backend_index), + "dispatch_namespace": dispatch_key.lower(), + "dispatch_namespaced_definitions": "", + "dispatch_anonymous_definitions": list( + concatMap( + dest.RegisterDispatchKey( + backend_index, + Target.ANONYMOUS_DEFINITION, + selector, + rocm=False, + symint=True, + class_method_name=f"{class_name}", + skip_dispatcher_op_registration=False, + ), + grouped_native_functions, + ) + ), + }, + ).split(newline), + }, + ) + + +def run( + source_yaml: str, output_dir: str, dry_run: bool, impl_path: str | None = None +) -> None: + # Assumes that this file lives at PYTORCH_ROOT/torchgen/gen_backend_stubs.py + pytorch_root = Path(__file__).parent.parent.absolute() + template_dir = os.path.join(pytorch_root, "aten/src/ATen/templates") + + def make_file_manager(install_dir: str) -> FileManager: + return FileManager( + install_dir=install_dir, template_dir=template_dir, dry_run=dry_run + ) + + fm = make_file_manager(output_dir) + + native_yaml_path = os.path.join( + pytorch_root, "aten/src/ATen/native/native_functions.yaml" + ) + tags_yaml_path = os.path.join(pytorch_root, "aten/src/ATen/native/tags.yaml") + parsed_yaml = parse_native_yaml(native_yaml_path, tags_yaml_path) + native_functions, backend_indices = ( + parsed_yaml.native_functions, + parsed_yaml.backend_indices, + ) + grouped_native_functions = get_grouped_native_functions(native_functions) + parsed_backend_yaml = parse_backend_yaml( + source_yaml, grouped_native_functions, backend_indices + ) + backend_key = parsed_backend_yaml.backend_key + autograd_key = parsed_backend_yaml.autograd_key + cpp_namespace = parsed_backend_yaml.cpp_namespace + class_name = parsed_backend_yaml.class_name + backend_indices = parsed_backend_yaml.backend_indices + + selector = SelectiveBuilder.get_nop_selector() + + if backend_key is None: + # This could be useful if a backend wants to quickly set up a noop yaml file but doesn't have any kernels ready yet. + return + + if class_name is None: + # class_name is an optional argument to backend yaml file. + # if specified it allows an external backend to override + # the name of the class that all generated kernel definitions live under. + # if not specified, its value is given as native_function_class_name. + class_name = backend_indices[backend_key].native_function_class_name() + assert class_name is not None + + if impl_path is not None: + error_on_missing_kernels( + native_functions, + backend_indices, + backend_key, + autograd_key, + class_name, + impl_path, + ) + + gen_dispatchkey_nativefunc_headers( + fm, + class_name, + cpp_namespace, + backend_indices, + grouped_native_functions, + backend_key, + autograd_key, + ) + + for dispatch_key in ( + [backend_key] if autograd_key is None else [backend_key, autograd_key] + ): + gen_dispatcher_registrations( + fm, + output_dir, + class_name, + backend_indices, + grouped_native_functions, + backend_key, + dispatch_key, + selector, + ) + + +if __name__ == "__main__": + main() diff --git a/gen_executorch.py b/gen_executorch.py new file mode 100644 index 0000000000000000000000000000000000000000..41c0125c4b06dcb7fb51098d0b0d692c605cd310 --- /dev/null +++ b/gen_executorch.py @@ -0,0 +1,1000 @@ +from __future__ import annotations + +import argparse +import os +from collections import defaultdict +from dataclasses import dataclass +from pathlib import Path +from typing import Any, Callable, TextIO, TYPE_CHECKING + +import yaml + +# Parse native_functions.yaml into a sequence of NativeFunctions and Backend Indices. +from torchgen import dest +from torchgen.api import cpp as aten_cpp +from torchgen.api.types import CppSignature, CppSignatureGroup, CType, NamedCType +from torchgen.context import ( + method_with_native_function, + method_with_nested_native_function, + with_native_function_and_index, +) +from torchgen.executorch.api import et_cpp +from torchgen.executorch.api.custom_ops import ( + ComputeNativeFunctionStub, + gen_custom_ops_registration, +) +from torchgen.executorch.api.types import contextArg, ExecutorchCppSignature +from torchgen.executorch.api.unboxing import Unboxing +from torchgen.executorch.model import ETKernelIndex, ETKernelKey, ETParsedYaml +from torchgen.executorch.parse import ET_FIELDS, parse_et_yaml, parse_et_yaml_struct +from torchgen.gen import ( + get_custom_build_selector, + get_native_function_declarations, + get_native_function_declarations_from_ns_grouped_kernels, + get_native_function_schema_registrations, + LineLoader, + parse_native_yaml, +) +from torchgen.model import ( + BackendIndex, + BackendMetadata, + DEFAULT_KERNEL_NAMESPACE, + DispatchKey, + FunctionSchema, + Location, + NativeFunction, + NativeFunctionsGroup, + OperatorName, + Variant, +) +from torchgen.utils import ( + context, + FileManager, + make_file_manager, + mapMaybe, + NamespaceHelper, +) + + +if TYPE_CHECKING: + from collections.abc import Sequence + + from torchgen.selective_build.selector import SelectiveBuilder + + +def _sig_decl_wrapper(sig: CppSignature | ExecutorchCppSignature) -> str: + """ + A wrapper function to basically get `sig.decl(include_context=True)`. + For ATen kernel, the codegen has no idea about ET contextArg, so we + use this wrapper to add it. + """ + if isinstance(sig, ExecutorchCppSignature): + return sig.decl() + + returns_type = aten_cpp.returns_type(sig.func.returns).cpp_type() + cpp_args = [a.decl() for a in sig.arguments()] + cpp_args_str = ", ".join([contextArg.decl()] + cpp_args) + sig_decl = f"{returns_type} {sig.name()}({cpp_args_str})" + return sig_decl + + +def static_dispatch( + sig: CppSignature | ExecutorchCppSignature, + f: NativeFunction, + backend_indices: list[BackendIndex], +) -> str: + """ + For a given `NativeFunction`, find out the corresponding native function and dispatch to it. If zero or more than one + native function exists, error out. A simplified version of register_dispatch_key.py + Arguments: + sig: A CppSignature for this native function we want to use. + f: NativeFunction to generate static dispatch. + backend_indices: All available backends. + Return: + C++ code to call backend-specific functions, e.g., "return at::native::add(self, other, scale);" + """ + if len(backend_indices) == 0 or f.manual_kernel_registration: + return "" + + backends = [b for b in backend_indices if b.has_kernel(f)] + static_block = None + if len(backends) == 1: + backend_metadata = backends[0].get_kernel(f) + if backend_metadata: + args = ", ".join(a.name for a in sig.arguments()) + # Here we are assuming there's no difference between CppSignature and NativeSignature for Executorch. + static_block = f"return ::{backend_metadata.cpp_namespace}::{backend_metadata.kernel}({args});" + else: + static_block = f""" +ET_ASSERT_UNREACHABLE_MSG("The number of native function(s) binding to {f.func.name} is {len(backends)}."); + """ + return f""" +// {f.namespace}::{f.func} +TORCH_API inline {_sig_decl_wrapper(sig)} {{ + {static_block} +}} +""" + + +# Generates Functions.h, which provides the functional public C++ API, +# and the scaffolding to call into the dispatcher from these functions. +@dataclass(frozen=True) +class ComputeFunction: + static_dispatch_backend_indices: list[BackendIndex] + + selector: SelectiveBuilder + + use_aten_lib: bool + + is_custom_op: Callable[[NativeFunction], bool] + + @method_with_native_function + def __call__(self, f: NativeFunction) -> str | None: + is_method_variant = False + if not self.selector.is_root_operator(f"{f.namespace}::{f.func.name}"): + return None + + if Variant.function not in f.variants and Variant.method in f.variants: + is_method_variant = True + + # only valid remaining case is only function is in f.variants + elif not (Variant.function in f.variants and Variant.method not in f.variants): + raise Exception( # noqa: TRY002 + f"Can't handle native function {f.func} with the following variant specification {f.variants}." + ) + + sig: CppSignature | ExecutorchCppSignature = ( + CppSignatureGroup.from_native_function( + f, method=False, fallback_binding=f.manual_cpp_binding + ).most_faithful_signature() + if self.use_aten_lib + else ExecutorchCppSignature.from_native_function(f) + ) + if self.use_aten_lib and not self.is_custom_op(f): + comma = ", " + + if is_method_variant: + return f""" +// {f.namespace}::{f.func} +TORCH_API inline {_sig_decl_wrapper(sig)} {{ + return {sig.arguments()[0].name}.{sig.name()}({comma.join(e.name for e in sig.arguments()[1:])}); +}} +""" + else: + return f""" +// {f.namespace}::{f.func} +TORCH_API inline {_sig_decl_wrapper(sig)} {{ + return at::{sig.name()}({comma.join(e.name for e in sig.arguments())}); +}} +""" + + else: + return static_dispatch( + sig, + f, + backend_indices=self.static_dispatch_backend_indices, + ) + + +# Generates RegisterCodegenUnboxedKernels.cpp. +@dataclass(frozen=True) +class ComputeCodegenUnboxedKernels: + selector: SelectiveBuilder + + use_aten_lib: bool + + @method_with_nested_native_function + def __call__( + self, + unbox_kernel_entry: tuple[NativeFunction, tuple[ETKernelKey, BackendMetadata]], + ) -> str: + f: NativeFunction = unbox_kernel_entry[0] + kernel_key: ETKernelKey | list[ETKernelKey] = unbox_kernel_entry[1][0] + kernel_meta: BackendMetadata = unbox_kernel_entry[1][1] + + op_name = f"{f.namespace}::{f.func.name}" + if not self.selector.is_root_operator(op_name): + return "" + + if not isinstance(kernel_key, list): + kernel_key = [kernel_key] + used_kernel_keys = self.selector.et_get_selected_kernels( + op_name, [k.to_native_string() for k in kernel_key] + ) + if not used_kernel_keys: + return "" + sig: CppSignature | ExecutorchCppSignature + argument_type_gen: Callable[..., NamedCType] + return_type_gen: Callable[..., CType] + if self.use_aten_lib: + sig = CppSignatureGroup.from_native_function( + f, method=False, fallback_binding=f.manual_cpp_binding + ).most_faithful_signature() + argument_type_gen = aten_cpp.argumenttype_type + return_type_gen = aten_cpp.returns_type + arguments = sig.arguments() + kernel_call = f"torch::executor::{f.namespace}::{sig.name()}" + else: + sig = ExecutorchCppSignature.from_native_function(f) + argument_type_gen = et_cpp.argumenttype_type + return_type_gen = et_cpp.returns_type + arguments = sig.arguments(include_context=False) + kernel_call = f"{kernel_meta.cpp_namespace}::{kernel_meta.kernel}" + # parse arguments into C++ code + binding_list, code_list = Unboxing( + argument_type_gen=argument_type_gen + ).convert_arguments(arguments) + + # for each C++ argument, generate the conversion code + code_connector = "\n\t" + arg_connector = ", " + + args_str = f"{arg_connector.join(e.name for e in binding_list)}" + event_tracer_output_logging = "" + output_ids = [] + + if len(f.func.returns) == 0: + if len(f.func.arguments.out) == 0: + raise Exception( # noqa: TRY002 + f"Can't handle native function {f.func} with no returns and no out yet." + ) + out = f.func.arguments.out[0] + return_assignment = f"""stack[{len(binding_list)}] = &{out.name};""" + ret_prefix = "" + output_ids = [len(binding_list)] + else: + if len(f.func.arguments.out) == 0: + return_assignment = ( + f"""*stack[{len(binding_list)}] = EValue(result_);""" + ) + ret_prefix = return_type_gen(f.func.returns).cpp_type() + " result_ = " + output_ids = [len(binding_list)] + else: + return_assignment = "" + ret_prefix = "" + output_ids = [ + len(binding_list) - (i + 1) + for i in reversed(range(len(f.func.arguments.out))) + ] + + for output_id in output_ids: + event_tracer_output_logging += ( + f"internal::event_tracer_log_evalue(" + f"context.internal_event_tracer(), " + f"*stack[{output_id}]);\n" + ) + + newline = "\n " + return "\n".join( + [ + f""" +Kernel( + "{f.namespace}::{f.func.name}",{newline + '"' + (k + '",') if k != 'default' else ''} + []({contextArg.defn()}, EValue** stack) {{ + {code_connector.join(code_list)} + + internal::EventTracerProfileOpScope event_tracer_op_scope(context.internal_event_tracer(), "native_call_{f.func.name}"); + EXECUTORCH_SCOPE_PROF("native_call_{f.func.name}"); + {ret_prefix}{kernel_call}(context, {args_str}); + {event_tracer_output_logging} + {return_assignment} + }} +), +""" + for k in used_kernel_keys + ] + ) + + +def gen_unboxing( + *, + native_functions: Sequence[NativeFunction], + cpu_fm: FileManager, + selector: SelectiveBuilder, + use_aten_lib: bool, + kernel_index: ETKernelIndex, + manual_registration: bool, +) -> None: + # Iterable type for write_sharded is a Tuple of (native_function, (kernel_key, metadata)) + def key_func( + item: tuple[NativeFunction, tuple[ETKernelKey, BackendMetadata]], + ) -> str: + return item[0].root_name + ":" + item[1][0].to_native_string() + + items: list[tuple[NativeFunction, tuple[ETKernelKey, BackendMetadata]]] = [ + (native_function, (kernel_key, metadata)) + for native_function in native_functions + for kernel_key, metadata in kernel_index.get_kernels(native_function).items() + ] + + header = ["Functions.h" if use_aten_lib else "NativeFunctions.h"] + filename = ( + "RegisterKernels.cpp" + if manual_registration + else "RegisterCodegenUnboxedKernels.cpp" + ) + cpu_fm.write_sharded( + filename, + items, + key_fn=key_func, + env_callable=lambda unbox_kernel_entry: { + "unboxed_kernels": [ + ComputeCodegenUnboxedKernels(selector, use_aten_lib)(unbox_kernel_entry) + ], + "fn_header": header + if unbox_kernel_entry == items[0] + else [], # Only write header once + }, + num_shards=1, + sharded_keys={"unboxed_kernels", "fn_header"}, + ) + + +@with_native_function_and_index # type: ignore[arg-type] +def compute_native_function_declaration( + g: NativeFunctionsGroup | NativeFunction, kernel_index: ETKernelIndex +) -> list[str]: + assert isinstance(g, NativeFunction) + sig = ExecutorchCppSignature.from_native_function(f=g) + metadata_list = kernel_index.get_kernels(g).values() + if metadata_list is None: + return [] + + # for kernels in lean mode, we declare two versions, one with context and one without. + # In the end we will cleanup the unused one. + def gen_decl(metadata: BackendMetadata, include_context: bool) -> str: + return f"{sig.decl(name=metadata.kernel, include_context=include_context)};" + + return [ + gen_decl(metadata, include_context) + for include_context in [False, True] + for metadata in metadata_list + ] + + +def gen_functions_declarations( + *, + native_functions: Sequence[NativeFunction], + kernel_index: ETKernelIndex, + selector: SelectiveBuilder, + use_aten_lib: bool, + custom_ops_native_functions: Sequence[NativeFunction] | None = None, +) -> str: + """ + Generates namespace separated C++ function API inline declaration/definitions. + Native functions are grouped by namespaces and the generated code is wrapped inside + namespace blocks. + + E.g., for `custom_1::foo.out` in yaml file we will generate a C++ API as a symbol + in `torch::executor::custom_1::foo_out`. This way we avoid symbol conflict when + the other `custom_2::foo.out` is available. + """ + + # convert kernel index to BackendIndex. This is because we can't handle ETKernelIndex yet. + # TODO larryliu: evaluate if this code is still needed. If yes let it handle ETKernelIndex. + + backend_index = kernel_index._to_backend_index() + + ns_grouped_functions = defaultdict(list) + for native_function in native_functions: + ns_grouped_functions[native_function.namespace].append(native_function) + functions_declarations = "" + newline = "\n" + for namespace in ns_grouped_functions: + ns_helper = NamespaceHelper( + namespace_str=namespace, + entity_name="", + max_level=3, + ) + declarations = list( + mapMaybe( + ComputeFunction( + static_dispatch_backend_indices=[backend_index], + selector=selector, + use_aten_lib=use_aten_lib, + is_custom_op=lambda f: custom_ops_native_functions is not None + and f in custom_ops_native_functions, + ), + ns_grouped_functions[namespace], + ) + ) + functions_declarations += f""" +{ns_helper.prologue} +{newline.join(declarations)} +{ns_helper.epilogue} + """ + return functions_declarations + + +def get_ns_grouped_kernels( + *, + native_functions: Sequence[NativeFunction], + kernel_index: ETKernelIndex, + native_function_decl_gen: Callable[ + [ + NativeFunctionsGroup | NativeFunction, + ETKernelIndex, + ], + list[str], + ], +) -> dict[str, list[str]]: + ns_grouped_kernels: dict[str, list[str]] = defaultdict(list) + for f in native_functions: + native_function_namespaces = set() + op_kernels = kernel_index.get_kernels(f) + for backend_metadata in op_kernels.values(): + if backend_metadata: + namespace = backend_metadata.cpp_namespace + native_function_namespaces.add(namespace) + else: + namespace = DEFAULT_KERNEL_NAMESPACE + assert ( + len(native_function_namespaces) <= 1 + ), f"Codegen only supports one namespace per operator, got {native_function_namespaces}" + ns_grouped_kernels[namespace].extend( + native_function_decl_gen(f, kernel_index) + ) + return ns_grouped_kernels + + +def gen_headers( + *, + native_functions: Sequence[NativeFunction], + gen_custom_ops_header: bool, + custom_ops_native_functions: Sequence[NativeFunction], + selector: SelectiveBuilder, + kernel_index: ETKernelIndex, + cpu_fm: FileManager, + use_aten_lib: bool, +) -> None: + """Generate headers. + + Args: + native_functions (Sequence[NativeFunction]): a collection of NativeFunction for ATen ops. + gen_custom_ops_header (bool): whether we should generate CustomOpsNativeFunctions.h + custom_ops_native_functions (Sequence[NativeFunction]): a collection of NativeFunction for custom ops. + kernel_index (ETKernelIndex): kernel collection + cpu_fm (FileManager): file manager manages output stream + use_aten_lib (bool): whether we are generating for PyTorch types or Executorch types. + """ + aten_headers = ["#include "] + backend_indices = {DispatchKey.CPU: kernel_index._to_backend_index()} + if gen_custom_ops_header: + cpu_fm.write_with_template( + "CustomOpsNativeFunctions.h", + "NativeFunctions.h", + lambda: { + "nativeFunctions_declarations": get_native_function_declarations( + grouped_native_functions=custom_ops_native_functions, + backend_indices=backend_indices, + native_function_decl_gen=dest.compute_native_function_declaration, + ), + "headers": [ + "#include ", + "#include ", + ], + }, + ) + aten_headers.append('#include "CustomOpsNativeFunctions.h"') + cpu_fm.write( + "Functions.h", + lambda: { + "static_dispatch_extra_headers": aten_headers + if use_aten_lib + else ['#include "NativeFunctions.h"'], + "Functions_declarations": gen_functions_declarations( + native_functions=native_functions, + kernel_index=kernel_index, + selector=selector, + use_aten_lib=use_aten_lib, + custom_ops_native_functions=custom_ops_native_functions, + ), + }, + ) + cpu_fm.write( + "RegisterKernels.h", + lambda: { + "generated_comment": "@" + "generated by torchgen/gen_executorch.py", + }, + ) + headers = { + "headers": [ + "#include // at::Tensor etc.", + "#include ", + ], + } + if use_aten_lib: + headers["headers"].append("#include // TORCH_API") + cpu_fm.write( + "NativeFunctions.h", + lambda: dict( + { + "nativeFunctions_declarations": get_native_function_declarations( + grouped_native_functions=native_functions, + backend_indices=backend_indices, + native_function_decl_gen=dest.compute_native_function_declaration, + ), + }, + **headers, + ), + ) + else: + ns_grouped_kernels = get_ns_grouped_kernels( + native_functions=native_functions, + kernel_index=kernel_index, + native_function_decl_gen=compute_native_function_declaration, # type: ignore[arg-type] + ) + cpu_fm.write( + "NativeFunctions.h", + lambda: dict( + { + "nativeFunctions_declarations": get_native_function_declarations_from_ns_grouped_kernels( + ns_grouped_kernels=ns_grouped_kernels, + ), + }, + **headers, + ), + ) + + +def gen_custom_ops( + *, + native_functions: Sequence[NativeFunction], + selector: SelectiveBuilder, + kernel_index: ETKernelIndex, + cpu_fm: FileManager, + rocm: bool, +) -> None: + dispatch_key = DispatchKey.CPU + ( + anonymous_definition, + static_init_dispatch_registrations, + ) = gen_custom_ops_registration( + native_functions=native_functions, + selector=selector, + kernel_index=kernel_index, + rocm=rocm, + ) + cpu_fm.write_with_template( + f"Register{dispatch_key}CustomOps.cpp", + "RegisterDispatchKeyCustomOps.cpp", + lambda: { + "ops_headers": '#include "CustomOpsNativeFunctions.h"', + "DispatchKey": dispatch_key, + "dispatch_namespace": dispatch_key.lower(), + "dispatch_namespaced_definitions": "", + "dispatch_anonymous_definitions": anonymous_definition, + "static_init_dispatch_registrations": static_init_dispatch_registrations, + }, + ) + cpu_fm.write_with_template( + f"Register{dispatch_key}Stub.cpp", + "RegisterDispatchKeyCustomOps.cpp", + lambda: { + "ops_headers": "", + "DispatchKey": dispatch_key, + "dispatch_namespace": dispatch_key.lower(), + "dispatch_namespaced_definitions": "", + "dispatch_anonymous_definitions": list( + mapMaybe(ComputeNativeFunctionStub(), native_functions) + ), + "static_init_dispatch_registrations": static_init_dispatch_registrations, + }, + ) + + ( + aten_schema_registrations, + schema_registrations, + ) = get_native_function_schema_registrations( + native_functions=native_functions, + schema_selector=selector, + ) + cpu_fm.write( + "RegisterSchema.cpp", + lambda: { + "schema_registrations": schema_registrations, + "aten_schema_registrations": aten_schema_registrations, + }, + ) + + +def translate_native_yaml( + tags_yaml_path: str, + aten_yaml_path: str, + native_yaml_path: str | None, + use_aten_lib: bool, + out_file: TextIO, +) -> None: + """Translates Executorch DSL dialect to use the same syntax as + native_functions.yaml. The major difference is that Executorch DSL dialect + supports "op" key, where it refers to the operator name in native_functions.yaml. + + For example, a functions.yaml may have the following entry: + + - op: add.out + ... + + It needs to be translated to the following: + + - func: add.out(Tensor self, Tensor other, *, Scalar alpha=1, Tensor(a!) out) -> Tensor(a!) + ... + + We go in aten_yaml_path and find the operator schema for "add.out" and add it + to the original functions.yaml. We also add required field "variants", where for + Executorch it will always be "function". + + For ATen mode we don't have to do the translation because native_yaml_path is + the same as native_functions.yaml. + + Args: + tags_yaml_path: Path to a tags.yaml file to satisfy codegen parsing. + It is not optional. + aten_yaml_path: Path to ATen operator yaml file native_functions.yaml. + native_yaml_path: Path to a functions.yaml file to parse. + If the path does not exist in the filesystem, it is treated as an + empty file. If `custom_ops_yaml_path` exists, the contents of that + file are appended to the yaml input to be parsed. + use_aten_lib: We use this flag to determine if we want to generate native + functions. In ATen mode we should generate out= variants. + out_file: The IO object that we are writing into. + Returns: + None + """ + if use_aten_lib: + with open(aten_yaml_path) as aten_yaml: + out_file.writelines(aten_yaml.readlines()) + return + + native_functions, persisted_fields = parse_et_yaml( + aten_yaml_path, + tags_yaml_path, + None, + skip_native_fns_gen=False, + ) + + func_to_scoped_name: dict[FunctionSchema, str] = { + f.func: f"{f.namespace}::{f.func.name}" for f in native_functions + } + op_to_scoped_name: dict[OperatorName, str] = { + func.name: name for func, name in func_to_scoped_name.items() + } + + schema_dict = {name: str(func) for func, name in func_to_scoped_name.items()} + kernel_persist_dict: dict[str, dict[str, Any]] = { + op_to_scoped_name[op]: v for op, v in persisted_fields.items() + } + + if ( + not native_yaml_path + or not os.path.exists(native_yaml_path) + or os.stat(native_yaml_path).st_size == 0 + ): + return + with open(native_yaml_path) as native_yaml: + native_es = yaml.load(native_yaml, Loader=LineLoader) + if not native_es: + return + for e in native_es: + assert isinstance(e.get("__line__"), int), e + loc = Location(native_yaml_path, e.pop("__line__")) + with context(lambda: f"in {loc}:\n "): + if "variants" not in e: + e["variants"] = "function" + if "func" in e: + continue + assert isinstance(e.get("op"), str), e + opname = e.pop("op") + if "::" not in opname: + opname = "aten::" + opname + assert opname in schema_dict + e["func"] = schema_dict.get(opname) + + # Write out persisted kernel information + if opname in kernel_persist_dict: + for k, v in kernel_persist_dict[opname].items(): + e[k] = v + + yaml.dump(native_es, out_file, width=1000) + + +def parse_yaml( + path: str | None, + tags_yaml_path: str, + function_filter: Callable[[NativeFunction], bool], + skip_native_fns_gen: bool = False, +) -> tuple[ + list[NativeFunction], + dict[DispatchKey, dict[OperatorName, BackendMetadata]] | ETKernelIndex, +]: + if path and os.path.exists(path) and os.stat(path).st_size > 0: + with open(path) as f: + es = yaml.load(f, Loader=LineLoader) + + # Check for kernel index structure + kernel_index = ( + parse_et_yaml_struct(es) if any("kernels" in e for e in es) else None + ) + + # Remove ET specific fields from entries for BC compatibility + for entry in es: + for field in ET_FIELDS: + entry.pop(field, None) + + parsed_yaml = parse_native_yaml( + path, + tags_yaml_path, + None, + skip_native_fns_gen=skip_native_fns_gen, + loaded_yaml=es, + ) + native_functions = list(filter(function_filter, parsed_yaml.native_functions)) + op_names = [f.func.name for f in native_functions] + + # (1) Return ETKernelIndex if kernel index is present + if kernel_index is not None: + filtered_index = { + op_name: kernel_mapping + for op_name, kernel_mapping in kernel_index.index.items() + if op_name in op_names + } + return native_functions, ETKernelIndex(index=filtered_index) + + # (2) Return BackendIndices if kernel index is absent + def map_index( + m: dict[OperatorName, BackendMetadata], + ) -> dict[OperatorName, BackendMetadata]: + return {op: m[op] for op in m if op in op_names} + + backend_indices = { + k: map_index(b.index) for (k, b) in parsed_yaml.backend_indices.items() + } + + return native_functions, backend_indices + else: + return [], {} + + +def parse_yaml_files( + tags_yaml_path: str, + aten_yaml_path: str, + native_yaml_path: str | None, + custom_ops_yaml_path: str | None, + selector: SelectiveBuilder, + use_aten_lib: bool, +) -> tuple[ETParsedYaml, ETParsedYaml | None]: + """Parses functions.yaml and custom_ops.yaml files. + + Args: + tags_yaml_path: Path to a tags.yaml file to satisfy codegen parsing. + It is not optional. + aten_yaml_path: Path to ATen operator yaml file native_functions.yaml. + native_yaml_path: Path to a functions.yaml file to parse. + If the path does not exist in the filesystem, it is treated as an + empty file. If `custom_ops_yaml_path` exists, the contents of that + file are appended to the yaml input to be parsed. + custom_ops_yaml_path: Path to a custom_ops.yaml file to parse. If + the path does not exist in the filesystem, it is ignored. + selector: For selective build. + use_aten_lib: We use this flag to determine if we want to generate native + functions. In ATen mode we should generate out= variants. + Returns: + A tuple with two elements: + [0]: The parsed results of concatenating the contents of + `native_yaml_path` and `custom_ops_yaml_path`. + [1]: The parsed results of the contents of `custom_ops_yaml_path`, if + present. If not present, None. + """ + import tempfile + + # only include selected ops, this is because we want to avoid + def function_filter(f: NativeFunction) -> bool: + return selector.is_native_function_selected(f) + + with tempfile.TemporaryDirectory() as tmpdirname: + translated_yaml_path = os.path.join(tmpdirname, "translated.yaml") + with open(translated_yaml_path, "w") as translated: + translate_native_yaml( + tags_yaml_path, + aten_yaml_path, + native_yaml_path, + use_aten_lib, + translated, + ) + + translated_functions, translated_indices = parse_yaml( + translated_yaml_path, tags_yaml_path, function_filter, not use_aten_lib + ) + custom_ops_functions, custom_ops_indices = parse_yaml( + custom_ops_yaml_path, tags_yaml_path, function_filter, True + ) + + # Convert BackendIndices to ETKernelIndex + if not isinstance(translated_indices, ETKernelIndex): + translated_indices = ETKernelIndex.from_backend_indices(translated_indices) + if not isinstance(custom_ops_indices, ETKernelIndex): + custom_ops_indices = ETKernelIndex.from_backend_indices(custom_ops_indices) + + combined_functions = translated_functions + custom_ops_functions + combined_kernel_index = ETKernelIndex.merge_indices( + translated_indices, custom_ops_indices + ) + combined_yaml = ETParsedYaml(combined_functions, combined_kernel_index) + custom_ops_parsed_yaml = ETParsedYaml(custom_ops_functions, custom_ops_indices) + + return combined_yaml, custom_ops_parsed_yaml + + +def main() -> None: + parser = argparse.ArgumentParser(description="Generate operator source files") + # Although we don't refer to --source-path directly, make_file_manager() + # expects it to point to a directory that contains a templates/ subdirectory + # containing the file templates. + parser.add_argument( + "-s", + "--source-path", + help="path to source directory for kernel templates", + ) + parser.add_argument( + "--functions-yaml-path", + "--functions_yaml_path", + help="path to the functions.yaml file to use. Optional, but at least " + "one of --functions-yaml-path and --custom-ops-yaml-path must be " + "specified.", + ) + parser.add_argument( + "--custom-ops-yaml-path", + "--custom_ops_yaml_path", + help="path to the custom_ops.yaml file to use. Optional, but at least " + "one of --functions-yaml-path and --custom-ops-yaml-path must be " + "specified.", + ) + parser.add_argument( + "--aten-yaml-path", + "--aten_yaml_path", + help="path to native_functions.yaml file.", + ) + # Note that make_file_manager() also looks at --install-dir. + parser.add_argument( + "-d", + "--install-dir", + "--install_dir", + help="output directory", + default="build/generated", + ) + parser.add_argument( + "-o", + "--output-dependencies", + help="output a list of dependencies into the given file and exit", + ) + # Although we don't refer to --dry-run directly, make_file_manager() looks + # for it. + parser.add_argument( + "--dry-run", + action="store_true", + help="run without writing any files (still updates outputs)", + ) + parser.add_argument( + "--static-dispatch-backend", + "--static_dispatch_backend", + nargs="*", + help="generate static dispatch code for the specific backend (if set)", + ) + parser.add_argument( + "--op-registration-whitelist", + "--op_registration_whitelist", + nargs="*", + help="filter op registrations by the whitelist (if set); " + "each item is `namespace`::`operator name` without overload name; " + "e.g.: aten::empty aten::conv2d ...", + ) + parser.add_argument( + "--op-selection-yaml-path", + "--op_selection_yaml_path", + help="Provide a path to the operator selection (for custom build) YAML " + "that contains the information about the set of selected operators " + "and their categories (training, ...). Each operator is either a " + "full operator name with overload or just a bare operator name. " + "The operator names also contain the namespace prefix (e.g. aten::)", + ) + parser.add_argument( + "--tags-path", + help="Path to tags.yaml. Required by yaml parsing in codegen system.", + ) + parser.add_argument( + "--rocm", + action="store_true", + help="reinterpret CUDA as ROCm/HIP and adjust filepaths accordingly", + ) + parser.add_argument( + "--use-aten-lib", + "--use_aten_lib", + action="store_true", + help="a boolean flag to indicate whether we use ATen kernels or not, in the future this flag will be per " + "operator", + ) + parser.add_argument( + "--manual_registration", + "--manual-registration", + action="store_true", + help="a boolean flag to indicate whether we want to manually call" + "register_kernels() or rely on static init. ", + ) + parser.add_argument( + "--generate", + type=str, + nargs="*", + choices=["headers", "sources"], + default=["headers", "sources"], + help="Generate only a subset of files", + ) + options = parser.parse_args() + assert options.tags_path, "tags.yaml is required by codegen yaml parsing." + + selector = get_custom_build_selector( + options.op_registration_whitelist, + options.op_selection_yaml_path, + ) + + parsed_yaml, custom_ops_parsed_yaml = parse_yaml_files( + aten_yaml_path=options.aten_yaml_path, + tags_yaml_path=options.tags_path, + native_yaml_path=options.functions_yaml_path, + custom_ops_yaml_path=options.custom_ops_yaml_path, + selector=selector, + use_aten_lib=options.use_aten_lib, + ) + native_functions, kernel_index = ( + parsed_yaml.native_functions, + parsed_yaml.kernel_index, + ) + custom_ops_native_functions = ( + custom_ops_parsed_yaml.native_functions if custom_ops_parsed_yaml else [] + ) + + cpu_fm = make_file_manager(options=options) + + if "headers" in options.generate: + # generate CustomOpsNativeFunctions.h when custom_ops.yaml is present, to match the build system. + gen_headers( + native_functions=native_functions, + gen_custom_ops_header=options.custom_ops_yaml_path, + custom_ops_native_functions=custom_ops_native_functions, + selector=selector, + kernel_index=kernel_index, + cpu_fm=cpu_fm, + use_aten_lib=options.use_aten_lib, + ) + + if "sources" in options.generate: + gen_unboxing( + native_functions=native_functions, + cpu_fm=cpu_fm, + selector=selector, + use_aten_lib=options.use_aten_lib, + kernel_index=kernel_index, + manual_registration=options.manual_registration, + ) + if custom_ops_native_functions: + gen_custom_ops( + native_functions=custom_ops_native_functions, + selector=selector, + kernel_index=kernel_index, + cpu_fm=cpu_fm, + rocm=options.rocm, + ) + + if options.output_dependencies: + depfile_path = Path(options.output_dependencies).resolve() + depfile_name = depfile_path.name + depfile_stem = depfile_path.stem + + for fm, prefix in [ + (cpu_fm, ""), + ]: + varname = prefix + depfile_stem + path = depfile_path.parent / (prefix + depfile_name) + fm.write_outputs(varname, str(path)) + + +if __name__ == "__main__": + main() diff --git a/gen_functionalization_type.py b/gen_functionalization_type.py new file mode 100644 index 0000000000000000000000000000000000000000..d7d5706ec38189fb99d92e79cb7080f2741987a4 --- /dev/null +++ b/gen_functionalization_type.py @@ -0,0 +1,882 @@ +from __future__ import annotations + +from dataclasses import dataclass +from typing import Callable, TYPE_CHECKING + +from torchgen.api import cpp, dispatcher +from torchgen.api.translate import translate +from torchgen.api.types import ( + BaseCType, + Binding, + CType, + DispatcherSignature, + FunctionalizationLambda, + iTensorListRefT, + NativeSignature, + OptionalCType, + optionalSymIntArrayRefT, + symIntArrayRefT, + SymIntT, + tensorListT, + tensorT, + VectorCType, + ViewInverseSignature, +) +from torchgen.context import ( + method_with_native_function, + native_function_manager, + with_native_function, + with_native_function_and, +) +from torchgen.model import ( + Argument, + BackendIndex, + BaseTy, + BaseType, + FunctionSchema, + ListType, + NativeFunction, + NativeFunctionsGroup, + NativeFunctionsViewGroup, + Return, + SchemaKind, + SelfArgument, + TensorOptionsArguments, +) +from torchgen.native_function_generation import ( + INPLACE_OPS_THAT_DONT_GET_GROUPED_PROPERLY, + MUTABLE_OPS_THAT_CANNOT_GET_AN_OUT_VARIANT, + OUT_OPS_THAT_DONT_GET_GROUPED_PROPERLY, +) +from torchgen.utils import dataclass_repr + + +if TYPE_CHECKING: + from torchgen.selective_build.selector import SelectiveBuilder + + +# Note: [Mutable Ops Not Using Functionalization] +# Ops in this list currently do not work with functionalization and should be fixed. +MUTABLE_OPS_NOT_USING_FUNCTIONALIZATION = ( + OUT_OPS_THAT_DONT_GET_GROUPED_PROPERLY + + MUTABLE_OPS_THAT_CANNOT_GET_AN_OUT_VARIANT + + INPLACE_OPS_THAT_DONT_GET_GROUPED_PROPERLY + + [ + # It will be BC-breaking, but we should fix their schemas. + # should be inplace? + "record_stream", + # See Note [resize_ in Functionalization] + "resize_", + "resize_as_", + # This function is used as for testing purposes only. + "_fill_mem_eff_dropout_mask_", + ] +) + +# This file contains codegen that relates to the functionalization pass. +# It includes: +# - gen_functionalization_definition +# Generates dispatcher kernel definitions for the functionalization pass. +# - gen_functionalization_registration +# Generates dispatcher kernel registrations for the functionalization pass. +# - gen_functionalization_view_inverse_declaration +# Generates a declaration for an "inverse view", for every view op +# that is needed in functionalization. We manually implement their definitions. +# - gen_composite_view_copy_kernel +# Generates view_copy() composite kernels for all view_copy operators. + + +# Generates the body of the default composite C++ kernel for a {view}_copy NativeFunction +# See Note [view_copy NativeFunctions] +@dataclass(frozen=True) +class GenCompositeViewCopyKernel: + backend_index: BackendIndex + + @method_with_native_function + def __call__(self, g: NativeFunctionsViewGroup) -> str | None: + if g.view_copy is None: + return None + elif g.view_copy.func.name.name.base != f"{g.view.func.name.name}_copy": + # If the view_copy doesn't match the standard naming scheme of _copy, + # assume it already exists and doesn't need to be generated. + # Example: slice_inverse() with the copy variant named slice_scatter() + # instead of slice_inverse_copy() + return None + + metadata = self.backend_index.get_kernel(g.view_copy) + assert metadata is not None + + # We can make view_copy work in more cases by using reshape() + # when a normal view call would ordinarily fail. + # This also makes LTC more efficient, because they don't need to include + # clone() calls in their graph (which is normally needed by reshape). + if str(g.view_copy.func.name) == "view_copy": + assert metadata.kernel == "view_copy_symint" + return """\ +at::Tensor view_copy_symint(const at::Tensor & self, at::SymIntArrayRef size) { + c10::SymDimVector shape = infer_size_dv(size, self.sym_numel()); + if (!at::detail::computeStride(self.sym_sizes(), self.sym_strides(), shape).has_value()) { + return self.reshape_symint(size); + } else { + auto output = at::_ops::view::call(self, size); + return output.clone(/*memory_format=*/at::MemoryFormat::Contiguous); + } +} +""" + # view_copy is a native signature, since we're generating an at::native:: kernel + # Functionalization always operates on symints though + view_copy_sig = NativeSignature( + g.view_copy.func, symint=metadata.supports_symint() + ) + + # view is a dispatcher signature, since we're calling into the at::_ops API + view_sig = DispatcherSignature(g.view.func) + + view_api_name = g.view.func.name.unambiguous_name() + exprs = ", ".join( + [e.expr for e in translate(view_copy_sig.arguments(), view_sig.arguments())] + ) + + # view ops today always return either a Tensor or a list of Tensors + assert len(g.view.func.returns) == 1 + assert g.view.func.returns[0].type == BaseType( + BaseTy.Tensor + ) or g.view.func.returns[0].type == ListType(BaseType(BaseTy.Tensor), None) + + if g.view.func.returns[0].type == BaseType(BaseTy.Tensor): + return_cloned_output = """\ + return output.clone(/*memory_format=*/at::MemoryFormat::Contiguous);""" + else: + # If the return type is a list, we need to clone each tensor in the list. + return_cloned_output = f"""\ + {view_copy_sig.returns_type().cpp_type()} out_clone; + for (const auto i : c10::irange(output.size())) {{ + out_clone.push_back(output[i].clone(/*memory_format=*/at::MemoryFormat::Contiguous)); + }} + return out_clone;""" + + # The default generated composite kernel for {view}_copy() operators just clones + # the input tensor, and runs the underlying view on the clone. + return f""" +{view_copy_sig.defn(name=metadata.kernel)} {{ + auto output = at::_ops::{view_api_name}::call({exprs}); + {return_cloned_output} +}} +""" + + +def return_str(rets: tuple[Return, ...], names: list[str]) -> str: + assert len(rets) == len(names) + if len(rets) == 0: + return "" + elif len(rets) == 1: + return f"return {names[0]};" + else: + return f"return {dispatcher.returns_type(rets).cpp_type()}({', '.join(names)});" + + +def modifies_arguments(f: NativeFunction) -> bool: + return any( + a.annotation is not None and a.annotation.is_write + for a in f.func.arguments.flat_all + ) + + +def wrapper_name(func: FunctionSchema) -> str: + if func.name.overload_name: + return f"{cpp.name(func)}_{func.name.overload_name}" + else: + return cpp.name(func) + + +def is_tensor_like(a: Argument | TensorOptionsArguments | SelfArgument) -> bool: + return isinstance(a, SelfArgument) or ( + isinstance(a, Argument) and a.type.is_tensor_like() + ) + + +# We need to wrap / unwrap various arguments from the op in the functionalization kernels. +# Some op schemas include non-owning types though (like TensorList), +# and when we unwrap them we expect to get out an owning type!. +# We also return a lambda that tells you how to conver the non-owning type argument into the owning type. +def get_owning_type(t: CType) -> tuple[CType, Callable[[str], str]]: + if t == BaseCType(tensorListT): + return VectorCType(BaseCType(tensorT)), lambda x: f"{x}.vec()" + if t == BaseCType(iTensorListRefT): + return VectorCType(BaseCType(tensorT)), lambda x: f"{{{x}.begin(), {x}.end()}}" + # There are technically other non-owning types out there (like IntArrayRef), + # but functionalization only actually cares about the ones involving tensors. + return t, lambda x: x + + +# unwraps all tensor-like arguments, returning: +# (1) a string containing all of the logic that does the unwrapping +# (2) a context, to be used by translate(), with all of the relevant bindings. +def unwrap_tensor_args( + sig: DispatcherSignature, *, is_view_op: bool +) -> tuple[str, list[Binding]]: + context: list[Binding] = [] + unwrapped_tensor_args: list[str] = [] + for arg in sig.arguments(): + if is_tensor_like(arg.argument): + # for tensor inputs, we want to unwrap them before passing them into the redispatch calls. + unwrapped_name = f"{arg.name}_" + # For most ops, the functionalization needs to sync any pending updates on the input tensors + # before calling the operator, since otherwise the operator will act on stale data. + # For view ops though, we can continue to defer syncing until the tensor is used by + # a non-view operator. + maybe_sync_input = ( + "" if is_view_op else f"at::functionalization::impl::sync({arg.name});" + ) + unwrapped_type, conversion_fn = get_owning_type( + arg.nctype.remove_const_ref().type + ) + unwrapped_tensor_args.append( + f""" + {unwrapped_type.cpp_type()} {unwrapped_name}; + if (at::functionalization::impl::isFunctionalTensor({arg.name})) {{ + {maybe_sync_input} + {unwrapped_name} = at::functionalization::impl::from_functional_tensor({arg.name}); + }} else {{ + {unwrapped_name} = {conversion_fn(arg.name)}; + }}""" + ) + context.append(arg.with_name(unwrapped_name)) + else: + # for non-tensor inputs, we want to pass them directly into the redispatch calls. + context.append(arg) + unwrap_tensor_args_str = "\n ".join(unwrapped_tensor_args) + return unwrap_tensor_args_str, context + + +# converts all tensor-like arguments to meta tensors, which are used to compute stride info. Returns: +# (1) a string containing all of the logic that does the conversions. +# (2) a context, to be used by translate(), with all of the relevant bindings. +def convert_to_meta_tensors(sig: DispatcherSignature) -> tuple[str, list[Binding]]: + context: list[Binding] = [] + unwrapped_tensor_args: list[str] = [] + for arg in sig.arguments(): + if is_tensor_like(arg.argument): + # for tensor inputs, we want to unwrap them before passing them into the redispatch calls. + a_ = arg.name + unwrapped_name = f"{arg.name}_meta" + unwrapped_tensor_args.append(f"auto {unwrapped_name} = to_meta({a_});") + context.append(arg.with_name(unwrapped_name)) + else: + # for non-tensor inputs, we want to pass them directly into the redispatch calls. + context.append(arg) + unwrap_tensor_args_str = "\n ".join(unwrapped_tensor_args) + return unwrap_tensor_args_str, context + + +# The functionalization codegen currently expects view op schemas to have this form: +# foo(Tensor(a), ...) -> Tensor(a) (e.g. transpose) +# foo(Tensor(a!), ...) -> Tensor(a!) (e.g. transpose_) +def assert_view_op_properties(func: FunctionSchema) -> None: + def is_alias(a: Argument) -> bool: + return a.annotation is not None + + args = func.arguments.flat_non_out + # The first argument is a tensor with an alias semantics (annotations) + assert ( + len(args) > 0 and args[0].type == BaseType(BaseTy.Tensor) + ), f"""In the functionalization codegen, we expect the first argument of every view operator to be a tensor, +but found an argument of type {str(args[0].type)} for operator: {str(func.name)}.""" + # No other arguments have aliasing semantics + assert ( + is_alias(args[0]) and not any(is_alias(a) for a in args[1:]) + ), """In the functionalization codegen, we expect the first argument of every view operator to alias the output. +View operators with multiple aliasing inputs aren't supported yet. Found an operator that doesn't satisfy this constraint""" + + +# One-liner expression for checking if an expression expr of type type has any +# symbolic values. +def emit_expr_has_symbolic_values(expr: str, type: CType) -> str: + if type == BaseCType(SymIntT): + return f"{expr}.is_symbolic()" + + if isinstance(type, OptionalCType): + innerexpr = f"(*{expr})" + return f"{expr}.has_value() ? {emit_expr_has_symbolic_values(innerexpr, type.elem)} : false" + + if type == BaseCType(optionalSymIntArrayRefT): + return emit_expr_has_symbolic_values( + expr, OptionalCType(BaseCType(symIntArrayRefT)) + ) + + if type in (BaseCType(symIntArrayRefT), VectorCType(BaseCType(SymIntT))): + argname = "arg" + lambda_check = emit_expr_has_symbolic_values(argname, BaseCType(SymIntT)) + return ( + "std::any_of(" + f"{expr}.begin(), {expr}.end(), " + f"[=](auto& {argname}) {{ return {lambda_check}; }})" + ) + + raise ValueError( + "unsupported type for has_symbolic_values check. " + "It should be a SymInt or a collection of those. " + f"Got: {type.cpp_type()}" + ) + + +# Detects whether any of the SymInt arguments are, in fact, symbolic values. +# This is used in the constructor of ViewMeta. +def emit_has_symbolic_inputs(sig: DispatcherSignature) -> tuple[str, str]: + name = "has_symbolic_inputs" + statements = [ + f"{name} = {name} | ({emit_expr_has_symbolic_values(binding.name, binding.nctype.type)});" + for binding in sig.arguments() + if ( + isinstance(binding.argument, Argument) + and binding.argument.type.is_symint_like() + ) + ] + body = "\n ".join(statements) + return ( + name, + f""" + bool {name} = false; + {body}""", + ) + + +# Generates the Functionalization kernel for: +# - ops that create aliases (e.g. transpose()) +# - ops that are views AND mutations (e.g. transpose_()) +def emit_view_functionalization_body( + g: NativeFunctionsViewGroup, *, view_inplace: bool +) -> str: + if view_inplace: + # This op is both an inplace op AND a view op. + # See Note [Functionalization Pass - Inplace View Ops] for details. + # I currently have the view meta call into the out-of-place variant of the view, to avoid + # having to define an extra ~20 inplace {view}_inverse_ functions. + # Most view ops don't have NativeFunctionGroup's both, because we don't define out= variants for view ops. + # I'm assuming that every inplace-view op has a corresponding out-of-place view op, + # with the same name but the trailing underscore removed. + # This is currently asserted at parse time in gen.py (see error_check_native_functions). + assert g.view_inplace is not None + f = g.view_inplace + else: + f = g.view + + assert g.view_copy is not None + with native_function_manager(f): + call_sig = DispatcherSignature.from_schema(g.view_copy.func) + + # the "view_copy" op name that the functionalization kernels need to call + api_name = g.view_copy.func.name.unambiguous_name() + # Sometimes the functionalization pass needs to no-op (e.g. if it was passed non-functional tensors) + # "no-op"ing in this context is just redispatching to the original op. + noop_api_name = f.func.name.unambiguous_name() + + dispatcher_sig = DispatcherSignature.from_schema(f.func) + assert_view_op_properties(f.func) + view_tensor_name = dispatcher_sig.arguments()[0].name + + return_type = dispatcher_sig.returns_type().remove_const_ref().cpp_type() + + unwrap_tensor_args_str, unwrapped_args_ctx = unwrap_tensor_args( + dispatcher_sig, is_view_op=True + ) + view_redispatch_args = [ + e.expr + for e in translate(unwrapped_args_ctx, call_sig.arguments(), method=False) + ] + + forward_lambda = FunctionalizationLambda.from_func(g, is_reverse=False) + reverse_lambda = FunctionalizationLambda.from_func(g, is_reverse=True) + + # The meta API call should use the same arguments, but convert all tensors to meta tensors first. + meta_conversion_str, meta_call_ctx = convert_to_meta_tensors(dispatcher_sig) + meta_call_args = [ + e.expr for e in translate(meta_call_ctx, call_sig.arguments(), method=False) + ] + + ( + symbolic_inputs_varname, + symbolic_inputs_check, + ) = emit_has_symbolic_inputs(call_sig) + + if "inplace_view" in f.tags: + # See Note [Functionalization Pass - Inplace View Ops] for more details + return f""" + {dispatcher_sig.defn(name=wrapper_name(f.func), is_redispatching_fn=True)} {{ + if (!at::functionalization::impl::isFunctionalTensor({view_tensor_name})) {{ + // functionalization is re-entrant, but will no-op if it wasn't passed a FunctionalTensorWrapper. + {unwrap_tensor_args_str} + at::AutoDispatchSkipFunctionalize guard; + return at::_ops::{noop_api_name}::call({', '.join(view_redispatch_args)}); + }} + auto reapply_views = at::functionalization::impl::getFunctionalizationReapplyViewsTLS(); + auto inverse_return_mode = ( + reapply_views ? at::functionalization::InverseReturnMode::ViewOrScatterInverse + : at::functionalization::InverseReturnMode::NeverView + ); + {symbolic_inputs_check} + at::functionalization::ViewMeta view_meta = at::functionalization::ViewMeta( + {forward_lambda.decl()} {{ + if (reapply_views) {{ + return {forward_lambda.inner_call(reapply_views=True)} + }} else {{ + return {forward_lambda.inner_call(reapply_views=False)} + }} + }}, + {reverse_lambda.decl()} {{ + return {reverse_lambda.inner_call()} + }}, + /*has_symbolic_inputs=*/{symbolic_inputs_varname} + ); + auto compute_reference_meta = + {view_tensor_name}.key_set().has_backend(c10::BackendComponent::XLABit) || + {view_tensor_name}.key_set().has_backend(c10::BackendComponent::LazyBit); + {return_type} reference_tensor_output; + if (compute_reference_meta) {{ + {meta_conversion_str} + at::AutoDispatchSkipFunctionalize func_guard; + c10::impl::ExcludeDispatchKeyGuard guard(exclude_keys_for_meta_dispatch); + reference_tensor_output = at::_ops::{noop_api_name}::call({', '.join(meta_call_args)}); + }} + // This function adds the above view meta to the current tensor and replays them off the base, + // mutating the size/stride info of the current FunctionalTensorWrapper. + // Because of this, we need to make sure to run the reference shape function above, + // BEFORE doing this (otherwise we'll end up runnin the reference function using the wrong sizes/strides) + at::functionalization::impl::mutate_view_meta({view_tensor_name}, view_meta); + // See Note [Propagating strides in the functionalization pass] + // XLA/LTC don't implement the logic to propagate strides correctly, so we need to rely + // on a reference implementation here (instead of relying on the output from the forward lambda + // having the correct stride info) + if (compute_reference_meta) {{ + at::functionalization::impl::set_sizes_strides_offset({view_tensor_name}, reference_tensor_output); + }} + return {view_tensor_name}; + }} +""" + + else: + is_multi_output_view = isinstance(f.func.returns[0].type, ListType) + return f""" + {dispatcher_sig.defn(name=wrapper_name(f.func), is_redispatching_fn=True)} {{ + {unwrap_tensor_args_str} + if (!at::functionalization::impl::isFunctionalTensor({view_tensor_name})) {{ + // functionalization is re-entrant, but will no-op if it wasn't passed a FunctionalTensorWrapper. + at::AutoDispatchSkipFunctionalize guard; + return at::_ops::{noop_api_name}::call({', '.join(view_redispatch_args)}); + }} + auto reapply_views = at::functionalization::impl::getFunctionalizationReapplyViewsTLS(); + auto inverse_return_mode = ( + reapply_views ? at::functionalization::InverseReturnMode::ViewOrScatterInverse + : at::functionalization::InverseReturnMode::NeverView + ); + auto compute_reference_meta = + {view_tensor_name}.key_set().has_backend(c10::BackendComponent::XLABit) || + {view_tensor_name}.key_set().has_backend(c10::BackendComponent::LazyBit); + {return_type} reference_tensor_output; + if (compute_reference_meta) {{ + {meta_conversion_str} + at::AutoDispatchSkipFunctionalize func_guard; + c10::impl::ExcludeDispatchKeyGuard guard(exclude_keys_for_meta_dispatch); + reference_tensor_output = at::_ops::{noop_api_name}::call({', '.join(meta_call_args)}); + }} + {return_type} tmp_output; + {{ + at::AutoDispatchSkipFunctionalize guard; + if (reapply_views) {{ + tmp_output = at::_ops::{noop_api_name}::call({', '.join(view_redispatch_args)}); + }} else {{ + tmp_output = at::_ops::{api_name}::call({', '.join(view_redispatch_args)}); + }} + }} + {symbolic_inputs_check} + at::functionalization::ViewMeta view_meta = at::functionalization::ViewMeta( + {forward_lambda.decl()} {{ + if (reapply_views) {{ + return {forward_lambda.inner_call(reapply_views=True)} + }} else {{ + return {forward_lambda.inner_call(reapply_views=False)} + }} + }}, + {reverse_lambda.decl()} {{ + return {reverse_lambda.inner_call()} + }}, + /*has_symbolic_inputs=*/{symbolic_inputs_varname}, + /*is_multi_output=*/{str(is_multi_output_view).lower()}, + /*is_as_strided=*/{str(str(f.func.name) == 'as_strided').lower()} + ); + auto out = at::functionalization::impl::create_functional_tensor_with_view_meta(tmp_output, {view_tensor_name}, view_meta); + // See Note [Propagating strides in the functionalization pass] + if (compute_reference_meta) {{ + at::functionalization::impl::set_sizes_strides_offset(out, reference_tensor_output); + }} + return out; + }} +""" + + +def maybe_create_output(f: NativeFunction, var_name: str) -> str: + if len(f.func.returns) == 0: + return "" + return_type = dispatcher.returns_type(f.func.returns).remove_const_ref().cpp_type() + return f"{return_type} {var_name} = " + + +# Given a NativeFunction, and a variable name corresponding to the output of redispatching on the function, +# this returns two lists of names, consisting of: +# - the names of returns corresponding to the original (mutable) inputs of the outer function +# - the names of returns corresponding to the (immutable) outputs of the inner redispatched function +def get_mutable_redispatch_return_names( + f: NativeFunction, inner_return_var: str +) -> tuple[list[str], list[str]]: + aliased_returns = [] + non_aliased_returns = [] + for i, name in enumerate(f.func.aliased_return_names()): + if name is not None: + aliased_returns.append(name) + else: + non_aliased_returns.append( + inner_return_var + if len(f.func.returns) == 1 + else f"std::get<{i}>({inner_return_var})" + ) + return aliased_returns, non_aliased_returns + + +# When functionalization "no-op's" and redispatches on a mutable operator, we need to take care so that: +# - For fresh outputs, we return the result of the redispatch (without wrapping outputs) +# - For outputs that were aliased to inputs, we return the inputs directly (since some of them might have been wrapped) +def return_from_mutable_noop_redispatch( + f: NativeFunction, inner_return_var: str +) -> str: + aliased, non_aliased = get_mutable_redispatch_return_names(f, inner_return_var) + # Just get all of the return names, and immediately return them + return return_str(f.func.returns, aliased + non_aliased) + + +def wrap_propagate_mutations_and_return( + f: NativeFunction, functional_op: NativeFunction, inner_return_var: str +) -> str: + mutable_arg_names = f.func.arguments.mutable_arg_names() + ( + aliased_outer_rets, + non_aliased_outer_rets, + ) = get_mutable_redispatch_return_names(f, inner_return_var) + _, non_aliased_inner_rets = get_mutable_redispatch_return_names( + functional_op, inner_return_var + ) + # The outer function may have a mix of aliased and non-aliased outputs, + # But the inner functional op that we're transforming to should only have non-aliased outputs + assert len(mutable_arg_names) + len(non_aliased_outer_rets) == len( + non_aliased_inner_rets + ) + + # First, take all of the newly created outputs from the inner call and wrap them into functional tensors + updates = [] + non_aliased_wrapped_ret_names = [] + for i, inner_ret in enumerate( + non_aliased_inner_rets[: len(non_aliased_outer_rets)] + ): + ret_name = f"output_{i}" + updates.append( + f"""\ + auto output_{i} = at::functionalization::impl::to_functional_tensor({inner_ret});""" + ) + non_aliased_wrapped_ret_names.append(ret_name) + + # Next, take all of the mutated outputs from the inner call corresponding to mutated inputs, + # and propagate the mutations + for outer_arg, inner_ret in zip( + mutable_arg_names, non_aliased_inner_rets[len(non_aliased_outer_rets) :] + ): + updates.append( + f"""\ + auto {outer_arg}_inner = at::functionalization::impl::from_functional_tensor({outer_arg}); + at::functionalization::impl::replace_({outer_arg}, {inner_ret}); + at::functionalization::impl::commit_update({outer_arg}); + at::functionalization::impl::sync({outer_arg}); + auto {outer_arg}_inner_updated = at::functionalization::impl::from_functional_tensor({outer_arg}); + at::functionalization::impl::propagate_xla_data_direct({outer_arg}_inner, {outer_arg}_inner_updated);""" + ) + + # Finally, we return: + # - Any mutable arguments that also returns + # - Any immutable returns that were created wrapping the output from the inner call + returns_str = return_str( + f.func.returns, aliased_outer_rets + non_aliased_wrapped_ret_names + ) + updates_str = "\n".join(updates) + return f"""\ +{updates_str} + {returns_str}""" + + +# Generates the Functionalization kernel for: +# - mutation ops (inplace and out= ops) +@with_native_function_and +def emit_inplace_functionalization_body( + f: NativeFunction, g: NativeFunctionsGroup +) -> str: + # mutation case + assert modifies_arguments(f) + + dispatcher_sig = DispatcherSignature.from_schema(f.func) + + unwrap_tensor_args_str, unwrapped_args_ctx = unwrap_tensor_args( + dispatcher_sig, is_view_op=False + ) + + mutated_names = [ + a.name + for a in f.func.arguments.flat_all + if a.type.is_tensor_like() and a.annotation is not None + ] + non_mutated_names = [ + a.name + for a in f.func.arguments.flat_all + if a.type.is_tensor_like() and a.annotation is None + ] + non_mutated_tensor_names = [ + a.name + for a in f.func.arguments.flat_all + if a.type == BaseType(BaseTy.Tensor) and a.annotation is None + ] + # all mutable inputs must be functional tensors in order to participate in functionalization + check_all_mutated_args_are_functional = " && ".join( + ["true"] + + [ + f"at::functionalization::impl::isFunctionalTensor({a})" + for a in mutated_names + ] + ) + check_any_non_mutated_args_are_functional = " || ".join( + ["false"] + + [ + f"at::functionalization::impl::isFunctionalTensor({a})" + for a in non_mutated_names + ] + ) + + check_any_non_mutated_tensors_are_xla = " || ".join( + ["false"] + + [ + f"{a}.device().type() == c10::DeviceType::XLA" + for a in non_mutated_tensor_names + ] + ) + # These are used in the cases where we don't functionalize and redispatch to the inplace op + # case 1: we hit an inplace op that doesn't have an out-of-place equivalent + # case 2: we hit an inplace ops but our inputs are not functional tensors (in which case our kernel just no-ops) + inplace_exprs = [ + e.expr + for e in translate(unwrapped_args_ctx, dispatcher_sig.arguments(), method=False) + ] + + # call the out-of-place variant of the op + return_type = ( + dispatcher.returns_type(g.functional.func.returns).remove_const_ref().cpp_type() + ) + functional_sig = DispatcherSignature.from_schema(g.functional.func) + functional_exprs = [ + e.expr + for e in translate(unwrapped_args_ctx, functional_sig.arguments(), method=False) + ] + + if f.func.is_out_fn(): + mutable_input_post_processing = "\n".join( + [ + f""" + at::functionalization::impl::replace_( + {a.name}, {'std::get<' + str(i) + '>(tmp_output)' if len(f.func.returns) > 1 else 'tmp_output'}); + at::functionalization::impl::commit_update({a.name});""" + for (i, a) in enumerate(f.func.arguments.out) + if a.annotation and a.annotation.is_write and a.type.is_tensor_like() + ] + ) + else: + mutable_input_post_processing = "\n".join( # noqa: F841 + [ + f""" + at::functionalization::impl::replace_({a.name}, tmp_output); + at::functionalization::impl::commit_update({a.name});""" + for a in f.func.arguments.flat_all + if a.annotation and a.annotation.is_write and a.type.is_tensor_like() + ] + ) + + meta_conversion_str, meta_call_ctx = convert_to_meta_tensors(dispatcher_sig) + # We don't want to run the inplace meta func for ops like .set_(), because: + # (1) they're unnecessary: inplace meta checks are only useful for ops like add_(), + # where broadcasting will work for the out-of-place case but should fail on the inplace call + # (2) They'll also fail without adding extra infra: we'd need to convert the input storage argument + # into a meta storage + any_storage_args = any( + a.type == BaseType(BaseTy.Storage) for a in f.func.arguments.flat_all + ) + + return f""" + {dispatcher_sig.defn(name=wrapper_name(f.func), is_redispatching_fn=True)} {{ + if ({str(not any_storage_args and f.func.kind() == SchemaKind.inplace).lower()}) {{ + // Before converting the mutable op to its functional variant, run meta tensors through the original op. + // This will help us catch shape errors that apply to inplace ops that wouldn't apply to their functional variants. + // (We can only do this for inplace ops today though, because they technically all support meta tensors). + {meta_conversion_str} + at::AutoDispatchSkipFunctionalize func_guard; + c10::impl::ExcludeDispatchKeyGuard guard(exclude_keys_for_meta_dispatch); + at::_ops::{f.func.name.unambiguous_name()}::call({', '.join(a.name for a in meta_call_ctx)}); + }} + {unwrap_tensor_args_str} + if (!({check_all_mutated_args_are_functional})) {{ + // We want to disable this check if there are any XLA tensors. + // cpu_tensor.copy_(xla_tensor) is valid code. + if (!({check_any_non_mutated_tensors_are_xla}) && ({check_any_non_mutated_args_are_functional})) {{ + // case 1: trying to mutate a non functional tensor with a functional tensor is an error + TORCH_INTERNAL_ASSERT(false, + "mutating a non-functional tensor with a functional tensor is not allowed.", + " Please ensure that all of your inputs are wrapped inside of a functionalize() call."); + }} else {{ + // case 2: arguments are not functional tensors, so we no-op and redispatch. + at::AutoDispatchSkipFunctionalize guard; + {maybe_create_output(f, 'tmp_output')}at::_ops::{f.func.name.unambiguous_name()}::call({', '.join(inplace_exprs)}); + {return_from_mutable_noop_redispatch(f, 'tmp_output')} + }} + }} else {{ + {return_type} tmp_output; + {{ + at::AutoDispatchSkipFunctionalize guard; + tmp_output = at::_ops::{g.functional.func.name.unambiguous_name()}::call({', '.join(functional_exprs)}); + }} + {wrap_propagate_mutations_and_return(f, g.functional, 'tmp_output')} + }} + }}""" + + +# The below functions generate RegisterFunctionalization.cpp +# These files provide the kernels that run the functionalization pass, which can be opted into +# per backend (e.g. XLA or Vulkan), or as a composable transform (functionalize() in functorch). + + +# See Note [Functionalization Pass: View Inverses]. +def gen_functionalization_view_inverse_declaration( + selector: SelectiveBuilder, g: NativeFunctionsViewGroup +) -> str | None: + # For every (non-composite) view op, we need a corresponding "inverse view" function. + # This generates the declarations so we get a good compiler error when someone adds a new view. + @with_native_function + def emit_decl_helper(g: NativeFunctionsViewGroup) -> str | None: + if g.view.has_composite_implicit_autograd_kernel: + return None + view_inverse_sig = ViewInverseSignature(g) + return view_inverse_sig.decl() + + return emit_decl_helper(g) + + +def gen_functionalization_registration( + selector: SelectiveBuilder, + g: NativeFunction | NativeFunctionsGroup | NativeFunctionsViewGroup, + composite_implicit_autograd_index: BackendIndex, +) -> list[str]: + @with_native_function + def emit_registration_helper(f: NativeFunction) -> str: + assert not f.has_composite_implicit_autograd_kernel + registration_str = f"TORCH_FN(functionalization::{wrapper_name(f.func)})" + return f'm.impl("{f.func.name}", {registration_str});' + + # Don't generate kernels in mobile build + if not selector.include_all_operators: + return [] + + if isinstance(g, NativeFunctionsViewGroup): + # functionalization needs to register kernels for view + view_inplace ops + # See Note [Functionalization <> torch.Tensor constructor] + if str(g.view.func.name) == "lift_fresh": + return [] + view_str = [] + if not g.view.has_composite_implicit_autograd_kernel: + view_str.append(emit_registration_helper(g.view)) + if ( + g.view_inplace is not None + and not g.view_inplace.has_composite_implicit_autograd_kernel + ): + assert g.view_inplace.is_view_op + view_str.append(emit_registration_helper(g.view_inplace)) + return view_str + + elif isinstance(g, NativeFunctionsGroup): + # Gets a hand-written functionalization kernel + if g.inplace is not None and str(g.inplace.func.name) == "set_.source_Tensor": + fns = [] + else: + fns = list(g.functions()) + else: + if str(g.func.name) in MUTABLE_OPS_NOT_USING_FUNCTIONALIZATION: + return [] + fns = [g] + + registrations = [] + for f in fns: + if f.has_composite_implicit_autograd_kernel: + continue + if str(f.func.name) == "lift": + # See Note [Functionalization <> torch.Tensor constructor] + return [] + if str(f.func.name) == "resize_": + # See Note [resize_ in Functionalization] + return [] + if str(f.func.name.name) != "set_": + assert not f.is_view_op + # functionalization needs to generate and register kernels for inplace ops. + # We *also* need to directly register CompositeImplicitAUtograd kernels + # so that they decompose properly before functioanlization. + if modifies_arguments(f): + registrations.append(emit_registration_helper(f)) + return registrations + + +def gen_functionalization_definition( + selector: SelectiveBuilder, + # Note: Ideally this code should never have to look at NativeFunction + # (and instead only need to operate on grouped NativeFunctions). + # The only reason currently is because we need to emit direct dispatch registrations + # For CompositeImplicitAutograd operators, which are potentially ungrouped. + g: NativeFunction | NativeFunctionsGroup | NativeFunctionsViewGroup, +) -> list[str]: + # Don't generate kernels in mobile build + if not selector.include_all_operators: + return [] + + if isinstance(g, NativeFunctionsViewGroup): + # Case 1: emit view -> view_copy kernels for the functionalization pass + view_defs = [] + if not g.composite: + # invariant: NativeFunctionsViewGroup's always have a view_copy operator + # if the view is not composite (implicit autograd) + assert g.view_copy is not None, dataclass_repr(g, indent=1) + view_defs.append(emit_view_functionalization_body(g, view_inplace=False)) + if g.view_inplace is not None: + view_defs.append(emit_view_functionalization_body(g, view_inplace=True)) + return view_defs + elif isinstance(g, NativeFunction): + # Invariant: all mutable operators that we need to handle in functionalization + # should have been properly grouped up. + # TODO: The below ops all have "problematic" schemas that prevent them from + # getting functionalized. Instead of bending over backwards to get things to work, + # I think we should either: + # (1) fix their schemas (BC-breaking) + # (2) hand-write their functionalization kernels + if ( + str(g.func.name) not in MUTABLE_OPS_NOT_USING_FUNCTIONALIZATION + and str(g.func.name.name) not in MUTABLE_OPS_NOT_USING_FUNCTIONALIZATION + ): + assert g.has_composite_implicit_autograd_kernel or not modifies_arguments(g) + return [] + else: + # Case 2: emit inplace -> out-of-place kernels for the functionalization pass + mutation_defs = [] + mutation_defs.append(emit_inplace_functionalization_body(g.out, g)) + if g.inplace is not None: + mutation_defs.append(emit_inplace_functionalization_body(g.inplace, g)) + if g.mutable is not None: + mutation_defs.append(emit_inplace_functionalization_body(g.mutable, g)) + return mutation_defs + return [] diff --git a/gen_lazy_tensor.py b/gen_lazy_tensor.py new file mode 100644 index 0000000000000000000000000000000000000000..f3e68b3f79ea7c7d3c1ad88855bed99b9745a4da --- /dev/null +++ b/gen_lazy_tensor.py @@ -0,0 +1,585 @@ +from __future__ import annotations + +import argparse +import os +from collections import namedtuple +from pathlib import Path +from typing import Any, Callable, TYPE_CHECKING + +import yaml + +import torchgen.dest as dest +from torchgen.api.lazy import setValueT +from torchgen.api.types import BaseCppType +from torchgen.dest.lazy_ir import GenLazyIR, GenLazyNativeFuncDefinition, GenTSLazyIR +from torchgen.gen import get_grouped_native_functions, parse_native_yaml +from torchgen.gen_backend_stubs import ( + error_on_missing_kernels, + gen_dispatcher_registrations, + gen_dispatchkey_nativefunc_headers, + parse_backend_yaml, +) +from torchgen.model import NativeFunction, NativeFunctionsGroup, OperatorName +from torchgen.selective_build.selector import SelectiveBuilder +from torchgen.utils import FileManager, NamespaceHelper +from torchgen.yaml_utils import YamlLoader + + +if TYPE_CHECKING: + from collections.abc import Iterable, Iterator, Sequence + + +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # +# +# Lazy Tensor Codegen +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # +# Overview +# ~~~~~~~~ +# +# This codegen script builds on existing data models and helpers used +# by all ATen backends, and adds new functionality specific to lazy +# tensor backends. +# +# Inputs: +# - _native_functions.yaml: controls which operators are +# supported by the backend. +# +# Outputs: +# (for all backends) +# Ir.h defines Lazy IR classes to be constructed during tracing +# - opt-in: also generate 'lowering' methods for the TorchScript backend only +# NativeFunctions.cpp defines implementations of native functions which perform lazy tracing +# - opt-in: 'full_codegen' section of backend yaml; 'supported' section omits these implementations +# NativeFunctions.h declares implementations of native functions for both 'supported' and 'full_codegen' +# ops +# +# Register.cpp registers all op implementations with the dispatcher +# RegisterAutograd.cpp registers all autograd implementations with the dispatcher +# +# Validation Helpers: +# - Shape Inference: errs if any ops in backend yaml require shape inference not provided by meta kernels or +# implementations in torch/csrc/lazy/core/shape_inference.* +# - native function impls: errs if any 'supported' ops do not have an implementation defined in the backend +# (non-codegen) implementation file +# +# +# About the Data Model +# ~~~~~~~~~~~~~~~~~~~~ +# +# Modeled after ATen codegen, the first step is to parse yaml and build a data model for the operators +# we care about. In this case, the _native_functions yaml defines a subset of the core operators +# (defined in more detail in the main native_functions.yaml), which will be supported by your backend. +# Backends can list ops in two categories: +# - `supported` ops require hand-implementations but still get codegenned declarations and registrations +# - `full_codegen` ops get implementations (and IR classes) generated too +# +# Each native function is modeled as an object with a schema, and each schema has objects representing their +# arguments. Much of the codegen is manipulation of the arguments and their types. For example, lazy tensor +# backends need to transform 'at::Tensor' arguments into 'lazy::Value' objects, as well as replacing reference +# types (stringref) with actual string objects, and this is done by manipulating the data model objects. +# - see api/lazy.py for the lazy data model +# +# Once the data model is set up, the rest of this script processes a number of templates for output CPP file +# and fills in the template values using helpers in `dest/lazy_ir.py` and `dest/lazy_ts_lowering.py`. These +# helpers mostly iterate over functions and their arguments, outputting different c++ snippets. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # + + +# Parses the external backend's yaml, and adds a new BackendIndex for the backend's dispatch key. +# Returns a Tuple of (backend_key, autograd_key, cpp_namespace, updated BackendIndex mapping, full_codegen) +ParsedExternalYaml = namedtuple( + "ParsedExternalYaml", + ["backend_key", "autograd_key", "cpp_namespace", "backend_indices", "full_codegen"], +) + + +def parse_native_functions_keys( + backend_yaml_path: str, + grouped_native_functions: Sequence[NativeFunction | NativeFunctionsGroup], +) -> tuple[list[OperatorName], list[Any], list[OperatorName]]: + with open(backend_yaml_path) as f: + yaml_values = yaml.load(f, Loader=YamlLoader) + assert isinstance(yaml_values, dict) + + full_codegen = yaml_values.pop("full_codegen", []) + non_native = yaml_values.pop("non_native", []) + ir_gen = yaml_values.pop("ir_gen", []) + assert isinstance(full_codegen, list) + assert isinstance(non_native, list) + assert isinstance(ir_gen, list) + full_codegen_opnames = [OperatorName.parse(name) for name in full_codegen] + ir_gen_opnames = [OperatorName.parse(name) for name in ir_gen] + return full_codegen_opnames, non_native, ir_gen_opnames + + +def validate_shape_inference_header( + shape_inference_hdr: str, expected_shape_infr_decls: list[str] +) -> None: + try: + with open(shape_inference_hdr) as f: + shape_infr_decls = f.read() + shape_infr_decl_lines = set(shape_infr_decls.split("\n")) + except OSError as e: + raise AssertionError( + f"Unable to read from the specified shape_inference_hdr file: {shape_inference_hdr}" + ) from e + + # TODO(whc) add a check for shape inference functions that have meta kernels implement and should be retired. + + missing_decls = [ + decl for decl in expected_shape_infr_decls if decl not in shape_infr_decl_lines + ] + if missing_decls: + raise Exception( # noqa: TRY002 + f"""Missing shape inference function.\n +Please add declare this function in {shape_inference_hdr}:\n +and implement it in the corresponding shape_inference.cpp file.\n +{os.linesep.join(missing_decls)}""" + ) + + +# Some helper functions for the codegen. +def get_ltc_helper_fns() -> str: + return """\ +at::Tensor to_meta(const at::Tensor& tensor) { + // undefined tensors can't be converted to the meta device, since they don't have sizes/strides + if (!tensor.defined()) return tensor; + auto out = at::native::empty_strided_meta_symint(tensor.sym_sizes(), tensor.sym_strides(), \ +/*dtype=*/tensor.scalar_type(), /*layout=*/tensor.layout(), \ +/*device=*/c10::Device(c10::kMeta), /*pin_memory=*/std::nullopt); + // needs to handle wrapped numbers, so dtype promotion works properly. + if (tensor.unsafeGetTensorImpl()->is_wrapped_number()) { + out.unsafeGetTensorImpl()->set_wrapped_number(true); + } + return out; +} +std::optional to_meta(const std::optional& tensor) { + if (tensor.has_value()) { + return to_meta(*tensor); + } + return std::nullopt; +} + +std::vector to_meta(at::ITensorListRef t_list) { + std::vector outs; + outs.reserve(t_list.size()); + for (const auto& tensor : t_list) { + outs.push_back(to_meta(tensor)); + } + return outs; +} +""" + + +class default_args: + node_base: str = "Node" + node_base_hdr: str | None = None + shape_inference_hdr: str = "torch/csrc/lazy/core/shape_inference.h" + tensor_class: str = "torch::lazy::LazyTensor" + tensor_class_hdr: str = "torch/csrc/lazy/core/tensor.h" + lazy_ir_generator: type[GenLazyIR] = GenLazyIR + native_func_definition_generator: type[GenLazyNativeFuncDefinition] = ( + GenLazyNativeFuncDefinition + ) + backend_name: str = "TorchScript" + + +def main() -> None: + parser = argparse.ArgumentParser(description="Generate Lazy Tensor backend files") + parser.add_argument( + "-s", + "--source-yaml", + "--source_yaml", + help="path to source yaml file containing operator external definitions", + ) + parser.add_argument("-o", "--output-dir", "--output_dir", help="output directory") + parser.add_argument( + "--dry-run", "--dry_run", type=bool, default=False, help="output directory" + ) + parser.add_argument( + "--impl-path", + "--impl_path", + type=str, + default=None, + help="path to the source C++ file containing kernel definitions", + ) + parser.add_argument( + "--gen-ts-lowerings", + "--gen_ts_lowerings", + action="store_true", + help="Generate TorchScript lowerings in addition to Lazy IR and NativeFunctions", + ) + parser.add_argument( + "--node-base", + "--node_base", + type=str, + default=default_args.node_base, + help="Name of backend specific custom Lazy IR Node base class", + ) + parser.add_argument( + "--node-base-hdr", + "--node_base_hdr", + type=str, + default=default_args.node_base_hdr, + help="Path to header file defining custom Lazy IR Node base class", + ) + parser.add_argument( + "--shape-inference-hdr", + "--shape_inference_hdr", + type=str, + default=default_args.shape_inference_hdr, + help="Path to header file defining custom Lazy shape inference functions", + ) + parser.add_argument( + "--tensor-class", + "--tensor_class", + type=str, + default=default_args.tensor_class, + help="Name of backend specific custom Lazy Tensor class", + ) + parser.add_argument( + "--tensor-class-hdr", + "--tensor_class_hdr", + type=str, + default=default_args.tensor_class_hdr, + help="Path to header file defining custom Lazy Tensor class", + ) + parser.add_argument( + "--backend-name", + "--backend_name", + type=str, + default=default_args.backend_name, + help="Name of the backend to generate", + ) + options = parser.parse_args() + + # Assumes that this file lives at PYTORCH_ROOT/torchgen/gen_backend_stubs.py + torch_root = Path(__file__).parent.parent.parent.absolute() + aten_path = str(torch_root / "aten" / "src" / "ATen") + lazy_ir_generator: type[GenLazyIR] = default_args.lazy_ir_generator + if options.gen_ts_lowerings: + lazy_ir_generator = GenTSLazyIR + native_func_definition_generator: type[GenLazyNativeFuncDefinition] = ( + default_args.native_func_definition_generator + ) + + run_gen_lazy_tensor( + aten_path, + options.source_yaml, + options.output_dir, + options.dry_run, + options.impl_path, + options.node_base, + options.node_base_hdr, + options.tensor_class, + options.tensor_class_hdr, + options.shape_inference_hdr, + lazy_ir_generator, + native_func_definition_generator, + options.backend_name, + ) + + +def run_gen_lazy_tensor( + aten_path: str, + source_yaml: str, + output_dir: str, + dry_run: bool, + impl_path: str | None, + node_base: str = default_args.node_base, + node_base_hdr: str | None = default_args.node_base_hdr, + tensor_class: str = default_args.tensor_class, + tensor_class_hdr: str = default_args.tensor_class_hdr, + shape_inference_hdr: str = default_args.shape_inference_hdr, + lazy_ir_generator: type[GenLazyIR] = default_args.lazy_ir_generator, + native_func_definition_generator: type[ + GenLazyNativeFuncDefinition + ] = default_args.native_func_definition_generator, + # build_in_tree is true for TS backend and affects include paths + build_in_tree: bool = False, + # per_operator_headers changes whether ATen/Functions.h or individual operator headers are used + # it must match how ATen was built + per_operator_headers: bool = False, + backend_name: str = default_args.backend_name, + gen_forced_fallback_code: bool = False, + use_lazy_shape: bool = True, + # the following arguments are temporary customization points for xla backend migration. + # do not rely on them otherwise, they should be removed once migration is complete + backend_namespace: str = "torch::lazy", + get_tensorlist: str = "GetTensorList", + get_tensor_or_wrap_number: str = "GetLtcTensorOrCreateForWrappedNumber", + try_get_tensor: str = "TryGetLtcTensor", + metrics_counter: str = 'TORCH_LAZY_FN_COUNTER("lazy::")', + create_tensor: str = "LazyTensor::Create", + create_from_first_tensor: bool = False, + create_aten_from_ltc_tensor: str = "torch::lazy::CreateAtenFromLtcTensor", + tuple_aten_from_ltc_tensors: str = "torch::lazy::TupleAtenFromLtcTensors", + lazy_value_class: str = "torch::lazy::Value", + lazy_tensor_ptr: str = "LazyTensorPtr", + get_device_fn: str = "torch::lazy::GetBackendDevice", +) -> None: + lv_tokens = lazy_value_class.split("::") + lv_class = lv_tokens[-1] + lv_ns = "::".join(lv_tokens[:-1]) + setValueT(BaseCppType(lv_ns, lv_class)) + template_dir = os.path.join(aten_path, "templates") + + def make_file_manager(install_dir: str) -> FileManager: + return FileManager( + install_dir=install_dir, template_dir=template_dir, dry_run=dry_run + ) + + fm = make_file_manager(output_dir) + + native_yaml_path = os.path.join(aten_path, "native/native_functions.yaml") + tags_yaml_path = os.path.join(aten_path, "native/tags.yaml") + parsed_yaml = parse_native_yaml(native_yaml_path, tags_yaml_path) + native_functions, backend_indices = ( + parsed_yaml.native_functions, + parsed_yaml.backend_indices, + ) + grouped_native_functions = get_grouped_native_functions(native_functions) + + def sort_native_function(f: NativeFunctionsGroup | NativeFunction) -> str: + """ + We sort the native function because of the note in concat_map_codegen. + TODO(alanwaketan): Remove this sorting hack once all ops are grouped properly. + """ + func = f.functional.func if isinstance(f, NativeFunctionsGroup) else f.func + return str(func.name.name) + + grouped_native_functions = sorted( + grouped_native_functions, key=sort_native_function + ) + + parsed_backend_yaml = parse_backend_yaml( + source_yaml, grouped_native_functions, backend_indices + ) + backend_key = parsed_backend_yaml.backend_key + autograd_key = parsed_backend_yaml.autograd_key + cpp_namespace = parsed_backend_yaml.cpp_namespace + backend_indices = parsed_backend_yaml.backend_indices + # the following 3 keys are all processed differently + # for full_codegen, we generate IR, kernels, etc + # for ir_gen, we generate only IR + # non_native is used to register kernels not declared in + # native_functions.yaml + full_codegen, non_native, ir_gen = parse_native_functions_keys( + source_yaml, grouped_native_functions + ) + + def concat_map_codegen( + func: Callable[[NativeFunction], Sequence[str]], + xs: Iterable[NativeFunctionsGroup | NativeFunction], + ops_list: list[OperatorName] = full_codegen, + ) -> Iterator[str]: + """ + We code-gen for the functional variant, which is all we need for IR classes/lowerings/shape inferences, but we + only code-gen additional entries for the inplace variant for the native functions. + """ + + for x in xs: + fs = list(x.functions()) if isinstance(x, NativeFunctionsGroup) else [x] + for f in fs: + if f.func.name in ops_list: + yield from func(f) + + selector = SelectiveBuilder.get_nop_selector() + + assert backend_key is not None + class_name = backend_indices[backend_key].native_function_class_name() + + if impl_path is not None: + error_on_missing_kernels( + native_functions, + backend_indices, + backend_key, + autograd_key, + class_name, + impl_path, + full_codegen, + ) + + """ Validate Shape Inference Definitions + + Generated lazy native functions all perform shape inference, by first using a meta:: kernel + if available for that op, and otherwise using a 'compute_shape_{op}' function instead. The generator + knows the call signature for compute_shape_{op} because it matches the nativefunction (and meta::) signature, + so it just has to check whether the op is structured and generate a call for one or the other. It's up to the dev + to supply the missing compute_shape_{op} function, but the codegen at least warns you about this and provides + the expected signature which can be copy-pasted into shape_inference.h. + + compute_shape_{op} functions are handwritten and should be replaced over time as ops get ported + to structured kernels. + + See torch/csrc/lazy/core/shape_inference.cpp #READ THIS! for more information. + """ + if shape_inference_hdr is not None: + expected_shape_infr_decls = list( + concat_map_codegen( + dest.GenLazyShapeInferenceDefinition( + backend_indices[backend_key], tensor_class + ), + grouped_native_functions, + ) + ) + + validate_shape_inference_header(shape_inference_hdr, expected_shape_infr_decls) + assert class_name is not None + + # Generate nativefunction declarations + # Note, eager registrations is set to False for the lazy TS backend as another LTC backend + # may want to register their own lazy kernels instead of registering the TS ones. + # The registration will lazily happen when init_ts_backend is called. + gen_dispatchkey_nativefunc_headers( + fm, + class_name, + cpp_namespace, + backend_indices, + grouped_native_functions, + backend_key, + autograd_key, + backend_name, + ) + + # Generate Dispatcher registrations which hook up the nativefunctions + for dispatch_key in ( + [backend_key] if autograd_key is None else [backend_key, autograd_key] + ): + gen_dispatcher_registrations( + fm, + output_dir, + class_name, + backend_indices, + grouped_native_functions, + backend_key, + dispatch_key, + selector, + build_in_tree=build_in_tree, + per_operator_headers=per_operator_headers, + backend_name=backend_name, + eager_registration=False, + ) + + # Generate native function impls that build IR nodes + ns_helper = NamespaceHelper(cpp_namespace) + fm.write_with_template( + f"{backend_key}NativeFunctions.cpp", + "DispatchKeyNativeFunctions.cpp", + lambda: { + "includes": [ + f"#include <{path}>" + for path in [ + tensor_class_hdr, + shape_inference_hdr, + "ATen/Functions.h", + "ATen/native/TensorConversions.h", + "ATen/NativeFunctions.h", + "ATen/CompositeExplicitAutogradNonFunctionalFunctions.h", + "ATen/MetaFunctions.h", + "ATen/Operators.h", + "ATen/native/CPUFallback.h", + "torch/csrc/lazy/core/ir_builder.h", + "torch/csrc/lazy/core/lazy_graph_executor.h", + "torch/csrc/lazy/core/metrics.h", + "torch/csrc/lazy/core/shape.h", + f"{output_dir}/{backend_key}NativeFunctions.h", + f"{output_dir}/LazyIr.h", + ] + + ( + ["torch/csrc/lazy/ts_backend/ts_eager_fallback.h"] + if gen_forced_fallback_code + else [] + ) + ], + "helper_fns": get_ltc_helper_fns(), + "native_functions_include": "", + "namespace_prologue": ns_helper.prologue, + "namespace_epilogue": ns_helper.epilogue, + "native_function_definitions": list( + concat_map_codegen( + native_func_definition_generator( + f"{backend_key}NativeFunctions", + backend_indices[backend_key], + tensor_class, + gen_forced_fallback_code, + backend_namespace, + get_tensorlist, + get_tensor_or_wrap_number, + try_get_tensor, + metrics_counter, + create_tensor, + create_from_first_tensor, + create_aten_from_ltc_tensor, + tuple_aten_from_ltc_tensors, + lazy_tensor_ptr, + get_device_fn, + ), + grouped_native_functions, + ) + ), + }, + ) + # Generate IR node classes + lazy_ir_obj = lazy_ir_generator( + backend_indices[backend_key], backend_name, node_base, use_lazy_shape + ) + + fm.write_with_template( + "LazyIr.h", + "LazyIr.h", + lambda: { + "lazy_ir_sysinc": [ + f"#include <{path}>" + for path in [ + "ATen/core/Formatting.h", + "c10/core/ScalarType.h", + "torch/csrc/lazy/core/hash.h", + "torch/csrc/lazy/core/ir.h", + "torch/csrc/lazy/core/shape.h", + "optional", + "vector", + ] + ], + "lazy_ir_inc": [f'#include "{node_base_hdr}"'] + if node_base_hdr is not None + else [], + "ir_declarations": list( + concat_map_codegen( + lazy_ir_obj, grouped_native_functions, full_codegen + ir_gen + ) + ), + "namespace_prologue": ns_helper.prologue, + "namespace_epilogue": ns_helper.epilogue, + }, + ) + + # Generate Non Native IR Node classes + fm.write_with_template( + "LazyNonNativeIr.h", + "LazyNonNativeIr.h", + lambda: { + "lazy_non_native_ir_inc": [ + f"#include <{path}>" + for path in [ + "torch/csrc/lazy/core/ir.h", + "torch/csrc/lazy/core/ir_builder.h", + "torch/csrc/lazy/core/internal_ops/ltc_ops.h", + "torch/csrc/lazy/core/shape_inference.h", + ] + + ([node_base_hdr] if node_base_hdr else []) + if path + ], + "non_native_ir_nodes": dest.generate_non_native_lazy_ir_nodes( + non_native, lazy_ir_obj + ), + "namespace_prologue": ns_helper.prologue, + "namespace_epilogue": ns_helper.epilogue, + }, + ) + + +if __name__ == "__main__": + main() diff --git a/gen_schema_utils.py b/gen_schema_utils.py new file mode 100644 index 0000000000000000000000000000000000000000..026a9f34f01308f5ef9d680bb983aba6247fa617 --- /dev/null +++ b/gen_schema_utils.py @@ -0,0 +1,97 @@ +from typing import Any, Optional, Union + +from torchgen.model import ( + Annotation, + Argument, + Arguments, + BaseOperatorName, + BaseTy, + BaseType, + CustomClassType, + FunctionSchema, + ListType, + OperatorName, + Return, +) + + +# Note: These aren't actually used in torchgen, they're some utilities for generating a schema +# from real arguments. For example, this is used to generate HigherOrderOperators' schema since +# their schemas can vary for different instances of the same HOP. + + +class TypeGen: + convert_to_base_ty = { + int: BaseTy.int, + float: BaseTy.float, + str: BaseTy.str, + bool: BaseTy.bool, + } + + @staticmethod + def from_example(obj: Any) -> Union[BaseType, ListType, CustomClassType]: + import torch + + if isinstance(obj, torch.fx.GraphModule): + return BaseType(BaseTy.GraphModule) + elif isinstance(obj, torch.Tensor): + return BaseType(BaseTy.Tensor) + elif isinstance(obj, torch.SymInt): + return BaseType(BaseTy.SymInt) + elif isinstance(obj, torch.SymBool): + return BaseType(BaseTy.SymBool) + elif isinstance(obj, torch.ScriptObject): + return CustomClassType(obj._type().name()) # type: ignore[attr-defined] + elif isinstance(obj, (list, tuple)): + assert len(obj) > 0 + all_base_tys = [TypeGen.from_example(x) for x in obj] + if len(set(all_base_tys)) > 1: + raise RuntimeError( + f"Cannot generate schema for a seqeunce of args of heterogeneous types: {all_base_tys}. " + "Consider unpacking the argument and give proper names to them if possible " + "instead of using *args." + ) + return ListType(all_base_tys[0], len(obj)) + tp = type(obj) + if tp not in TypeGen.convert_to_base_ty: + raise RuntimeError(f"unsupported type {tp}") + return BaseType(TypeGen.convert_to_base_ty[tp]) + + +class ReturnGen: + @staticmethod + def from_example( + name: Optional[str], obj: Any, annotation: Optional[Annotation] + ) -> Return: + return Return(name, TypeGen.from_example(obj), annotation) + + +class ArgumentGen: + @staticmethod + def from_example( + name: str, obj: Any, default: Optional[str], annotation: Optional[Annotation] + ) -> Argument: + return Argument( + name, TypeGen.from_example(obj), default=default, annotation=annotation + ) + + +class FunctionSchemaGen: + @staticmethod + def from_example( + op_name: str, + example_inputs: tuple[tuple[str, Any], ...], + example_outputs: tuple[Any, ...], + ) -> FunctionSchema: + args = [] + for name, inp in example_inputs: + args.append(ArgumentGen.from_example(name, inp, None, None)) + # ignore the annotations and other attributes for now, we could add more when needed. + arguments = Arguments( + tuple(), None, tuple(args), tuple(), None, tuple(), tuple() + ) + returns = tuple( + ReturnGen.from_example(None, out, None) for out in example_outputs + ) + op_name = OperatorName(BaseOperatorName(op_name, False, False, False), "") + return FunctionSchema(op_name, arguments, returns) diff --git a/gen_vmap_plumbing.py b/gen_vmap_plumbing.py new file mode 100644 index 0000000000000000000000000000000000000000..057795165797ebf581cdc2435ebdaf0b974f332a --- /dev/null +++ b/gen_vmap_plumbing.py @@ -0,0 +1,275 @@ +from __future__ import annotations + +import textwrap +from dataclasses import dataclass +from typing import TYPE_CHECKING + +from torchgen.api.translate import translate +from torchgen.api.types import DispatcherSignature +from torchgen.context import method_with_native_function +from torchgen.model import ( + Argument, + BaseTy, + BaseType, + FunctionSchema, + ListType, + NativeFunction, + OptionalType, + Return, + SchemaKind, + Type, +) +from torchgen.utils import mapMaybe + + +if TYPE_CHECKING: + from collections.abc import Sequence + + +def is_tensor(typ: Type) -> bool: + return isinstance(typ, BaseType) and typ.name == BaseTy.Tensor + + +def is_optional_tensor(typ: Type) -> bool: + return isinstance(typ, OptionalType) and is_tensor(typ.elem) + + +def is_tensor_list(typ: Type) -> bool: + return isinstance(typ, ListType) and is_tensor(typ.elem) + + +def unwrap_tensor(name: str, cur_level_var: str) -> list[str]: + result = f"""\ + auto [{name}_value, {name}_bdim] = unwrapTensorAtLevel({name}, {cur_level_var});""" + return textwrap.dedent(result).split("\n") + + +def unwrap_optional_tensor(name: str, cur_level_var: str) -> list[str]: + result = f"""\ + std::optional {name}_value; + std::optional {name}_bdim; + if ({name}) {{ + std::tie({name}_value, {name}_bdim) = unwrapTensorAtLevel({name}.value(), {cur_level_var}); + }}""" + return textwrap.dedent(result).split("\n") + + +def gen_unwraps( + flat_arguments: Sequence[Argument], cur_level_var: str +) -> tuple[str, list[str]]: + arg_names = [a.name for a in flat_arguments] + arg_types = [a.type for a in flat_arguments] + + tensors = [name for typ, name in zip(arg_types, arg_names) if is_tensor(typ)] + optional_tensors = [ + name for typ, name in zip(arg_types, arg_names) if is_optional_tensor(typ) + ] + + unwraps = [] + for tensor in tensors: + unwraps += unwrap_tensor(tensor, cur_level_var) + + for opt_tensor in optional_tensors: + unwraps += unwrap_optional_tensor(opt_tensor, cur_level_var) + unwrap_code = "\n".join(unwraps) + + unwrapped_arg_list = [] + for arg in arg_names: + if arg in tensors or arg in optional_tensors: + unwrapped_arg_list += [f"{arg}_value", f"{arg}_bdim"] + else: + unwrapped_arg_list.append(arg) + return unwrap_code, unwrapped_arg_list + + +def gen_case_where_all_bdims_are_none( + outer_sig: DispatcherSignature, schema: FunctionSchema, cur_level_var: str +) -> str: + conditions = [] + flat_args = schema.arguments.flat_all + for arg in flat_args: + if not arg.type.is_tensor_like(): + continue + conditions.append(f"!isBatchedAtLevel({arg.name}, {cur_level_var})") + + sig = DispatcherSignature.from_schema(schema) + translated_args = ", ".join( + e.expr for e in translate(outer_sig.arguments(), sig.arguments()) + ) + return f"""\ +if ({' && '.join(conditions)}) {{ + return at::_ops::{sig.func.name.unambiguous_name()}::call({translated_args}); +}}""" + + +def gen_returns( + returns: tuple[Return, ...], cur_level_var: str, results_var: str +) -> str: + idx = 0 + wrapped_returns = [] + for ret in returns: + if is_tensor(ret.type): + wrapped_returns.append( + f"makeBatched(std::get<{idx}>({results_var}), std::get<{idx + 1}>({results_var}), {cur_level_var})" + ) + idx += 2 + elif is_tensor_list(ret.type): + wrapped_returns.append( + f"makeBatchedVector(std::get<{idx}>({results_var}), std::get<{idx + 1}>({results_var}), {cur_level_var})" + ) + idx += 2 + else: + wrapped_returns.append(f"std::get<{idx}>({results_var})") + idx += 1 + if len(wrapped_returns) == 1: + result = f"return {wrapped_returns[0]};" + else: + result = f'return std::make_tuple({", ".join(wrapped_returns)});' + return result + + +def accepts_at_least_one_tensor_input(schema: FunctionSchema) -> bool: + return any(a.type.is_tensor_like() for a in schema.arguments.flat_all) + + +def is_mutated_arg(argument: Argument) -> bool: + return argument.annotation is not None and argument.annotation.is_write + + +def gen_vmap_inplace_plumbing(native_function: NativeFunction) -> str | None: + # Assumptions: + # - only one argument is being modified in-place + # - the argument that is being modified in-place is the first argument + # - all returns are either Tensor, tuple of Tensor, or TensorList + schema = native_function.func + sig = DispatcherSignature.from_schema(schema) + returns = schema.returns + + # Check assumptions. If these are invalid we return None + # and punt the work to handle them to the future. + assert schema.kind() == SchemaKind.inplace + if not is_mutated_arg(schema.arguments.flat_all[0]): + return None + if not len([arg for arg in schema.arguments.flat_all if is_mutated_arg(arg)]) == 1: + return None + + # Only support cases where all returns are Tensors or vector + if len(returns) == 0: + return None + if not all(is_tensor(ret.type) or is_tensor_list(ret.type) for ret in returns): + return None + if not accepts_at_least_one_tensor_input(schema): + return None + + cur_level_var = "cur_level" + + unwraps, unwrapped_arg_list = gen_unwraps(schema.arguments.flat_all, cur_level_var) + bdims_all_none_case = gen_case_where_all_bdims_are_none(sig, schema, cur_level_var) + + return f"""\ +template +{sig.decl(name=schema.name.unambiguous_name() + '_generated_plumbing')} {{ + c10::impl::ExcludeDispatchKeyGuard guard(DispatchKey::FuncTorchBatched); + auto maybe_layer = maybeCurrentDynamicLayer(); + vmap_check_escaped(maybe_layer, "gen_vmap_inplace_plumbing"); + int64_t {cur_level_var} = maybe_layer->layerId(); +{textwrap.indent(bdims_all_none_case, " ")} +{textwrap.indent(unwraps, " ")} + batch_rule({', '.join(unwrapped_arg_list)}); + return {schema.arguments.flat_all[0].name}; +}}""" + + +def gen_vmap_plumbing_no_returns(native_function: NativeFunction) -> str: + schema = native_function.func + sig = DispatcherSignature.from_schema(schema) + cur_level_var = "cur_level" + + unwraps, unwrapped_arg_list = gen_unwraps(schema.arguments.flat_all, cur_level_var) + bdims_all_none_case = gen_case_where_all_bdims_are_none(sig, schema, cur_level_var) + + return f"""\ +template +{sig.decl(name=schema.name.unambiguous_name() + '_generated_plumbing')} {{ + c10::impl::ExcludeDispatchKeyGuard guard(DispatchKey::FuncTorchBatched); + auto maybe_layer = maybeCurrentDynamicLayer(); + vmap_check_escaped(maybe_layer, "gen_vmap_plumbing_no_returns"); + int64_t {cur_level_var} = maybe_layer->layerId(); +{textwrap.indent(bdims_all_none_case, " ")} +{textwrap.indent(unwraps, " ")} + batch_rule({', '.join(unwrapped_arg_list)}); +}}""" + + +def gen_vmap_plumbing(native_function: NativeFunction) -> str | None: + schema = native_function.func + sig = DispatcherSignature.from_schema(schema) + returns = schema.returns + + # Only support cases where all returns are Tensors or vector + if not accepts_at_least_one_tensor_input(schema): + return None + if len(returns) == 0: + return gen_vmap_plumbing_no_returns(native_function) + return_symint_overrides = [ + "_scaled_dot_product_flash_attention", + "_scaled_dot_product_cudnn_attention", + ] + if ( + not all(ret.type.is_tensor_like() for ret in returns) + and schema.name.unambiguous_name() not in return_symint_overrides + ): + return None + # in-place views need special handling + if "inplace_view" in native_function.tags: + return None + + if schema.kind() == SchemaKind.inplace: + return gen_vmap_inplace_plumbing(native_function) + + # Don't support these (mutable, out, scratch) + if schema.kind() != SchemaKind.functional: + return None + + results_var = "results" + cur_level_var = "cur_level" + + unwraps, unwrapped_arg_list = gen_unwraps(schema.arguments.flat_all, cur_level_var) + bdims_all_none_case = gen_case_where_all_bdims_are_none(sig, schema, cur_level_var) + + wrapped_returns = gen_returns(returns, cur_level_var, results_var) + return f"""\ +template +{sig.decl(name=schema.name.unambiguous_name() + '_generated_plumbing')} {{ + c10::impl::ExcludeDispatchKeyGuard guard(DispatchKey::FuncTorchBatched); + auto maybe_layer = maybeCurrentDynamicLayer(); + vmap_check_escaped(maybe_layer, "gen_vmap_plumbing"); + int64_t {cur_level_var} = maybe_layer->layerId(); +{textwrap.indent(bdims_all_none_case, " ")} +{textwrap.indent(unwraps, " ")} + auto {results_var} = batch_rule({', '.join(unwrapped_arg_list)}); + {wrapped_returns} +}}""" + + +@dataclass(frozen=True) +class ComputeBatchRulePlumbing: + @method_with_native_function + def __call__(self, f: NativeFunction) -> str | None: + result = gen_vmap_plumbing(f) + return result + + +def gen_all_vmap_plumbing(native_functions: Sequence[NativeFunction]) -> str: + body = "\n".join(list(mapMaybe(ComputeBatchRulePlumbing(), native_functions))) + return f""" +#pragma once +#include +#include + +namespace at {{ namespace functorch {{ + +{body} + +}}}} // namespace at::functorch +""" diff --git a/get_gprof b/get_gprof new file mode 100644 index 0000000000000000000000000000000000000000..3f4a7c615502b8baaf3c08f276738f2a76514d23 --- /dev/null +++ b/get_gprof @@ -0,0 +1,75 @@ +#!C:\Users\migue\Downloads\Codigo\AI\HuggingModelAI\IAservicies\myenv\Scripts\python.exe +# +# Author: Mike McKerns (mmckerns @caltech and @uqfoundation) +# Copyright (c) 2008-2016 California Institute of Technology. +# Copyright (c) 2016-2024 The Uncertainty Quantification Foundation. +# License: 3-clause BSD. The full license text is available at: +# - https://github.com/uqfoundation/dill/blob/master/LICENSE +''' +build profile graph for the given instance + +running: + $ get_gprof + +executes: + gprof2dot -f pstats .prof | dot -Tpng -o .call.png + +where: + are arguments for gprof2dot, such as "-n 5 -e 5" + is code to create the instance to profile + is the class of the instance (i.e. type(instance)) + +For example: + $ get_gprof -n 5 -e 1 "import numpy; numpy.array([1,2])" + +will create 'ndarray.call.png' with the profile graph for numpy.array([1,2]), +where '-n 5' eliminates nodes below 5% threshold, similarly '-e 1' eliminates +edges below 1% threshold +''' + +if __name__ == "__main__": + import sys + if len(sys.argv) < 2: + print ("Please provide an object instance (e.g. 'import math; math.pi')") + sys.exit() + # grab args for gprof2dot + args = sys.argv[1:-1] + args = ' '.join(args) + # last arg builds the object + obj = sys.argv[-1] + obj = obj.split(';') + # multi-line prep for generating an instance + for line in obj[:-1]: + exec(line) + # one-line generation of an instance + try: + obj = eval(obj[-1]) + except Exception: + print ("Error processing object instance") + sys.exit() + + # get object 'name' + objtype = type(obj) + name = getattr(objtype, '__name__', getattr(objtype, '__class__', objtype)) + + # profile dumping an object + import dill + import os + import cProfile + #name = os.path.splitext(os.path.basename(__file__))[0] + cProfile.run("dill.dumps(obj)", filename="%s.prof" % name) + msg = "gprof2dot -f pstats %s %s.prof | dot -Tpng -o %s.call.png" % (args, name, name) + try: + res = os.system(msg) + except Exception: + print ("Please verify install of 'gprof2dot' to view profile graphs") + if res: + print ("Please verify install of 'gprof2dot' to view profile graphs") + + # get stats + f_prof = "%s.prof" % name + import pstats + stats = pstats.Stats(f_prof, stream=sys.stdout) + stats.strip_dirs().sort_stats('cumtime') + stats.print_stats(20) #XXX: save to file instead of print top 20? + os.remove(f_prof) diff --git a/get_objgraph b/get_objgraph new file mode 100644 index 0000000000000000000000000000000000000000..e650feb84d76a568d46d0edde175a59ee70da76a --- /dev/null +++ b/get_objgraph @@ -0,0 +1,54 @@ +#!C:\Users\migue\Downloads\Codigo\AI\HuggingModelAI\IAservicies\myenv\Scripts\python.exe +# +# Author: Mike McKerns (mmckerns @caltech and @uqfoundation) +# Copyright (c) 2008-2016 California Institute of Technology. +# Copyright (c) 2016-2024 The Uncertainty Quantification Foundation. +# License: 3-clause BSD. The full license text is available at: +# - https://github.com/uqfoundation/dill/blob/master/LICENSE +""" +display the reference paths for objects in ``dill.types`` or a .pkl file + +Notes: + the generated image is useful in showing the pointer references in + objects that are or can be pickled. Any object in ``dill.objects`` + listed in ``dill.load_types(picklable=True, unpicklable=True)`` works. + +Examples:: + + $ get_objgraph ArrayType + Image generated as ArrayType.png +""" + +import dill as pickle +#pickle.debug.trace(True) +#import pickle + +# get all objects for testing +from dill import load_types +load_types(pickleable=True,unpickleable=True) +from dill import objects + +if __name__ == "__main__": + import sys + if len(sys.argv) != 2: + print ("Please provide exactly one file or type name (e.g. 'IntType')") + msg = "\n" + for objtype in list(objects.keys())[:40]: + msg += objtype + ', ' + print (msg + "...") + else: + objtype = str(sys.argv[-1]) + try: + obj = objects[objtype] + except KeyError: + obj = pickle.load(open(objtype,'rb')) + import os + objtype = os.path.splitext(objtype)[0] + try: + import objgraph + objgraph.show_refs(obj, filename=objtype+'.png') + except ImportError: + print ("Please install 'objgraph' to view object graphs") + + +# EOF diff --git a/huggingface-cli.exe b/huggingface-cli.exe new file mode 100644 index 0000000000000000000000000000000000000000..376d18ad8e98201bd890f7f64ea882c9502e9832 --- /dev/null +++ b/huggingface-cli.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c574193300d5f23639772059c556e84d222138dd251cf9ddee95eb5a4663f37c +size 108461 diff --git a/import_pb_to_tensorboard.exe b/import_pb_to_tensorboard.exe new file mode 100644 index 0000000000000000000000000000000000000000..0e720278515bbfc1279bb260cf772ef0bd538124 --- /dev/null +++ b/import_pb_to_tensorboard.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c8bab1d9edcde78e2e8158df29baa25eff6ed268a881514bb24f6b6a52849fd +size 108471 diff --git a/isympy.1 b/isympy.1 new file mode 100644 index 0000000000000000000000000000000000000000..0ff966158a28c5ad1a6cd954e454842b25fdd999 --- /dev/null +++ b/isympy.1 @@ -0,0 +1,188 @@ +'\" -*- coding: us-ascii -*- +.if \n(.g .ds T< \\FC +.if \n(.g .ds T> \\F[\n[.fam]] +.de URL +\\$2 \(la\\$1\(ra\\$3 +.. +.if \n(.g .mso www.tmac +.TH isympy 1 2007-10-8 "" "" +.SH NAME +isympy \- interactive shell for SymPy +.SH SYNOPSIS +'nh +.fi +.ad l +\fBisympy\fR \kx +.if (\nx>(\n(.l/2)) .nr x (\n(.l/5) +'in \n(.iu+\nxu +[\fB-c\fR | \fB--console\fR] [\fB-p\fR ENCODING | \fB--pretty\fR ENCODING] [\fB-t\fR TYPE | \fB--types\fR TYPE] [\fB-o\fR ORDER | \fB--order\fR ORDER] [\fB-q\fR | \fB--quiet\fR] [\fB-d\fR | \fB--doctest\fR] [\fB-C\fR | \fB--no-cache\fR] [\fB-a\fR | \fB--auto\fR] [\fB-D\fR | \fB--debug\fR] [ +-- | PYTHONOPTIONS] +'in \n(.iu-\nxu +.ad b +'hy +'nh +.fi +.ad l +\fBisympy\fR \kx +.if (\nx>(\n(.l/2)) .nr x (\n(.l/5) +'in \n(.iu+\nxu +[ +{\fB-h\fR | \fB--help\fR} +| +{\fB-v\fR | \fB--version\fR} +] +'in \n(.iu-\nxu +.ad b +'hy +.SH DESCRIPTION +isympy is a Python shell for SymPy. It is just a normal python shell +(ipython shell if you have the ipython package installed) that executes +the following commands so that you don't have to: +.PP +.nf +\*(T< +>>> from __future__ import division +>>> from sympy import * +>>> x, y, z = symbols("x,y,z") +>>> k, m, n = symbols("k,m,n", integer=True) + \*(T> +.fi +.PP +So starting isympy is equivalent to starting python (or ipython) and +executing the above commands by hand. It is intended for easy and quick +experimentation with SymPy. For more complicated programs, it is recommended +to write a script and import things explicitly (using the "from sympy +import sin, log, Symbol, ..." idiom). +.SH OPTIONS +.TP +\*(T<\fB\-c \fR\*(T>\fISHELL\fR, \*(T<\fB\-\-console=\fR\*(T>\fISHELL\fR +Use the specified shell (python or ipython) as +console backend instead of the default one (ipython +if present or python otherwise). + +Example: isympy -c python + +\fISHELL\fR could be either +\&'ipython' or 'python' +.TP +\*(T<\fB\-p \fR\*(T>\fIENCODING\fR, \*(T<\fB\-\-pretty=\fR\*(T>\fIENCODING\fR +Setup pretty printing in SymPy. By default, the most pretty, unicode +printing is enabled (if the terminal supports it). You can use less +pretty ASCII printing instead or no pretty printing at all. + +Example: isympy -p no + +\fIENCODING\fR must be one of 'unicode', +\&'ascii' or 'no'. +.TP +\*(T<\fB\-t \fR\*(T>\fITYPE\fR, \*(T<\fB\-\-types=\fR\*(T>\fITYPE\fR +Setup the ground types for the polys. By default, gmpy ground types +are used if gmpy2 or gmpy is installed, otherwise it falls back to python +ground types, which are a little bit slower. You can manually +choose python ground types even if gmpy is installed (e.g., for testing purposes). + +Note that sympy ground types are not supported, and should be used +only for experimental purposes. + +Note that the gmpy1 ground type is primarily intended for testing; it the +use of gmpy even if gmpy2 is available. + +This is the same as setting the environment variable +SYMPY_GROUND_TYPES to the given ground type (e.g., +SYMPY_GROUND_TYPES='gmpy') + +The ground types can be determined interactively from the variable +sympy.polys.domains.GROUND_TYPES inside the isympy shell itself. + +Example: isympy -t python + +\fITYPE\fR must be one of 'gmpy', +\&'gmpy1' or 'python'. +.TP +\*(T<\fB\-o \fR\*(T>\fIORDER\fR, \*(T<\fB\-\-order=\fR\*(T>\fIORDER\fR +Setup the ordering of terms for printing. The default is lex, which +orders terms lexicographically (e.g., x**2 + x + 1). You can choose +other orderings, such as rev-lex, which will use reverse +lexicographic ordering (e.g., 1 + x + x**2). + +Note that for very large expressions, ORDER='none' may speed up +printing considerably, with the tradeoff that the order of the terms +in the printed expression will have no canonical order + +Example: isympy -o rev-lax + +\fIORDER\fR must be one of 'lex', 'rev-lex', 'grlex', +\&'rev-grlex', 'grevlex', 'rev-grevlex', 'old', or 'none'. +.TP +\*(T<\fB\-q\fR\*(T>, \*(T<\fB\-\-quiet\fR\*(T> +Print only Python's and SymPy's versions to stdout at startup, and nothing else. +.TP +\*(T<\fB\-d\fR\*(T>, \*(T<\fB\-\-doctest\fR\*(T> +Use the same format that should be used for doctests. This is +equivalent to '\fIisympy -c python -p no\fR'. +.TP +\*(T<\fB\-C\fR\*(T>, \*(T<\fB\-\-no\-cache\fR\*(T> +Disable the caching mechanism. Disabling the cache may slow certain +operations down considerably. This is useful for testing the cache, +or for benchmarking, as the cache can result in deceptive benchmark timings. + +This is the same as setting the environment variable SYMPY_USE_CACHE +to 'no'. +.TP +\*(T<\fB\-a\fR\*(T>, \*(T<\fB\-\-auto\fR\*(T> +Automatically create missing symbols. Normally, typing a name of a +Symbol that has not been instantiated first would raise NameError, +but with this option enabled, any undefined name will be +automatically created as a Symbol. This only works in IPython 0.11. + +Note that this is intended only for interactive, calculator style +usage. In a script that uses SymPy, Symbols should be instantiated +at the top, so that it's clear what they are. + +This will not override any names that are already defined, which +includes the single character letters represented by the mnemonic +QCOSINE (see the "Gotchas and Pitfalls" document in the +documentation). You can delete existing names by executing "del +name" in the shell itself. You can see if a name is defined by typing +"'name' in globals()". + +The Symbols that are created using this have default assumptions. +If you want to place assumptions on symbols, you should create them +using symbols() or var(). + +Finally, this only works in the top level namespace. So, for +example, if you define a function in isympy with an undefined +Symbol, it will not work. +.TP +\*(T<\fB\-D\fR\*(T>, \*(T<\fB\-\-debug\fR\*(T> +Enable debugging output. This is the same as setting the +environment variable SYMPY_DEBUG to 'True'. The debug status is set +in the variable SYMPY_DEBUG within isympy. +.TP +-- \fIPYTHONOPTIONS\fR +These options will be passed on to \fIipython (1)\fR shell. +Only supported when ipython is being used (standard python shell not supported). + +Two dashes (--) are required to separate \fIPYTHONOPTIONS\fR +from the other isympy options. + +For example, to run iSymPy without startup banner and colors: + +isympy -q -c ipython -- --colors=NoColor +.TP +\*(T<\fB\-h\fR\*(T>, \*(T<\fB\-\-help\fR\*(T> +Print help output and exit. +.TP +\*(T<\fB\-v\fR\*(T>, \*(T<\fB\-\-version\fR\*(T> +Print isympy version information and exit. +.SH FILES +.TP +\*(T<\fI${HOME}/.sympy\-history\fR\*(T> +Saves the history of commands when using the python +shell as backend. +.SH BUGS +The upstreams BTS can be found at \(lahttps://github.com/sympy/sympy/issues\(ra +Please report all bugs that you find in there, this will help improve +the overall quality of SymPy. +.SH "SEE ALSO" +\fBipython\fR(1), \fBpython\fR(1) diff --git a/isympy.exe b/isympy.exe new file mode 100644 index 0000000000000000000000000000000000000000..fe4dbae1c0f53b80501629e67d310b4c7463d8c9 --- /dev/null +++ b/isympy.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5b00e29646484644b74c45d8d9469b294cbe12de1ec5a9f23483ad98cf8ee2b +size 108427 diff --git a/isympy.py b/isympy.py new file mode 100644 index 0000000000000000000000000000000000000000..50e9bc78d08904b8c177105ee90d984ea4b01d20 --- /dev/null +++ b/isympy.py @@ -0,0 +1,342 @@ +""" +Python shell for SymPy. + +This is just a normal Python shell (IPython shell if you have the +IPython package installed), that executes the following commands for +the user: + + >>> from __future__ import division + >>> from sympy import * + >>> x, y, z, t = symbols('x y z t') + >>> k, m, n = symbols('k m n', integer=True) + >>> f, g, h = symbols('f g h', cls=Function) + >>> init_printing() + +So starting 'isympy' is equivalent to starting Python (or IPython) and +executing the above commands by hand. It is intended for easy and quick +experimentation with SymPy. isympy is a good way to use SymPy as an +interactive calculator. If you have IPython and Matplotlib installed, then +interactive plotting is enabled by default. + +COMMAND LINE OPTIONS +-------------------- + +-c CONSOLE, --console=CONSOLE + + Use the specified shell (Python or IPython) shell as the console + backend instead of the default one (IPython if present, Python + otherwise), e.g.: + + $isympy -c python + + CONSOLE must be one of 'ipython' or 'python' + +-p PRETTY, --pretty PRETTY + + Setup pretty-printing in SymPy. When pretty-printing is enabled, + expressions can be printed with Unicode or ASCII. The default is + to use pretty-printing (with Unicode if the terminal supports it). + When this option is 'no', expressions will not be pretty-printed + and ASCII will be used: + + $isympy -p no + + PRETTY must be one of 'unicode', 'ascii', or 'no' + +-t TYPES, --types=TYPES + + Setup the ground types for the polys. By default, gmpy ground types + are used if gmpy2 or gmpy is installed, otherwise it falls back to python + ground types, which are a little bit slower. You can manually + choose python ground types even if gmpy is installed (e.g., for + testing purposes): + + $isympy -t python + + TYPES must be one of 'gmpy', 'gmpy1' or 'python' + + Note that the ground type gmpy1 is primarily intended for testing; it + forces the use of gmpy version 1 even if gmpy2 is available. + + This is the same as setting the environment variable + SYMPY_GROUND_TYPES to the given ground type (e.g., + SYMPY_GROUND_TYPES='gmpy') + + The ground types can be determined interactively from the variable + sympy.polys.domains.GROUND_TYPES. + +-o ORDER, --order ORDER + + Setup the ordering of terms for printing. The default is lex, which + orders terms lexicographically (e.g., x**2 + x + 1). You can choose + other orderings, such as rev-lex, which will use reverse + lexicographic ordering (e.g., 1 + x + x**2): + + $isympy -o rev-lex + + ORDER must be one of 'lex', 'rev-lex', 'grlex', 'rev-grlex', + 'grevlex', 'rev-grevlex', 'old', or 'none'. + + Note that for very large expressions, ORDER='none' may speed up + printing considerably but the terms will have no canonical order. + +-q, --quiet + + Print only Python's and SymPy's versions to stdout at startup. + +-d, --doctest + + Use the same format that should be used for doctests. This is + equivalent to -c python -p no. + +-C, --no-cache + + Disable the caching mechanism. Disabling the cache may slow certain + operations down considerably. This is useful for testing the cache, + or for benchmarking, as the cache can result in deceptive timings. + + This is equivalent to setting the environment variable + SYMPY_USE_CACHE to 'no'. + +-a, --auto-symbols (requires at least IPython 0.11) + + Automatically create missing symbols. Normally, typing a name of a + Symbol that has not been instantiated first would raise NameError, + but with this option enabled, any undefined name will be + automatically created as a Symbol. + + Note that this is intended only for interactive, calculator style + usage. In a script that uses SymPy, Symbols should be instantiated + at the top, so that it's clear what they are. + + This will not override any names that are already defined, which + includes the single character letters represented by the mnemonic + QCOSINE (see the "Gotchas and Pitfalls" document in the + documentation). You can delete existing names by executing "del + name". If a name is defined, typing "'name' in dir()" will return True. + + The Symbols that are created using this have default assumptions. + If you want to place assumptions on symbols, you should create them + using symbols() or var(). + + Finally, this only works in the top level namespace. So, for + example, if you define a function in isympy with an undefined + Symbol, it will not work. + + See also the -i and -I options. + +-i, --int-to-Integer (requires at least IPython 0.11) + + Automatically wrap int literals with Integer. This makes it so that + things like 1/2 will come out as Rational(1, 2), rather than 0.5. This + works by preprocessing the source and wrapping all int literals with + Integer. Note that this will not change the behavior of int literals + assigned to variables, and it also won't change the behavior of functions + that return int literals. + + If you want an int, you can wrap the literal in int(), e.g. int(3)/int(2) + gives 1.5 (with division imported from __future__). + +-I, --interactive (requires at least IPython 0.11) + + This is equivalent to --auto-symbols --int-to-Integer. Future options + designed for ease of interactive use may be added to this. + +-D, --debug + + Enable debugging output. This is the same as setting the + environment variable SYMPY_DEBUG to 'True'. The debug status is set + in the variable SYMPY_DEBUG within isympy. + +-- IPython options + + Additionally you can pass command line options directly to the IPython + interpreter (the standard Python shell is not supported). However you + need to add the '--' separator between two types of options, e.g the + startup banner option and the colors option. You need to enter the + options as required by the version of IPython that you are using, too: + + in IPython 0.11, + + $isympy -q -- --colors=NoColor + + or older versions of IPython, + + $isympy -q -- -colors NoColor + +See also isympy --help. +""" + +import os +import sys + +# DO NOT IMPORT SYMPY HERE! Or the setting of the sympy environment variables +# by the command line will break. + +def main() -> None: + from argparse import ArgumentParser, RawDescriptionHelpFormatter + + VERSION = None + if '--version' in sys.argv: + # We cannot import sympy before this is run, because flags like -C and + # -t set environment variables that must be set before SymPy is + # imported. The only thing we need to import it for is to get the + # version, which only matters with the --version flag. + import sympy + VERSION = sympy.__version__ + + usage = 'isympy [options] -- [ipython options]' + parser = ArgumentParser( + usage=usage, + description=__doc__, + formatter_class=RawDescriptionHelpFormatter, + ) + + parser.add_argument('--version', action='version', version=VERSION) + + parser.add_argument( + '-c', '--console', + dest='console', + action='store', + default=None, + choices=['ipython', 'python'], + metavar='CONSOLE', + help='select type of interactive session: ipython | python; defaults ' + 'to ipython if IPython is installed, otherwise python') + + parser.add_argument( + '-p', '--pretty', + dest='pretty', + action='store', + default=None, + metavar='PRETTY', + choices=['unicode', 'ascii', 'no'], + help='setup pretty printing: unicode | ascii | no; defaults to ' + 'unicode printing if the terminal supports it, otherwise ascii') + + parser.add_argument( + '-t', '--types', + dest='types', + action='store', + default=None, + metavar='TYPES', + choices=['gmpy', 'gmpy1', 'python'], + help='setup ground types: gmpy | gmpy1 | python; defaults to gmpy if gmpy2 ' + 'or gmpy is installed, otherwise python') + + parser.add_argument( + '-o', '--order', + dest='order', + action='store', + default=None, + metavar='ORDER', + choices=['lex', 'grlex', 'grevlex', 'rev-lex', 'rev-grlex', 'rev-grevlex', 'old', 'none'], + help='setup ordering of terms: [rev-]lex | [rev-]grlex | [rev-]grevlex | old | none; defaults to lex') + + parser.add_argument( + '-q', '--quiet', + dest='quiet', + action='store_true', + default=False, + help='print only version information at startup') + + parser.add_argument( + '-d', '--doctest', + dest='doctest', + action='store_true', + default=False, + help='use the doctest format for output (you can just copy and paste it)') + + parser.add_argument( + '-C', '--no-cache', + dest='cache', + action='store_false', + default=True, + help='disable caching mechanism') + + parser.add_argument( + '-a', '--auto-symbols', + dest='auto_symbols', + action='store_true', + default=False, + help='automatically construct missing symbols') + + parser.add_argument( + '-i', '--int-to-Integer', + dest='auto_int_to_Integer', + action='store_true', + default=False, + help="automatically wrap int literals with Integer") + + parser.add_argument( + '-I', '--interactive', + dest='interactive', + action='store_true', + default=False, + help="equivalent to -a -i") + + parser.add_argument( + '-D', '--debug', + dest='debug', + action='store_true', + default=False, + help='enable debugging output') + + (options, ipy_args) = parser.parse_known_args() + if '--' in ipy_args: + ipy_args.remove('--') + + if not options.cache: + os.environ['SYMPY_USE_CACHE'] = 'no' + + if options.types: + os.environ['SYMPY_GROUND_TYPES'] = options.types + + if options.debug: + os.environ['SYMPY_DEBUG'] = str(options.debug) + + if options.doctest: + options.pretty = 'no' + options.console = 'python' + + session = options.console + + if session is not None: + ipython = session == 'ipython' + else: + try: + import IPython + ipython = True + except ImportError: + if not options.quiet: + from sympy.interactive.session import no_ipython + print(no_ipython) + ipython = False + + args = { + 'pretty_print': True, + 'use_unicode': None, + 'use_latex': None, + 'order': None, + 'argv': ipy_args, + } + + if options.pretty == 'unicode': + args['use_unicode'] = True + elif options.pretty == 'ascii': + args['use_unicode'] = False + elif options.pretty == 'no': + args['pretty_print'] = False + + if options.order is not None: + args['order'] = options.order + + args['quiet'] = options.quiet + args['auto_symbols'] = options.auto_symbols or options.interactive + args['auto_int_to_Integer'] = options.auto_int_to_Integer or options.interactive + + from sympy.interactive import init_session + init_session(ipython, **args) + +if __name__ == "__main__": + main() diff --git a/local.py b/local.py new file mode 100644 index 0000000000000000000000000000000000000000..8e446106c57bdc815f9385a3d62b7886dd5fcdaa --- /dev/null +++ b/local.py @@ -0,0 +1,63 @@ +from __future__ import annotations + +import threading +from contextlib import contextmanager +from typing import TYPE_CHECKING + + +if TYPE_CHECKING: + from collections.abc import Iterator + + +# Simple dynamic scoping implementation. The name "parametrize" comes +# from Racket. +# +# WARNING WARNING: LOOKING TO EDIT THIS FILE? Think carefully about +# why you need to add a toggle to the global behavior of code +# generation. The parameters here should really only be used +# for "temporary" situations, where we need to temporarily change +# the codegen in some cases because we cannot conveniently update +# all call sites, and are slated to be eliminated once all call +# sites are eliminated. If you don't have a plan for how to get there, +# DON'T add a new entry here. + + +class Locals(threading.local): + use_const_ref_for_mutable_tensors: bool | None = None + use_ilistref_for_tensor_lists: bool | None = None + + +_locals = Locals() + + +def use_const_ref_for_mutable_tensors() -> bool: + assert _locals.use_const_ref_for_mutable_tensors is not None, ( + "need to initialize local.use_const_ref_for_mutable_tensors with " + "local.parametrize" + ) + return _locals.use_const_ref_for_mutable_tensors + + +def use_ilistref_for_tensor_lists() -> bool: + assert _locals.use_ilistref_for_tensor_lists is not None, ( + "need to initialize local.use_ilistref_for_tensor_lists with " + "local.parametrize" + ) + return _locals.use_ilistref_for_tensor_lists + + +@contextmanager +def parametrize( + *, use_const_ref_for_mutable_tensors: bool, use_ilistref_for_tensor_lists: bool +) -> Iterator[None]: + old_use_const_ref_for_mutable_tensors = _locals.use_const_ref_for_mutable_tensors + old_use_ilistref_for_tensor_lists = _locals.use_ilistref_for_tensor_lists + try: + _locals.use_const_ref_for_mutable_tensors = use_const_ref_for_mutable_tensors + _locals.use_ilistref_for_tensor_lists = use_ilistref_for_tensor_lists + yield + finally: + _locals.use_const_ref_for_mutable_tensors = ( + old_use_const_ref_for_mutable_tensors + ) + _locals.use_ilistref_for_tensor_lists = old_use_ilistref_for_tensor_lists diff --git a/markdown-it.exe b/markdown-it.exe new file mode 100644 index 0000000000000000000000000000000000000000..721cb70d9cd5cb7ba1106240e98c718ab49eb5d1 --- /dev/null +++ b/markdown-it.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11d8735f26e48e2a2f578c86866dd60b5c4e99c0afa7e7904bbc1c3a213003f9 +size 108444 diff --git a/markdown_py.exe b/markdown_py.exe new file mode 100644 index 0000000000000000000000000000000000000000..6ab00703355fba09e521798e2754af50ddacc374 --- /dev/null +++ b/markdown_py.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb545c7705c5f8f2fc008a81c5848028645bf057f596c6340d1dfa6f115d2eb8 +size 108438 diff --git a/model.py b/model.py new file mode 100644 index 0000000000000000000000000000000000000000..7db6b1e6ee5b6eebaaf606813af4b72ae72aa177 --- /dev/null +++ b/model.py @@ -0,0 +1,2855 @@ +from __future__ import annotations + +import dataclasses +import itertools +import re +from dataclasses import dataclass +from enum import auto, Enum +from typing import Callable, TYPE_CHECKING + +from torchgen.utils import assert_never, NamespaceHelper, OrderedSet + + +if TYPE_CHECKING: + from collections.abc import Iterator, Sequence + + +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # +# +# DATA MODEL +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # +# +# Some general principles for our data model. +# +# - Stop using C++ data types as the internal data representation +# format. Instead, the internal data structures are centered +# around JIT schema representation. This avoid a big problem +# with the old codegen where we read in all the types from +# native_functions.yaml and then immediately had to retranslate +# them into C++ types. +# +# - More semantic data representation. Instead of representing +# everything as dicts and strings, we define dataclasses for +# every interesting entity the code generation has to deal with. +# These dataclasses have strong semantic invariants: for example, +# we generally require them to roundtrip losslessly into the +# form they were parsed from. These structures are immutable +# and you're expected to populate information once during +# construction. + + +# Represent a source location; used for better error reporting +@dataclass(frozen=True) +class Location: + file: str + line: int + + def __str__(self) -> str: + return f"{self.file}:{self.line}" + + +# Valid values of the 'variants' field in native_functions.yaml +class Variant(Enum): + function = auto() + method = auto() + + +# Default kernel namespace +DEFAULT_KERNEL_NAMESPACE = "at::native" + +# NOTE: Keep the list in sync with `DispatchKey` in c10/core/DispatchKey.h +BACKEND_COMPONENTS = "CPU CUDA HIP XLA MTIA MPS IPU XPU HPU VE Lazy Meta PrivateUse1 PrivateUse2 PrivateUse3".split() +FUNCTIONALITY_KEYS = [ + "", + "Quantized", + "Sparse", + "SparseCsr", + "NestedTensor", + "Autograd", +] + +# This list guards dispatches that can be used in derivatives.yaml +# For now we omit AutogradFunctionality and AutogradOther +AUTOGRAD_KEYS = ["AutogradNestedTensor"] + [ + "Autograd" + component for component in BACKEND_COMPONENTS +] + +FRAGMENT_NAMESPACES = {"quantized", "quantized_decomposed"} + + +# This doesn't have to be in sync with the header, it only needs to contain +# entries that we actually use in the codegen or want pyi entries for +class DispatchKey(Enum): + Undefined = 0 + CatchAll = Undefined + + FPGA = auto() + MAIA = auto() + Vulkan = auto() + Metal = auto() + MKLDNN = auto() + OpenGL = auto() + OpenCL = auto() + IDEEP = auto() + CustomRNGKeyId = auto() + MkldnnCPU = auto() + Sparse = auto() + SparseCsr = auto() + NestedTensor = auto() + Dense = auto() + + PythonTLSSnapshot = auto() + PreDispatch = auto() + PythonDispatcher = auto() + Python = auto() + FuncTorchDynamicLayerBackMode = auto() + ZeroTensor = auto() + Conjugate = auto() + Negative = auto() + BackendSelect = auto() + Named = auto() + AutogradOther = auto() + AutogradFunctionality = auto() + AutogradNestedTensor = auto() + Tracer = auto() + Autocast = auto() + AutocastCPU = auto() + AutocastCUDA = auto() + Batched = auto() + VmapMode = auto() + FuncTorchGradWrapper = auto() + FuncTorchBatched = auto() + BatchedNestedTensor = auto() + FuncTorchVmapMode = auto() + FuncTorchDynamicLayerFrontMode = auto() + Functionalize = auto() + TESTING_ONLY_GenericWrapper = auto() + TESTING_ONLY_GenericMode = auto() + + ADInplaceOrView = auto() + Autograd = auto() + CompositeImplicitAutograd = auto() + CompositeImplicitAutogradNestedTensor = auto() + CompositeExplicitAutograd = auto() + CompositeExplicitAutogradNonFunctional = auto() + FuncTorchBatchedDecomposition = auto() + + # BEGIN autogenerated + CPU = auto() + CUDA = auto() + HIP = auto() + XLA = auto() + MTIA = auto() + MPS = auto() + IPU = auto() + XPU = auto() + HPU = auto() + VE = auto() + Lazy = auto() + Meta = auto() + PrivateUse1 = auto() + PrivateUse2 = auto() + PrivateUse3 = auto() + QuantizedCPU = auto() + QuantizedCUDA = auto() + QuantizedHIP = auto() + QuantizedXLA = auto() + QuantizedMTIA = auto() + QuantizedMPS = auto() + QuantizedIPU = auto() + QuantizedXPU = auto() + QuantizedHPU = auto() + QuantizedVE = auto() + QuantizedLazy = auto() + QuantizedMeta = auto() + QuantizedPrivateUse1 = auto() + QuantizedPrivateUse2 = auto() + QuantizedPrivateUse3 = auto() + SparseCPU = auto() + SparseCUDA = auto() + SparseHIP = auto() + SparseXLA = auto() + SparseMTIA = auto() + SparseMPS = auto() + SparseIPU = auto() + SparseXPU = auto() + SparseHPU = auto() + SparseVE = auto() + SparseLazy = auto() + SparseMeta = auto() + SparsePrivateUse1 = auto() + SparsePrivateUse2 = auto() + SparsePrivateUse3 = auto() + SparseCsrCPU = auto() + SparseCsrCUDA = auto() + SparseCsrHIP = auto() + SparseCsrXLA = auto() + SparseCsrMTIA = auto() + SparseCsrMPS = auto() + SparseCsrIPU = auto() + SparseCsrXPU = auto() + SparseCsrHPU = auto() + SparseCsrVE = auto() + SparseCsrLazy = auto() + SparseCsrMeta = auto() + SparseCsrPrivateUse1 = auto() + SparseCsrPrivateUse2 = auto() + SparseCsrPrivateUse3 = auto() + NestedTensorCPU = auto() + NestedTensorCUDA = auto() + NestedTensorHIP = auto() + NestedTensorXLA = auto() + NestedTensorMTIA = auto() + NestedTensorMPS = auto() + NestedTensorIPU = auto() + NestedTensorXPU = auto() + NestedTensorHPU = auto() + NestedTensorVE = auto() + NestedTensorLazy = auto() + NestedTensorMeta = auto() + NestedTensorPrivateUse1 = auto() + NestedTensorPrivateUse2 = auto() + NestedTensorPrivateUse3 = auto() + AutogradCPU = auto() + AutogradCUDA = auto() + AutogradHIP = auto() + AutogradXLA = auto() + AutogradMTIA = auto() + AutogradMPS = auto() + AutogradIPU = auto() + AutogradXPU = auto() + AutogradHPU = auto() + AutogradVE = auto() + AutogradLazy = auto() + AutogradMeta = auto() + AutogradPrivateUse1 = auto() + AutogradPrivateUse2 = auto() + AutogradPrivateUse3 = auto() + # END autogenerated + + def __str__(self) -> str: + return self.name + + def lower(self) -> str: + return str(self).lower() + + @staticmethod + def parse(value: str) -> DispatchKey: + for k, v in DispatchKey.__members__.items(): + if k == value: + return v + raise AssertionError(f"unknown dispatch key {value}") + + +class _TorchDispatchModeKey(Enum): + FAKE = auto() + PROXY = auto() + FUNCTIONAL = auto() + + +def codegen_per_backend_entries() -> str: + r: list[str] = [] + for fk in FUNCTIONALITY_KEYS: + r.extend(f" {fk}{bc} = auto()" for bc in BACKEND_COMPONENTS) + return "\n".join(r) + + +for fk in FUNCTIONALITY_KEYS: + for bc in BACKEND_COMPONENTS: + if not hasattr(DispatchKey, fk + bc): + r = codegen_per_backend_entries() + print(r) + raise RuntimeError( + f"Missing {fk}{bc} from DispatchKey enum. Here is the autogenerated list we expect to have:\n\n{r}" + ) + + +STRUCTURED_DISPATCH_KEYS = { + DispatchKey.MPS, + DispatchKey.CUDA, + DispatchKey.CPU, + DispatchKey.XPU, +} +UFUNC_DISPATCH_KEYS = {DispatchKey.CUDA, DispatchKey.CPU} + +# Set of supported dispatch keys +dispatch_keys = [ + DispatchKey.CPU, + DispatchKey.SparseCPU, + DispatchKey.SparseCsrCPU, + DispatchKey.MkldnnCPU, + DispatchKey.CUDA, + DispatchKey.MPS, + DispatchKey.XPU, + DispatchKey.SparseXPU, + DispatchKey.SparseCUDA, + DispatchKey.SparseCsrCUDA, + DispatchKey.QuantizedCPU, + DispatchKey.QuantizedCUDA, + DispatchKey.CompositeImplicitAutograd, + DispatchKey.CompositeImplicitAutogradNestedTensor, + DispatchKey.CompositeExplicitAutograd, + DispatchKey.CompositeExplicitAutogradNonFunctional, + DispatchKey.NestedTensorCPU, + DispatchKey.NestedTensorCUDA, + DispatchKey.NestedTensorXPU, + # Meta is a magic key: it is automatically generated for structured + # kernels + DispatchKey.Meta, + DispatchKey.SparseMeta, + DispatchKey.SparseCsrMeta, + DispatchKey.QuantizedMeta, + DispatchKey.NestedTensorMeta, + DispatchKey.ZeroTensor, +] + + +# Dispatch keys that "support all backends". These codegen slightly differently +# then backend specific keys. +def is_generic_dispatch_key(dk: DispatchKey) -> bool: + return dk in { + DispatchKey.CompositeExplicitAutograd, + DispatchKey.CompositeExplicitAutogradNonFunctional, + DispatchKey.CompositeImplicitAutograd, + DispatchKey.CompositeImplicitAutogradNestedTensor, + } + + +# CUDA specific dispatch keys +def is_cuda_dispatch_key(dk: DispatchKey) -> bool: + return dk in { + DispatchKey.CUDA, + DispatchKey.QuantizedCUDA, + DispatchKey.SparseCUDA, + DispatchKey.SparseCsrCUDA, + DispatchKey.NestedTensorCUDA, + DispatchKey.AutogradCUDA, + } + + +# XPU specific dispatcy keys +def is_xpu_dispatch_key(dk: DispatchKey) -> bool: + return dk in { + DispatchKey.XPU, + DispatchKey.QuantizedXPU, + DispatchKey.SparseXPU, + DispatchKey.SparseCsrXPU, + DispatchKey.NestedTensorXPU, + DispatchKey.AutogradXPU, + } + + +# Structured kernel generation is only supported for certain key types; +# otherwise use old-style +def is_structured_dispatch_key(dk: DispatchKey) -> bool: + return dk in STRUCTURED_DISPATCH_KEYS + + +def is_ufunc_dispatch_key(dk: DispatchKey) -> bool: + # For now, ufunc dispatch keys coincide with structured keys + return dk in UFUNC_DISPATCH_KEYS + + +dispatch_device_map = {is_cuda_dispatch_key: "cuda", is_xpu_dispatch_key: "xpu"} + + +# This is oddly named ScalarType and not DType for symmetry with C++ +class ScalarType(Enum): + Byte = auto() + Char = auto() + Short = auto() + Int = auto() + Long = auto() + Half = auto() + Float = auto() + Double = auto() + ComplexHalf = auto() + ComplexFloat = auto() + ComplexDouble = auto() + Bool = auto() + BFloat16 = auto() + Float8_e5m2 = auto() + Float8_e5m2fnuz = auto() + Float8_e4m3fn = auto() + Float8_e4m3fnuz = auto() + + def __str__(self) -> str: + return self.name + + @staticmethod + def maybe_parse(value: str) -> ScalarType | None: + for k, v in ScalarType.__members__.items(): + if k == value: + return v + return None + + @staticmethod + def parse(value: str) -> ScalarType: + mb_r = ScalarType.maybe_parse(value) + assert mb_r is not None, f"unknown dtype {value}" + return mb_r + + @staticmethod + def parse_set(values: str) -> OrderedSet[ScalarType]: + dtypes: OrderedSet[ScalarType] = OrderedSet() + for value in values.split(", "): + if value in DTYPE_CLASSES: + dtypes.update(DTYPE_CLASSES[value]) + else: + dtypes.add(ScalarType.parse(value)) + return dtypes + + +DTYPE_CLASSES: dict[str, OrderedSet[ScalarType]] = {} +# NB: Integral doesn't include boolean +DTYPE_CLASSES["Integral"] = OrderedSet( + [ + ScalarType.Byte, + ScalarType.Char, + ScalarType.Int, + ScalarType.Long, + ScalarType.Short, + ] +) +# NB: Floating doesn't include low precision types +DTYPE_CLASSES["Floating"] = OrderedSet([ScalarType.Float, ScalarType.Double]) +DTYPE_CLASSES["Complex"] = OrderedSet( + [ScalarType.ComplexFloat, ScalarType.ComplexDouble] +) +DTYPE_CLASSES["All"] = DTYPE_CLASSES["Integral"] | DTYPE_CLASSES["Floating"] +DTYPE_CLASSES["AllAndComplex"] = DTYPE_CLASSES["All"] | DTYPE_CLASSES["Complex"] +DTYPE_CLASSES["FloatingAndComplex"] = ( + DTYPE_CLASSES["Floating"] | DTYPE_CLASSES["Complex"] +) + + +# Represents the valid entries for ufunc_inner_loop in native_functions.yaml. +# NB: if you add a new UfuncKey, you will teach torchgen.dest.ufunc how +# to process it. Most logic will ignore keys they don't understand, so your +# new key will get silently ignored until you hook in logic to deal with it. +class UfuncKey(Enum): + # These are low level keys that represent exactly one particular + # instantiation of the kernel produced by codegen + CUDAFunctor = auto() + CUDAFunctorOnOther = auto() + CUDAFunctorOnSelf = auto() + + CPUScalar = auto() + CPUVector = auto() + + # These are the ones users will usually specify, and + # implicitly "fill in" the low level keys + ScalarOnly = auto() # CUDA*, CPUScalar + Generic = auto() # CUDA*, CPU* + + def __str__(self) -> str: + return self.name + + @staticmethod + def parse(value: str) -> UfuncKey: + for k, v in UfuncKey.__members__.items(): + if k == value: + return v + raise AssertionError(f"unknown ufunc key {value}") + + +class DeviceCheckType(Enum): + NoCheck = 0 + ExactSame = 1 + + +class ViewSchemaKind(Enum): + aliasing = auto() + aliasing_inplace = auto() + non_aliasing = auto() + + +# The basic input to the code generation is native_functions.yaml. +# The name "native", BTW, comes from the distinction between native +# functions and legacy TH functions. The legacy TH functions are gone, +# but the "native" descriptor has stuck. +# +# NativeFunction models a single entry in native_functions.yaml. Its +# fields roughly correspond to what you would see in the YAML itself, +# but after canonicalization and parsing has occurred. +# +# You can see some of the overall design patterns for how we setup +# dataclasses in this class, but we will defer a complete discussion +# of this at FunctionSchema. +@dataclass(frozen=True) +class NativeFunction: + # The namespace for this operator. For example, if we have "at::add" + # then the namespace would be "at". This enables ops to be registered + # through the same DSL with a custom namespace. If not specified, the + # default namespace would be "at". + namespace: str + + # The function schema of the operator in question. This schema + # has been parsed; see FunctionSchema for more about its structure. + # (This type is quoted as we are forward referencing a type + # defined later in the file. I opted for this ordering of the + # classes for expository clarity.) + func: FunctionSchema + + # Whether or not to generate mutable tensor arguments like regular + # ones + use_const_ref_for_mutable_tensors: bool + + # Whether or not to omit automatic generation of a DeviceGuard + device_guard: bool + + # How to emit automatic generation of device check + device_check: DeviceCheckType + + # What python module to put the function in + python_module: str | None + + # TODO: figure out what this does + category_override: str | None + + # If no variants are specified in native_functions.yaml, this is + # assumed to be {'function'}. + variants: set[Variant] + + # Whether or not we should skip generating registrations for + # this kernel. This is a bit of a double-edged sword, as manual + # registrations don't participate in codegen-based selective build! + manual_kernel_registration: bool + + # Whether or not to skip generating TensorMethod/Functions bindings + # for this kernel. Technically, this doesn't actually skip generating + # the binding; instead, the binding gets generated to __dispatch_{funcname} + # so you can make use of the normal binding if you need it. + manual_cpp_binding: bool + + # The location in the YAML file were this native function entry was + # defined. This is for conveniently reporting error messages! + loc: Location + + # A list of operators that are expected to be auto-generated for this NativeFunction. + # Note: This list isn't actually directly used by the codegen to generate anything. + # Instead, the codegen figures out what operators to generate purely based off of + # function schema, and uses the autogen declarations to error check. + # We expect every NativeFunction that gets auto-generated be explicitly called out + # in native_functions.yaml + autogen: list[OperatorName] + + # If non-empty, this kernel is subject to ufunc codegen. + # Sorted by ufunc_key + ufunc_inner_loop: dict[UfuncKey, UfuncInnerLoop] + + # Whether or not this out functions is a "structured kernel". Structured + # kernels are defined a little differently from normal kernels; in + # particular, their shape checking logic is defined separately from + # the kernel. Only out functions can be structured; other functions + # delegate to the out function using the structured_delegate keyword. + # Every structured kernel must have at least an out and a functional + # variant. + structured: bool + + # Whether or not this non-out function is a structured kernel, defined + # in terms of the out kernel referenced by the string here. + structured_delegate: OperatorName | None + + # Only valid for structured kernels. Specifies alternative of what + # to inherit from when defining the meta class for the structured + # operator. This will usually be TensorIteratorBase. This also + # changes the semantics of set_output to call the parent class. + structured_inherits: str | None + + # Structured kernels can declare elements as "precomputed". These elements + # are returned by the meta function in one struct and passed to the impl + # function in lieu of certain kernel arguments that these precomputed + # elements supersede. Information about the names and types of these + # precomputed elements and how they correspond to kernel arguments is stored + # in this member, if applicable. + precomputed: Precompute | None + + # Argument names whose default should be excluded from the C++ interface. + # Intended for resolving overload ambiguities between signatures. + cpp_no_default_args: set[str] + + # Note [Abstract ATen methods] + # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + # An abstract ATen method is one whose dispatch differs between + # types. These are implemented in derived types (with a + # standard (throwing) definition in Type). A concrete ATen + # method is one which has the same dispatch for all types; + # we just implement it in the base Type. This is exposed + # in Declarations.yaml via a field named 'abstract'. + is_abstract: bool + + # Whether or not the NativeFunction contains a backend-agnostic kernel + has_composite_implicit_autograd_kernel: bool + has_composite_implicit_autograd_nested_tensor_kernel: bool + has_composite_explicit_autograd_kernel: bool + has_composite_explicit_autograd_non_functional_kernel: bool + + # Tags are used to describe semantic information about (groups of) operators, + # That aren't easily inferrable directly from the operator's schema. + tags: set[str] + + # NB: The benefit of defining a dataclass is that we automatically get + # a constructor defined for all the fields we specify. No need + # to explicitly write it out. + + # We parse both the NativeFunction + backend-specific information about it, which it stored in a corresponding BackendIndex. + @staticmethod + def from_yaml( + ei: dict[str, object], + loc: Location, + valid_tags: set[str], + ignore_keys: set[DispatchKey] | None = None, + ) -> tuple[NativeFunction, dict[DispatchKey, dict[OperatorName, BackendMetadata]]]: + """ + Parse a NativeFunction from a dictionary as directly parsed + from native_functions.yaml + """ + e = ei.copy() + + funcs = e.pop("func") + assert isinstance(funcs, str), f"not a str: {funcs}" + # only support one level of namespace. E.g., aten::add + namespace_helper = NamespaceHelper.from_namespaced_entity( + namespaced_entity=funcs, max_level=1 + ) + namespace = namespace_helper.get_cpp_namespace(default="aten") + func = FunctionSchema.parse(namespace_helper.entity_name) + + cpp_no_default_args_list = e.pop("cpp_no_default_args", []) + assert isinstance(cpp_no_default_args_list, list) + cpp_no_default_args = set(cpp_no_default_args_list) + + use_const_ref_for_mutable_tensors = e.pop( + "use_const_ref_for_mutable_tensors", False + ) + assert isinstance(use_const_ref_for_mutable_tensors, bool) + + variants_s = e.pop("variants", "function") + assert isinstance(variants_s, str) + variants: set[Variant] = set() + for v in variants_s.split(", "): + if v == "function": + variants.add(Variant.function) + elif v == "method": + variants.add(Variant.method) + else: + raise AssertionError(f"illegal variant {v}") + + manual_kernel_registration = e.pop("manual_kernel_registration", False) + assert isinstance( + manual_kernel_registration, bool + ), f"not a bool: {manual_kernel_registration}" + + manual_cpp_binding = e.pop("manual_cpp_binding", False) + assert isinstance(manual_cpp_binding, bool), f"not a bool: {manual_cpp_binding}" + + device_guard = e.pop("device_guard", True) + assert isinstance(device_guard, bool), f"not a bool: {device_guard}" + + device_check_s = e.pop("device_check", None) + assert device_check_s is None or isinstance( + device_check_s, str + ), f"not a str: {device_check_s}" + assert ( + device_check_s is None or device_check_s in DeviceCheckType.__members__ + ), f"illegal device_check: {device_check_s}" + device_check: DeviceCheckType + if device_check_s is None: + device_check = DeviceCheckType.ExactSame + else: + device_check = DeviceCheckType[device_check_s] + + structured = e.pop("structured", False) + assert isinstance(structured, bool), f"not a bool: {structured}" + + structured_delegate_s = e.pop("structured_delegate", None) + assert structured_delegate_s is None or isinstance( + structured_delegate_s, str + ), f"not a str: {structured_delegate_s}" + assert structured_delegate_s is None or "::" not in structured_delegate_s, ( + "namespace is not supported in structured delegate," + " using the same namespace as the native function" + ) + structured_delegate: OperatorName | None = None + if structured_delegate_s is not None: + structured_delegate = OperatorName.parse(structured_delegate_s) + + structured_inherits = e.pop("structured_inherits", None) + assert structured_inherits is None or isinstance( + structured_inherits, str + ), f"not a str: {structured_inherits}" + assert structured_inherits is None or "::" not in structured_inherits, ( + "namespace is not supported in structured inherits," + " using the same namespace as the native function" + ) + + python_module = e.pop("python_module", None) + assert python_module is None or isinstance( + python_module, str + ), f"not a str: {python_module}" + assert ( + python_module is None or Variant.method not in variants + ), "functions in modules cannot be methods" + + category_override = e.pop("category_override", None) + assert category_override is None or isinstance( + category_override, str + ), f"not a str: {category_override}" + + precomputed_dict = e.pop("precomputed", None) + assert precomputed_dict is None or structured is True + precomputed = Precompute.parse(precomputed_dict) if precomputed_dict else None + + tags_inp = e.pop("tags", []) + if isinstance(tags_inp, str): + tags_inp = [tags_inp] + assert isinstance(tags_inp, list) + + # All aten ops generated by torchgen receive the pt2_compliant tag. + if namespace == "aten" and "pt2_compliant_tag" in valid_tags: + tags_inp.append("pt2_compliant_tag") + + tags: set[str] = set() + for t in tags_inp: + assert len(valid_tags) > 0 + # TODO: verify that the tag is valid and has an entry in tags.yaml + if t in valid_tags: + tags.add(t) + else: + raise AssertionError(f"illegal tag {t}") + + from torchgen.api import cpp + + raw_dispatch = e.pop("dispatch", None) + assert raw_dispatch is None or isinstance(raw_dispatch, dict), e + dispatch: dict[DispatchKey, BackendMetadata] = {} + num_dispatch_keys: int = 0 + if raw_dispatch is not None: + assert not manual_kernel_registration, ( + "cannot specify both manual_kernel_registration and dispatch; with " + "manual registration, dispatch has no effect!" + ) + redundant_composite_implicit_autograd = False + for ks, v in raw_dispatch.items(): + if ks == "__line__": + continue # not worth tracking line numbers for dispatch entries + assert isinstance( + ks, str + ), f"illegal dispatch key '{ks}' in {raw_dispatch}" + assert isinstance( + v, str + ), f"illegal dispatch value '{v}' in {raw_dispatch}" + for k in ks.split(","): + dispatch_key = DispatchKey.parse(k.strip()) + num_dispatch_keys += 1 + + if ignore_keys and dispatch_key in ignore_keys: + continue + assert dispatch_key in dispatch_keys, ( + f"Dispatch key {dispatch_key} of kernel {v} " + "is not a supported dispatch key." + ) + # We only allow at most 3 levels of namespace for kernels. + # We will append "native" to a custom kernel namespace. + namespace_helper = NamespaceHelper.from_namespaced_entity( + v, max_level=3 + ) + kernel_namespace = namespace_helper.get_cpp_namespace(default="at") + # Why is 'structured' included? External backends (e.g. + # XLA) opt into which ops are structured independently + # of which in-tree ops are structured + dispatch[dispatch_key] = BackendMetadata( + kernel=namespace_helper.entity_name, + structured=structured + and is_structured_dispatch_key(dispatch_key), + cpp_namespace=(kernel_namespace + "::native"), + ) + if ( + dispatch_key is DispatchKey.CompositeImplicitAutograd + and v == cpp.name(func) + ): + redundant_composite_implicit_autograd = True + + # We count the number of dispatch keys which have not been ignored to prevent a dispatch table + # in which all backend keys are ignored but necessarily kept, remaining compositeimplicit, + # from being treated as redundant. + assert not ( + num_dispatch_keys == 1 and redundant_composite_implicit_autograd + ), ( + "unnecessary dispatch table for this function; just delete the dispatch " + "key entirely" + ) + # if a function is a structured delegate, deleting the dispatch + # table is NOT semantics preserving + assert ( + structured_delegate + or dispatch.keys() != {DispatchKey.CompositeImplicitAutograd} + or dispatch[DispatchKey.CompositeImplicitAutograd].supports_symint() + or num_dispatch_keys != 1 + ), ( + f"unexpected name for singleton CompositeImplicitAutograd dispatch entry: expected {cpp.name(func)} " + f"but got {dispatch[DispatchKey.CompositeImplicitAutograd]}. Rename your implementation to the expected " + "name, then delete the dispatch table" + ) + elif not structured and structured_delegate is None: + name = str(func.name.name) + assert not ( + name.startswith("new_") + or name.endswith("_like") + # TODO: maybe it's better to test the return + or ( + func.arguments.tensor_options + and not func.arguments.has_tensor_arg() + ) + ), ( + f"expected {name} to have a CompositeExplicitAutograd " + "dispatch entry, but there was no dispatch table. Factory functions " + "should not have implicit dispatch as they should not be decomposed " + "for __torch_dispatch__" + ) + dispatch[DispatchKey.CompositeImplicitAutograd] = BackendMetadata( + cpp.name(func), structured=False, cpp_namespace=DEFAULT_KERNEL_NAMESPACE + ) + + composites_in_dispatch = [ + d + for d in dispatch + if d == DispatchKey.CompositeExplicitAutograd + or d == DispatchKey.CompositeExplicitAutogradNonFunctional + or d == DispatchKey.CompositeImplicitAutograd + or d == DispatchKey.CompositeImplicitAutogradNestedTensor + ] + + assert len(composites_in_dispatch) <= 1 or ( + len(composites_in_dispatch) == 2 + and ( + DispatchKey.CompositeExplicitAutogradNonFunctional + not in composites_in_dispatch + ) + and ( + DispatchKey.CompositeImplicitAutogradNestedTensor + in composites_in_dispatch + ) + ), ( + "cannot specify more than one of CompositeExplicitAutograd, CompositeExplicitAutogradNonFunctional, " + "or CompositeImplicitAutograd on a single kernel; each " + "strictly subsumes the other. If you wanted to provide an explicit autograd " + "implementation, specify CompositeExplicitAutograd; otherwise specify CompositeImplicitAutograd only" + ) + + autogen_str = e.pop("autogen", "") + assert isinstance(autogen_str, str) + autogen = ( + [] + if autogen_str == "" + else [OperatorName.parse(x) for x in autogen_str.split(", ")] + ) + + raw_ufunc_inner_loop = e.pop("ufunc_inner_loop", {}) + ufunc_inner_loop = {} + if isinstance(raw_ufunc_inner_loop, str): + ufunc_inner_loop[UfuncKey.Generic] = UfuncInnerLoop.parse( + raw_ufunc_inner_loop, UfuncKey.Generic + ) + elif isinstance(raw_ufunc_inner_loop, dict): + for k, vo in raw_ufunc_inner_loop.items(): + if k == "__line__": + continue + assert isinstance(k, str), f"ufunc_inner_loop key is not a str: {k}" + assert isinstance(vo, str), f"ufunc_inner_loop value is not a str: {v}" + ufunc_key = UfuncKey.parse(k) + ufunc_inner_loop[ufunc_key] = UfuncInnerLoop.parse(vo, ufunc_key) + else: + raise AssertionError( + f"ufunc_inner_loop not str or dict: {raw_ufunc_inner_loop}" + ) + # Program the BackendIndex for the implicit dispatch entry from ufunc + if ufunc_inner_loop: + assert structured, "ufunc must be structured" + + # Delay import ufunc here to avoid circular import issue + # See: https://github.com/pytorch/pytorch/issues/81294 + import torchgen.api.ufunc as ufunc + + for dispatch_key in UFUNC_DISPATCH_KEYS: + assert ( + dispatch_key not in dispatch + ), f"ufunc should not have explicit dispatch entry for {dispatch_key}" + dispatch[dispatch_key] = BackendMetadata( + kernel=ufunc.schema_kernel_name(func, dispatch_key), + structured=True, + cpp_namespace=DEFAULT_KERNEL_NAMESPACE, + ) + + if structured_delegate: + # Structured functions MUST have a dispatch table + is_abstract = True + else: + is_abstract = ( + dispatch.keys() != {DispatchKey.CompositeImplicitAutograd} + and dispatch.keys() + != {DispatchKey.CompositeImplicitAutogradNestedTensor} + and dispatch.keys() + != { + DispatchKey.CompositeImplicitAutograd, + DispatchKey.CompositeImplicitAutogradNestedTensor, + } + ) + + has_composite_implicit_autograd_kernel = ( + DispatchKey.CompositeImplicitAutograd in dispatch + ) + has_composite_implicit_autograd_nested_tensor_kernel = ( + DispatchKey.CompositeImplicitAutogradNestedTensor in dispatch + ) + has_composite_explicit_autograd_kernel = ( + DispatchKey.CompositeExplicitAutograd in dispatch + ) + has_composite_explicit_autograd_non_functional_kernel = ( + DispatchKey.CompositeExplicitAutogradNonFunctional in dispatch + ) + + # We aren't going to store dispatch metadata inline in NativeFunctions; + # instead it is separately indexed by backend (so other backends can + # add more dispatch entries after the fact). Reindex the individual + # metadata by OperatorName! + backend_metadata = {k: {func.name: v} for k, v in dispatch.items()} + + # don't care if it exists or not; make it easier to use this function + # with other yaml parsers that aren't setting __line__ in the dict + e.pop("__line__", None) + assert not e, f"leftover entries: {e}" + + # Asserts that we can't do in post_init, because they rely on backend-specific info + if structured_delegate is not None: + for key in STRUCTURED_DISPATCH_KEYS: + assert key not in dispatch, ( + f"if structured_delegate, then must not have {key} in dispatch dictionary " + "(it is delegated!)" + ) + + return ( + NativeFunction( + func=func, + use_const_ref_for_mutable_tensors=use_const_ref_for_mutable_tensors, + variants=variants, + structured=structured, + structured_delegate=structured_delegate, + structured_inherits=structured_inherits, + precomputed=precomputed, + autogen=autogen, + ufunc_inner_loop=ufunc_inner_loop, + manual_kernel_registration=manual_kernel_registration, + manual_cpp_binding=manual_cpp_binding, + python_module=python_module, + category_override=category_override, + device_guard=device_guard, + device_check=device_check, + loc=loc, + cpp_no_default_args=cpp_no_default_args, + is_abstract=is_abstract, + has_composite_implicit_autograd_kernel=has_composite_implicit_autograd_kernel, + has_composite_implicit_autograd_nested_tensor_kernel=has_composite_implicit_autograd_nested_tensor_kernel, + has_composite_explicit_autograd_kernel=has_composite_explicit_autograd_kernel, + has_composite_explicit_autograd_non_functional_kernel=has_composite_explicit_autograd_non_functional_kernel, + tags=tags, + namespace=namespace, + ), + backend_metadata, + ) + + def validate_unstructured(self) -> None: + # TODO: probably better to accumulate these errors and report them all + # at once + assert not self.structured, ( + "This function is structured, but there was " + "no valid functional variant of it." + ) + assert self.structured_delegate, ( + "This function delegates to another structured out function, " + "but no valid function was found (the delegate may not exist, or it has the wrong type)" + ) + + # __post_init__ functions in dataclasses can be used to do extra + # validation after construction. + # + # Notice that we don't do any type validation here. In fact, we + # rely exclusively on mypy to check if you've done types correctly! + # Validation is for nontrivial invariants that cannot be (conveniently) + # encoded in the type system. + def __post_init__(self) -> None: + if self.func.arguments.out: + assert self.variants == {Variant.function}, ( + "Native functions with out arguments MUST " + "be declared with only function variant; e.g., variants: function; " + "otherwise you will tickle a Python argument binding bug " + "(which usually manifests itself as the result variable being undefined.)" + ) + if self.structured: + assert self.func.kind() == SchemaKind.out, ( + "Put structured field on the out= " + "variant of a function; did you mean structured_delegate?" + ) + assert ( + self.device_guard + ), "device_guard: False is not respected by structured kernels" + if self.structured_delegate: + assert self.func.kind() != SchemaKind.out, ( + "structured_delegate field not allowed " + "on out= functions; did you mean structured?" + ) + assert ( + self.device_guard + ), "device_guard: False is not respected by structured kernels" + # Technically, with the asserts above, this assert is impossible to + # happen + assert not ( + self.structured and self.structured_delegate + ), "Cannot have both structured and structured_delegate on function" + defaulted_arguments = { + a.name for a in self.func.schema_order_arguments() if a.default is not None + } + invalid_args = set.difference(self.cpp_no_default_args, defaulted_arguments) + assert len(invalid_args) == 0, f"Invalid cpp_no_default_args: {invalid_args}" + if self.structured_inherits is not None: + assert ( + self.structured + ), "structured_inherits must also imply structured: True" + if str(self.func.name).startswith("_foreach"): + assert self.device_check == DeviceCheckType.NoCheck, ( + "foreach kernels fall back to slow path when tensor are on different devices, " + "device_check not allowed to be enabled" + ) + + # NB: if your function accidentally has rand/dropout/... in its name + # but is not actually random, feel free to amend this to special case + if ( + "rand" in str(self.func.name) + or ( + ( + "dropout" in str(self.func.name) + or any( + "dropout" in arg.name for arg in self.func.arguments.flat_all + ) + ) + # Backwards of dropout is typically deterministic + and "backward" not in str(self.func.name) + and str(self.func.name.name) not in ["_cudnn_init_dropout_state"] + ) + or self.func.arguments.has_generator_arg() + ): + assert "nondeterministic_seeded" in self.tags, str(self.func.name) + + @property + def has_composite_kernel(self) -> bool: + return ( + self.has_composite_implicit_autograd_kernel + or self.has_composite_explicit_autograd_kernel + or self.has_composite_explicit_autograd_non_functional_kernel + ) or ( + self.has_composite_implicit_autograd_kernel + and self.has_composite_implicit_autograd_nested_tensor_kernel + ) + + @property + def is_view_op(self) -> bool: + rets = self.func.returns + is_non_mutating_view = len(rets) > 0 and any( + r.annotation is not None and not r.annotation.is_write for r in rets + ) + # See Note [resize_ in Functionalization] for more dtails + is_inplace_view = ( + "inplace_view" in self.tags + and str(self.func.name) != "resize_" + and str(self.func.name) != "resize_as_" + ) + is_wildcard_view = any( + inp.annotation is not None and "*" in inp.annotation.alias_set_after + for inp in self.func.schema_order_arguments() + ) + return is_non_mutating_view or is_inplace_view or is_wildcard_view + + @property + def view_schema_kind(self) -> ViewSchemaKind: + if self.is_view_op and self.func.name.name.inplace: + assert "inplace_view" in self.tags + return ViewSchemaKind.aliasing_inplace + if self.is_view_op: + return ViewSchemaKind.aliasing + else: + return ViewSchemaKind.non_aliasing + + @property + def root_name(self) -> str: + return self.func.name.name.base + + @property + def part_of_structured_group(self) -> bool: + return self.structured or self.structured_delegate is not None + + +class SchemaKind(Enum): + functional = auto() + inplace = auto() + out = auto() + mutable = auto() + scratch = auto() + + +# A structured kernel is guaranteed to have a functional and out variant, and +# optionally an inplace variant. +# +# NB: we create NativeFunctionsGroup *even if* the function is not +# actually annotated structured. Test the structured boolean to see if it +# actually is structured or not. +@dataclass(frozen=True) +class NativeFunctionsGroup: + functional: NativeFunction + inplace: NativeFunction | None + mutable: NativeFunction | None + out: NativeFunction + + @property + def structured(self) -> bool: + # Whether or not the operator has a meta() function. This information is backend-agnostic. + return self.out.structured + + def __post_init__(self) -> None: + test_sig: FunctionSchema = self.functional.func.signature() + for f in self.functions(): + if test_sig != f.func.signature(): + raise AssertionError( + "NativeFunctionsGroup constructed from two NativeFunctions " + f"that don't have matching signatures: {test_sig} != {f.func.signature()}" + ) + + if self.structured != f.part_of_structured_group: + raise AssertionError( + "NativeFunctionsGroup constructed from structured and unstructured " + f"functions: {self.out.func.name} and {f.func.name}" + ) + assert self.functional.func.kind() == SchemaKind.functional + assert self.out.func.kind() == SchemaKind.out + assert self.functional.namespace == self.out.namespace + if self.inplace is not None: + assert self.inplace.func.kind() == SchemaKind.inplace + assert self.inplace.namespace == self.functional.namespace + + if self.mutable is not None: + assert self.mutable.func.kind() == SchemaKind.mutable + assert self.mutable.namespace == self.functional.namespace + # See Note [Overload Ambiguity With Functional Variants] + assert self.functional.func.name.name.functional_overload + + if self.structured: + # For now, structured composite kernels are not supported (need some + # design work to figure out how to make the composite case work) + assert ( + not self.out.has_composite_implicit_autograd_kernel + and not self.out.has_composite_implicit_autograd_nested_tensor_kernel + ) + + assert self.functional.structured_delegate == self.out.func.name, ( + f"{self.functional.func.name} delegates to {self.functional.structured_delegate} " + f"but its actual delegate is {self.out.func.name}" + ) + if self.inplace is not None: + assert self.inplace.structured_delegate == self.out.func.name + + generated_fns = sorted( + [str(f.func.name) for f in self.functions() if "generated" in f.tags] + ) + generated_fns_str = ", ".join(str(x) for x in generated_fns) + expected_generated_fns: set[str] = set() + for f in self.functions(): + expected_generated_fns.update(str(op) for op in f.autogen) + expected_generated_fns_str = ", ".join( + str(x) for x in sorted(expected_generated_fns) + ) + if len(expected_generated_fns) == 0 and len(generated_fns) > 0: + raise RuntimeError( + f"The codegen expects to be able to generate '{generated_fns_str}'." + " In order to generate them however, we expect them to be called out explicitly in the yaml." + f" Please add an 'autogen: {generated_fns_str}' line to the entry for {str(f.func.name)}" + ) + if expected_generated_fns_str != generated_fns_str: + raise RuntimeError( + f"The codegen expects to be able to generate '{generated_fns_str}'." + f" To do so, it expects a line: 'autogen: {generated_fns_str}'." + f" Instead, it found 'autogen: {expected_generated_fns_str}'" + ) + + def signature(self) -> FunctionSchema: + return self.out.func.signature() + + def functions(self) -> Iterator[NativeFunction]: + yield self.functional + yield self.out + if self.inplace is not None: + yield self.inplace + if self.mutable is not None: + yield self.mutable + + @property + def root_name(self) -> str: + return self.functional.root_name + + @staticmethod + def from_dict(d: dict[SchemaKind, NativeFunction]) -> NativeFunctionsGroup | None: + assert d + if len(d) == 1: + return None + d = dict(d) # non-destructive updates please + functional = d.pop(SchemaKind.functional, None) + inplace = d.pop(SchemaKind.inplace, None) + mutable = d.pop(SchemaKind.mutable, None) + out = d.pop(SchemaKind.out, None) + assert not d + assert functional is not None + # There are a few operators which only have functional/inplace variants; + # these don't count as structured for our purposes here + if out is None: + return None + # assuming all variants have the same namespace + return NativeFunctionsGroup( + functional=functional, + inplace=inplace, + mutable=mutable, + out=out, + ) + + +@dataclass(frozen=True) +class BackendMetadata: + # The name of the backend kernel, for a given operator + # for in-tree backends. These names come directly from the 'dispatch" field + # in native_functions.yaml. The dispatch entry is optional; in that + # case, that is equivalent to having written: + # + # dispatch: + # CompositeImplicitAutograd: $operator_name + kernel: str + # Whether or not the operator has a structured kernel implemented, for this particular backend. + # For in-tree backends, they all have the same value for structured- this is listed + # in native_functions.yaml. + # However, external backends like XLA can indendently toggle which ops are structured. + structured: bool + + # The namespace for kernels, default value: DEFAULT_KERNEL_NAMESPACE + cpp_namespace: str + + def supports_symint(self) -> bool: + return "_symint" in self.kernel + + +@dataclass(frozen=True) +class UfuncInnerLoop: + name: str + supported_dtypes: OrderedSet[ScalarType] + # key is stored here because it affects the semantics of name, + # so its helpful to have them together for further processing + ufunc_key: UfuncKey + + @staticmethod + def parse(value: str, ufunc_key: UfuncKey) -> UfuncInnerLoop: + name, supported_dtypes_str = value.split(" ", 1) + assert supported_dtypes_str[0] == "(" + assert supported_dtypes_str[-1] == ")" + supported_dtypes: OrderedSet[ScalarType] = OrderedSet() + for k in supported_dtypes_str[1:-1].split(", "): + supported_dtypes |= ScalarType.parse_set(k) + return UfuncInnerLoop( + name=name, supported_dtypes=supported_dtypes, ufunc_key=ufunc_key + ) + + +# BackendIndex represents a backend. +# The BackendIndex encodes per-operator information that is potentially different +# for each backend. The most obvious example is the name of the kernel +# (the 'dispatch' entry in native_functions.yaml). +# However, there can be other examples of different backends having different information. +# External backends can choose to opt their kernels to be structured independently from in-tree backends, +# which means that this information isn't inherently tied to a NativeFunction- it's different per backend. +@dataclass(frozen=True) +class BackendIndex: + dispatch_key: DispatchKey + # Mainly important for structured kernels, this determines which variant in the operator group is used to implement the others. + # All in-tree ops use out kernels, while XLA uses functional kernels. + use_out_as_primary: bool + # Whether the backend requires a device guard, and device checks. + # For in-tree backends, this is currently just CUDA/HIP + # For out-of-tree backends, this is currently just Intel XPU + device_guard: bool + # Whether the backend is in-tree (CPU/CUDA) or out-of-tree (XLA) + external: bool + # Other backend-specific information that is on a per-operator basis + index: dict[OperatorName, BackendMetadata] + + @staticmethod + def grow_index( + parent_index: dict[DispatchKey, dict[OperatorName, BackendMetadata]], + child_index: dict[DispatchKey, dict[OperatorName, BackendMetadata]], + ) -> None: + for k, v in child_index.items(): + for op_name, metadata in v.items(): + assert ( + op_name not in parent_index[k] + ), f"duplicate operator {op_name} for dispatch key {k}" + parent_index[k][op_name] = metadata + + def primary(self, g: NativeFunctionsGroup) -> NativeFunction: + if self.use_out_as_primary: + return g.out + else: + return g.functional + + def has_kernel(self, g: NativeFunction | NativeFunctionsGroup) -> bool: + m = self.get_kernel(g) + return m is not None + + def get_kernel( + self, g: NativeFunction | NativeFunctionsGroup + ) -> BackendMetadata | None: + if isinstance(g, NativeFunction): + f = g + elif isinstance(g, NativeFunctionsGroup): + f = self.primary(g) + else: + assert_never(g) + if f.func.name not in self.index: + return None + return self.index[f.func.name] + + def native_function_class_name(self) -> str | None: + if self.external: + return f"{str(self.dispatch_key)}NativeFunctions" + else: + # TODO: This discrepancy isn't required; we could also generated + # a class for in-tree kernels. It'll just require carefully + # updating every kernel definition + callsite of every in-tree aten kernel. + return None + + +# The function schema is undoubtedly the most important data structure +# in all of the codegen, as it defines the type signature for operators, +# and most of the code generation we do is type directed (e.g., look at +# the types, decide what to do. Think about how we code generate +# C++ function stubs!) +# +# We will also see in this class the general structure for how we model +# data in this code generation. A few notable properties to point out +# ahead of time: +# +# - These dataclasses are a *lossless* representation of the strings +# they are parsed from. In fact, we assert that given the +# information stored in the dataclass, we can exactly reconstruct +# the string we parsed from (and assert this inside the parse +# definition). There are a few reasons for this: +# +# - If you find that it is difficult to reconstruct the string +# given a dataclass, that is a clue that you are data +# representation is wrong. +# +# - It helps ensure that all relevant information is present +# in the dataclass, so that downstream users aren't tempted +# to reparse the original string to get some information +# that was omitted. +# +# - It forces you to represent the data in-memory in the same way +# it is recorded textually, which makes the dataclasses easier +# to understand for someone who is familiar with the +# textual format. (As a tradeoff, it means you have to model +# the syntax, even when it is inconvenient. But maybe that means +# the syntax is bad!) If you don't understand the internal +# representation, go look at the printing code to see how +# it maps onto the surface syntax! +# +# - It makes it easy to test the parsing code, as parsing code +# that is inconsistent with the string code will fail early +# and loudly. (As a tradeoff, it makes the parsing code a bit +# brittle (in particular, with trivial whitespace changes you +# are likely to trigger an assert error). +# +# In general, try to make the __str__ code as simple as possible +# (even at the cost of more complex parsing logic.) Additionally, +# try to minimize redundancy in data representation. (Precomputed +# fields are OK though: they are defined as a simple function on +# the canonical representation in question.) +# +# - These dataclasses are all frozen; once constructed their +# values never change. This makes it easy to tell where any +# given data came from: just look to the constructor. As a +# tradeoff, you can't easily "decorate" a schema with extra +# information from a post-facto analysis. We impose this +# restriction to make these structures more understandable. +# +@dataclass(frozen=True) +class FunctionSchema: + # The name of the operator this function schema describes. + name: OperatorName + + arguments: Arguments + + # TODO: Need to handle collisions with argument names at some point + returns: tuple[Return, ...] + + @property + def is_mutable(self) -> bool: + def is_write(arg: Argument) -> bool: + if arg.annotation is None: + return False + return arg.annotation.is_write + + # Corresponds to torch._C._FunctionSchema.is_mutable + # See aten/src/ATen/core/function_schema.h (keep these in sync) + return any(is_write(a) for a in self.arguments.flat_all) + + def schema_order_arguments(self) -> Iterator[Argument]: + return itertools.chain( + self.arguments.flat_positional, + self.arguments.flat_kwarg_only, + self.arguments.out, + ) + + decl_re = re.compile(r"(?P[^\(]+)\((?P.*)\) -> (?P.*)") + + @staticmethod + def parse(func: str) -> FunctionSchema: + # We should probably get a proper parser here + decls = FunctionSchema.decl_re.findall(func) + assert len(decls) == 1, f"Invalid function schema: {func}" + ops, args, return_decl = decls[0] + name = OperatorName.parse(ops) + arguments = Arguments.parse(args) + returns = parse_returns(return_decl) + r = FunctionSchema(name=name, arguments=arguments, returns=returns) + assert str(r) == func, f"{str(r)} != {func}" + return r + + def returns_are_aliased(self) -> bool: + # We assert earlier that schemas can't have a mix of aliased and non-aliased returns + return any( + r + for r in self.returns + if r.annotation is not None and r.annotation.is_write + ) + + def __post_init__(self) -> None: + for arg, ret in zip(self.arguments.out, self.returns): + assert arg.annotation == ret.annotation, ( + "Out arguments must have matching return Tensor; furthermore, " + "the ith-argument needs to correspond to the ith return" + ) + # We also enforce that if you have any mutable, positional args, then they are not returned. + # This makes it easier to group these functions properly with their functional/out= counterparts. + for a in self.arguments.post_self_positional_mutable: + assert not any( + a.annotation == r.annotation for r in self.returns + ), f"If you have a schema with mutable positional args, we expect them to not be returned. schema: {str(self)}" + # Invariant: we expect out arguments to appear as keyword arguments in the schema. + # This means that all mutable returns should be aliased to a keyword argument + # (except for "self", which we explicitly don't treat as an out argument because of its use in methods) + # See Note [is_out_fn] + out_and_self = list(self.arguments.out) + [ + arg for arg in self.arguments.flat_positional if arg.name == "self" + ] + mutable_returns = [ + ret + for ret in self.returns + if ret.annotation is not None and ret.annotation.is_write + ] + immutable_returns = [ + ret + for ret in self.returns + if ret.annotation is None or not ret.annotation.is_write + ] + # Some assertions: We don't want any functions with a return type of "-> (Tensor(a!), Tensor)", + # because: + # (1) It's more annoying to handle properly + # (2) It's unnecessary - you can't method-chain on the first (mutated) output because it's part of a tuple. + # Instead, we expect the (a!) argument to not be returned. + assert ( + len(mutable_returns) == 0 or len(immutable_returns) == 0 + ), f"NativeFunctions must have either only mutable returns, or only immutable returns. Found: {str(self)}" + for ret in mutable_returns: + assert any(ret.annotation == arg.annotation for arg in out_and_self), ( + 'All mutable returns must be aliased either to a keyword argument, or to "self". ' + "Did you forget to mark an out argument as keyword-only?" + ) + if self.arguments.out: + # out= ops that return their mutable inputs are only really useful for method chaining. + # And method chaining is only really useful if the thing you're returning is a plain Tensor. + # So ideally, we'd enforce that out= ops with a single plain mutable tensor should return the tensor, + # and all other types of out= op schemas should return void. + # There are a bunch of existing out= ops that return tuples of tensors though, so we're stuck with allowing that. + if any(a.type != BaseType(BaseTy.Tensor) for a in self.arguments.out): + assert ( + len(self.returns) == 0 + ), "out= ops that accept tensor lists as out arguments " + "are expected to have no return type (since you can't do method chaining on them)" + else: + # mutable keyword arguments whose name has _scratch_ prefix are + # scratch tensors for memory planning and should not be returned + assert ( + len( + [ + arg + for arg in self.arguments.out + if not arg.name.startswith("_scratch_") + ] + ) + == len(self.returns) + ), "Must return as many arguments as there are out arguments, or no return at all" + + if self.name.name.inplace: + self_a = self.arguments.self_arg + assert ( + self_a + and self_a.argument.annotation + and self_a.argument.annotation.is_write + ) + if self_a.argument.type == BaseType(BaseTy.Tensor): + # All inplace ops with an ordinary `Tensor self` argument should return self, + # to allow for method chaining. + assert ( + len(self.returns) == 1 + and self.returns[0].annotation == self_a.argument.annotation + ) + else: + # You can't method chain on non-tensor self arguments though (like a list[Tensor]) + # so in all other cases we expect the return type to be none. + assert len(self.returns) == 0 + + if self.arguments.tensor_options is not None: + assert self.kind() == SchemaKind.functional, ( + "Found an operator that is not functional or out variant, but has tensor options arguments." + "This is not allowed- tensor options arguments are only allowed for factory functions." + f"schema: {str(self)}" + ) + if self.is_functional_fn(): + assert self.kind() == SchemaKind.functional, ( + "Found an operator that is not functional, but its overload contains the string 'functional'." + "This is a special keyword in the codegen, please use a different overload name." + f"schema: {str(self)}" + ) + + def is_functional_fn(self) -> bool: + return "functional" in self.name.overload_name + + def is_out_fn(self) -> bool: + # Note [is_out_fn] + # + # out functions are the variants which take an explicit out= argument + # to populate into. We need to know if a schema corresponds to an + # out function for several reasons: + # + # - They codegen differently in C++ API + # - codegen to at::add_out rather than at::add + # - out argument is moved to front of C++ argument list + # + # out functions are DEFINED to be any function with a keyword-only + # argument that is mutable. In principle, this could lead to a + # false positive if you define a function that mutates a + # kwarg only argument, but this isn't the "true" output of this + # function. A more robust definition that would work in this + # case would also look at: + # + # - The output types. Out functions take in the arguments + # they mutate and then return them again; this is sort + # of "definitionally" what makes something an out function. + # Historically, we DO check this for consistency. + # - Correspondence with pure variant. An out function + # should have a signature equivalent to its pure variant, + # but just with extra kwargs for the output elements. This + # is difficult to actually check for and historically + # we only do this check in tools/ + return bool(self.arguments.out) + + def kind(self) -> SchemaKind: + """ + What kind of schema is this? A functional schema is one + that returns a newly allocated output; an inplace schema + modifies the self argument inplace; an out schema writes + the result into an explicitly provided out argument. + """ + is_out = bool(self.arguments.out) + is_scratch = bool( + [arg for arg in self.arguments.out if arg.name.startswith("_scratch_")] + ) + is_inplace = self.name.name.inplace + is_mutable = any( + a.annotation is not None and a.annotation.is_write + for a in self.arguments.post_self_positional + ) + assert not (is_out and is_inplace) + # out= and inplace schemas can also have post_self_positional mutable args, + # but we give precedence to out= and inplace when deciding the schema kind. + # Tradeoff: we probably don't want to have to teach codegen that looks at inplace ops + # to also worry about mutable post_self_positional arguments, + # but it seems like a much bigger lift to classify them has having a new schema kind. + # The number of ops that fit in this strange category is small enough that + # we can probably manually write code for them instead of forcing the codegen to handle them. + if is_inplace: + return SchemaKind.inplace + elif is_scratch: + assert ( + is_out + ), "invariant: all scratch operators are expected to be out= operators too" + return SchemaKind.scratch + elif is_out: + assert not is_scratch, "We should not categorize a scratch op as an out variant. Check if the order of if statements are expected!" # noqa: B950 + return SchemaKind.out + elif is_mutable: + return SchemaKind.mutable + else: + return SchemaKind.functional + + # For every return: + # - If the return aliases an input, we return the input name + # - Otherwise, we return None. + # If return names were enforced to be consistent with aliasing information, then we wouldn't need this. + def aliased_return_names(self) -> list[str | None]: + outs: list[str | None] = [] + for r in self.returns: + aliased_args = [ + a + for a in self.arguments.flat_all + if a.annotation is not None and a.annotation == r.annotation + ] + if len(aliased_args) == 0: + outs.append(None) + elif len(aliased_args) == 1: + outs.append(aliased_args[0].name) + else: + aliased_names = ", ".join(a.name for a in aliased_args) + raise AssertionError( + f"Found a return ({r.name})that aliases multiple inputs ({aliased_names})" + ) + return outs + + def signature( + self, + *, + strip_default: bool = False, + strip_view_copy_name: bool = False, + keep_return_names: bool = False, + ) -> FunctionSchema: + """ + Certain schemas are 'related', in that they are simply + inplace/out/functional versions of the same function. This method + factors these schemas into the "core" functional signature which + is equal across all versions. + + Here is what normalization happens to the schema to convert + it to a signature: + - The overload name is stripped (name is retained, since + it expresses semantic content about what the function does) + - Inplace is set False + - Out arguments are stripped + - Mutable post_self_positional args are converted to returns + - Mutability annotations are stripped (this is sound + because you cannot overload on mutability annotation) + - Return names are stripped since they are not overloadable and + some variants have return names but some not + - TensorOptions are dropped + because out= variants of factory functions don't include them + (and we want to be able to pair up factory functions with their out variants) + + Finally, we want to be able to pair up related "view" and their + corresponding "view_copy" operators. We do this by optionally + stripping the trailing "_copy" from the base name. + + Example of a mutable op before and after: + + f.func (Mutable operator): + _fused_moving_avg_obs_fq_helper(Tensor self, Tensor observer_on, Tensor fake_quant_on, Tensor(a!) running_min, Tensor(b!) running_max, Tensor(c!) scale, Tensor(d!) zero_point, float averaging_const, int quant_min, int quant_max, int ch_axis, bool per_row_fake_quant=False, bool symmetric_quant=False) -> (Tensor output, Tensor mask) # noqa: B950 + + f.func (Corresponding functional operator): + _fused_moving_avg_obs_fq_helper.functional(Tensor self, Tensor observer_on, Tensor fake_quant_on, Tensor running_min, Tensor running_max, Tensor scale, Tensor zero_point, float averaging_const, int quant_min, int quant_max, int ch_axis, bool per_row_fake_quant=False, bool symmetric_quant=False) -> (Tensor output, Tensor mask, Tensor running_min_out, Tensor running_max_out, Tensor scale_out, Tensor zero_point_out) # noqa: B950 + + f.func.signature() output: + _fused_moving_avg_obs_fq_helper(Tensor self, Tensor observer_on, Tensor fake_quant_on, Tensor running_min, Tensor running_max, Tensor scale, Tensor zero_point, float averaging_const, int quant_min, int quant_max, int ch_axis, bool per_row_fake_quant=False, bool symmetric_quant=False) -> (Tensor, Tensor, Tensor, Tensor, Tensor, Tensor) # noqa: B950 + """ + + def strip_ret_annotation(r: Return) -> Return: + return Return( + name=r.name if keep_return_names else None, + type=r.type, + annotation=None, + ) + + base_name = self.name.name.base + if strip_view_copy_name: + if base_name.endswith("_copy"): + base_name = base_name.replace("_copy", "") + elif base_name.endswith("_scatter"): + base_name = base_name.replace("scatter", "inverse") + + # find mutable inputs that are not originally returned, and convert them to returns + returns_from_mutable_inputs = tuple( + # When we're grouping functions we strip the return names, + # but when we're generating the actual functional variants then we follow + # a convention for what to name the returns + Return( + name=f"{a.name}_out" if keep_return_names else None, + type=a.type, + annotation=None, + ) + for a in itertools.chain( + # Order is important here (otherwise e.g. inplace with mutable args + # and out= with mutable args won't have the same signature) + [self.arguments.self_arg.argument] + if self.arguments.self_arg is not None + else [], + self.arguments.out, + self.arguments.post_self_positional, + ) + if a.annotation is not None + and a.annotation.is_write + and not any(a.annotation == r.annotation for r in self.returns) + ) + original_returns = tuple(map(strip_ret_annotation, self.returns)) + # Ordering is important here. We expect the "mutable input" returns to come last. + returns = original_returns + returns_from_mutable_inputs + + args_sig = self.arguments.signature(strip_default=strip_default) + # See Note [bernoulli.p schema] + if str(self.name) == "bernoulli.p": + args_sig = Arguments.parse(str(args_sig).replace("float p", "float p=0.5")) + + return FunctionSchema( + name=OperatorName( + name=BaseOperatorName( + base=base_name, + inplace=False, + dunder_method=self.name.name.dunder_method, + ), + overload_name="", # stripped + ), + arguments=args_sig, + returns=returns, + ) + + def view_signature(self) -> FunctionSchema: + return self.signature(strip_view_copy_name=True) + + def with_name(self, name: OperatorName) -> FunctionSchema: + return FunctionSchema( + name=name, + arguments=self.arguments, + returns=self.returns, + ) + + @property + def modifies_arguments(self) -> bool: + return self.kind() in [SchemaKind.inplace, SchemaKind.out, SchemaKind.mutable] + + def has_symint(self) -> bool: + return self.arguments.has_symint_arg() + + def __str__(self) -> str: + all_arguments_str = str(self.arguments) + if len(self.returns) == 1: + returns = str(self.returns[0]) # omit parentheses + else: + returns = "(" + ", ".join(map(str, self.returns)) + ")" + return f"{self.name}({all_arguments_str}) -> {returns}" + + +# Here is the rest of the data model, described more briefly. + + +# Simplified version for what actually shows up in built-ins. +# Look at alias_info.h for expanded syntax. If you need the structure, +# you also need to make this structure recursive so it can be lined +# up with the type components too. For primitives this isn't really +# necessary +@dataclass(frozen=True) +class Annotation: + # Typically only has one element. Not actually a set so + # we can conveniently assume it is canonically ordered + alias_set: tuple[str, ...] + is_write: bool + alias_set_after: tuple[str, ...] + + @staticmethod + def parse(ann: str) -> Annotation: + # TODO: implement a proper parser if this gets more ugly + # Regex Explanation: + # Example: "a! -> a|b" + # Group #1: alias before optional '|', required. Matches the first + # character 'a' in the example + # Group #2: optional alias set after optional '|', matches empty string + # in the example + # Group #3: optional "is write" flag, matches '!' in the example. + # Group #4: optional section containing arrow, matches " -> a|b" in the + # example. + # Group #5: optional alias after set, supports wildcard, matches "a|b" + # in the example. + # Group #6: optional sub-section of alias after set, matches "|b" in the + # example. + m = re.match(r"^([a-z])(\|[a-z])*(!?)( -> (\*|[a-z](\|[a-z])*))?$", ann) + + assert m is not None, f"unrecognized alias annotation {ann}" + before_alias = m.group(1) + (m.group(2) if m.group(2) else "") + alias_set = tuple(before_alias.split("|")) + is_write = m.group(3) == "!" + assert not ( + is_write and len(alias_set) > 1 + ), f"alias set larger than 1 is not mutable, got {ann} instead." + after_set = tuple(m.group(5).split("|")) if m.group(5) else () + assert not ( + len(before_alias) > 1 and len(after_set) > 1 + ), f"before alias set and after alias set cannot be larger than 1 at the same time, got {ann} instead." + r = Annotation( + alias_set=alias_set, is_write=is_write, alias_set_after=after_set + ) + assert str(r) == ann, f"{r} != {ann}" + return r + + def __str__(self) -> str: + alias_set = "|".join(self.alias_set) + if self.is_write: + alias_set = f"{alias_set}!" + alias_set_after = "|".join(self.alias_set_after) + if alias_set_after: + alias_set = f'{alias_set}{" -> "}{alias_set_after}' + return alias_set + + +# The base class for the type system. This is also loosely modeled +# off of jit_type.h, but we've simplified the hierarchy to focus +# in on the aspects of the type system that matter for code generation +# (for example, there's no SingleElementType subclass anymore). +# You never actually construct a Type; usually it's going to be one +# of the subclasses. If Python had ADTs this would be one! +@dataclass(frozen=True) +class Type: + @staticmethod + def parse(t: str) -> Type: + r = Type._parse(t) + assert str(r) == t, f"{r} != {t}" + return r + + @staticmethod + def _parse(t: str) -> Type: + m = re.match(r"^(.+)\?$", t) + if m is not None: + return OptionalType(Type.parse(m.group(1))) + m = re.match(r"^(.+)\[([0-9]+)?\]$", t) + if m is not None: + size = int(m.group(2)) if m.group(2) is not None else None + return ListType(elem=Type.parse(m.group(1)), size=size) + + # '__torch__.torch.classes.' is the prefix for custom class + m = re.match(r"^__torch__\.torch\.classes\.([a-zA-Z0-9_.]+)$", t) + if m is not None: + return CustomClassType(m.group(1)) + try: + return BaseType(BaseTy[t]) + except KeyError as e: + raise RuntimeError(f"unrecognized type {t}") from e + + def __str__(self) -> str: + raise NotImplementedError + + # WARNING: These concepts are not very well-defined. For example, + # is "int?" nullable? How about "int?[]". They are defined + # so we can conveniently generate legacy Declarations.yaml but + # really we should probably just remove these at some point + + def is_base_ty_like(self, base_ty: BaseTy) -> bool: + raise NotImplementedError + + def is_tensor_like(self) -> bool: + return self.is_base_ty_like(BaseTy.Tensor) + + def is_generator_like(self) -> bool: + return self.is_base_ty_like(BaseTy.Generator) + + def is_symint_like(self) -> bool: + return self.is_base_ty_like(BaseTy.SymInt) + + def is_nullable(self) -> bool: + raise NotImplementedError + + def is_list_like(self) -> ListType | None: + raise NotImplementedError + + +# Base types are simple, atomic types with no further structure +class BaseTy(Enum): + Generator = auto() + ScalarType = auto() + Tensor = auto() + int = auto() + Dimname = auto() + DimVector = auto() + float = auto() + str = auto() + bool = auto() + Layout = auto() + Device = auto() + DeviceIndex = auto() + Scalar = auto() + MemoryFormat = auto() + QScheme = auto() + Storage = auto() + Stream = auto() + SymInt = auto() + SymBool = auto() + GraphModule = auto() + + +@dataclass(frozen=True) +class BaseType(Type): + name: BaseTy + + def __str__(self) -> str: + return f"{self.name.name}" + + def is_base_ty_like(self, base_ty: BaseTy) -> bool: + return self.name == base_ty + + def is_nullable(self) -> bool: + return False + + def is_list_like(self) -> ListType | None: + return None + + def is_symint_like(self) -> bool: + return self.name == BaseTy.SymInt + + +# Optional types may be specified, or may also be validly given None +@dataclass(frozen=True) +class OptionalType(Type): + elem: Type + + def __str__(self) -> str: + return f"{self.elem}?" + + def is_base_ty_like(self, base_ty: BaseTy) -> bool: + return self.elem.is_base_ty_like(base_ty) + + def is_symint_like(self) -> bool: + return self.elem.is_symint_like() + + def is_nullable(self) -> bool: + return True + + def is_list_like(self) -> ListType | None: + return self.elem.is_list_like() + + +# A type representing a PyTorch custom class +@dataclass(frozen=True) +class CustomClassType(Type): + class_name: str + + def __str__(self) -> str: + """ + Return the class name will prefix __torch__.torch.classes + """ + return f"__torch__.torch.classes.{self.class_name}" + + def is_base_ty_like(self, base_ty: BaseTy) -> bool: + return False + + def is_symint_like(self) -> bool: + return False + + def is_nullable(self) -> bool: + """ + Assume a custom class is not nullable. + """ + return False + + def is_list_like(self) -> ListType | None: + return None + + +# List types specify that we may have multiples of an element. We +# also support explicit sizes on list types, but these have +# some nontrivial semantics! (However, for C++ API purposes, explicit +# sizes are mostly erased from the type system.) +# +# DANGER WILL ROBINSON: C++ elaboration depends on elem type; e.g., +# int[] elaborates differently than bool[3]! +@dataclass(frozen=True) +class ListType(Type): + elem: Type + size: int | None + + def __str__(self) -> str: + size = f"{self.size}" if self.size else "" + return f"{self.elem}[{size}]" + + def is_base_ty_like(self, base_ty: BaseTy) -> bool: + return self.elem.is_base_ty_like(base_ty) + + def is_symint_like(self) -> bool: + return self.elem.is_symint_like() + + def is_nullable(self) -> bool: + return self.elem.is_nullable() + + def is_list_like(self) -> ListType | None: + return self + + +@dataclass(frozen=True) +class Argument: + # NB: I didn't put kwarg_only as a boolean field here, unlike + # c10::Argument, so that printing works correctly + + name: str + type: Type + default: str | None + + # The semantics of the annotation field are a little strange. + # + # Alias annotations parametrize Tensors (since Tensors are the only things + # that can alias.) This motivates why I write Tensor(a!)? (and not, for + # example, Tensor?(a!)), because the (a!) describes aliasing on the tensor, + # which may be optional (i.e., the alias annotation should bind first to + # Tensor, before the optional postfix annotation). + # + # However, despite being a property of Tensor, we (and c10::Argument) + # store the annotation at the top level of the Argument, rather than + # inside the embedded Tensor type. In the C++ version of this + # class, we then go through great lengths to mimic the type + # structure in the annotation structure so we can correlate + # annotations with types. + # + # Now, it turns out, in all applications in code generation, the + # structure of annotated types is very simple. So we just hard + # code it here. But if we ever do get anything more complex, this + # model will have to change! + annotation: Annotation | None + + @property + def alias_info(self) -> Annotation | None: + return self.annotation + + @staticmethod + def parse(arg: str) -> Argument: + name: str + default: str | None + assert " " in arg, f"illegal argument '{arg}'" + if "=" in arg: + assert arg.count("=") == 1, f"illegal argument with default value: '{arg}'" + type_and_annot_and_name, default = arg.split("=") + type_and_annot, name = type_and_annot_and_name.rsplit(" ", 1) + name_and_default = f"{name}={default}" + else: + type_and_annot, name_and_default = arg.rsplit(" ", 1) + name = name_and_default + default = None + # TODO: deduplicate annotation matching with Return + match = re.match(r"Tensor\((.+)\)(.*)", type_and_annot) + annotation: Annotation | None + if match: + # If you update this, make sure the __str__ still works too + assert match.group(2) in [ + "", + "?", + "[]", + ], "unrecognized alias analysis form with Tensor" + type_s = "Tensor" + match.group(2) + annotation = Annotation.parse(match.group(1)) + else: + type_s = type_and_annot + annotation = None + type = Type.parse(type_s) + r = Argument( + name=name, + type=type, + default=default, + annotation=annotation, + ) + assert str(r) == arg, f"{str(r)} != {arg}" + return r + + @property + def is_write(self) -> bool: + return self.annotation is not None and self.annotation.is_write + + def __str__(self) -> str: + type = f"{self.type}" + if self.annotation: + assert type in ["Tensor", "Tensor?", "Tensor[]"] + type = type.replace("Tensor", f"Tensor({self.annotation})") + if self.name is None: + return type + else: + mb_default = "" + if self.default: + mb_default = f"={self.default}" + return f"{type} {self.name}{mb_default}" + + +@dataclass(frozen=True) +class Return: + name: str | None + type: Type + annotation: Annotation | None + + @property + def alias_info(self) -> Annotation | None: + return self.annotation + + @staticmethod + def parse(arg: str) -> Return: + name: str | None + if " " in arg: + type_and_annot, name = arg.rsplit(" ", 1) + else: + type_and_annot = arg + name = None + match = re.match(r"Tensor\((.+)\)(.*)", type_and_annot) + annotation: Annotation | None + if match: + # If you update this, make sure the __str__ still works too + assert match.group(2) in [ + "", + "?", + "[]", + ], "unrecognized alias analysis form with Tensor" + type_s = "Tensor" + match.group(2) + annotation = Annotation.parse(match.group(1)) + else: + type_s = type_and_annot + annotation = None + type = Type.parse(type_s) + r = Return( + name=name, + type=type, + annotation=annotation, + ) + assert str(r) == arg, f"{str(r)} != {arg}" + return r + + @property + def is_write(self) -> bool: + return self.annotation is not None and self.annotation.is_write + + def __str__(self) -> str: + type = f"{self.type}" + if self.annotation: + assert type in ["Tensor", "Tensor?", "Tensor[]"] + type = type.replace("Tensor", f"Tensor({self.annotation})") + if self.name is None: + return type + else: + return f"{type} {self.name}" + + +# Represents the self argument for functions that may be methods +@dataclass(frozen=True) +class SelfArgument: + argument: Argument + + +# Bundle of arguments that represent a TensorOptions. This is mostly +# relevant for the public C++ API but we bake it into the core data +# model because other APIs often have to interact with it +@dataclass(frozen=True) +class TensorOptionsArguments: + dtype: Argument + layout: Argument + device: Argument + pin_memory: Argument + + def all(self) -> Sequence[Argument]: + return [self.dtype, self.layout, self.device, self.pin_memory] + + +@dataclass(frozen=True) +class Arguments: + # pre_self_positional is usually empty, but is notably non-empty + # for where.self, where the condition argument comes before the + # self argument + pre_self_positional: tuple[Argument, ...] + self_arg: SelfArgument | None + post_self_positional: tuple[Argument, ...] + + pre_tensor_options_kwarg_only: tuple[Argument, ...] + tensor_options: TensorOptionsArguments | None + # post_tensor_options is typically memory format, which should be + # part of tensor options but isn't right now, and is usually + # placed after the tensor options arguments + post_tensor_options_kwarg_only: tuple[Argument, ...] + + # Unlike in the previous codegen, we have factored out 'out' arguments + # in the canonical representation, removing them from kwarg + # arguments. This choice is justified by numerous downstream + # transformations which treat out arguments specially; additionally, + # you can see that canonicity is not violated! + out: tuple[Argument, ...] # these are also kwarg-only + + @property + def flat_non_out(self) -> Sequence[Argument]: + ret: list[Argument] = [] + ret.extend(self.flat_positional) + ret.extend(self.flat_kwarg_only) + return ret + + @property + def flat_positional(self) -> Sequence[Argument]: + ret: list[Argument] = [] + ret.extend(self.pre_self_positional) + if self.self_arg is not None: + ret.append(self.self_arg.argument) + ret.extend(self.post_self_positional) + return ret + + @property + def post_self_positional_mutable(self) -> Sequence[Argument]: + return [a for a in self.post_self_positional if a.is_write] + + # NB: doesn't contain out arguments + @property + def flat_kwarg_only(self) -> Sequence[Argument]: + ret: list[Argument] = [] + ret.extend(self.pre_tensor_options_kwarg_only) + if self.tensor_options is not None: + ret.extend(self.tensor_options.all()) + ret.extend(self.post_tensor_options_kwarg_only) + return ret + + @property + def flat_all(self) -> Sequence[Argument]: + ret: list[Argument] = [] + ret.extend(self.flat_positional) + ret.extend(self.flat_kwarg_only) + ret.extend(self.out) + return ret + + @property + def non_out( + self, + ) -> Sequence[Argument | SelfArgument | TensorOptionsArguments]: + ret: list[Argument | SelfArgument | TensorOptionsArguments] = [] + ret.extend(self.positional) + ret.extend(self.kwarg_only) + return ret + + @property + def positional(self) -> Sequence[Argument | SelfArgument]: + ret: list[Argument | SelfArgument] = [] + ret.extend(self.pre_self_positional) + if self.self_arg is not None: + ret.append(self.self_arg) + ret.extend(self.post_self_positional) + return ret + + @property + def kwarg_only(self) -> Sequence[Argument | TensorOptionsArguments]: + ret: list[Argument | TensorOptionsArguments] = [] + ret.extend(self.pre_tensor_options_kwarg_only) + if self.tensor_options is not None: + ret.append(self.tensor_options) + ret.extend(self.post_tensor_options_kwarg_only) + return ret + + @property + def all(self) -> Sequence[Argument | SelfArgument | TensorOptionsArguments]: + ret: list[Argument | SelfArgument | TensorOptionsArguments] = [] + ret.extend(self.positional) + ret.extend(self.kwarg_only) + ret.extend(self.out) + return ret + + def mutable_arg_names(self) -> list[str]: + return [ + a.name + for a in self.flat_all + if a.annotation is not None and a.annotation.is_write + ] + + def has_tensor_arg(self) -> bool: + return any(a.type.is_tensor_like() for a in self.flat_non_out) + + def has_symint_arg(self) -> bool: + return any(a.type.is_symint_like() for a in self.flat_non_out) + + def has_generator_arg(self) -> bool: + return any(a.type.is_generator_like() for a in self.flat_non_out) + + def signature(self, *, strip_default: bool = False) -> Arguments: + # dataclasses.replace could be used here, but it is less + # type safe so for now I've opted to type everything out + def strip_arg_annotation(a: Argument) -> Argument: + return Argument( + name=a.name, + type=a.type, + default=a.default if not strip_default else None, + annotation=None, + ) + + return Arguments( + pre_self_positional=tuple( + map(strip_arg_annotation, self.pre_self_positional) + ), + self_arg=SelfArgument(strip_arg_annotation(self.self_arg.argument)) + if self.self_arg is not None + else None, + post_self_positional=tuple( + map(strip_arg_annotation, self.post_self_positional) + ), + # Since TensorOptions are dropped, the post_tensor_options_kwargs are + # converted to pre_tensor_options_kwargs + pre_tensor_options_kwarg_only=tuple( + map(strip_arg_annotation, self.pre_tensor_options_kwarg_only) + ) + + tuple(map(strip_arg_annotation, self.post_tensor_options_kwarg_only)), + # TensorOptions are dropped in signature, + # so we can pair factory functions with their out= variants. + tensor_options=None, + post_tensor_options_kwarg_only=(), + # out arguments are dropped in signature + out=(), + ) + + def remove_self_annotation(self) -> Arguments: + assert self.self_arg is not None + return dataclasses.replace( + self, + self_arg=SelfArgument( + dataclasses.replace(self.self_arg.argument, annotation=None) + ), + ) + + def with_out_args(self, outs: list[Argument]) -> Arguments: + assert len(self.out) == 0 + return dataclasses.replace( + self, + out=tuple(outs), + ) + + @staticmethod + def _preparse(args: str) -> tuple[list[Argument], list[Argument], list[Argument]]: + positional: list[Argument] = [] + kwarg_only: list[Argument] = [] + out: list[Argument] = [] + arguments_acc = positional + + # TODO: Use a real parser here; this will get bamboozled + # by signatures that contain things like std::array (note the space) + for arg in args.split(", "): + if not arg: + continue + if arg == "*": + assert ( + arguments_acc is positional + ), "invalid syntax: kwarg-only specifier * can only occur once" + arguments_acc = kwarg_only + continue + parg = Argument.parse(arg) + # Currently, we rely directly on the invariant that there are NO + # kwarg-only mutating arguments. If you want to relax this, + # we will need a more semantic way of matching that takes + # into account return arguments. In that case, you will have + # to manage out computation a level up, in FunctionSchema. See Note + # [is_out_fn] + if parg.annotation is not None and parg.annotation.is_write: + if arguments_acc is positional: + pass # do nothing + elif arguments_acc is kwarg_only: + arguments_acc = out + else: + assert arguments_acc is not out + arguments_acc.append(parg) + + return positional, kwarg_only, out + + @staticmethod + def parse(args: str) -> Arguments: + """ + Input: 'int x, int y, int z' + """ + + # We do this in two phases. First we parse into three + # main categories: positional, kwarg_only, out. + # Then, we reparse positional and kwarg_only to separate + # out the self argument and tensor options arguments. + + positional, kwarg_only, out = Arguments._preparse(args) + + # Split self argument + self_ix = None + for i, a in enumerate(positional): + if a.name == "self": + self_ix = i + break + pre_self_positional: list[Argument] + self_arg: SelfArgument | None + post_self_positional: list[Argument] + if self_ix is not None: + pre_self_positional = positional[:self_ix] + self_arg = SelfArgument(positional[self_ix]) + post_self_positional = positional[self_ix + 1 :] + else: + pre_self_positional = [] + self_arg = None + post_self_positional = positional + + # Group tensor options arguments + pre_tensor_options_kwarg_only: list[Argument] = [] + tensor_options: TensorOptionsArguments | None = None + post_tensor_options_kwarg_only: list[Argument] = [] + kwarg_only_acc = pre_tensor_options_kwarg_only + + def pred(name: str, ty: Type) -> Callable[[Argument], bool]: + return lambda a: a.name == name and a.type in [ty, OptionalType(ty)] + + predicates = [ # order matters + pred("dtype", Type.parse("ScalarType")), + pred("layout", Type.parse("Layout")), + pred("device", Type.parse("Device")), + pred("pin_memory", Type.parse("bool")), + ] + + i = 0 + while i < len(kwarg_only): + # If there is enough space... + if i <= len(kwarg_only) - len(predicates): + # And the next len(predicates) arguments look like TensorOptions arguments + if all( + p(a) + for p, a in zip(predicates, kwarg_only[i : i + len(predicates)]) + ): + assert kwarg_only_acc is pre_tensor_options_kwarg_only + # Group them together as one argument + tensor_options = TensorOptionsArguments( + dtype=kwarg_only[i], + layout=kwarg_only[i + 1], + device=kwarg_only[i + 2], + pin_memory=kwarg_only[i + 3], + ) + i += len(predicates) + kwarg_only_acc = post_tensor_options_kwarg_only + continue + kwarg_only_acc.append(kwarg_only[i]) + i += 1 + + return Arguments( + pre_self_positional=tuple(pre_self_positional), + self_arg=self_arg, + post_self_positional=tuple(post_self_positional), + pre_tensor_options_kwarg_only=tuple(pre_tensor_options_kwarg_only), + tensor_options=tensor_options, + post_tensor_options_kwarg_only=tuple(post_tensor_options_kwarg_only), + out=tuple(out), + ) + + def __str__(self) -> str: + all_arguments: list[str] = [] + all_arguments.extend(map(str, self.flat_positional)) + if self.flat_kwarg_only or self.out: + all_arguments.append("*") + all_arguments.extend(map(str, self.flat_kwarg_only)) + all_arguments.extend(map(str, self.out)) + return ", ".join(all_arguments) + + def __post_init__(self) -> None: + # TODO: These invariants are weirdly asymmetric? + # TODO: Fancier types? + if self.self_arg is None: + assert not self.pre_self_positional + if self.tensor_options is None: + assert not self.post_tensor_options_kwarg_only + + # We don't allow any of the following to have argument annotations, + # to keep things simple. + mutable_pre_self_positionals = [ + a + for a in self.pre_self_positional + if a.annotation is not None and a.annotation.is_write + ] + assert ( + len(mutable_pre_self_positionals) == 0 + ), "mutable pre_self_positional arguments are not currently supported in the schema" + + +# Names that validly are __iXXX__ indicating inplace operations. +# Taken from https://www.python.org/dev/peps/pep-0203/#new-methods +# NB: PyTorch hasn't actually implemented all of these +AUGMENTED_ASSIGNMENT_NAMES = [ + "add", + "sub", + "mul", + "div", + "mod", + "pow", + "lshift", + "rshift", + "and", + "xor", + "or", +] + + +# A BaseOperatorName is what we think of the operator name, without +# the overload name. Unusually, we don't represent this as just a +# string; instead, we directly represent a few important semantic +# bits of information we derive from the string: namely whether +# or not it's inplace (add_) and whether or not it's a double-underscore +# method (__add__) +@dataclass(frozen=True) +class BaseOperatorName: + base: str + inplace: bool + dunder_method: bool + # Note [Overload Ambiguity With Functional Variants] + # A handful of operators have both a "mutable" and a "functional" variant. + # (native_batch_norm is a good example, although this isn't the case today). + # For those operators, the mutable and functional variant take in the same set of + # arguments, but have different alias annotations. + # this makes it ambiguous when you try to resolve an OverloadPacket into an overload, + # given a set of input arguments. + # + # So instead of making the "functional" variant in this case a real overload, e.g: + # native_batch_norm (mutable variant) + # native_batch_norm.functional (functional variant) + # we make it a new base operator, + # native_batch_norm_functional (functional variant) + # + # In an ideal world, we would probably invert this so the operators were: + # native_batch_norm.mutable (mutable variant) + # native_batch_norm (functional variant) + # + # Doing that is BC-breaking though, so we're stuck with the above modeling. + functional_overload: bool = False + + @staticmethod + def parse(op: str) -> BaseOperatorName: + assert op != "" + assert not op.endswith("_out"), ( + "_out suffix is reserved and not permitted for operator names; " + "did you mean to specify an out overload name instead?" + ) + m = re.match(r"^__([^_]+)__$", op) + if m is not None: + dunder_method = True + base = m.group(1) + if any(base == f"i{n}" for n in AUGMENTED_ASSIGNMENT_NAMES): + inplace = True + base = base[1:] + else: + inplace = False + # temporary, this is not intrinsically true but + # has been historically true for dunder methods + # we support (but, if we ever got, say, __int__, this would + # be wrong!) + assert base[0] != "i" + else: + dunder_method = False + base = op + if base[-1] == "_": + inplace = True + base = base[:-1] + else: + inplace = False + + # See Note [Overload Ambiguity With Functional Variants] + functional_suffix = "_functional" + if base.endswith(functional_suffix): + functional_overload = True + base = base[: -len(functional_suffix)] + # This seems complicated and unnecessary, so banning dunder methods + # for now on ops that have a functional + mutable variant (like native_batch_norm). + assert not dunder_method and not inplace + else: + functional_overload = False + + r = BaseOperatorName( + base=base, + inplace=inplace, + dunder_method=dunder_method, + functional_overload=functional_overload, + ) + assert str(r) == op, f"{str(r)} != {op}" + return r + + def __str__(self) -> str: + if self.dunder_method: + i = "i" if self.inplace else "" + return f"__{i}{self.base}__" + else: + i = ( + "_" + if self.inplace + else "_functional" + if self.functional_overload + else "" + ) + return f"{self.base}{i}" + + +# Operator name is the base operator name along with the (typically not +# user visible) overload string. +@dataclass(frozen=True) +class OperatorName: + name: BaseOperatorName + overload_name: str + + @staticmethod + def parse(op_name: str) -> OperatorName: + if "." in op_name: + name, overload_name = op_name.split(".", 1) + else: + name = op_name + overload_name = "" + r = OperatorName(name=BaseOperatorName.parse(name), overload_name=overload_name) + assert str(r) == op_name, f"{str(r)} != {op_name}" + return r + + def __str__(self) -> str: + if self.overload_name: + return f"{self.name}.{self.overload_name}" + else: + return f"{self.name}" + + # NB: This must be synchronized with the naming scheme in + # aten/src/ATen/templates/Operators.h + # Given a function schema "aten::op.overload(...)", + # If there is no overload name, this returns f"{op}" + # If there is an overload name, this returns f"{op}_{overload}" + def unambiguous_name(self) -> str: + if self.overload_name: + return f"{self.name}_{self.overload_name}" + else: + return f"{self.name}" + + def remove_inplace(self) -> OperatorName: + return OperatorName( + name=BaseOperatorName( + base=self.name.base, + inplace=False, + dunder_method=self.name.dunder_method, + ), + overload_name=self.overload_name, + ) + + def with_overload(self, overload: str) -> OperatorName: + return OperatorName( + name=BaseOperatorName( + base=self.name.base, + inplace=False, + dunder_method=self.name.dunder_method, + ), + overload_name=overload, + ) + + +def gets_generated_out_inplace_wrapper( + f: NativeFunction, g: NativeFunctionsGroup, b: BackendIndex +) -> bool: + return ( + f.func.kind() is not SchemaKind.functional + and not b.has_kernel(f) + and b.has_kernel(g.functional) + ) + + +# NativeFunction objects that are views (f.is_view_op returns True) +# are added into a `NativeFunctionsViewGroup`, which we can use to +# easily access the generated (optional) view_copy NativeFunction. +# It's convenient to group them together, so we pair them up in NativeFunctionsViewGroup. +# See Note [Codegen'd {view}_copy Operators] +# +# One property of this representation is that in order for a view-like op to be part of +# a NativeFunctionsViewGroup, the "aliasing" version of that view op must exist. +# There's one case where that doesn't happen: we have a non-aliasing `narrow_copy.out` op, +# but don't have corresponding aliasing `narrow.out` op. +# This means that `narrow_copy.out` won't appear as a NativeFunctionsViewGroup. +@dataclass(frozen=True) +class NativeFunctionsViewGroup: + view: NativeFunction + # Note: the {view}_copy operator is optional because we currently don't generate copy variants + # for all view ops. Notably, we don't generate them for CompositeImplicitAutograd views + # (we already get them "for free" through decomposition) + view_copy: NativeFunction | None + # view_inplace ops are also optional, but every view_inplace op should have out-of-place variant. + view_inplace: NativeFunction | None + + def __post_init__(self) -> None: + assert self.view.is_view_op + if self.view_copy is None: + assert not gets_generated_view_copy(self.view), ( + f"{str(self.view.func.name)} appears to be a new operator that aliases its inputs." + " The codegen expects you to add a corresponding operator to native_functions.yaml:" + f" {get_view_copy_name(self.view)!s}." + " See Note [view_copy NativeFunctions] for details." + ) + else: + assert self.view_copy.func.name.name.base.endswith(("_copy", "_scatter")) + assert self.view.func.signature() == self.view_copy.func.signature( + strip_view_copy_name=True, + ) + assert "view_copy" in self.view_copy.tags, ( + f"{str(self.view_copy.func.name), str(self.view.tags)} appears to be a view_copy operator. The codegen expects" + " view_copy operators to be annotated with the 'view_copy' tag in native_functions.yaml." + " See Note [view_copy NativeFunction] for details." + ) + if self.view_inplace is not None: + assert self.view.func.signature() == self.view_inplace.func.signature() + + if self.view.has_composite_implicit_autograd_kernel: + if self.view_inplace is not None: + assert self.view_inplace.has_composite_implicit_autograd_kernel, ( + f"{str(self.view.func.name)} and {str(self.view_inplace.func.name)} must either" + " both have CompositeImplicitAutograd kernels, or both not have composite kernels." + ) + if self.view.has_composite_implicit_autograd_nested_tensor_kernel: + if self.view_inplace is not None: + assert self.view_inplace.has_composite_implicit_autograd_nested_tensor_kernel, ( + f"{str(self.view.func.name)} and {str(self.view_inplace.func.name)} must either" + " both have CompositeImplicitAutogradNestedTensor kernels, or both not have composite kernels." + ) + + def functions(self, *, include_copy: bool = True) -> Iterator[NativeFunction]: + yield self.view + if self.view_inplace is not None: + yield self.view_inplace + if self.view_copy is not None and include_copy: + yield self.view_copy + + @property + def root_name(self) -> str: + return self.view.root_name + + @property + def composite(self) -> bool: + # We currently assert that the "group" is consistent. + # If the view op is composite, then its view_inplace op is too. + return self.view.has_composite_implicit_autograd_kernel + + +def gets_generated_view_copy(f: NativeFunction) -> bool: + # Only aliasing (view) operators get a copy variant. + if not f.is_view_op: + return False + # We don't need to bother generating copy variants for CompositeImplicitAutograd ops, + # because we can let them decompose into base view ops. + if f.has_composite_implicit_autograd_kernel: + return False + # We also don't need to generate copy variants for inplace views. + if "inplace_view" in f.tags: + return False + # Assume ops ending in _inverse have manually-defined copy variants + # (e.g. slice_inverse() has the copy variant slice_scatter()). + # We -could- probably generate these as well, but the codegen will be + # slightly different, and hand-writing these few kernels keeps codegen + # complexity lower. + if f.func.name.name.base.endswith("_inverse"): + return False + return True + + +# Given a NativeFunction that corresponds to a view op, +# returns the OperatorName of the corresponding "copy" variant of the op. +def get_view_copy_name(f: NativeFunction) -> OperatorName: + # Right now, when asking for a view op's corresponding "view_copy" name + # we assert for sanity that the op is allowed to have a generated view_copy variant. + # (We can do this because "gets_generated_view_copy()" tell us which ops get a generated view_copy op). + # However, narrow_copy() already exists as an op directly in native_functions.yaml. + # I'm hardcoding narrow_copy here for now to maintain the assert, + # But we could also just get rid of the assert. + list_of_ops_with_explicit_view_copy_operators = ["narrow"] + if str(f.func.name) not in list_of_ops_with_explicit_view_copy_operators: + assert gets_generated_view_copy(f) + + base_name = f"{f.func.name.name.base}_copy" + view_copy_name = OperatorName( + name=BaseOperatorName( + base=base_name, inplace=False, dunder_method=f.func.name.name.dunder_method + ), + overload_name=f.func.name.overload_name, + ) + return view_copy_name + + +# Helper functions for parsing argument lists (both inputs and returns) + + +def parse_returns(return_decl: str) -> tuple[Return, ...]: + """ + Input: '()' + Output: [] + """ + if return_decl == "()": + return () + if return_decl[0] == "(" and return_decl[-1] == ")": + return_decl = return_decl[1:-1] + return tuple(Return.parse(arg) for arg in return_decl.split(", ")) + + +# A Precompute instance consists of a map from kernel argument name +# to the list of Argument instances that should replace that +# kernel argument in the impl function. +@dataclass(frozen=True) +class Precompute: + # A map from kernel argument name -> a list of precomputed + # elements that replaces/supersedes it. + replace: dict[str, list[Argument]] + # List of precomputed args added without replacement + add: list[Argument] + + @staticmethod + def parse(src: object) -> Precompute: + assert isinstance(src, list) + + # src is a list of strings of the format: + # {kernel param name} -> {replacement decl}[, {replacement decl}, ...] + # [{add decl}[, {add decl}, ...]] + # The last line is optional and contains the precomputed parameters that are + # added without replacement. + # The other lines are parsed to get the names of which precomputed elements + # should replace which kernel arguments. + add_args = [] + if " -> " not in src[-1]: + add_list = src[-1].split(",") + add_args = [Argument.parse(name.strip()) for name in add_list] + src = src[:-1] + + replace = {} + for raw_replace_item in src: + assert isinstance(raw_replace_item, str) + assert " -> " in raw_replace_item, ( + "precomputed parameters without replacement" + " are allowed only in the last line" + ) + + arg, with_list_raw = raw_replace_item.split(" -> ") + assert ( + " " not in arg + ), f"illegal kernel param name '{arg}' in precomputed parameters'" + with_list = with_list_raw.split(",") + with_list_args = [Argument.parse(name.strip()) for name in with_list] + replace[arg] = with_list_args + + r = Precompute(replace=replace, add=add_args) + assert r.to_list() == src, "r.to_list() != src" + return r + + def __post_init__(self) -> None: + # the template parameters are upper so if these are the + # same then it is ambiguous + for a in self.add: + assert a.name.upper() != a.name + for args in self.replace.values(): + for a in args: + assert a.name.upper() != a.name + + def to_list(self) -> list[str]: + replace_list = [] + for kernel_param, replacement_params in self.replace.items(): + replacements = ", ".join(str(param) for param in replacement_params) + replace_list.append(f"{kernel_param} -> {replacements}") + + return replace_list diff --git a/native_function_generation.py b/native_function_generation.py new file mode 100644 index 0000000000000000000000000000000000000000..3c2ec2e7dc47d9b507bb44be87db3b845f355898 --- /dev/null +++ b/native_function_generation.py @@ -0,0 +1,651 @@ +from __future__ import annotations + +import string +from collections import defaultdict +from typing import TYPE_CHECKING + +import torchgen.api.dispatcher as dispatcher +from torchgen.api.translate import translate +from torchgen.api.types import Binding, DispatcherSignature, Expr +from torchgen.context import with_native_function +from torchgen.model import ( + Annotation, + Argument, + BackendIndex, + BackendMetadata, + BaseOperatorName, + BaseTy, + BaseType, + DEFAULT_KERNEL_NAMESPACE, + DeviceCheckType, + DispatchKey, + FunctionSchema, + NativeFunction, + NativeFunctionsGroup, + OperatorName, + Return, + SchemaKind, + Variant, +) +from torchgen.utils import concatMap + + +if TYPE_CHECKING: + from collections.abc import Sequence + + +# See Note: [Out ops with functional variants that don't get grouped properly] +OUT_OPS_THAT_DONT_GET_GROUPED_PROPERLY = [ + # This has a functional variant, but it's currently marked private. + # This function should be marked private as well (*_backward ops aren't exposed to python anyway). + "adaptive_avg_pool3d_backward.grad_input", + # There's a functional variant, _slow_conv2d_backward.output_mask, that isn't grouped properly. + # Maybe we can kill this operator in favor of convolution_backward? + "_slow_conv2d_backward.grad_input", +] + + +# See Note: [Mutable ops that cannot get an out variant] +MUTABLE_OPS_THAT_CANNOT_GET_AN_OUT_VARIANT = [ + # should be out=? + "_cummax_helper", + # should be out=? + "_cummin_helper", +] + +# All of these operators don't have any tensor like returns +FUNCTIONAL_OPS_THAT_CANNOT_GET_AN_OUT_VARIANT = [ + "_assert_async", # no return + "_assert_async.msg", # no return + "_assert_tensor_metadata", # no return + "_cslt_sparse_mm_search", # returns an int + "_assert_scalar", # no return + "_dimI", # returns an int + "_dimV", # returns an int + "_has_same_storage_numel", # returns a boolean + "_linalg_check_errors", # no return + "_local_scalar_dense", # returns a Scalar + "_nested_tensor_from_mask_left_aligned", # returns a boolean + "_nnz", # returns an int + "_use_cudnn_ctc_loss", # returns a boolean + "_use_cudnn_ctc_loss.Tensor", # returns a boolean + "_validate_compressed_sparse_indices", # no return + "allclose", # returns a boolean + "dense_dim", # returns an int + "equal", # returns a boolean + "is_coalesced", # returns an boolean + "is_pinned", # returns a boolean + "is_same_size", # returns a boolean + "is_set_to", # returns a boolean + "q_per_channel_axis", # returns an int + "q_scale", # returns a float + "q_zero_point", # returns an int + "qscheme", # returns a QScheme + "record_stream", # no return + "sparse_dim", # returns an int + "sym_constrain_range", # no return + "sym_constrain_range_for_size", # no return + "_nested_tensor_storage_offsets", # returns a vector of ints + "_chunk_grad_outputs_efficient_attention", # returns a bool + "_fused_sdp_choice", # returns an int + "_print", # no return + "_sink_tokens", # no return + "_nested_get_ragged_idx", # returns an int +] + +INPLACE_OPS_THAT_DONT_GET_GROUPED_PROPERLY = [ + # polygamma and polygamma.out both exist, but have a + # pre-self arg (while polygamma_ does not) + # We should either fix this schema so it can be grouped properly, + # or allow the codegen to generate new functional/out= NativeFunctions for this op + # (which would require changing its overload name to prevent overload ambiguity). + "polygamma_" +] + + +# Groups "similar" NativeFunctions together +# example add.Tensor, add_.Tensor, add.out +# "similar" NativeFunctions are all expected to have an identical `signature()`, +# But have differing SchemaKinds. +def pre_group_native_functions( + native_functions: Sequence[NativeFunction], +) -> dict[FunctionSchema, dict[SchemaKind, NativeFunction]]: + pre_grouped_native_functions: dict[ + FunctionSchema, dict[SchemaKind, NativeFunction] + ] = defaultdict(dict) + for f in native_functions: + d = pre_grouped_native_functions[f.func.signature()] + assert f.func.kind() not in d + d[f.func.kind()] = f + return pre_grouped_native_functions + + +# Returns the out variant overload name given a base function overload name +def get_expected_out_variant_overload_name(overload_name: str | None) -> str: + return "out" if not overload_name else f"{overload_name}_out" + + +# Helper function: given an inplace FunctionSchema, generate its corresponding out= variant +# Example before: +# _add_relu_.Scalar(Tensor(a!) self, Scalar other, Scalar alpha=1) -> Tensor(a!) +# Example after: +# _add_relu.Scalar_out(Tensor self, Scalar other, Scalar alpha=1, *, Tensor(a!) out) +def self_to_out_signature(func: FunctionSchema) -> FunctionSchema: + # Generating an out= schema from an inplace schema. + assert func.kind() == SchemaKind.inplace + assert func.arguments.self_arg is not None + # The new out= schema has: + # - a new out argument with the same type as "func" (but with a mutable annotation) + # - The returns (if any) now alias the out= argument instead of "func" + # - an "out" overload name + return FunctionSchema( + name=func.name.remove_inplace().with_overload( + get_expected_out_variant_overload_name(func.name.overload_name) + ), + arguments=func.arguments.remove_self_annotation().with_out_args( + [ + Argument( + name="out", + type=func.arguments.self_arg.argument.type, + default=None, + annotation=func.arguments.self_arg.argument.annotation, + ) + ] + ), + returns=func.returns, + ) + + +# Helper function: given a functional FunctionSchema, generate its corresponding out= variant +# Example before: +# _to_copy(Tensor self, *, ScalarType? dtype=None, Layout? layout=None, Device? device=None, +# bool? pin_memory=None, bool non_blocking=False, MemoryFormat? memory_format=None) -> Tensor +# Example after: +# _to_copy._out(Tensor self, *, bool non_blocking=False, MemoryFormat? memory_format=None, +# Tensor(a!) out) -> Tensor(a!) +def functional_to_out_signature(func: FunctionSchema) -> FunctionSchema: + # Generating an out= schema from a functional schema. + assert func.kind() == SchemaKind.functional + + new_returns, new_out_args = generate_out_args_from_schema(func) + # The new out= schema has: + # - one or more new out argument(s) with the same type as returns (but with a mutable annotation) + # - The returns now alias the out= arguments + # - an "_out" overload name + return FunctionSchema( + name=func.name.with_overload( + get_expected_out_variant_overload_name(func.name.overload_name) + ), + arguments=func.arguments.signature().with_out_args( + new_out_args, + ), + returns=tuple(new_returns), + ) + + +# Helper function: given a function schema, generate corresponding out arguments, also the updated return annotations. +def generate_out_args_from_schema( + func: FunctionSchema, +) -> tuple[list[Return], list[Argument]]: + # More of a sanity check - our existing restrictions on schemas should enforce that + # mutable schema kinds never return their mutable arguments. + assert not any( + r.annotation is not None and r.annotation.is_write for r in func.returns + ) + + tensorlike_rets = [r for r in func.returns if r.type.is_tensor_like()] + assert len(tensorlike_rets) > 0 + + used_annotations = concatMap( + lambda a: [] if a.annotation is None else a.annotation.alias_set, + func.arguments.flat_all, + ) + valid_annotations = [x for x in string.ascii_lowercase if x not in used_annotations] + + all_rets_are_tensors = all(r.type == BaseType(BaseTy.Tensor) for r in func.returns) + + new_out_args: list[Argument] = [] + # The end result of new_returns is that: + # - If every return is a plain tensor, then the new returns == the old returns, but with the out= alias annotations added. + # - Otherwise, none of the out arguments show up in the returns (and we're only left with non-tensor-like returns, if any). + new_returns: list[Return] = [] + for i, r in enumerate(func.returns): + if r.type.is_tensor_like(): + new_out = Argument( + name="out" if len(func.returns) == 1 else f"out{i}", + type=r.type, + default=None, + annotation=Annotation.parse(f"{valid_annotations[i]}!"), + ) + new_out_args.append(new_out) + if all_rets_are_tensors: + # The convention for out= schemas is that they only return their out arguments + # if the return is a plain Tensor (or if it's a tuple of plain Tensors) + new_ret = Return( + name=None, type=new_out.type, annotation=new_out.annotation + ) + new_returns.append(new_ret) + else: + new_returns.append(r) + return new_returns, new_out_args + + +# Helper function: given a mutable FunctionSchema, generate its corresponding out= variant +# Example before: +# _fused_moving_avg_obs_fq_helper(Tensor self, Tensor observer_on, Tensor fake_quant_on, Tensor(a!) running_min, Tensor(b!) running_max, Tensor(c!) scale, Tensor(d!) zero_point, float averaging_const, int quant_min, int quant_max, int ch_axis, bool per_row_fake_quant=False, bool symmetric_quant=False) -> (Tensor output, Tensor mask) # noqa: B950 +# Example after: +# _fused_moving_avg_obs_fq_helper._out(Tensor self, Tensor observer_on, Tensor fake_quant_on, Tensor(a!) running_min, Tensor(b!) running_max, Tensor(c!) scale, Tensor(d!) zero_point, float averaging_const, int quant_min, int quant_max, int ch_axis, bool per_row_fake_quant=False, bool symmetric_quant=False, *, Tensor(e!) out0, Tensor(f!) out1) -> (Tensor(e!), Tensor(f!)) # noqa: B950 +def mutable_to_out_signature(func: FunctionSchema) -> FunctionSchema: + # Generating an out= schema from a mutable schema. + assert func.kind() == SchemaKind.mutable + # The new out= schema has: + # - Any non-aliased tensor-like returns are converted to mutable, aliased out= arguments + # (if the argument is a tensor then we also return it for method chaining, + # otherwise we return nothing) + # - an "out" overload name + # + # Note that: + # (1) This also means that we can *only* generate an out= variant from a mutable schema + # if the mutable schema has at least one tensor-like non-aliasing return. + # (2) The generated out= variant still has mutable positional arguments, + # but if necessary we could probably add another out= variant that also + # functionalizes the mutable arguments (a functional_out variant) + + new_returns, new_out_args = generate_out_args_from_schema(func) + + return FunctionSchema( + name=func.name.remove_inplace().with_overload( + get_expected_out_variant_overload_name(func.name.overload_name) + ), + arguments=func.arguments.with_out_args(new_out_args), + returns=tuple(new_returns), + ) + + +# This function, given function of one SchemaKind, as well as a target SchemaKind, +# generates a new NativeFunction with the same properties, but using the target SchemaKind. +# We only actually generate functions for either functional or out= SchemaKinds. +# This function returns a tuple, with: +# - The generated NativeFunction +# - a dictionary of `BackendIndex` objects, describing which dispatch keys +# we will generate kernels for, for the new NativeFunction. +# Details are in the function, but we only generate composite kernels (in some cases) today. +def generate_function( + f: NativeFunction, k: SchemaKind +) -> tuple[NativeFunction, dict[DispatchKey, dict[OperatorName, BackendMetadata]]]: + from torchgen.api import cpp + + if k == SchemaKind.functional: + assert f.func.kind() != SchemaKind.functional + # The new "functional" NativeFunction has: + # - any mutable arguments have been converted into (immutable) returns. + # (if a mutable argument was not also a return, it gets converted to one) + # - "_functional" appended to the base name, ONLY IF this op has a mutable variant. + # See Note [Overload Ambiguity With Functional Variants] + # The default grouping logic in signature() actually already does this, + # so we can piggy-back off it (but we still want return names) + func = f.func.signature(keep_return_names=True).with_name( + OperatorName( + name=BaseOperatorName( + base=f.func.name.name.base, + inplace=False, + dunder_method=f.func.name.name.dunder_method, + # See Note [Overload Ambiguity With Functional Variants] + functional_overload=f.func.kind() == SchemaKind.mutable, + ), + overload_name=f.func.name.overload_name, + ) + ) + elif k == SchemaKind.out: + # We generate out= ops mostly just so that we can pair up NativeFunctions into groups easily, + # but at least today, there is no good reason to actually use them. + # we'll generate a dispatcher entry for them, but won't actually register any kernels for them. + if f.func.kind() == SchemaKind.inplace: + func = self_to_out_signature(f.func) + elif f.func.kind() == SchemaKind.mutable: + func = mutable_to_out_signature(f.func) + elif f.func.kind() == SchemaKind.functional: + func = functional_to_out_signature(f.func) + else: + raise AssertionError( + "We only bother generating out= functions from either inplace or mutable or functional variants" + ) + else: + raise AssertionError( + "We currently only generate either functional or out= NativeFunctions" + ) + + # Generated kernel naming convention for out: _. The reason for this is to + # disambiguate operator with the same name but different overload name, e.g., `randn.names_out` and + # `randn.generator_with_names_out`. + kernel_name = ( + func.name.unambiguous_name() + if func.kind() == SchemaKind.out + else cpp.name(func) + ) + if f.func.has_symint(): + kernel_name += "_symint" + backend_metadata = { + DispatchKey.CompositeExplicitAutograd: { + func.name: BackendMetadata( + kernel=kernel_name, + structured=False, + cpp_namespace=DEFAULT_KERNEL_NAMESPACE, + ) + } + } + tags = {"generated"} | set( + f.tags & {"nondeterministic_seeded", "view_copy", "pt2_compliant_tag"} + ) + + return ( + NativeFunction( + func=func, + use_const_ref_for_mutable_tensors=f.use_const_ref_for_mutable_tensors, + # These generated fn's aren't meant to be user friendly- don't generate methods. + variants={Variant.function}, + structured=False, + structured_delegate=None, + structured_inherits=None, + precomputed=None, + autogen=[], + ufunc_inner_loop={}, + manual_kernel_registration=False, + manual_cpp_binding=False, + python_module=None, + category_override=None, + device_guard=False, + device_check=DeviceCheckType.NoCheck, + loc=f.loc, + cpp_no_default_args=set(), + is_abstract=f.is_abstract, + has_composite_implicit_autograd_kernel=False, + has_composite_implicit_autograd_nested_tensor_kernel=False, + has_composite_explicit_autograd_kernel=True, + has_composite_explicit_autograd_non_functional_kernel=False, + # Every generated NativeFunction gets a "generated" tag, so it's easy to tell + # which NativeFunction objects did not come directly from native_functions.yaml. + tags=tags, + namespace=f.namespace, + ), + backend_metadata, + ) + + +# This function is responsible for adding generated NativeFunctions which don't appear +# explicitly in the codegen. +# You can inspect the full list of NativeFunctions yourself with the torchgen package, by running +# torchgen.parse_native_yaml("aten/src/ATen/native/native_functions.yaml", "aten/src/ATen/native/tags.yaml") +# (Maybe we should make a friendly API for this) +# +# Note: this function *mutates* its two inputs, +# adding the new NativeFunctions / BackendMetadata to them +def add_generated_native_functions( + rs: list[NativeFunction], + indices: dict[DispatchKey, dict[OperatorName, BackendMetadata]], +) -> None: + # The main code for generating new NativeFunctions + # First we group of NativeFunctions by schema kind, + # then we detect which ones are missing and generate them. + pre_grouped_native_functions = pre_group_native_functions(rs) + for d in pre_grouped_native_functions.values(): + has_functional = SchemaKind.functional in d + has_inplace = SchemaKind.inplace in d + has_mutable = SchemaKind.mutable in d + has_out = SchemaKind.out in d + is_core = any("core" in variant.tags for variant in d.values()) + + # We automatically generate a few native functions that don't exist in the yaml, for a few reasons: + # (1) If an operator has an inplace/out= variant but no functional variant, we can generate + # a simple functional variant that the functionalization pass can consume. + # (2) If an operator has an inplace or functional but no out= variant, we generate an out= + # variant, mostly so we can easily pair up functions into NativeFunctionsGroup, + # while maintaining the constraint that the out= variant is "required". + if has_mutable or has_inplace or has_out or has_functional: + # Don't bother generating functions trio's for native functions that bypass the dispatcher. + are_manual = all(f.manual_cpp_binding for f in d.values()) + # Don't bother generating functional + out= variants for view operators + # set_ is technically an inplace_view, but for now it is treated + # as a normal inplace op in the codegen + has_view_ops = any( + f.is_view_op and str(f.func.name.name) != "set_" for f in d.values() + ) + # Don't generate the other variants for non-core CompositeImplicitAutograd operators. + # We could probably do this, but the main benefit of generating the function triplets + # is for transforms that need them, and transforms don't need to act directly + # on CompositeImplicitAutograd operators (since we let them decompose). + are_composite_implicit = all( + f.has_composite_implicit_autograd_kernel for f in d.values() + ) + if are_manual or has_view_ops or are_composite_implicit and not is_core: + continue + if has_out and len(d.values()) == 1: + # Note: [Out ops with functional variants that don't get grouped properly] + # In theory we could validly have an out= operator in native_functions.yaml + # that has no other variants. + # But today, all of the operators where that's the case actually do have + # functional variants, that we are just unable to pair up properly. + # I think banning this all together is probably safer + # (you can always add a functional variant yourself if you want to add a new out= operator). + # + # We should probably fix the existing cases; this check is to prevent us from adding more over time. + if ( + str(d[SchemaKind.out].func.name) + not in OUT_OPS_THAT_DONT_GET_GROUPED_PROPERLY + ): + raise AssertionError( + f"Found an out= operator that we could not find any other variants of: {str(d[SchemaKind.out].func)}" + ) + continue + + # Some inplace ops that have problematic schemas (that we should fix), which prevent us + # from generating out= and functional variants + if ( + has_inplace + and str(d[SchemaKind.inplace].func.name) + in INPLACE_OPS_THAT_DONT_GET_GROUPED_PROPERLY + ): + continue + + base_fn = ( + d[SchemaKind.mutable] + if has_mutable + else d[SchemaKind.inplace] + if has_inplace + else d[SchemaKind.out] + if has_out + else d[SchemaKind.functional] + ) + + # Note: [Mutable ops that cannot get an out variant] + # We can only generate an out= variant if either: + # - the original function has tensor-like returns (since we can convert them to out kwargs) + # - or it's inplace (since we can convert `self` to an out kwarg) + # There are only two functions that don't fit this criteria today though, + # and they both look like they should be fixed to be out= variants, + # so if feels safer to ban this schema all-together + base_fn_valid = base_fn.func.kind() == SchemaKind.inplace or any( + r.type.is_tensor_like() for r in base_fn.func.returns + ) + # Note: [Loosen the assertion that all functional should have out variant] + # By design all functional operators should have our variants. The needs_out check + # is loosening this requirement, changing it to only generate out variant if there's + # an `autogen` block in the native function, in the long run it should be removed. + # FIXME: Remove this after figuring out CI job failures related to min, max, mean + needs_out = any("out" in str(op_name) for op_name in base_fn.autogen) + gets_out_variant = not has_out and base_fn_valid and needs_out + if not has_out and not base_fn_valid: + if ( + str(base_fn.func.name) + not in MUTABLE_OPS_THAT_CANNOT_GET_AN_OUT_VARIANT + and str(base_fn.func.name) + not in FUNCTIONAL_OPS_THAT_CANNOT_GET_AN_OUT_VARIANT + ): + raise AssertionError( + f"""Found an operator that we could not generate an out= variant for: {str(base_fn.func)}. +This type of operators don't have tensor-like return, making it difficult to generate a proper out= variant. If +out= variant is not needed, please add the function name into FUNCTIONAL_OPS_THAT_CANNOT_GET_AN_OUT_VARIANT list.""" + ) + + # Generate an out= variant + if gets_out_variant: + fn, metadata = generate_function(base_fn, SchemaKind.out) + d[SchemaKind.out] = fn + BackendIndex.grow_index(indices, metadata) + rs.append(fn) + + # Generate a functional variant, but only do it if the operator got an out= variant + # (Functional variants are only useful if we can group up the variants, + # which we can only do if they have an out= variant) + if not has_functional and (has_out or gets_out_variant): + fn, metadata = generate_function(base_fn, SchemaKind.functional) + d[SchemaKind.functional] = fn + BackendIndex.grow_index(indices, metadata) + rs.append(fn) + + +def return_str(rets: tuple[Return, ...], names: list[str]) -> str: + assert len(rets) == len(names) + if len(rets) == 0: + return "" + elif len(rets) == 1: + return f"return {names[0]};" + else: + return f"return {dispatcher.returns_type(rets).cpp_type()}({', '.join(names)});" + + +# Given a function, and the name of a variable corresponding to the output of that function, +# gather up all of the individual returns that are not aliased +def gather_nonaliased_inner_rets(func: FunctionSchema, out_var: str) -> list[str]: + aliased_rets = func.aliased_return_names() + non_aliased_names = [] + is_out_var_a_tuple = len(func.returns) > 1 + for i, r in enumerate(aliased_rets): + if r is None: + non_aliased_names.append( + f"std::get<{i}>({out_var})" if is_out_var_a_tuple else out_var + ) + return non_aliased_names + + +# Generates functional kernels in terms of their inplace.mutable counterparts. +# We only do this for "generated" NativeFunctions +@with_native_function +def gen_composite_functional_kernel(g: NativeFunctionsGroup) -> str | None: + # We should only be generating these for code-generated NativeFunctions + if "generated" not in g.functional.tags: + return None + # And we always write the kernel for a generated op in terms of a non-generated op. + if g.inplace is not None and "generated" not in g.inplace.tags: + target_f = g.inplace + elif g.mutable is not None and "generated" not in g.mutable.tags: + target_f = g.mutable + else: + # We should be guaranteed to have a valid inplace/mutable variant to call into. + # See Note: [Mutable Ops Not Using Functionalization] + raise AssertionError(str(g.functional.func)) + + sig = DispatcherSignature(g.functional.func) + target_sig = DispatcherSignature(target_f.func) + + context: list[Binding | Expr] = [] + clone_mutable_inputs = [] + cloned_return_names = [] + # We can't just directly pass all of the arguments from the functional op into the mutating op. + # We need to check for which inputs to the mutating operator are mutable, + # and clone those inputs first. + for a_curr, a_tgt in zip( + dispatcher.jit_arguments(g.functional.func), + dispatcher.jit_arguments(target_f.func), + ): + if a_tgt.annotation is not None and a_tgt.annotation.is_write: + clone_mutable_inputs.append( + f"auto {a_curr.name}_clone = clone_arg({a_curr.name});" + ) + context.append( + Expr( + expr=f"{a_curr.name}_clone", + type=dispatcher.argument_type(a_curr, binds=a_curr.name), + ) + ) + # Invariant: mutable arguments on the inner mutable op are always returns on the functional op. + cloned_return_names.append(f"{a_curr.name}_clone") + else: + context.append(dispatcher.argument(a_curr)) + exprs = ", ".join([e.expr for e in translate(context, target_sig.arguments())]) + + out_name = "output" + maybe_assign = f"auto {out_name} = " if len(target_f.func.returns) > 0 else "" + inner_return_names = gather_nonaliased_inner_rets(target_f.func, out_name) + ret_str = return_str( + g.functional.func.returns, inner_return_names + cloned_return_names + ) + + clone_mutable_inputs_str = "\n".join(clone_mutable_inputs) + return f""" +{sig.defn(name=sig.name() + ("_symint" if g.out.func.has_symint() else ""))} {{ + {clone_mutable_inputs_str} + {maybe_assign}at::_ops::{target_f.func.name.unambiguous_name()}::call({exprs}); + {ret_str} +}} +""" + + +# Generates out= kernels in terms of their functional counterparts. +# We only do this for "generated" NativeFunctions +@with_native_function +def gen_composite_out_kernel(g: NativeFunctionsGroup) -> str | None: + # We should only be generating these for code-generated NativeFunctions + if "generated" not in g.out.tags: + return None + # And we always write the kernel for the out= op in terms of the functional. + # Note that the functional op might have also been generated, but we don't have to + # worry about cycles, because the generated functional kernels are always implemented + # in terms of non-generated kernels (see gen_composite_functional_kernel). + + sig = DispatcherSignature(g.out.func) + target_sig = DispatcherSignature(g.functional.func) + + exprs = ", ".join( + [e.expr for e in translate(sig.arguments(), target_sig.arguments())] + ) + + copy_outs = [] + out_name = "tmp_output" + for i, out_arg in enumerate(g.out.func.arguments.out): + functional_return_name = ( + out_name + if len(g.functional.func.returns) == 1 + else f"std::get<{i}>({out_name})" + ) + copy_outs.append( + f"""\ + resize_out_helper({out_arg.name}, {functional_return_name}); + copy_arg({out_arg.name}, {functional_return_name});""" + ) + + rets = [] + # For each return arg in the calling (out=) operator, + # If it corresponds to an aliased input, return the input. + # Otherwise, return the corresponding output from calling the functional operator. + for i, ret_name in enumerate(g.out.func.aliased_return_names()): + if ret_name is not None: + rets.append(ret_name) + else: + functional_return_name = ( + out_name + if len(g.functional.func.returns) == 1 + else f"std::get<{i}>({out_name})" + ) + rets.append(functional_return_name) + + copy_outs_str = "\n".join(copy_outs) + + # Kernel name needs to follow the naming convention defined in `generate_function()` + return f""" +{sig.defn(name=g.out.func.name.unambiguous_name() + ("_symint" if g.out.func.has_symint() else ""))} {{ + auto {out_name} = at::_ops::{g.functional.func.name.unambiguous_name()}::call({exprs}); + {copy_outs_str} + {return_str(g.out.func.returns, rets)} +}} +""" diff --git a/normalizer.exe b/normalizer.exe new file mode 100644 index 0000000000000000000000000000000000000000..042acfb5db552096ae040bbb9501fb527cb2a470 --- /dev/null +++ b/normalizer.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:655847268f9ff668e36268319e9e202056c33038014bec44346f031db40ac9b5 +size 108450 diff --git a/numpy-2.0.2-cp312-cp312-win_amd64.whl b/numpy-2.0.2-cp312-cp312-win_amd64.whl new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/numpy-config.exe b/numpy-config.exe new file mode 100644 index 0000000000000000000000000000000000000000..600c54cf15597f7668e496d297572ac7402df78f --- /dev/null +++ b/numpy-config.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:980d55316535217f8748a295df5784e4eb26100a1110bae9a110492242fe7c34 +size 108440 diff --git a/pip.exe b/pip.exe new file mode 100644 index 0000000000000000000000000000000000000000..2db4af075991a8e1a97515b551a54ad13d196c54 --- /dev/null +++ b/pip.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bf6f1c22184613cb885fc8cadd6e9407d20d1ebcafec3282fbd1a52c25210a8 +size 108445 diff --git a/pip3.12.exe b/pip3.12.exe new file mode 100644 index 0000000000000000000000000000000000000000..2db4af075991a8e1a97515b551a54ad13d196c54 --- /dev/null +++ b/pip3.12.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bf6f1c22184613cb885fc8cadd6e9407d20d1ebcafec3282fbd1a52c25210a8 +size 108445 diff --git a/pip3.exe b/pip3.exe new file mode 100644 index 0000000000000000000000000000000000000000..2db4af075991a8e1a97515b551a54ad13d196c54 --- /dev/null +++ b/pip3.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bf6f1c22184613cb885fc8cadd6e9407d20d1ebcafec3282fbd1a52c25210a8 +size 108445 diff --git a/pygmentize.exe b/pygmentize.exe new file mode 100644 index 0000000000000000000000000000000000000000..df729ef04d10bd3dbd85bd71cb319d44a15131c1 --- /dev/null +++ b/pygmentize.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be176558d7b05f8849604d14f1885243e5c96fd78711fdccd01ef12014e41a1b +size 108439 diff --git a/python.exe b/python.exe new file mode 100644 index 0000000000000000000000000000000000000000..8c193884f934b38c1da52ad0a1d39b341027d5b0 --- /dev/null +++ b/python.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3470f7919170d235d7e6079691462c4b217745ec67ee612e745730e46d98f238 +size 270104 diff --git a/pythonw.exe b/pythonw.exe new file mode 100644 index 0000000000000000000000000000000000000000..5daeb007300a1407860cd3c3f00732e98e29f9c9 --- /dev/null +++ b/pythonw.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbb5bf39746dadaf2d2513da6746ed61a04b493289272dbed72923eabfd552f8 +size 258840 diff --git a/saved_model_cli.exe b/saved_model_cli.exe new file mode 100644 index 0000000000000000000000000000000000000000..1b3d9abd36051a5b73772a282531a54f7bd44df8 --- /dev/null +++ b/saved_model_cli.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abeeaed0c37d09ad4bb9710ee2af44fd6eb08053cd4b4528e7ca6f5c1a709ee6 +size 108462 diff --git a/six.py b/six.py new file mode 100644 index 0000000000000000000000000000000000000000..3de5969b1ad3b973342e5e88ee1770fa7c798152 --- /dev/null +++ b/six.py @@ -0,0 +1,1003 @@ +# Copyright (c) 2010-2024 Benjamin Peterson +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + +"""Utilities for writing code that runs on Python 2 and 3""" + +from __future__ import absolute_import + +import functools +import itertools +import operator +import sys +import types + +__author__ = "Benjamin Peterson " +__version__ = "1.17.0" + + +# Useful for very coarse version differentiation. +PY2 = sys.version_info[0] == 2 +PY3 = sys.version_info[0] == 3 +PY34 = sys.version_info[0:2] >= (3, 4) + +if PY3: + string_types = str, + integer_types = int, + class_types = type, + text_type = str + binary_type = bytes + + MAXSIZE = sys.maxsize +else: + string_types = basestring, + integer_types = (int, long) + class_types = (type, types.ClassType) + text_type = unicode + binary_type = str + + if sys.platform.startswith("java"): + # Jython always uses 32 bits. + MAXSIZE = int((1 << 31) - 1) + else: + # It's possible to have sizeof(long) != sizeof(Py_ssize_t). + class X(object): + + def __len__(self): + return 1 << 31 + try: + len(X()) + except OverflowError: + # 32-bit + MAXSIZE = int((1 << 31) - 1) + else: + # 64-bit + MAXSIZE = int((1 << 63) - 1) + del X + +if PY34: + from importlib.util import spec_from_loader +else: + spec_from_loader = None + + +def _add_doc(func, doc): + """Add documentation to a function.""" + func.__doc__ = doc + + +def _import_module(name): + """Import module, returning the module after the last dot.""" + __import__(name) + return sys.modules[name] + + +class _LazyDescr(object): + + def __init__(self, name): + self.name = name + + def __get__(self, obj, tp): + result = self._resolve() + setattr(obj, self.name, result) # Invokes __set__. + try: + # This is a bit ugly, but it avoids running this again by + # removing this descriptor. + delattr(obj.__class__, self.name) + except AttributeError: + pass + return result + + +class MovedModule(_LazyDescr): + + def __init__(self, name, old, new=None): + super(MovedModule, self).__init__(name) + if PY3: + if new is None: + new = name + self.mod = new + else: + self.mod = old + + def _resolve(self): + return _import_module(self.mod) + + def __getattr__(self, attr): + _module = self._resolve() + value = getattr(_module, attr) + setattr(self, attr, value) + return value + + +class _LazyModule(types.ModuleType): + + def __init__(self, name): + super(_LazyModule, self).__init__(name) + self.__doc__ = self.__class__.__doc__ + + def __dir__(self): + attrs = ["__doc__", "__name__"] + attrs += [attr.name for attr in self._moved_attributes] + return attrs + + # Subclasses should override this + _moved_attributes = [] + + +class MovedAttribute(_LazyDescr): + + def __init__(self, name, old_mod, new_mod, old_attr=None, new_attr=None): + super(MovedAttribute, self).__init__(name) + if PY3: + if new_mod is None: + new_mod = name + self.mod = new_mod + if new_attr is None: + if old_attr is None: + new_attr = name + else: + new_attr = old_attr + self.attr = new_attr + else: + self.mod = old_mod + if old_attr is None: + old_attr = name + self.attr = old_attr + + def _resolve(self): + module = _import_module(self.mod) + return getattr(module, self.attr) + + +class _SixMetaPathImporter(object): + + """ + A meta path importer to import six.moves and its submodules. + + This class implements a PEP302 finder and loader. It should be compatible + with Python 2.5 and all existing versions of Python3 + """ + + def __init__(self, six_module_name): + self.name = six_module_name + self.known_modules = {} + + def _add_module(self, mod, *fullnames): + for fullname in fullnames: + self.known_modules[self.name + "." + fullname] = mod + + def _get_module(self, fullname): + return self.known_modules[self.name + "." + fullname] + + def find_module(self, fullname, path=None): + if fullname in self.known_modules: + return self + return None + + def find_spec(self, fullname, path, target=None): + if fullname in self.known_modules: + return spec_from_loader(fullname, self) + return None + + def __get_module(self, fullname): + try: + return self.known_modules[fullname] + except KeyError: + raise ImportError("This loader does not know module " + fullname) + + def load_module(self, fullname): + try: + # in case of a reload + return sys.modules[fullname] + except KeyError: + pass + mod = self.__get_module(fullname) + if isinstance(mod, MovedModule): + mod = mod._resolve() + else: + mod.__loader__ = self + sys.modules[fullname] = mod + return mod + + def is_package(self, fullname): + """ + Return true, if the named module is a package. + + We need this method to get correct spec objects with + Python 3.4 (see PEP451) + """ + return hasattr(self.__get_module(fullname), "__path__") + + def get_code(self, fullname): + """Return None + + Required, if is_package is implemented""" + self.__get_module(fullname) # eventually raises ImportError + return None + get_source = get_code # same as get_code + + def create_module(self, spec): + return self.load_module(spec.name) + + def exec_module(self, module): + pass + +_importer = _SixMetaPathImporter(__name__) + + +class _MovedItems(_LazyModule): + + """Lazy loading of moved objects""" + __path__ = [] # mark as package + + +_moved_attributes = [ + MovedAttribute("cStringIO", "cStringIO", "io", "StringIO"), + MovedAttribute("filter", "itertools", "builtins", "ifilter", "filter"), + MovedAttribute("filterfalse", "itertools", "itertools", "ifilterfalse", "filterfalse"), + MovedAttribute("input", "__builtin__", "builtins", "raw_input", "input"), + MovedAttribute("intern", "__builtin__", "sys"), + MovedAttribute("map", "itertools", "builtins", "imap", "map"), + MovedAttribute("getcwd", "os", "os", "getcwdu", "getcwd"), + MovedAttribute("getcwdb", "os", "os", "getcwd", "getcwdb"), + MovedAttribute("getoutput", "commands", "subprocess"), + MovedAttribute("range", "__builtin__", "builtins", "xrange", "range"), + MovedAttribute("reload_module", "__builtin__", "importlib" if PY34 else "imp", "reload"), + MovedAttribute("reduce", "__builtin__", "functools"), + MovedAttribute("shlex_quote", "pipes", "shlex", "quote"), + MovedAttribute("StringIO", "StringIO", "io"), + MovedAttribute("UserDict", "UserDict", "collections", "IterableUserDict", "UserDict"), + MovedAttribute("UserList", "UserList", "collections"), + MovedAttribute("UserString", "UserString", "collections"), + MovedAttribute("xrange", "__builtin__", "builtins", "xrange", "range"), + MovedAttribute("zip", "itertools", "builtins", "izip", "zip"), + MovedAttribute("zip_longest", "itertools", "itertools", "izip_longest", "zip_longest"), + MovedModule("builtins", "__builtin__"), + MovedModule("configparser", "ConfigParser"), + MovedModule("collections_abc", "collections", "collections.abc" if sys.version_info >= (3, 3) else "collections"), + MovedModule("copyreg", "copy_reg"), + MovedModule("dbm_gnu", "gdbm", "dbm.gnu"), + MovedModule("dbm_ndbm", "dbm", "dbm.ndbm"), + MovedModule("_dummy_thread", "dummy_thread", "_dummy_thread" if sys.version_info < (3, 9) else "_thread"), + MovedModule("http_cookiejar", "cookielib", "http.cookiejar"), + MovedModule("http_cookies", "Cookie", "http.cookies"), + MovedModule("html_entities", "htmlentitydefs", "html.entities"), + MovedModule("html_parser", "HTMLParser", "html.parser"), + MovedModule("http_client", "httplib", "http.client"), + MovedModule("email_mime_base", "email.MIMEBase", "email.mime.base"), + MovedModule("email_mime_image", "email.MIMEImage", "email.mime.image"), + MovedModule("email_mime_multipart", "email.MIMEMultipart", "email.mime.multipart"), + MovedModule("email_mime_nonmultipart", "email.MIMENonMultipart", "email.mime.nonmultipart"), + MovedModule("email_mime_text", "email.MIMEText", "email.mime.text"), + MovedModule("BaseHTTPServer", "BaseHTTPServer", "http.server"), + MovedModule("CGIHTTPServer", "CGIHTTPServer", "http.server"), + MovedModule("SimpleHTTPServer", "SimpleHTTPServer", "http.server"), + MovedModule("cPickle", "cPickle", "pickle"), + MovedModule("queue", "Queue"), + MovedModule("reprlib", "repr"), + MovedModule("socketserver", "SocketServer"), + MovedModule("_thread", "thread", "_thread"), + MovedModule("tkinter", "Tkinter"), + MovedModule("tkinter_dialog", "Dialog", "tkinter.dialog"), + MovedModule("tkinter_filedialog", "FileDialog", "tkinter.filedialog"), + MovedModule("tkinter_scrolledtext", "ScrolledText", "tkinter.scrolledtext"), + MovedModule("tkinter_simpledialog", "SimpleDialog", "tkinter.simpledialog"), + MovedModule("tkinter_tix", "Tix", "tkinter.tix"), + MovedModule("tkinter_ttk", "ttk", "tkinter.ttk"), + MovedModule("tkinter_constants", "Tkconstants", "tkinter.constants"), + MovedModule("tkinter_dnd", "Tkdnd", "tkinter.dnd"), + MovedModule("tkinter_colorchooser", "tkColorChooser", + "tkinter.colorchooser"), + MovedModule("tkinter_commondialog", "tkCommonDialog", + "tkinter.commondialog"), + MovedModule("tkinter_tkfiledialog", "tkFileDialog", "tkinter.filedialog"), + MovedModule("tkinter_font", "tkFont", "tkinter.font"), + MovedModule("tkinter_messagebox", "tkMessageBox", "tkinter.messagebox"), + MovedModule("tkinter_tksimpledialog", "tkSimpleDialog", + "tkinter.simpledialog"), + MovedModule("urllib_parse", __name__ + ".moves.urllib_parse", "urllib.parse"), + MovedModule("urllib_error", __name__ + ".moves.urllib_error", "urllib.error"), + MovedModule("urllib", __name__ + ".moves.urllib", __name__ + ".moves.urllib"), + MovedModule("urllib_robotparser", "robotparser", "urllib.robotparser"), + MovedModule("xmlrpc_client", "xmlrpclib", "xmlrpc.client"), + MovedModule("xmlrpc_server", "SimpleXMLRPCServer", "xmlrpc.server"), +] +# Add windows specific modules. +if sys.platform == "win32": + _moved_attributes += [ + MovedModule("winreg", "_winreg"), + ] + +for attr in _moved_attributes: + setattr(_MovedItems, attr.name, attr) + if isinstance(attr, MovedModule): + _importer._add_module(attr, "moves." + attr.name) +del attr + +_MovedItems._moved_attributes = _moved_attributes + +moves = _MovedItems(__name__ + ".moves") +_importer._add_module(moves, "moves") + + +class Module_six_moves_urllib_parse(_LazyModule): + + """Lazy loading of moved objects in six.moves.urllib_parse""" + + +_urllib_parse_moved_attributes = [ + MovedAttribute("ParseResult", "urlparse", "urllib.parse"), + MovedAttribute("SplitResult", "urlparse", "urllib.parse"), + MovedAttribute("parse_qs", "urlparse", "urllib.parse"), + MovedAttribute("parse_qsl", "urlparse", "urllib.parse"), + MovedAttribute("urldefrag", "urlparse", "urllib.parse"), + MovedAttribute("urljoin", "urlparse", "urllib.parse"), + MovedAttribute("urlparse", "urlparse", "urllib.parse"), + MovedAttribute("urlsplit", "urlparse", "urllib.parse"), + MovedAttribute("urlunparse", "urlparse", "urllib.parse"), + MovedAttribute("urlunsplit", "urlparse", "urllib.parse"), + MovedAttribute("quote", "urllib", "urllib.parse"), + MovedAttribute("quote_plus", "urllib", "urllib.parse"), + MovedAttribute("unquote", "urllib", "urllib.parse"), + MovedAttribute("unquote_plus", "urllib", "urllib.parse"), + MovedAttribute("unquote_to_bytes", "urllib", "urllib.parse", "unquote", "unquote_to_bytes"), + MovedAttribute("urlencode", "urllib", "urllib.parse"), + MovedAttribute("splitquery", "urllib", "urllib.parse"), + MovedAttribute("splittag", "urllib", "urllib.parse"), + MovedAttribute("splituser", "urllib", "urllib.parse"), + MovedAttribute("splitvalue", "urllib", "urllib.parse"), + MovedAttribute("uses_fragment", "urlparse", "urllib.parse"), + MovedAttribute("uses_netloc", "urlparse", "urllib.parse"), + MovedAttribute("uses_params", "urlparse", "urllib.parse"), + MovedAttribute("uses_query", "urlparse", "urllib.parse"), + MovedAttribute("uses_relative", "urlparse", "urllib.parse"), +] +for attr in _urllib_parse_moved_attributes: + setattr(Module_six_moves_urllib_parse, attr.name, attr) +del attr + +Module_six_moves_urllib_parse._moved_attributes = _urllib_parse_moved_attributes + +_importer._add_module(Module_six_moves_urllib_parse(__name__ + ".moves.urllib_parse"), + "moves.urllib_parse", "moves.urllib.parse") + + +class Module_six_moves_urllib_error(_LazyModule): + + """Lazy loading of moved objects in six.moves.urllib_error""" + + +_urllib_error_moved_attributes = [ + MovedAttribute("URLError", "urllib2", "urllib.error"), + MovedAttribute("HTTPError", "urllib2", "urllib.error"), + MovedAttribute("ContentTooShortError", "urllib", "urllib.error"), +] +for attr in _urllib_error_moved_attributes: + setattr(Module_six_moves_urllib_error, attr.name, attr) +del attr + +Module_six_moves_urllib_error._moved_attributes = _urllib_error_moved_attributes + +_importer._add_module(Module_six_moves_urllib_error(__name__ + ".moves.urllib.error"), + "moves.urllib_error", "moves.urllib.error") + + +class Module_six_moves_urllib_request(_LazyModule): + + """Lazy loading of moved objects in six.moves.urllib_request""" + + +_urllib_request_moved_attributes = [ + MovedAttribute("urlopen", "urllib2", "urllib.request"), + MovedAttribute("install_opener", "urllib2", "urllib.request"), + MovedAttribute("build_opener", "urllib2", "urllib.request"), + MovedAttribute("pathname2url", "urllib", "urllib.request"), + MovedAttribute("url2pathname", "urllib", "urllib.request"), + MovedAttribute("getproxies", "urllib", "urllib.request"), + MovedAttribute("Request", "urllib2", "urllib.request"), + MovedAttribute("OpenerDirector", "urllib2", "urllib.request"), + MovedAttribute("HTTPDefaultErrorHandler", "urllib2", "urllib.request"), + MovedAttribute("HTTPRedirectHandler", "urllib2", "urllib.request"), + MovedAttribute("HTTPCookieProcessor", "urllib2", "urllib.request"), + MovedAttribute("ProxyHandler", "urllib2", "urllib.request"), + MovedAttribute("BaseHandler", "urllib2", "urllib.request"), + MovedAttribute("HTTPPasswordMgr", "urllib2", "urllib.request"), + MovedAttribute("HTTPPasswordMgrWithDefaultRealm", "urllib2", "urllib.request"), + MovedAttribute("AbstractBasicAuthHandler", "urllib2", "urllib.request"), + MovedAttribute("HTTPBasicAuthHandler", "urllib2", "urllib.request"), + MovedAttribute("ProxyBasicAuthHandler", "urllib2", "urllib.request"), + MovedAttribute("AbstractDigestAuthHandler", "urllib2", "urllib.request"), + MovedAttribute("HTTPDigestAuthHandler", "urllib2", "urllib.request"), + MovedAttribute("ProxyDigestAuthHandler", "urllib2", "urllib.request"), + MovedAttribute("HTTPHandler", "urllib2", "urllib.request"), + MovedAttribute("HTTPSHandler", "urllib2", "urllib.request"), + MovedAttribute("FileHandler", "urllib2", "urllib.request"), + MovedAttribute("FTPHandler", "urllib2", "urllib.request"), + MovedAttribute("CacheFTPHandler", "urllib2", "urllib.request"), + MovedAttribute("UnknownHandler", "urllib2", "urllib.request"), + MovedAttribute("HTTPErrorProcessor", "urllib2", "urllib.request"), + MovedAttribute("urlretrieve", "urllib", "urllib.request"), + MovedAttribute("urlcleanup", "urllib", "urllib.request"), + MovedAttribute("proxy_bypass", "urllib", "urllib.request"), + MovedAttribute("parse_http_list", "urllib2", "urllib.request"), + MovedAttribute("parse_keqv_list", "urllib2", "urllib.request"), +] +if sys.version_info[:2] < (3, 14): + _urllib_request_moved_attributes.extend( + [ + MovedAttribute("URLopener", "urllib", "urllib.request"), + MovedAttribute("FancyURLopener", "urllib", "urllib.request"), + ] + ) +for attr in _urllib_request_moved_attributes: + setattr(Module_six_moves_urllib_request, attr.name, attr) +del attr + +Module_six_moves_urllib_request._moved_attributes = _urllib_request_moved_attributes + +_importer._add_module(Module_six_moves_urllib_request(__name__ + ".moves.urllib.request"), + "moves.urllib_request", "moves.urllib.request") + + +class Module_six_moves_urllib_response(_LazyModule): + + """Lazy loading of moved objects in six.moves.urllib_response""" + + +_urllib_response_moved_attributes = [ + MovedAttribute("addbase", "urllib", "urllib.response"), + MovedAttribute("addclosehook", "urllib", "urllib.response"), + MovedAttribute("addinfo", "urllib", "urllib.response"), + MovedAttribute("addinfourl", "urllib", "urllib.response"), +] +for attr in _urllib_response_moved_attributes: + setattr(Module_six_moves_urllib_response, attr.name, attr) +del attr + +Module_six_moves_urllib_response._moved_attributes = _urllib_response_moved_attributes + +_importer._add_module(Module_six_moves_urllib_response(__name__ + ".moves.urllib.response"), + "moves.urllib_response", "moves.urllib.response") + + +class Module_six_moves_urllib_robotparser(_LazyModule): + + """Lazy loading of moved objects in six.moves.urllib_robotparser""" + + +_urllib_robotparser_moved_attributes = [ + MovedAttribute("RobotFileParser", "robotparser", "urllib.robotparser"), +] +for attr in _urllib_robotparser_moved_attributes: + setattr(Module_six_moves_urllib_robotparser, attr.name, attr) +del attr + +Module_six_moves_urllib_robotparser._moved_attributes = _urllib_robotparser_moved_attributes + +_importer._add_module(Module_six_moves_urllib_robotparser(__name__ + ".moves.urllib.robotparser"), + "moves.urllib_robotparser", "moves.urllib.robotparser") + + +class Module_six_moves_urllib(types.ModuleType): + + """Create a six.moves.urllib namespace that resembles the Python 3 namespace""" + __path__ = [] # mark as package + parse = _importer._get_module("moves.urllib_parse") + error = _importer._get_module("moves.urllib_error") + request = _importer._get_module("moves.urllib_request") + response = _importer._get_module("moves.urllib_response") + robotparser = _importer._get_module("moves.urllib_robotparser") + + def __dir__(self): + return ['parse', 'error', 'request', 'response', 'robotparser'] + +_importer._add_module(Module_six_moves_urllib(__name__ + ".moves.urllib"), + "moves.urllib") + + +def add_move(move): + """Add an item to six.moves.""" + setattr(_MovedItems, move.name, move) + + +def remove_move(name): + """Remove item from six.moves.""" + try: + delattr(_MovedItems, name) + except AttributeError: + try: + del moves.__dict__[name] + except KeyError: + raise AttributeError("no such move, %r" % (name,)) + + +if PY3: + _meth_func = "__func__" + _meth_self = "__self__" + + _func_closure = "__closure__" + _func_code = "__code__" + _func_defaults = "__defaults__" + _func_globals = "__globals__" +else: + _meth_func = "im_func" + _meth_self = "im_self" + + _func_closure = "func_closure" + _func_code = "func_code" + _func_defaults = "func_defaults" + _func_globals = "func_globals" + + +try: + advance_iterator = next +except NameError: + def advance_iterator(it): + return it.next() +next = advance_iterator + + +try: + callable = callable +except NameError: + def callable(obj): + return any("__call__" in klass.__dict__ for klass in type(obj).__mro__) + + +if PY3: + def get_unbound_function(unbound): + return unbound + + create_bound_method = types.MethodType + + def create_unbound_method(func, cls): + return func + + Iterator = object +else: + def get_unbound_function(unbound): + return unbound.im_func + + def create_bound_method(func, obj): + return types.MethodType(func, obj, obj.__class__) + + def create_unbound_method(func, cls): + return types.MethodType(func, None, cls) + + class Iterator(object): + + def next(self): + return type(self).__next__(self) + + callable = callable +_add_doc(get_unbound_function, + """Get the function out of a possibly unbound function""") + + +get_method_function = operator.attrgetter(_meth_func) +get_method_self = operator.attrgetter(_meth_self) +get_function_closure = operator.attrgetter(_func_closure) +get_function_code = operator.attrgetter(_func_code) +get_function_defaults = operator.attrgetter(_func_defaults) +get_function_globals = operator.attrgetter(_func_globals) + + +if PY3: + def iterkeys(d, **kw): + return iter(d.keys(**kw)) + + def itervalues(d, **kw): + return iter(d.values(**kw)) + + def iteritems(d, **kw): + return iter(d.items(**kw)) + + def iterlists(d, **kw): + return iter(d.lists(**kw)) + + viewkeys = operator.methodcaller("keys") + + viewvalues = operator.methodcaller("values") + + viewitems = operator.methodcaller("items") +else: + def iterkeys(d, **kw): + return d.iterkeys(**kw) + + def itervalues(d, **kw): + return d.itervalues(**kw) + + def iteritems(d, **kw): + return d.iteritems(**kw) + + def iterlists(d, **kw): + return d.iterlists(**kw) + + viewkeys = operator.methodcaller("viewkeys") + + viewvalues = operator.methodcaller("viewvalues") + + viewitems = operator.methodcaller("viewitems") + +_add_doc(iterkeys, "Return an iterator over the keys of a dictionary.") +_add_doc(itervalues, "Return an iterator over the values of a dictionary.") +_add_doc(iteritems, + "Return an iterator over the (key, value) pairs of a dictionary.") +_add_doc(iterlists, + "Return an iterator over the (key, [values]) pairs of a dictionary.") + + +if PY3: + def b(s): + return s.encode("latin-1") + + def u(s): + return s + unichr = chr + import struct + int2byte = struct.Struct(">B").pack + del struct + byte2int = operator.itemgetter(0) + indexbytes = operator.getitem + iterbytes = iter + import io + StringIO = io.StringIO + BytesIO = io.BytesIO + del io + _assertCountEqual = "assertCountEqual" + if sys.version_info[1] <= 1: + _assertRaisesRegex = "assertRaisesRegexp" + _assertRegex = "assertRegexpMatches" + _assertNotRegex = "assertNotRegexpMatches" + else: + _assertRaisesRegex = "assertRaisesRegex" + _assertRegex = "assertRegex" + _assertNotRegex = "assertNotRegex" +else: + def b(s): + return s + # Workaround for standalone backslash + + def u(s): + return unicode(s.replace(r'\\', r'\\\\'), "unicode_escape") + unichr = unichr + int2byte = chr + + def byte2int(bs): + return ord(bs[0]) + + def indexbytes(buf, i): + return ord(buf[i]) + iterbytes = functools.partial(itertools.imap, ord) + import StringIO + StringIO = BytesIO = StringIO.StringIO + _assertCountEqual = "assertItemsEqual" + _assertRaisesRegex = "assertRaisesRegexp" + _assertRegex = "assertRegexpMatches" + _assertNotRegex = "assertNotRegexpMatches" +_add_doc(b, """Byte literal""") +_add_doc(u, """Text literal""") + + +def assertCountEqual(self, *args, **kwargs): + return getattr(self, _assertCountEqual)(*args, **kwargs) + + +def assertRaisesRegex(self, *args, **kwargs): + return getattr(self, _assertRaisesRegex)(*args, **kwargs) + + +def assertRegex(self, *args, **kwargs): + return getattr(self, _assertRegex)(*args, **kwargs) + + +def assertNotRegex(self, *args, **kwargs): + return getattr(self, _assertNotRegex)(*args, **kwargs) + + +if PY3: + exec_ = getattr(moves.builtins, "exec") + + def reraise(tp, value, tb=None): + try: + if value is None: + value = tp() + if value.__traceback__ is not tb: + raise value.with_traceback(tb) + raise value + finally: + value = None + tb = None + +else: + def exec_(_code_, _globs_=None, _locs_=None): + """Execute code in a namespace.""" + if _globs_ is None: + frame = sys._getframe(1) + _globs_ = frame.f_globals + if _locs_ is None: + _locs_ = frame.f_locals + del frame + elif _locs_ is None: + _locs_ = _globs_ + exec("""exec _code_ in _globs_, _locs_""") + + exec_("""def reraise(tp, value, tb=None): + try: + raise tp, value, tb + finally: + tb = None +""") + + +if sys.version_info[:2] > (3,): + exec_("""def raise_from(value, from_value): + try: + raise value from from_value + finally: + value = None +""") +else: + def raise_from(value, from_value): + raise value + + +print_ = getattr(moves.builtins, "print", None) +if print_ is None: + def print_(*args, **kwargs): + """The new-style print function for Python 2.4 and 2.5.""" + fp = kwargs.pop("file", sys.stdout) + if fp is None: + return + + def write(data): + if not isinstance(data, basestring): + data = str(data) + # If the file has an encoding, encode unicode with it. + if (isinstance(fp, file) and + isinstance(data, unicode) and + fp.encoding is not None): + errors = getattr(fp, "errors", None) + if errors is None: + errors = "strict" + data = data.encode(fp.encoding, errors) + fp.write(data) + want_unicode = False + sep = kwargs.pop("sep", None) + if sep is not None: + if isinstance(sep, unicode): + want_unicode = True + elif not isinstance(sep, str): + raise TypeError("sep must be None or a string") + end = kwargs.pop("end", None) + if end is not None: + if isinstance(end, unicode): + want_unicode = True + elif not isinstance(end, str): + raise TypeError("end must be None or a string") + if kwargs: + raise TypeError("invalid keyword arguments to print()") + if not want_unicode: + for arg in args: + if isinstance(arg, unicode): + want_unicode = True + break + if want_unicode: + newline = unicode("\n") + space = unicode(" ") + else: + newline = "\n" + space = " " + if sep is None: + sep = space + if end is None: + end = newline + for i, arg in enumerate(args): + if i: + write(sep) + write(arg) + write(end) +if sys.version_info[:2] < (3, 3): + _print = print_ + + def print_(*args, **kwargs): + fp = kwargs.get("file", sys.stdout) + flush = kwargs.pop("flush", False) + _print(*args, **kwargs) + if flush and fp is not None: + fp.flush() + +_add_doc(reraise, """Reraise an exception.""") + +if sys.version_info[0:2] < (3, 4): + # This does exactly the same what the :func:`py3:functools.update_wrapper` + # function does on Python versions after 3.2. It sets the ``__wrapped__`` + # attribute on ``wrapper`` object and it doesn't raise an error if any of + # the attributes mentioned in ``assigned`` and ``updated`` are missing on + # ``wrapped`` object. + def _update_wrapper(wrapper, wrapped, + assigned=functools.WRAPPER_ASSIGNMENTS, + updated=functools.WRAPPER_UPDATES): + for attr in assigned: + try: + value = getattr(wrapped, attr) + except AttributeError: + continue + else: + setattr(wrapper, attr, value) + for attr in updated: + getattr(wrapper, attr).update(getattr(wrapped, attr, {})) + wrapper.__wrapped__ = wrapped + return wrapper + _update_wrapper.__doc__ = functools.update_wrapper.__doc__ + + def wraps(wrapped, assigned=functools.WRAPPER_ASSIGNMENTS, + updated=functools.WRAPPER_UPDATES): + return functools.partial(_update_wrapper, wrapped=wrapped, + assigned=assigned, updated=updated) + wraps.__doc__ = functools.wraps.__doc__ + +else: + wraps = functools.wraps + + +def with_metaclass(meta, *bases): + """Create a base class with a metaclass.""" + # This requires a bit of explanation: the basic idea is to make a dummy + # metaclass for one level of class instantiation that replaces itself with + # the actual metaclass. + class metaclass(type): + + def __new__(cls, name, this_bases, d): + if sys.version_info[:2] >= (3, 7): + # This version introduced PEP 560 that requires a bit + # of extra care (we mimic what is done by __build_class__). + resolved_bases = types.resolve_bases(bases) + if resolved_bases is not bases: + d['__orig_bases__'] = bases + else: + resolved_bases = bases + return meta(name, resolved_bases, d) + + @classmethod + def __prepare__(cls, name, this_bases): + return meta.__prepare__(name, bases) + return type.__new__(metaclass, 'temporary_class', (), {}) + + +def add_metaclass(metaclass): + """Class decorator for creating a class with a metaclass.""" + def wrapper(cls): + orig_vars = cls.__dict__.copy() + slots = orig_vars.get('__slots__') + if slots is not None: + if isinstance(slots, str): + slots = [slots] + for slots_var in slots: + orig_vars.pop(slots_var) + orig_vars.pop('__dict__', None) + orig_vars.pop('__weakref__', None) + if hasattr(cls, '__qualname__'): + orig_vars['__qualname__'] = cls.__qualname__ + return metaclass(cls.__name__, cls.__bases__, orig_vars) + return wrapper + + +def ensure_binary(s, encoding='utf-8', errors='strict'): + """Coerce **s** to six.binary_type. + + For Python 2: + - `unicode` -> encoded to `str` + - `str` -> `str` + + For Python 3: + - `str` -> encoded to `bytes` + - `bytes` -> `bytes` + """ + if isinstance(s, binary_type): + return s + if isinstance(s, text_type): + return s.encode(encoding, errors) + raise TypeError("not expecting type '%s'" % type(s)) + + +def ensure_str(s, encoding='utf-8', errors='strict'): + """Coerce *s* to `str`. + + For Python 2: + - `unicode` -> encoded to `str` + - `str` -> `str` + + For Python 3: + - `str` -> `str` + - `bytes` -> decoded to `str` + """ + # Optimization: Fast return for the common case. + if type(s) is str: + return s + if PY2 and isinstance(s, text_type): + return s.encode(encoding, errors) + elif PY3 and isinstance(s, binary_type): + return s.decode(encoding, errors) + elif not isinstance(s, (text_type, binary_type)): + raise TypeError("not expecting type '%s'" % type(s)) + return s + + +def ensure_text(s, encoding='utf-8', errors='strict'): + """Coerce *s* to six.text_type. + + For Python 2: + - `unicode` -> `unicode` + - `str` -> `unicode` + + For Python 3: + - `str` -> `str` + - `bytes` -> decoded to `str` + """ + if isinstance(s, binary_type): + return s.decode(encoding, errors) + elif isinstance(s, text_type): + return s + else: + raise TypeError("not expecting type '%s'" % type(s)) + + +def python_2_unicode_compatible(klass): + """ + A class decorator that defines __unicode__ and __str__ methods under Python 2. + Under Python 3 it does nothing. + + To support Python 2 and 3 with a single code base, define a __str__ method + returning text and apply this decorator to the class. + """ + if PY2: + if '__str__' not in klass.__dict__: + raise ValueError("@python_2_unicode_compatible cannot be applied " + "to %s because it doesn't define __str__()." % + klass.__name__) + klass.__unicode__ = klass.__str__ + klass.__str__ = lambda self: self.__unicode__().encode('utf-8') + return klass + + +# Complete the moves implementation. +# This code is at the end of this module to speed up module loading. +# Turn this module into a package. +__path__ = [] # required for PEP 302 and PEP 451 +__package__ = __name__ # see PEP 366 @ReservedAssignment +if globals().get("__spec__") is not None: + __spec__.submodule_search_locations = [] # PEP 451 @UndefinedVariable +# Remove other six meta path importers, since they cause problems. This can +# happen if six is removed from sys.modules and then reloaded. (Setuptools does +# this for some reason.) +if sys.meta_path: + for i, importer in enumerate(sys.meta_path): + # Here's some real nastiness: Another "instance" of the six module might + # be floating around. Therefore, we can't use isinstance() to check for + # the six meta path importer, since the other six instance will have + # inserted an importer with different class. + if (type(importer).__name__ == "_SixMetaPathImporter" and + importer.name == __name__): + del sys.meta_path[i] + break + del i, importer +# Finally, add the importer to the meta path import hook. +sys.meta_path.append(_importer) diff --git a/tensorboard.exe b/tensorboard.exe new file mode 100644 index 0000000000000000000000000000000000000000..f1c1dd925a246a4bb8ec2c796c51008eacbe877b --- /dev/null +++ b/tensorboard.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b70a427393d5fa95952bcf4b402c3019b4f8131d4431ef5372bc85fbe85d7f4c +size 108447 diff --git a/tf_upgrade_v2.exe b/tf_upgrade_v2.exe new file mode 100644 index 0000000000000000000000000000000000000000..a974c01074447ad92e009ebeca53bcd31b5de62f --- /dev/null +++ b/tf_upgrade_v2.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38febef2f6ad29287ebfbe4dd9955bb3003b7da1a7d8a55f1ad54802657b2606 +size 108472 diff --git a/tflite_convert.exe b/tflite_convert.exe new file mode 100644 index 0000000000000000000000000000000000000000..7ab6650364ed2a9c769c8ea814cf0fcfd8d68264 --- /dev/null +++ b/tflite_convert.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f381a29252cf2a6938ae14b2e0e438fdaef8e766fb9830b7346529f2b311a39f +size 108460 diff --git a/toco.exe b/toco.exe new file mode 100644 index 0000000000000000000000000000000000000000..7ab6650364ed2a9c769c8ea814cf0fcfd8d68264 --- /dev/null +++ b/toco.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f381a29252cf2a6938ae14b2e0e438fdaef8e766fb9830b7346529f2b311a39f +size 108460 diff --git a/toco_from_protos.exe b/toco_from_protos.exe new file mode 100644 index 0000000000000000000000000000000000000000..b964546f4e2021060042cc42f912cb4a91f1e609 --- /dev/null +++ b/toco_from_protos.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a6844ade14dfeb4a5761e5d5ac0ef3a98402d8542dff571f9628c44e65ecbaa +size 108467 diff --git a/top_level.txt b/top_level.txt new file mode 100644 index 0000000000000000000000000000000000000000..90d81bec1d35eb3996334268974885a5398b6c6c --- /dev/null +++ b/top_level.txt @@ -0,0 +1,3 @@ +functorch +torch +torchgen diff --git a/torchfrtrace.exe b/torchfrtrace.exe new file mode 100644 index 0000000000000000000000000000000000000000..3068ae0dadce9d0ac045b6a6af8c2372fbe91df7 --- /dev/null +++ b/torchfrtrace.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20117d5faf869ea718d73dc75cd382d0a671abd33a42d70b3e26e0deb8d70f1d +size 108451 diff --git a/torchrun.exe b/torchrun.exe new file mode 100644 index 0000000000000000000000000000000000000000..2d06151516e472bb0341eff40b9562facc1ef968 --- /dev/null +++ b/torchrun.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e13a1cf252d1ab3371f4f9d8bfdf878e17dd7e89eb10f25e618160da555325e5 +size 108442 diff --git a/tqdm.exe b/tqdm.exe new file mode 100644 index 0000000000000000000000000000000000000000..4d6839bf69d2a8e4c35afca7652ffb115ec1ebd1 --- /dev/null +++ b/tqdm.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78e577586f0188fd9f139c5395ad1bff330a7d01e373c66c110a2783d12bf7f8 +size 108429 diff --git a/transformers-cli.exe b/transformers-cli.exe new file mode 100644 index 0000000000000000000000000000000000000000..29ba1b65657892d6b80235f985e4b4b8c78b2ac9 --- /dev/null +++ b/transformers-cli.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c23917cde2979a6f3e24a01fc39e3d30b5246e4575049f1c56ed76bdbcf715c +size 108459 diff --git a/typing_extensions.py b/typing_extensions.py new file mode 100644 index 0000000000000000000000000000000000000000..71e27ba54f26ea808fb1c81fa9b0c9192fc2d2a8 --- /dev/null +++ b/typing_extensions.py @@ -0,0 +1,3644 @@ +import abc +import collections +import collections.abc +import contextlib +import functools +import inspect +import operator +import sys +import types as _types +import typing +import warnings +import transformers +import datasets +import torch + +__all__ = [ + # Super-special typing primitives. + 'Any', + 'ClassVar', + 'Concatenate', + 'Final', + 'LiteralString', + 'ParamSpec', + 'ParamSpecArgs', + 'ParamSpecKwargs', + 'Self', + 'Type', + 'TypeVar', + 'TypeVarTuple', + 'Unpack', + + # ABCs (from collections.abc). + 'Awaitable', + 'AsyncIterator', + 'AsyncIterable', + 'Coroutine', + 'AsyncGenerator', + 'AsyncContextManager', + 'Buffer', + 'ChainMap', + + # Concrete collection types. + 'ContextManager', + 'Counter', + 'Deque', + 'DefaultDict', + 'NamedTuple', + 'OrderedDict', + 'TypedDict', + + # Structural checks, a.k.a. protocols. + 'SupportsAbs', + 'SupportsBytes', + 'SupportsComplex', + 'SupportsFloat', + 'SupportsIndex', + 'SupportsInt', + 'SupportsRound', + + # One-off things. + 'Annotated', + 'assert_never', + 'assert_type', + 'clear_overloads', + 'dataclass_transform', + 'deprecated', + 'Doc', + 'get_overloads', + 'final', + 'get_args', + 'get_origin', + 'get_original_bases', + 'get_protocol_members', + 'get_type_hints', + 'IntVar', + 'is_protocol', + 'is_typeddict', + 'Literal', + 'NewType', + 'overload', + 'override', + 'Protocol', + 'reveal_type', + 'runtime', + 'runtime_checkable', + 'Text', + 'TypeAlias', + 'TypeAliasType', + 'TypeGuard', + 'TypeIs', + 'TYPE_CHECKING', + 'Never', + 'NoReturn', + 'ReadOnly', + 'Required', + 'NotRequired', + + # Pure aliases, have always been in typing + 'AbstractSet', + 'AnyStr', + 'BinaryIO', + 'Callable', + 'Collection', + 'Container', + 'Dict', + 'ForwardRef', + 'FrozenSet', + 'Generator', + 'Generic', + 'Hashable', + 'IO', + 'ItemsView', + 'Iterable', + 'Iterator', + 'KeysView', + 'List', + 'Mapping', + 'MappingView', + 'Match', + 'MutableMapping', + 'MutableSequence', + 'MutableSet', + 'NoDefault', + 'Optional', + 'Pattern', + 'Reversible', + 'Sequence', + 'Set', + 'Sized', + 'TextIO', + 'Tuple', + 'Union', + 'ValuesView', + 'cast', + 'no_type_check', + 'no_type_check_decorator', +] + +# for backward compatibility +PEP_560 = True +GenericMeta = type +_PEP_696_IMPLEMENTED = sys.version_info >= (3, 13, 0, "beta") + +# The functions below are modified copies of typing internal helpers. +# They are needed by _ProtocolMeta and they provide support for PEP 646. + + +class _Sentinel: + def __repr__(self): + return "" + + +_marker = _Sentinel() + + +if sys.version_info >= (3, 10): + def _should_collect_from_parameters(t): + return isinstance( + t, (typing._GenericAlias, _types.GenericAlias, _types.UnionType) + ) +elif sys.version_info >= (3, 9): + def _should_collect_from_parameters(t): + return isinstance(t, (typing._GenericAlias, _types.GenericAlias)) +else: + def _should_collect_from_parameters(t): + return isinstance(t, typing._GenericAlias) and not t._special + + +NoReturn = typing.NoReturn + +# Some unconstrained type variables. These are used by the container types. +# (These are not for export.) +T = typing.TypeVar('T') # Any type. +KT = typing.TypeVar('KT') # Key type. +VT = typing.TypeVar('VT') # Value type. +T_co = typing.TypeVar('T_co', covariant=True) # Any type covariant containers. +T_contra = typing.TypeVar('T_contra', contravariant=True) # Ditto contravariant. + + +if sys.version_info >= (3, 11): + from typing import Any +else: + + class _AnyMeta(type): + def __instancecheck__(self, obj): + if self is Any: + raise TypeError("typing_extensions.Any cannot be used with isinstance()") + return super().__instancecheck__(obj) + + def __repr__(self): + if self is Any: + return "typing_extensions.Any" + return super().__repr__() + + class Any(metaclass=_AnyMeta): + """Special type indicating an unconstrained type. + - Any is compatible with every type. + - Any assumed to have all methods. + - All values assumed to be instances of Any. + Note that all the above statements are true from the point of view of + static type checkers. At runtime, Any should not be used with instance + checks. + """ + def __new__(cls, *args, **kwargs): + if cls is Any: + raise TypeError("Any cannot be instantiated") + return super().__new__(cls, *args, **kwargs) + + +ClassVar = typing.ClassVar + + +class _ExtensionsSpecialForm(typing._SpecialForm, _root=True): + def __repr__(self): + return 'typing_extensions.' + self._name + + +Final = typing.Final + +if sys.version_info >= (3, 11): + final = typing.final +else: + # @final exists in 3.8+, but we backport it for all versions + # before 3.11 to keep support for the __final__ attribute. + # See https://bugs.python.org/issue46342 + def final(f): + """This decorator can be used to indicate to type checkers that + the decorated method cannot be overridden, and decorated class + cannot be subclassed. For example: + + class Base: + @final + def done(self) -> None: + ... + class Sub(Base): + def done(self) -> None: # Error reported by type checker + ... + @final + class Leaf: + ... + class Other(Leaf): # Error reported by type checker + ... + + There is no runtime checking of these properties. The decorator + sets the ``__final__`` attribute to ``True`` on the decorated object + to allow runtime introspection. + """ + try: + f.__final__ = True + except (AttributeError, TypeError): + # Skip the attribute silently if it is not writable. + # AttributeError happens if the object has __slots__ or a + # read-only property, TypeError if it's a builtin class. + pass + return f + + +def IntVar(name): + return typing.TypeVar(name) + + +# A Literal bug was fixed in 3.11.0, 3.10.1 and 3.9.8 +if sys.version_info >= (3, 10, 1): + Literal = typing.Literal +else: + def _flatten_literal_params(parameters): + """An internal helper for Literal creation: flatten Literals among parameters""" + params = [] + for p in parameters: + if isinstance(p, _LiteralGenericAlias): + params.extend(p.__args__) + else: + params.append(p) + return tuple(params) + + def _value_and_type_iter(params): + for p in params: + yield p, type(p) + + class _LiteralGenericAlias(typing._GenericAlias, _root=True): + def __eq__(self, other): + if not isinstance(other, _LiteralGenericAlias): + return NotImplemented + these_args_deduped = set(_value_and_type_iter(self.__args__)) + other_args_deduped = set(_value_and_type_iter(other.__args__)) + return these_args_deduped == other_args_deduped + + def __hash__(self): + return hash(frozenset(_value_and_type_iter(self.__args__))) + + class _LiteralForm(_ExtensionsSpecialForm, _root=True): + def __init__(self, doc: str): + self._name = 'Literal' + self._doc = self.__doc__ = doc + + def __getitem__(self, parameters): + if not isinstance(parameters, tuple): + parameters = (parameters,) + + parameters = _flatten_literal_params(parameters) + + val_type_pairs = list(_value_and_type_iter(parameters)) + try: + deduped_pairs = set(val_type_pairs) + except TypeError: + # unhashable parameters + pass + else: + # similar logic to typing._deduplicate on Python 3.9+ + if len(deduped_pairs) < len(val_type_pairs): + new_parameters = [] + for pair in val_type_pairs: + if pair in deduped_pairs: + new_parameters.append(pair[0]) + deduped_pairs.remove(pair) + assert not deduped_pairs, deduped_pairs + parameters = tuple(new_parameters) + + return _LiteralGenericAlias(self, parameters) + + Literal = _LiteralForm(doc="""\ + A type that can be used to indicate to type checkers + that the corresponding value has a value literally equivalent + to the provided parameter. For example: + + var: Literal[4] = 4 + + The type checker understands that 'var' is literally equal to + the value 4 and no other value. + + Literal[...] cannot be subclassed. There is no runtime + checking verifying that the parameter is actually a value + instead of a type.""") + + +_overload_dummy = typing._overload_dummy + + +if hasattr(typing, "get_overloads"): # 3.11+ + overload = typing.overload + get_overloads = typing.get_overloads + clear_overloads = typing.clear_overloads +else: + # {module: {qualname: {firstlineno: func}}} + _overload_registry = collections.defaultdict( + functools.partial(collections.defaultdict, dict) + ) + + def overload(func): + """Decorator for overloaded functions/methods. + + In a stub file, place two or more stub definitions for the same + function in a row, each decorated with @overload. For example: + + @overload + def utf8(value: None) -> None: ... + @overload + def utf8(value: bytes) -> bytes: ... + @overload + def utf8(value: str) -> bytes: ... + + In a non-stub file (i.e. a regular .py file), do the same but + follow it with an implementation. The implementation should *not* + be decorated with @overload. For example: + + @overload + def utf8(value: None) -> None: ... + @overload + def utf8(value: bytes) -> bytes: ... + @overload + def utf8(value: str) -> bytes: ... + def utf8(value): + # implementation goes here + + The overloads for a function can be retrieved at runtime using the + get_overloads() function. + """ + # classmethod and staticmethod + f = getattr(func, "__func__", func) + try: + _overload_registry[f.__module__][f.__qualname__][ + f.__code__.co_firstlineno + ] = func + except AttributeError: + # Not a normal function; ignore. + pass + return _overload_dummy + + def get_overloads(func): + """Return all defined overloads for *func* as a sequence.""" + # classmethod and staticmethod + f = getattr(func, "__func__", func) + if f.__module__ not in _overload_registry: + return [] + mod_dict = _overload_registry[f.__module__] + if f.__qualname__ not in mod_dict: + return [] + return list(mod_dict[f.__qualname__].values()) + + def clear_overloads(): + """Clear all overloads in the registry.""" + _overload_registry.clear() + + +# This is not a real generic class. Don't use outside annotations. +Type = typing.Type + +# Various ABCs mimicking those in collections.abc. +# A few are simply re-exported for completeness. +Awaitable = typing.Awaitable +Coroutine = typing.Coroutine +AsyncIterable = typing.AsyncIterable +AsyncIterator = typing.AsyncIterator +Deque = typing.Deque +DefaultDict = typing.DefaultDict +OrderedDict = typing.OrderedDict +Counter = typing.Counter +ChainMap = typing.ChainMap +Text = typing.Text +TYPE_CHECKING = typing.TYPE_CHECKING + + +if sys.version_info >= (3, 13, 0, "beta"): + from typing import AsyncContextManager, AsyncGenerator, ContextManager, Generator +else: + def _is_dunder(attr): + return attr.startswith('__') and attr.endswith('__') + + # Python <3.9 doesn't have typing._SpecialGenericAlias + _special_generic_alias_base = getattr( + typing, "_SpecialGenericAlias", typing._GenericAlias + ) + + class _SpecialGenericAlias(_special_generic_alias_base, _root=True): + def __init__(self, origin, nparams, *, inst=True, name=None, defaults=()): + if _special_generic_alias_base is typing._GenericAlias: + # Python <3.9 + self.__origin__ = origin + self._nparams = nparams + super().__init__(origin, nparams, special=True, inst=inst, name=name) + else: + # Python >= 3.9 + super().__init__(origin, nparams, inst=inst, name=name) + self._defaults = defaults + + def __setattr__(self, attr, val): + allowed_attrs = {'_name', '_inst', '_nparams', '_defaults'} + if _special_generic_alias_base is typing._GenericAlias: + # Python <3.9 + allowed_attrs.add("__origin__") + if _is_dunder(attr) or attr in allowed_attrs: + object.__setattr__(self, attr, val) + else: + setattr(self.__origin__, attr, val) + + @typing._tp_cache + def __getitem__(self, params): + if not isinstance(params, tuple): + params = (params,) + msg = "Parameters to generic types must be types." + params = tuple(typing._type_check(p, msg) for p in params) + if ( + self._defaults + and len(params) < self._nparams + and len(params) + len(self._defaults) >= self._nparams + ): + params = (*params, *self._defaults[len(params) - self._nparams:]) + actual_len = len(params) + + if actual_len != self._nparams: + if self._defaults: + expected = f"at least {self._nparams - len(self._defaults)}" + else: + expected = str(self._nparams) + if not self._nparams: + raise TypeError(f"{self} is not a generic class") + raise TypeError( + f"Too {'many' if actual_len > self._nparams else 'few'}" + f" arguments for {self};" + f" actual {actual_len}, expected {expected}" + ) + return self.copy_with(params) + + _NoneType = type(None) + Generator = _SpecialGenericAlias( + collections.abc.Generator, 3, defaults=(_NoneType, _NoneType) + ) + AsyncGenerator = _SpecialGenericAlias( + collections.abc.AsyncGenerator, 2, defaults=(_NoneType,) + ) + ContextManager = _SpecialGenericAlias( + contextlib.AbstractContextManager, + 2, + name="ContextManager", + defaults=(typing.Optional[bool],) + ) + AsyncContextManager = _SpecialGenericAlias( + contextlib.AbstractAsyncContextManager, + 2, + name="AsyncContextManager", + defaults=(typing.Optional[bool],) + ) + + +_PROTO_ALLOWLIST = { + 'collections.abc': [ + 'Callable', 'Awaitable', 'Iterable', 'Iterator', 'AsyncIterable', + 'Hashable', 'Sized', 'Container', 'Collection', 'Reversible', 'Buffer', + ], + 'contextlib': ['AbstractContextManager', 'AbstractAsyncContextManager'], + 'typing_extensions': ['Buffer'], +} + + +_EXCLUDED_ATTRS = frozenset(typing.EXCLUDED_ATTRIBUTES) | { + "__match_args__", "__protocol_attrs__", "__non_callable_proto_members__", + "__final__", +} + + +def _get_protocol_attrs(cls): + attrs = set() + for base in cls.__mro__[:-1]: # without object + if base.__name__ in {'Protocol', 'Generic'}: + continue + annotations = getattr(base, '__annotations__', {}) + for attr in (*base.__dict__, *annotations): + if (not attr.startswith('_abc_') and attr not in _EXCLUDED_ATTRS): + attrs.add(attr) + return attrs + + +def _caller(depth=2): + try: + return sys._getframe(depth).f_globals.get('__name__', '__main__') + except (AttributeError, ValueError): # For platforms without _getframe() + return None + + +# `__match_args__` attribute was removed from protocol members in 3.13, +# we want to backport this change to older Python versions. +if sys.version_info >= (3, 13): + Protocol = typing.Protocol +else: + def _allow_reckless_class_checks(depth=3): + """Allow instance and class checks for special stdlib modules. + The abc and functools modules indiscriminately call isinstance() and + issubclass() on the whole MRO of a user class, which may contain protocols. + """ + return _caller(depth) in {'abc', 'functools', None} + + def _no_init(self, *args, **kwargs): + if type(self)._is_protocol: + raise TypeError('Protocols cannot be instantiated') + + def _type_check_issubclass_arg_1(arg): + """Raise TypeError if `arg` is not an instance of `type` + in `issubclass(arg, )`. + + In most cases, this is verified by type.__subclasscheck__. + Checking it again unnecessarily would slow down issubclass() checks, + so, we don't perform this check unless we absolutely have to. + + For various error paths, however, + we want to ensure that *this* error message is shown to the user + where relevant, rather than a typing.py-specific error message. + """ + if not isinstance(arg, type): + # Same error message as for issubclass(1, int). + raise TypeError('issubclass() arg 1 must be a class') + + # Inheriting from typing._ProtocolMeta isn't actually desirable, + # but is necessary to allow typing.Protocol and typing_extensions.Protocol + # to mix without getting TypeErrors about "metaclass conflict" + class _ProtocolMeta(type(typing.Protocol)): + # This metaclass is somewhat unfortunate, + # but is necessary for several reasons... + # + # NOTE: DO NOT call super() in any methods in this class + # That would call the methods on typing._ProtocolMeta on Python 3.8-3.11 + # and those are slow + def __new__(mcls, name, bases, namespace, **kwargs): + if name == "Protocol" and len(bases) < 2: + pass + elif {Protocol, typing.Protocol} & set(bases): + for base in bases: + if not ( + base in {object, typing.Generic, Protocol, typing.Protocol} + or base.__name__ in _PROTO_ALLOWLIST.get(base.__module__, []) + or is_protocol(base) + ): + raise TypeError( + f"Protocols can only inherit from other protocols, " + f"got {base!r}" + ) + return abc.ABCMeta.__new__(mcls, name, bases, namespace, **kwargs) + + def __init__(cls, *args, **kwargs): + abc.ABCMeta.__init__(cls, *args, **kwargs) + if getattr(cls, "_is_protocol", False): + cls.__protocol_attrs__ = _get_protocol_attrs(cls) + + def __subclasscheck__(cls, other): + if cls is Protocol: + return type.__subclasscheck__(cls, other) + if ( + getattr(cls, '_is_protocol', False) + and not _allow_reckless_class_checks() + ): + if not getattr(cls, '_is_runtime_protocol', False): + _type_check_issubclass_arg_1(other) + raise TypeError( + "Instance and class checks can only be used with " + "@runtime_checkable protocols" + ) + if ( + # this attribute is set by @runtime_checkable: + cls.__non_callable_proto_members__ + and cls.__dict__.get("__subclasshook__") is _proto_hook + ): + _type_check_issubclass_arg_1(other) + non_method_attrs = sorted(cls.__non_callable_proto_members__) + raise TypeError( + "Protocols with non-method members don't support issubclass()." + f" Non-method members: {str(non_method_attrs)[1:-1]}." + ) + return abc.ABCMeta.__subclasscheck__(cls, other) + + def __instancecheck__(cls, instance): + # We need this method for situations where attributes are + # assigned in __init__. + if cls is Protocol: + return type.__instancecheck__(cls, instance) + if not getattr(cls, "_is_protocol", False): + # i.e., it's a concrete subclass of a protocol + return abc.ABCMeta.__instancecheck__(cls, instance) + + if ( + not getattr(cls, '_is_runtime_protocol', False) and + not _allow_reckless_class_checks() + ): + raise TypeError("Instance and class checks can only be used with" + " @runtime_checkable protocols") + + if abc.ABCMeta.__instancecheck__(cls, instance): + return True + + for attr in cls.__protocol_attrs__: + try: + val = inspect.getattr_static(instance, attr) + except AttributeError: + break + # this attribute is set by @runtime_checkable: + if val is None and attr not in cls.__non_callable_proto_members__: + break + else: + return True + + return False + + def __eq__(cls, other): + # Hack so that typing.Generic.__class_getitem__ + # treats typing_extensions.Protocol + # as equivalent to typing.Protocol + if abc.ABCMeta.__eq__(cls, other) is True: + return True + return cls is Protocol and other is typing.Protocol + + # This has to be defined, or the abc-module cache + # complains about classes with this metaclass being unhashable, + # if we define only __eq__! + def __hash__(cls) -> int: + return type.__hash__(cls) + + @classmethod + def _proto_hook(cls, other): + if not cls.__dict__.get('_is_protocol', False): + return NotImplemented + + for attr in cls.__protocol_attrs__: + for base in other.__mro__: + # Check if the members appears in the class dictionary... + if attr in base.__dict__: + if base.__dict__[attr] is None: + return NotImplemented + break + + # ...or in annotations, if it is a sub-protocol. + annotations = getattr(base, '__annotations__', {}) + if ( + isinstance(annotations, collections.abc.Mapping) + and attr in annotations + and is_protocol(other) + ): + break + else: + return NotImplemented + return True + + class Protocol(typing.Generic, metaclass=_ProtocolMeta): + __doc__ = typing.Protocol.__doc__ + __slots__ = () + _is_protocol = True + _is_runtime_protocol = False + + def __init_subclass__(cls, *args, **kwargs): + super().__init_subclass__(*args, **kwargs) + + # Determine if this is a protocol or a concrete subclass. + if not cls.__dict__.get('_is_protocol', False): + cls._is_protocol = any(b is Protocol for b in cls.__bases__) + + # Set (or override) the protocol subclass hook. + if '__subclasshook__' not in cls.__dict__: + cls.__subclasshook__ = _proto_hook + + # Prohibit instantiation for protocol classes + if cls._is_protocol and cls.__init__ is Protocol.__init__: + cls.__init__ = _no_init + + +if sys.version_info >= (3, 13): + runtime_checkable = typing.runtime_checkable +else: + def runtime_checkable(cls): + """Mark a protocol class as a runtime protocol. + + Such protocol can be used with isinstance() and issubclass(). + Raise TypeError if applied to a non-protocol class. + This allows a simple-minded structural check very similar to + one trick ponies in collections.abc such as Iterable. + + For example:: + + @runtime_checkable + class Closable(Protocol): + def close(self): ... + + assert isinstance(open('/some/file'), Closable) + + Warning: this will check only the presence of the required methods, + not their type signatures! + """ + if not issubclass(cls, typing.Generic) or not getattr(cls, '_is_protocol', False): + raise TypeError(f'@runtime_checkable can be only applied to protocol classes,' + f' got {cls!r}') + cls._is_runtime_protocol = True + + # typing.Protocol classes on <=3.11 break if we execute this block, + # because typing.Protocol classes on <=3.11 don't have a + # `__protocol_attrs__` attribute, and this block relies on the + # `__protocol_attrs__` attribute. Meanwhile, typing.Protocol classes on 3.12.2+ + # break if we *don't* execute this block, because *they* assume that all + # protocol classes have a `__non_callable_proto_members__` attribute + # (which this block sets) + if isinstance(cls, _ProtocolMeta) or sys.version_info >= (3, 12, 2): + # PEP 544 prohibits using issubclass() + # with protocols that have non-method members. + # See gh-113320 for why we compute this attribute here, + # rather than in `_ProtocolMeta.__init__` + cls.__non_callable_proto_members__ = set() + for attr in cls.__protocol_attrs__: + try: + is_callable = callable(getattr(cls, attr, None)) + except Exception as e: + raise TypeError( + f"Failed to determine whether protocol member {attr!r} " + "is a method member" + ) from e + else: + if not is_callable: + cls.__non_callable_proto_members__.add(attr) + + return cls + + +# The "runtime" alias exists for backwards compatibility. +runtime = runtime_checkable + + +# Our version of runtime-checkable protocols is faster on Python 3.8-3.11 +if sys.version_info >= (3, 12): + SupportsInt = typing.SupportsInt + SupportsFloat = typing.SupportsFloat + SupportsComplex = typing.SupportsComplex + SupportsBytes = typing.SupportsBytes + SupportsIndex = typing.SupportsIndex + SupportsAbs = typing.SupportsAbs + SupportsRound = typing.SupportsRound +else: + @runtime_checkable + class SupportsInt(Protocol): + """An ABC with one abstract method __int__.""" + __slots__ = () + + @abc.abstractmethod + def __int__(self) -> int: + pass + + @runtime_checkable + class SupportsFloat(Protocol): + """An ABC with one abstract method __float__.""" + __slots__ = () + + @abc.abstractmethod + def __float__(self) -> float: + pass + + @runtime_checkable + class SupportsComplex(Protocol): + """An ABC with one abstract method __complex__.""" + __slots__ = () + + @abc.abstractmethod + def __complex__(self) -> complex: + pass + + @runtime_checkable + class SupportsBytes(Protocol): + """An ABC with one abstract method __bytes__.""" + __slots__ = () + + @abc.abstractmethod + def __bytes__(self) -> bytes: + pass + + @runtime_checkable + class SupportsIndex(Protocol): + __slots__ = () + + @abc.abstractmethod + def __index__(self) -> int: + pass + + @runtime_checkable + class SupportsAbs(Protocol[T_co]): + """ + An ABC with one abstract method __abs__ that is covariant in its return type. + """ + __slots__ = () + + @abc.abstractmethod + def __abs__(self) -> T_co: + pass + + @runtime_checkable + class SupportsRound(Protocol[T_co]): + """ + An ABC with one abstract method __round__ that is covariant in its return type. + """ + __slots__ = () + + @abc.abstractmethod + def __round__(self, ndigits: int = 0) -> T_co: + pass + + +def _ensure_subclassable(mro_entries): + def inner(func): + if sys.implementation.name == "pypy" and sys.version_info < (3, 9): + cls_dict = { + "__call__": staticmethod(func), + "__mro_entries__": staticmethod(mro_entries) + } + t = type(func.__name__, (), cls_dict) + return functools.update_wrapper(t(), func) + else: + func.__mro_entries__ = mro_entries + return func + return inner + + +# Update this to something like >=3.13.0b1 if and when +# PEP 728 is implemented in CPython +_PEP_728_IMPLEMENTED = False + +if _PEP_728_IMPLEMENTED: + # The standard library TypedDict in Python 3.8 does not store runtime information + # about which (if any) keys are optional. See https://bugs.python.org/issue38834 + # The standard library TypedDict in Python 3.9.0/1 does not honour the "total" + # keyword with old-style TypedDict(). See https://bugs.python.org/issue42059 + # The standard library TypedDict below Python 3.11 does not store runtime + # information about optional and required keys when using Required or NotRequired. + # Generic TypedDicts are also impossible using typing.TypedDict on Python <3.11. + # Aaaand on 3.12 we add __orig_bases__ to TypedDict + # to enable better runtime introspection. + # On 3.13 we deprecate some odd ways of creating TypedDicts. + # Also on 3.13, PEP 705 adds the ReadOnly[] qualifier. + # PEP 728 (still pending) makes more changes. + TypedDict = typing.TypedDict + _TypedDictMeta = typing._TypedDictMeta + is_typeddict = typing.is_typeddict +else: + # 3.10.0 and later + _TAKES_MODULE = "module" in inspect.signature(typing._type_check).parameters + + def _get_typeddict_qualifiers(annotation_type): + while True: + annotation_origin = get_origin(annotation_type) + if annotation_origin is Annotated: + annotation_args = get_args(annotation_type) + if annotation_args: + annotation_type = annotation_args[0] + else: + break + elif annotation_origin is Required: + yield Required + annotation_type, = get_args(annotation_type) + elif annotation_origin is NotRequired: + yield NotRequired + annotation_type, = get_args(annotation_type) + elif annotation_origin is ReadOnly: + yield ReadOnly + annotation_type, = get_args(annotation_type) + else: + break + + class _TypedDictMeta(type): + def __new__(cls, name, bases, ns, *, total=True, closed=False): + """Create new typed dict class object. + + This method is called when TypedDict is subclassed, + or when TypedDict is instantiated. This way + TypedDict supports all three syntax forms described in its docstring. + Subclasses and instances of TypedDict return actual dictionaries. + """ + for base in bases: + if type(base) is not _TypedDictMeta and base is not typing.Generic: + raise TypeError('cannot inherit from both a TypedDict type ' + 'and a non-TypedDict base class') + + if any(issubclass(b, typing.Generic) for b in bases): + generic_base = (typing.Generic,) + else: + generic_base = () + + # typing.py generally doesn't let you inherit from plain Generic, unless + # the name of the class happens to be "Protocol" + tp_dict = type.__new__(_TypedDictMeta, "Protocol", (*generic_base, dict), ns) + tp_dict.__name__ = name + if tp_dict.__qualname__ == "Protocol": + tp_dict.__qualname__ = name + + if not hasattr(tp_dict, '__orig_bases__'): + tp_dict.__orig_bases__ = bases + + annotations = {} + if "__annotations__" in ns: + own_annotations = ns["__annotations__"] + elif "__annotate__" in ns: + # TODO: Use inspect.VALUE here, and make the annotations lazily evaluated + own_annotations = ns["__annotate__"](1) + else: + own_annotations = {} + msg = "TypedDict('Name', {f0: t0, f1: t1, ...}); each t must be a type" + if _TAKES_MODULE: + own_annotations = { + n: typing._type_check(tp, msg, module=tp_dict.__module__) + for n, tp in own_annotations.items() + } + else: + own_annotations = { + n: typing._type_check(tp, msg) + for n, tp in own_annotations.items() + } + required_keys = set() + optional_keys = set() + readonly_keys = set() + mutable_keys = set() + extra_items_type = None + + for base in bases: + base_dict = base.__dict__ + + annotations.update(base_dict.get('__annotations__', {})) + required_keys.update(base_dict.get('__required_keys__', ())) + optional_keys.update(base_dict.get('__optional_keys__', ())) + readonly_keys.update(base_dict.get('__readonly_keys__', ())) + mutable_keys.update(base_dict.get('__mutable_keys__', ())) + base_extra_items_type = base_dict.get('__extra_items__', None) + if base_extra_items_type is not None: + extra_items_type = base_extra_items_type + + if closed and extra_items_type is None: + extra_items_type = Never + if closed and "__extra_items__" in own_annotations: + annotation_type = own_annotations.pop("__extra_items__") + qualifiers = set(_get_typeddict_qualifiers(annotation_type)) + if Required in qualifiers: + raise TypeError( + "Special key __extra_items__ does not support " + "Required" + ) + if NotRequired in qualifiers: + raise TypeError( + "Special key __extra_items__ does not support " + "NotRequired" + ) + extra_items_type = annotation_type + + annotations.update(own_annotations) + for annotation_key, annotation_type in own_annotations.items(): + qualifiers = set(_get_typeddict_qualifiers(annotation_type)) + + if Required in qualifiers: + required_keys.add(annotation_key) + elif NotRequired in qualifiers: + optional_keys.add(annotation_key) + elif total: + required_keys.add(annotation_key) + else: + optional_keys.add(annotation_key) + if ReadOnly in qualifiers: + mutable_keys.discard(annotation_key) + readonly_keys.add(annotation_key) + else: + mutable_keys.add(annotation_key) + readonly_keys.discard(annotation_key) + + tp_dict.__annotations__ = annotations + tp_dict.__required_keys__ = frozenset(required_keys) + tp_dict.__optional_keys__ = frozenset(optional_keys) + tp_dict.__readonly_keys__ = frozenset(readonly_keys) + tp_dict.__mutable_keys__ = frozenset(mutable_keys) + if not hasattr(tp_dict, '__total__'): + tp_dict.__total__ = total + tp_dict.__closed__ = closed + tp_dict.__extra_items__ = extra_items_type + return tp_dict + + __call__ = dict # static method + + def __subclasscheck__(cls, other): + # Typed dicts are only for static structural subtyping. + raise TypeError('TypedDict does not support instance and class checks') + + __instancecheck__ = __subclasscheck__ + + _TypedDict = type.__new__(_TypedDictMeta, 'TypedDict', (), {}) + + @_ensure_subclassable(lambda bases: (_TypedDict,)) + def TypedDict(typename, fields=_marker, /, *, total=True, closed=False, **kwargs): + """A simple typed namespace. At runtime it is equivalent to a plain dict. + + TypedDict creates a dictionary type such that a type checker will expect all + instances to have a certain set of keys, where each key is + associated with a value of a consistent type. This expectation + is not checked at runtime. + + Usage:: + + class Point2D(TypedDict): + x: int + y: int + label: str + + a: Point2D = {'x': 1, 'y': 2, 'label': 'good'} # OK + b: Point2D = {'z': 3, 'label': 'bad'} # Fails type check + + assert Point2D(x=1, y=2, label='first') == dict(x=1, y=2, label='first') + + The type info can be accessed via the Point2D.__annotations__ dict, and + the Point2D.__required_keys__ and Point2D.__optional_keys__ frozensets. + TypedDict supports an additional equivalent form:: + + Point2D = TypedDict('Point2D', {'x': int, 'y': int, 'label': str}) + + By default, all keys must be present in a TypedDict. It is possible + to override this by specifying totality:: + + class Point2D(TypedDict, total=False): + x: int + y: int + + This means that a Point2D TypedDict can have any of the keys omitted. A type + checker is only expected to support a literal False or True as the value of + the total argument. True is the default, and makes all items defined in the + class body be required. + + The Required and NotRequired special forms can also be used to mark + individual keys as being required or not required:: + + class Point2D(TypedDict): + x: int # the "x" key must always be present (Required is the default) + y: NotRequired[int] # the "y" key can be omitted + + See PEP 655 for more details on Required and NotRequired. + """ + if fields is _marker or fields is None: + if fields is _marker: + deprecated_thing = "Failing to pass a value for the 'fields' parameter" + else: + deprecated_thing = "Passing `None` as the 'fields' parameter" + + example = f"`{typename} = TypedDict({typename!r}, {{}})`" + deprecation_msg = ( + f"{deprecated_thing} is deprecated and will be disallowed in " + "Python 3.15. To create a TypedDict class with 0 fields " + "using the functional syntax, pass an empty dictionary, e.g. " + ) + example + "." + warnings.warn(deprecation_msg, DeprecationWarning, stacklevel=2) + if closed is not False and closed is not True: + kwargs["closed"] = closed + closed = False + fields = kwargs + elif kwargs: + raise TypeError("TypedDict takes either a dict or keyword arguments," + " but not both") + if kwargs: + if sys.version_info >= (3, 13): + raise TypeError("TypedDict takes no keyword arguments") + warnings.warn( + "The kwargs-based syntax for TypedDict definitions is deprecated " + "in Python 3.11, will be removed in Python 3.13, and may not be " + "understood by third-party type checkers.", + DeprecationWarning, + stacklevel=2, + ) + + ns = {'__annotations__': dict(fields)} + module = _caller() + if module is not None: + # Setting correct module is necessary to make typed dict classes pickleable. + ns['__module__'] = module + + td = _TypedDictMeta(typename, (), ns, total=total, closed=closed) + td.__orig_bases__ = (TypedDict,) + return td + + if hasattr(typing, "_TypedDictMeta"): + _TYPEDDICT_TYPES = (typing._TypedDictMeta, _TypedDictMeta) + else: + _TYPEDDICT_TYPES = (_TypedDictMeta,) + + def is_typeddict(tp): + """Check if an annotation is a TypedDict class + + For example:: + class Film(TypedDict): + title: str + year: int + + is_typeddict(Film) # => True + is_typeddict(Union[list, str]) # => False + """ + # On 3.8, this would otherwise return True + if hasattr(typing, "TypedDict") and tp is typing.TypedDict: + return False + return isinstance(tp, _TYPEDDICT_TYPES) + + +if hasattr(typing, "assert_type"): + assert_type = typing.assert_type + +else: + def assert_type(val, typ, /): + """Assert (to the type checker) that the value is of the given type. + + When the type checker encounters a call to assert_type(), it + emits an error if the value is not of the specified type:: + + def greet(name: str) -> None: + assert_type(name, str) # ok + assert_type(name, int) # type checker error + + At runtime this returns the first argument unchanged and otherwise + does nothing. + """ + return val + + +if hasattr(typing, "ReadOnly"): # 3.13+ + get_type_hints = typing.get_type_hints +else: # <=3.13 + # replaces _strip_annotations() + def _strip_extras(t): + """Strips Annotated, Required and NotRequired from a given type.""" + if isinstance(t, _AnnotatedAlias): + return _strip_extras(t.__origin__) + if hasattr(t, "__origin__") and t.__origin__ in (Required, NotRequired, ReadOnly): + return _strip_extras(t.__args__[0]) + if isinstance(t, typing._GenericAlias): + stripped_args = tuple(_strip_extras(a) for a in t.__args__) + if stripped_args == t.__args__: + return t + return t.copy_with(stripped_args) + if hasattr(_types, "GenericAlias") and isinstance(t, _types.GenericAlias): + stripped_args = tuple(_strip_extras(a) for a in t.__args__) + if stripped_args == t.__args__: + return t + return _types.GenericAlias(t.__origin__, stripped_args) + if hasattr(_types, "UnionType") and isinstance(t, _types.UnionType): + stripped_args = tuple(_strip_extras(a) for a in t.__args__) + if stripped_args == t.__args__: + return t + return functools.reduce(operator.or_, stripped_args) + + return t + + def get_type_hints(obj, globalns=None, localns=None, include_extras=False): + """Return type hints for an object. + + This is often the same as obj.__annotations__, but it handles + forward references encoded as string literals, adds Optional[t] if a + default value equal to None is set and recursively replaces all + 'Annotated[T, ...]', 'Required[T]' or 'NotRequired[T]' with 'T' + (unless 'include_extras=True'). + + The argument may be a module, class, method, or function. The annotations + are returned as a dictionary. For classes, annotations include also + inherited members. + + TypeError is raised if the argument is not of a type that can contain + annotations, and an empty dictionary is returned if no annotations are + present. + + BEWARE -- the behavior of globalns and localns is counterintuitive + (unless you are familiar with how eval() and exec() work). The + search order is locals first, then globals. + + - If no dict arguments are passed, an attempt is made to use the + globals from obj (or the respective module's globals for classes), + and these are also used as the locals. If the object does not appear + to have globals, an empty dictionary is used. + + - If one dict argument is passed, it is used for both globals and + locals. + + - If two dict arguments are passed, they specify globals and + locals, respectively. + """ + if hasattr(typing, "Annotated"): # 3.9+ + hint = typing.get_type_hints( + obj, globalns=globalns, localns=localns, include_extras=True + ) + else: # 3.8 + hint = typing.get_type_hints(obj, globalns=globalns, localns=localns) + if include_extras: + return hint + return {k: _strip_extras(t) for k, t in hint.items()} + + +# Python 3.9+ has PEP 593 (Annotated) +if hasattr(typing, 'Annotated'): + Annotated = typing.Annotated + # Not exported and not a public API, but needed for get_origin() and get_args() + # to work. + _AnnotatedAlias = typing._AnnotatedAlias +# 3.8 +else: + class _AnnotatedAlias(typing._GenericAlias, _root=True): + """Runtime representation of an annotated type. + + At its core 'Annotated[t, dec1, dec2, ...]' is an alias for the type 't' + with extra annotations. The alias behaves like a normal typing alias, + instantiating is the same as instantiating the underlying type, binding + it to types is also the same. + """ + def __init__(self, origin, metadata): + if isinstance(origin, _AnnotatedAlias): + metadata = origin.__metadata__ + metadata + origin = origin.__origin__ + super().__init__(origin, origin) + self.__metadata__ = metadata + + def copy_with(self, params): + assert len(params) == 1 + new_type = params[0] + return _AnnotatedAlias(new_type, self.__metadata__) + + def __repr__(self): + return (f"typing_extensions.Annotated[{typing._type_repr(self.__origin__)}, " + f"{', '.join(repr(a) for a in self.__metadata__)}]") + + def __reduce__(self): + return operator.getitem, ( + Annotated, (self.__origin__, *self.__metadata__) + ) + + def __eq__(self, other): + if not isinstance(other, _AnnotatedAlias): + return NotImplemented + if self.__origin__ != other.__origin__: + return False + return self.__metadata__ == other.__metadata__ + + def __hash__(self): + return hash((self.__origin__, self.__metadata__)) + + class Annotated: + """Add context specific metadata to a type. + + Example: Annotated[int, runtime_check.Unsigned] indicates to the + hypothetical runtime_check module that this type is an unsigned int. + Every other consumer of this type can ignore this metadata and treat + this type as int. + + The first argument to Annotated must be a valid type (and will be in + the __origin__ field), the remaining arguments are kept as a tuple in + the __extra__ field. + + Details: + + - It's an error to call `Annotated` with less than two arguments. + - Nested Annotated are flattened:: + + Annotated[Annotated[T, Ann1, Ann2], Ann3] == Annotated[T, Ann1, Ann2, Ann3] + + - Instantiating an annotated type is equivalent to instantiating the + underlying type:: + + Annotated[C, Ann1](5) == C(5) + + - Annotated can be used as a generic type alias:: + + Optimized = Annotated[T, runtime.Optimize()] + Optimized[int] == Annotated[int, runtime.Optimize()] + + OptimizedList = Annotated[List[T], runtime.Optimize()] + OptimizedList[int] == Annotated[List[int], runtime.Optimize()] + """ + + __slots__ = () + + def __new__(cls, *args, **kwargs): + raise TypeError("Type Annotated cannot be instantiated.") + + @typing._tp_cache + def __class_getitem__(cls, params): + if not isinstance(params, tuple) or len(params) < 2: + raise TypeError("Annotated[...] should be used " + "with at least two arguments (a type and an " + "annotation).") + allowed_special_forms = (ClassVar, Final) + if get_origin(params[0]) in allowed_special_forms: + origin = params[0] + else: + msg = "Annotated[t, ...]: t must be a type." + origin = typing._type_check(params[0], msg) + metadata = tuple(params[1:]) + return _AnnotatedAlias(origin, metadata) + + def __init_subclass__(cls, *args, **kwargs): + raise TypeError( + f"Cannot subclass {cls.__module__}.Annotated" + ) + +# Python 3.8 has get_origin() and get_args() but those implementations aren't +# Annotated-aware, so we can't use those. Python 3.9's versions don't support +# ParamSpecArgs and ParamSpecKwargs, so only Python 3.10's versions will do. +if sys.version_info[:2] >= (3, 10): + get_origin = typing.get_origin + get_args = typing.get_args +# 3.8-3.9 +else: + try: + # 3.9+ + from typing import _BaseGenericAlias + except ImportError: + _BaseGenericAlias = typing._GenericAlias + try: + # 3.9+ + from typing import GenericAlias as _typing_GenericAlias + except ImportError: + _typing_GenericAlias = typing._GenericAlias + + def get_origin(tp): + """Get the unsubscripted version of a type. + + This supports generic types, Callable, Tuple, Union, Literal, Final, ClassVar + and Annotated. Return None for unsupported types. Examples:: + + get_origin(Literal[42]) is Literal + get_origin(int) is None + get_origin(ClassVar[int]) is ClassVar + get_origin(Generic) is Generic + get_origin(Generic[T]) is Generic + get_origin(Union[T, int]) is Union + get_origin(List[Tuple[T, T]][int]) == list + get_origin(P.args) is P + """ + if isinstance(tp, _AnnotatedAlias): + return Annotated + if isinstance(tp, (typing._GenericAlias, _typing_GenericAlias, _BaseGenericAlias, + ParamSpecArgs, ParamSpecKwargs)): + return tp.__origin__ + if tp is typing.Generic: + return typing.Generic + return None + + def get_args(tp): + """Get type arguments with all substitutions performed. + + For unions, basic simplifications used by Union constructor are performed. + Examples:: + get_args(Dict[str, int]) == (str, int) + get_args(int) == () + get_args(Union[int, Union[T, int], str][int]) == (int, str) + get_args(Union[int, Tuple[T, int]][str]) == (int, Tuple[str, int]) + get_args(Callable[[], T][int]) == ([], int) + """ + if isinstance(tp, _AnnotatedAlias): + return (tp.__origin__, *tp.__metadata__) + if isinstance(tp, (typing._GenericAlias, _typing_GenericAlias)): + if getattr(tp, "_special", False): + return () + res = tp.__args__ + if get_origin(tp) is collections.abc.Callable and res[0] is not Ellipsis: + res = (list(res[:-1]), res[-1]) + return res + return () + + +# 3.10+ +if hasattr(typing, 'TypeAlias'): + TypeAlias = typing.TypeAlias +# 3.9 +elif sys.version_info[:2] >= (3, 9): + @_ExtensionsSpecialForm + def TypeAlias(self, parameters): + """Special marker indicating that an assignment should + be recognized as a proper type alias definition by type + checkers. + + For example:: + + Predicate: TypeAlias = Callable[..., bool] + + It's invalid when used anywhere except as in the example above. + """ + raise TypeError(f"{self} is not subscriptable") +# 3.8 +else: + TypeAlias = _ExtensionsSpecialForm( + 'TypeAlias', + doc="""Special marker indicating that an assignment should + be recognized as a proper type alias definition by type + checkers. + + For example:: + + Predicate: TypeAlias = Callable[..., bool] + + It's invalid when used anywhere except as in the example + above.""" + ) + + +if hasattr(typing, "NoDefault"): + NoDefault = typing.NoDefault +else: + class NoDefaultTypeMeta(type): + def __setattr__(cls, attr, value): + # TypeError is consistent with the behavior of NoneType + raise TypeError( + f"cannot set {attr!r} attribute of immutable type {cls.__name__!r}" + ) + + class NoDefaultType(metaclass=NoDefaultTypeMeta): + """The type of the NoDefault singleton.""" + + __slots__ = () + + def __new__(cls): + return globals().get("NoDefault") or object.__new__(cls) + + def __repr__(self): + return "typing_extensions.NoDefault" + + def __reduce__(self): + return "NoDefault" + + NoDefault = NoDefaultType() + del NoDefaultType, NoDefaultTypeMeta + + +def _set_default(type_param, default): + type_param.has_default = lambda: default is not NoDefault + type_param.__default__ = default + + +def _set_module(typevarlike): + # for pickling: + def_mod = _caller(depth=3) + if def_mod != 'typing_extensions': + typevarlike.__module__ = def_mod + + +class _DefaultMixin: + """Mixin for TypeVarLike defaults.""" + + __slots__ = () + __init__ = _set_default + + +# Classes using this metaclass must provide a _backported_typevarlike ClassVar +class _TypeVarLikeMeta(type): + def __instancecheck__(cls, __instance: Any) -> bool: + return isinstance(__instance, cls._backported_typevarlike) + + +if _PEP_696_IMPLEMENTED: + from typing import TypeVar +else: + # Add default and infer_variance parameters from PEP 696 and 695 + class TypeVar(metaclass=_TypeVarLikeMeta): + """Type variable.""" + + _backported_typevarlike = typing.TypeVar + + def __new__(cls, name, *constraints, bound=None, + covariant=False, contravariant=False, + default=NoDefault, infer_variance=False): + if hasattr(typing, "TypeAliasType"): + # PEP 695 implemented (3.12+), can pass infer_variance to typing.TypeVar + typevar = typing.TypeVar(name, *constraints, bound=bound, + covariant=covariant, contravariant=contravariant, + infer_variance=infer_variance) + else: + typevar = typing.TypeVar(name, *constraints, bound=bound, + covariant=covariant, contravariant=contravariant) + if infer_variance and (covariant or contravariant): + raise ValueError("Variance cannot be specified with infer_variance.") + typevar.__infer_variance__ = infer_variance + + _set_default(typevar, default) + _set_module(typevar) + + def _tvar_prepare_subst(alias, args): + if ( + typevar.has_default() + and alias.__parameters__.index(typevar) == len(args) + ): + args += (typevar.__default__,) + return args + + typevar.__typing_prepare_subst__ = _tvar_prepare_subst + return typevar + + def __init_subclass__(cls) -> None: + raise TypeError(f"type '{__name__}.TypeVar' is not an acceptable base type") + + +# Python 3.10+ has PEP 612 +if hasattr(typing, 'ParamSpecArgs'): + ParamSpecArgs = typing.ParamSpecArgs + ParamSpecKwargs = typing.ParamSpecKwargs +# 3.8-3.9 +else: + class _Immutable: + """Mixin to indicate that object should not be copied.""" + __slots__ = () + + def __copy__(self): + return self + + def __deepcopy__(self, memo): + return self + + class ParamSpecArgs(_Immutable): + """The args for a ParamSpec object. + + Given a ParamSpec object P, P.args is an instance of ParamSpecArgs. + + ParamSpecArgs objects have a reference back to their ParamSpec: + + P.args.__origin__ is P + + This type is meant for runtime introspection and has no special meaning to + static type checkers. + """ + def __init__(self, origin): + self.__origin__ = origin + + def __repr__(self): + return f"{self.__origin__.__name__}.args" + + def __eq__(self, other): + if not isinstance(other, ParamSpecArgs): + return NotImplemented + return self.__origin__ == other.__origin__ + + class ParamSpecKwargs(_Immutable): + """The kwargs for a ParamSpec object. + + Given a ParamSpec object P, P.kwargs is an instance of ParamSpecKwargs. + + ParamSpecKwargs objects have a reference back to their ParamSpec: + + P.kwargs.__origin__ is P + + This type is meant for runtime introspection and has no special meaning to + static type checkers. + """ + def __init__(self, origin): + self.__origin__ = origin + + def __repr__(self): + return f"{self.__origin__.__name__}.kwargs" + + def __eq__(self, other): + if not isinstance(other, ParamSpecKwargs): + return NotImplemented + return self.__origin__ == other.__origin__ + + +if _PEP_696_IMPLEMENTED: + from typing import ParamSpec + +# 3.10+ +elif hasattr(typing, 'ParamSpec'): + + # Add default parameter - PEP 696 + class ParamSpec(metaclass=_TypeVarLikeMeta): + """Parameter specification.""" + + _backported_typevarlike = typing.ParamSpec + + def __new__(cls, name, *, bound=None, + covariant=False, contravariant=False, + infer_variance=False, default=NoDefault): + if hasattr(typing, "TypeAliasType"): + # PEP 695 implemented, can pass infer_variance to typing.TypeVar + paramspec = typing.ParamSpec(name, bound=bound, + covariant=covariant, + contravariant=contravariant, + infer_variance=infer_variance) + else: + paramspec = typing.ParamSpec(name, bound=bound, + covariant=covariant, + contravariant=contravariant) + paramspec.__infer_variance__ = infer_variance + + _set_default(paramspec, default) + _set_module(paramspec) + + def _paramspec_prepare_subst(alias, args): + params = alias.__parameters__ + i = params.index(paramspec) + if i == len(args) and paramspec.has_default(): + args = [*args, paramspec.__default__] + if i >= len(args): + raise TypeError(f"Too few arguments for {alias}") + # Special case where Z[[int, str, bool]] == Z[int, str, bool] in PEP 612. + if len(params) == 1 and not typing._is_param_expr(args[0]): + assert i == 0 + args = (args,) + # Convert lists to tuples to help other libraries cache the results. + elif isinstance(args[i], list): + args = (*args[:i], tuple(args[i]), *args[i + 1:]) + return args + + paramspec.__typing_prepare_subst__ = _paramspec_prepare_subst + return paramspec + + def __init_subclass__(cls) -> None: + raise TypeError(f"type '{__name__}.ParamSpec' is not an acceptable base type") + +# 3.8-3.9 +else: + + # Inherits from list as a workaround for Callable checks in Python < 3.9.2. + class ParamSpec(list, _DefaultMixin): + """Parameter specification variable. + + Usage:: + + P = ParamSpec('P') + + Parameter specification variables exist primarily for the benefit of static + type checkers. They are used to forward the parameter types of one + callable to another callable, a pattern commonly found in higher order + functions and decorators. They are only valid when used in ``Concatenate``, + or s the first argument to ``Callable``. In Python 3.10 and higher, + they are also supported in user-defined Generics at runtime. + See class Generic for more information on generic types. An + example for annotating a decorator:: + + T = TypeVar('T') + P = ParamSpec('P') + + def add_logging(f: Callable[P, T]) -> Callable[P, T]: + '''A type-safe decorator to add logging to a function.''' + def inner(*args: P.args, **kwargs: P.kwargs) -> T: + logging.info(f'{f.__name__} was called') + return f(*args, **kwargs) + return inner + + @add_logging + def add_two(x: float, y: float) -> float: + '''Add two numbers together.''' + return x + y + + Parameter specification variables defined with covariant=True or + contravariant=True can be used to declare covariant or contravariant + generic types. These keyword arguments are valid, but their actual semantics + are yet to be decided. See PEP 612 for details. + + Parameter specification variables can be introspected. e.g.: + + P.__name__ == 'T' + P.__bound__ == None + P.__covariant__ == False + P.__contravariant__ == False + + Note that only parameter specification variables defined in global scope can + be pickled. + """ + + # Trick Generic __parameters__. + __class__ = typing.TypeVar + + @property + def args(self): + return ParamSpecArgs(self) + + @property + def kwargs(self): + return ParamSpecKwargs(self) + + def __init__(self, name, *, bound=None, covariant=False, contravariant=False, + infer_variance=False, default=NoDefault): + list.__init__(self, [self]) + self.__name__ = name + self.__covariant__ = bool(covariant) + self.__contravariant__ = bool(contravariant) + self.__infer_variance__ = bool(infer_variance) + if bound: + self.__bound__ = typing._type_check(bound, 'Bound must be a type.') + else: + self.__bound__ = None + _DefaultMixin.__init__(self, default) + + # for pickling: + def_mod = _caller() + if def_mod != 'typing_extensions': + self.__module__ = def_mod + + def __repr__(self): + if self.__infer_variance__: + prefix = '' + elif self.__covariant__: + prefix = '+' + elif self.__contravariant__: + prefix = '-' + else: + prefix = '~' + return prefix + self.__name__ + + def __hash__(self): + return object.__hash__(self) + + def __eq__(self, other): + return self is other + + def __reduce__(self): + return self.__name__ + + # Hack to get typing._type_check to pass. + def __call__(self, *args, **kwargs): + pass + + +# 3.8-3.9 +if not hasattr(typing, 'Concatenate'): + # Inherits from list as a workaround for Callable checks in Python < 3.9.2. + class _ConcatenateGenericAlias(list): + + # Trick Generic into looking into this for __parameters__. + __class__ = typing._GenericAlias + + # Flag in 3.8. + _special = False + + def __init__(self, origin, args): + super().__init__(args) + self.__origin__ = origin + self.__args__ = args + + def __repr__(self): + _type_repr = typing._type_repr + return (f'{_type_repr(self.__origin__)}' + f'[{", ".join(_type_repr(arg) for arg in self.__args__)}]') + + def __hash__(self): + return hash((self.__origin__, self.__args__)) + + # Hack to get typing._type_check to pass in Generic. + def __call__(self, *args, **kwargs): + pass + + @property + def __parameters__(self): + return tuple( + tp for tp in self.__args__ if isinstance(tp, (typing.TypeVar, ParamSpec)) + ) + + +# 3.8-3.9 +@typing._tp_cache +def _concatenate_getitem(self, parameters): + if parameters == (): + raise TypeError("Cannot take a Concatenate of no types.") + if not isinstance(parameters, tuple): + parameters = (parameters,) + if not isinstance(parameters[-1], ParamSpec): + raise TypeError("The last parameter to Concatenate should be a " + "ParamSpec variable.") + msg = "Concatenate[arg, ...]: each arg must be a type." + parameters = tuple(typing._type_check(p, msg) for p in parameters) + return _ConcatenateGenericAlias(self, parameters) + + +# 3.10+ +if hasattr(typing, 'Concatenate'): + Concatenate = typing.Concatenate + _ConcatenateGenericAlias = typing._ConcatenateGenericAlias +# 3.9 +elif sys.version_info[:2] >= (3, 9): + @_ExtensionsSpecialForm + def Concatenate(self, parameters): + """Used in conjunction with ``ParamSpec`` and ``Callable`` to represent a + higher order function which adds, removes or transforms parameters of a + callable. + + For example:: + + Callable[Concatenate[int, P], int] + + See PEP 612 for detailed information. + """ + return _concatenate_getitem(self, parameters) +# 3.8 +else: + class _ConcatenateForm(_ExtensionsSpecialForm, _root=True): + def __getitem__(self, parameters): + return _concatenate_getitem(self, parameters) + + Concatenate = _ConcatenateForm( + 'Concatenate', + doc="""Used in conjunction with ``ParamSpec`` and ``Callable`` to represent a + higher order function which adds, removes or transforms parameters of a + callable. + + For example:: + + Callable[Concatenate[int, P], int] + + See PEP 612 for detailed information. + """) + +# 3.10+ +if hasattr(typing, 'TypeGuard'): + TypeGuard = typing.TypeGuard +# 3.9 +elif sys.version_info[:2] >= (3, 9): + @_ExtensionsSpecialForm + def TypeGuard(self, parameters): + """Special typing form used to annotate the return type of a user-defined + type guard function. ``TypeGuard`` only accepts a single type argument. + At runtime, functions marked this way should return a boolean. + + ``TypeGuard`` aims to benefit *type narrowing* -- a technique used by static + type checkers to determine a more precise type of an expression within a + program's code flow. Usually type narrowing is done by analyzing + conditional code flow and applying the narrowing to a block of code. The + conditional expression here is sometimes referred to as a "type guard". + + Sometimes it would be convenient to use a user-defined boolean function + as a type guard. Such a function should use ``TypeGuard[...]`` as its + return type to alert static type checkers to this intention. + + Using ``-> TypeGuard`` tells the static type checker that for a given + function: + + 1. The return value is a boolean. + 2. If the return value is ``True``, the type of its argument + is the type inside ``TypeGuard``. + + For example:: + + def is_str(val: Union[str, float]): + # "isinstance" type guard + if isinstance(val, str): + # Type of ``val`` is narrowed to ``str`` + ... + else: + # Else, type of ``val`` is narrowed to ``float``. + ... + + Strict type narrowing is not enforced -- ``TypeB`` need not be a narrower + form of ``TypeA`` (it can even be a wider form) and this may lead to + type-unsafe results. The main reason is to allow for things like + narrowing ``List[object]`` to ``List[str]`` even though the latter is not + a subtype of the former, since ``List`` is invariant. The responsibility of + writing type-safe type guards is left to the user. + + ``TypeGuard`` also works with type variables. For more information, see + PEP 647 (User-Defined Type Guards). + """ + item = typing._type_check(parameters, f'{self} accepts only a single type.') + return typing._GenericAlias(self, (item,)) +# 3.8 +else: + class _TypeGuardForm(_ExtensionsSpecialForm, _root=True): + def __getitem__(self, parameters): + item = typing._type_check(parameters, + f'{self._name} accepts only a single type') + return typing._GenericAlias(self, (item,)) + + TypeGuard = _TypeGuardForm( + 'TypeGuard', + doc="""Special typing form used to annotate the return type of a user-defined + type guard function. ``TypeGuard`` only accepts a single type argument. + At runtime, functions marked this way should return a boolean. + + ``TypeGuard`` aims to benefit *type narrowing* -- a technique used by static + type checkers to determine a more precise type of an expression within a + program's code flow. Usually type narrowing is done by analyzing + conditional code flow and applying the narrowing to a block of code. The + conditional expression here is sometimes referred to as a "type guard". + + Sometimes it would be convenient to use a user-defined boolean function + as a type guard. Such a function should use ``TypeGuard[...]`` as its + return type to alert static type checkers to this intention. + + Using ``-> TypeGuard`` tells the static type checker that for a given + function: + + 1. The return value is a boolean. + 2. If the return value is ``True``, the type of its argument + is the type inside ``TypeGuard``. + + For example:: + + def is_str(val: Union[str, float]): + # "isinstance" type guard + if isinstance(val, str): + # Type of ``val`` is narrowed to ``str`` + ... + else: + # Else, type of ``val`` is narrowed to ``float``. + ... + + Strict type narrowing is not enforced -- ``TypeB`` need not be a narrower + form of ``TypeA`` (it can even be a wider form) and this may lead to + type-unsafe results. The main reason is to allow for things like + narrowing ``List[object]`` to ``List[str]`` even though the latter is not + a subtype of the former, since ``List`` is invariant. The responsibility of + writing type-safe type guards is left to the user. + + ``TypeGuard`` also works with type variables. For more information, see + PEP 647 (User-Defined Type Guards). + """) + +# 3.13+ +if hasattr(typing, 'TypeIs'): + TypeIs = typing.TypeIs +# 3.9 +elif sys.version_info[:2] >= (3, 9): + @_ExtensionsSpecialForm + def TypeIs(self, parameters): + """Special typing form used to annotate the return type of a user-defined + type narrower function. ``TypeIs`` only accepts a single type argument. + At runtime, functions marked this way should return a boolean. + + ``TypeIs`` aims to benefit *type narrowing* -- a technique used by static + type checkers to determine a more precise type of an expression within a + program's code flow. Usually type narrowing is done by analyzing + conditional code flow and applying the narrowing to a block of code. The + conditional expression here is sometimes referred to as a "type guard". + + Sometimes it would be convenient to use a user-defined boolean function + as a type guard. Such a function should use ``TypeIs[...]`` as its + return type to alert static type checkers to this intention. + + Using ``-> TypeIs`` tells the static type checker that for a given + function: + + 1. The return value is a boolean. + 2. If the return value is ``True``, the type of its argument + is the intersection of the type inside ``TypeGuard`` and the argument's + previously known type. + + For example:: + + def is_awaitable(val: object) -> TypeIs[Awaitable[Any]]: + return hasattr(val, '__await__') + + def f(val: Union[int, Awaitable[int]]) -> int: + if is_awaitable(val): + assert_type(val, Awaitable[int]) + else: + assert_type(val, int) + + ``TypeIs`` also works with type variables. For more information, see + PEP 742 (Narrowing types with TypeIs). + """ + item = typing._type_check(parameters, f'{self} accepts only a single type.') + return typing._GenericAlias(self, (item,)) +# 3.8 +else: + class _TypeIsForm(_ExtensionsSpecialForm, _root=True): + def __getitem__(self, parameters): + item = typing._type_check(parameters, + f'{self._name} accepts only a single type') + return typing._GenericAlias(self, (item,)) + + TypeIs = _TypeIsForm( + 'TypeIs', + doc="""Special typing form used to annotate the return type of a user-defined + type narrower function. ``TypeIs`` only accepts a single type argument. + At runtime, functions marked this way should return a boolean. + + ``TypeIs`` aims to benefit *type narrowing* -- a technique used by static + type checkers to determine a more precise type of an expression within a + program's code flow. Usually type narrowing is done by analyzing + conditional code flow and applying the narrowing to a block of code. The + conditional expression here is sometimes referred to as a "type guard". + + Sometimes it would be convenient to use a user-defined boolean function + as a type guard. Such a function should use ``TypeIs[...]`` as its + return type to alert static type checkers to this intention. + + Using ``-> TypeIs`` tells the static type checker that for a given + function: + + 1. The return value is a boolean. + 2. If the return value is ``True``, the type of its argument + is the intersection of the type inside ``TypeGuard`` and the argument's + previously known type. + + For example:: + + def is_awaitable(val: object) -> TypeIs[Awaitable[Any]]: + return hasattr(val, '__await__') + + def f(val: Union[int, Awaitable[int]]) -> int: + if is_awaitable(val): + assert_type(val, Awaitable[int]) + else: + assert_type(val, int) + + ``TypeIs`` also works with type variables. For more information, see + PEP 742 (Narrowing types with TypeIs). + """) + + +# Vendored from cpython typing._SpecialFrom +class _SpecialForm(typing._Final, _root=True): + __slots__ = ('_name', '__doc__', '_getitem') + + def __init__(self, getitem): + self._getitem = getitem + self._name = getitem.__name__ + self.__doc__ = getitem.__doc__ + + def __getattr__(self, item): + if item in {'__name__', '__qualname__'}: + return self._name + + raise AttributeError(item) + + def __mro_entries__(self, bases): + raise TypeError(f"Cannot subclass {self!r}") + + def __repr__(self): + return f'typing_extensions.{self._name}' + + def __reduce__(self): + return self._name + + def __call__(self, *args, **kwds): + raise TypeError(f"Cannot instantiate {self!r}") + + def __or__(self, other): + return typing.Union[self, other] + + def __ror__(self, other): + return typing.Union[other, self] + + def __instancecheck__(self, obj): + raise TypeError(f"{self} cannot be used with isinstance()") + + def __subclasscheck__(self, cls): + raise TypeError(f"{self} cannot be used with issubclass()") + + @typing._tp_cache + def __getitem__(self, parameters): + return self._getitem(self, parameters) + + +if hasattr(typing, "LiteralString"): # 3.11+ + LiteralString = typing.LiteralString +else: + @_SpecialForm + def LiteralString(self, params): + """Represents an arbitrary literal string. + + Example:: + + from typing_extensions import LiteralString + + def query(sql: LiteralString) -> ...: + ... + + query("SELECT * FROM table") # ok + query(f"SELECT * FROM {input()}") # not ok + + See PEP 675 for details. + + """ + raise TypeError(f"{self} is not subscriptable") + + +if hasattr(typing, "Self"): # 3.11+ + Self = typing.Self +else: + @_SpecialForm + def Self(self, params): + """Used to spell the type of "self" in classes. + + Example:: + + from typing import Self + + class ReturnsSelf: + def parse(self, data: bytes) -> Self: + ... + return self + + """ + + raise TypeError(f"{self} is not subscriptable") + + +if hasattr(typing, "Never"): # 3.11+ + Never = typing.Never +else: + @_SpecialForm + def Never(self, params): + """The bottom type, a type that has no members. + + This can be used to define a function that should never be + called, or a function that never returns:: + + from typing_extensions import Never + + def never_call_me(arg: Never) -> None: + pass + + def int_or_str(arg: int | str) -> None: + never_call_me(arg) # type checker error + match arg: + case int(): + print("It's an int") + case str(): + print("It's a str") + case _: + never_call_me(arg) # ok, arg is of type Never + + """ + + raise TypeError(f"{self} is not subscriptable") + + +if hasattr(typing, 'Required'): # 3.11+ + Required = typing.Required + NotRequired = typing.NotRequired +elif sys.version_info[:2] >= (3, 9): # 3.9-3.10 + @_ExtensionsSpecialForm + def Required(self, parameters): + """A special typing construct to mark a key of a total=False TypedDict + as required. For example: + + class Movie(TypedDict, total=False): + title: Required[str] + year: int + + m = Movie( + title='The Matrix', # typechecker error if key is omitted + year=1999, + ) + + There is no runtime checking that a required key is actually provided + when instantiating a related TypedDict. + """ + item = typing._type_check(parameters, f'{self._name} accepts only a single type.') + return typing._GenericAlias(self, (item,)) + + @_ExtensionsSpecialForm + def NotRequired(self, parameters): + """A special typing construct to mark a key of a TypedDict as + potentially missing. For example: + + class Movie(TypedDict): + title: str + year: NotRequired[int] + + m = Movie( + title='The Matrix', # typechecker error if key is omitted + year=1999, + ) + """ + item = typing._type_check(parameters, f'{self._name} accepts only a single type.') + return typing._GenericAlias(self, (item,)) + +else: # 3.8 + class _RequiredForm(_ExtensionsSpecialForm, _root=True): + def __getitem__(self, parameters): + item = typing._type_check(parameters, + f'{self._name} accepts only a single type.') + return typing._GenericAlias(self, (item,)) + + Required = _RequiredForm( + 'Required', + doc="""A special typing construct to mark a key of a total=False TypedDict + as required. For example: + + class Movie(TypedDict, total=False): + title: Required[str] + year: int + + m = Movie( + title='The Matrix', # typechecker error if key is omitted + year=1999, + ) + + There is no runtime checking that a required key is actually provided + when instantiating a related TypedDict. + """) + NotRequired = _RequiredForm( + 'NotRequired', + doc="""A special typing construct to mark a key of a TypedDict as + potentially missing. For example: + + class Movie(TypedDict): + title: str + year: NotRequired[int] + + m = Movie( + title='The Matrix', # typechecker error if key is omitted + year=1999, + ) + """) + + +if hasattr(typing, 'ReadOnly'): + ReadOnly = typing.ReadOnly +elif sys.version_info[:2] >= (3, 9): # 3.9-3.12 + @_ExtensionsSpecialForm + def ReadOnly(self, parameters): + """A special typing construct to mark an item of a TypedDict as read-only. + + For example: + + class Movie(TypedDict): + title: ReadOnly[str] + year: int + + def mutate_movie(m: Movie) -> None: + m["year"] = 1992 # allowed + m["title"] = "The Matrix" # typechecker error + + There is no runtime checking for this property. + """ + item = typing._type_check(parameters, f'{self._name} accepts only a single type.') + return typing._GenericAlias(self, (item,)) + +else: # 3.8 + class _ReadOnlyForm(_ExtensionsSpecialForm, _root=True): + def __getitem__(self, parameters): + item = typing._type_check(parameters, + f'{self._name} accepts only a single type.') + return typing._GenericAlias(self, (item,)) + + ReadOnly = _ReadOnlyForm( + 'ReadOnly', + doc="""A special typing construct to mark a key of a TypedDict as read-only. + + For example: + + class Movie(TypedDict): + title: ReadOnly[str] + year: int + + def mutate_movie(m: Movie) -> None: + m["year"] = 1992 # allowed + m["title"] = "The Matrix" # typechecker error + + There is no runtime checking for this propery. + """) + + +_UNPACK_DOC = """\ +Type unpack operator. + +The type unpack operator takes the child types from some container type, +such as `tuple[int, str]` or a `TypeVarTuple`, and 'pulls them out'. For +example: + + # For some generic class `Foo`: + Foo[Unpack[tuple[int, str]]] # Equivalent to Foo[int, str] + + Ts = TypeVarTuple('Ts') + # Specifies that `Bar` is generic in an arbitrary number of types. + # (Think of `Ts` as a tuple of an arbitrary number of individual + # `TypeVar`s, which the `Unpack` is 'pulling out' directly into the + # `Generic[]`.) + class Bar(Generic[Unpack[Ts]]): ... + Bar[int] # Valid + Bar[int, str] # Also valid + +From Python 3.11, this can also be done using the `*` operator: + + Foo[*tuple[int, str]] + class Bar(Generic[*Ts]): ... + +The operator can also be used along with a `TypedDict` to annotate +`**kwargs` in a function signature. For instance: + + class Movie(TypedDict): + name: str + year: int + + # This function expects two keyword arguments - *name* of type `str` and + # *year* of type `int`. + def foo(**kwargs: Unpack[Movie]): ... + +Note that there is only some runtime checking of this operator. Not +everything the runtime allows may be accepted by static type checkers. + +For more information, see PEP 646 and PEP 692. +""" + + +if sys.version_info >= (3, 12): # PEP 692 changed the repr of Unpack[] + Unpack = typing.Unpack + + def _is_unpack(obj): + return get_origin(obj) is Unpack + +elif sys.version_info[:2] >= (3, 9): # 3.9+ + class _UnpackSpecialForm(_ExtensionsSpecialForm, _root=True): + def __init__(self, getitem): + super().__init__(getitem) + self.__doc__ = _UNPACK_DOC + + class _UnpackAlias(typing._GenericAlias, _root=True): + __class__ = typing.TypeVar + + @property + def __typing_unpacked_tuple_args__(self): + assert self.__origin__ is Unpack + assert len(self.__args__) == 1 + arg, = self.__args__ + if isinstance(arg, (typing._GenericAlias, _types.GenericAlias)): + if arg.__origin__ is not tuple: + raise TypeError("Unpack[...] must be used with a tuple type") + return arg.__args__ + return None + + @_UnpackSpecialForm + def Unpack(self, parameters): + item = typing._type_check(parameters, f'{self._name} accepts only a single type.') + return _UnpackAlias(self, (item,)) + + def _is_unpack(obj): + return isinstance(obj, _UnpackAlias) + +else: # 3.8 + class _UnpackAlias(typing._GenericAlias, _root=True): + __class__ = typing.TypeVar + + class _UnpackForm(_ExtensionsSpecialForm, _root=True): + def __getitem__(self, parameters): + item = typing._type_check(parameters, + f'{self._name} accepts only a single type.') + return _UnpackAlias(self, (item,)) + + Unpack = _UnpackForm('Unpack', doc=_UNPACK_DOC) + + def _is_unpack(obj): + return isinstance(obj, _UnpackAlias) + + +if _PEP_696_IMPLEMENTED: + from typing import TypeVarTuple + +elif hasattr(typing, "TypeVarTuple"): # 3.11+ + + def _unpack_args(*args): + newargs = [] + for arg in args: + subargs = getattr(arg, '__typing_unpacked_tuple_args__', None) + if subargs is not None and not (subargs and subargs[-1] is ...): + newargs.extend(subargs) + else: + newargs.append(arg) + return newargs + + # Add default parameter - PEP 696 + class TypeVarTuple(metaclass=_TypeVarLikeMeta): + """Type variable tuple.""" + + _backported_typevarlike = typing.TypeVarTuple + + def __new__(cls, name, *, default=NoDefault): + tvt = typing.TypeVarTuple(name) + _set_default(tvt, default) + _set_module(tvt) + + def _typevartuple_prepare_subst(alias, args): + params = alias.__parameters__ + typevartuple_index = params.index(tvt) + for param in params[typevartuple_index + 1:]: + if isinstance(param, TypeVarTuple): + raise TypeError( + f"More than one TypeVarTuple parameter in {alias}" + ) + + alen = len(args) + plen = len(params) + left = typevartuple_index + right = plen - typevartuple_index - 1 + var_tuple_index = None + fillarg = None + for k, arg in enumerate(args): + if not isinstance(arg, type): + subargs = getattr(arg, '__typing_unpacked_tuple_args__', None) + if subargs and len(subargs) == 2 and subargs[-1] is ...: + if var_tuple_index is not None: + raise TypeError( + "More than one unpacked " + "arbitrary-length tuple argument" + ) + var_tuple_index = k + fillarg = subargs[0] + if var_tuple_index is not None: + left = min(left, var_tuple_index) + right = min(right, alen - var_tuple_index - 1) + elif left + right > alen: + raise TypeError(f"Too few arguments for {alias};" + f" actual {alen}, expected at least {plen - 1}") + if left == alen - right and tvt.has_default(): + replacement = _unpack_args(tvt.__default__) + else: + replacement = args[left: alen - right] + + return ( + *args[:left], + *([fillarg] * (typevartuple_index - left)), + replacement, + *([fillarg] * (plen - right - left - typevartuple_index - 1)), + *args[alen - right:], + ) + + tvt.__typing_prepare_subst__ = _typevartuple_prepare_subst + return tvt + + def __init_subclass__(self, *args, **kwds): + raise TypeError("Cannot subclass special typing classes") + +else: # <=3.10 + class TypeVarTuple(_DefaultMixin): + """Type variable tuple. + + Usage:: + + Ts = TypeVarTuple('Ts') + + In the same way that a normal type variable is a stand-in for a single + type such as ``int``, a type variable *tuple* is a stand-in for a *tuple* + type such as ``Tuple[int, str]``. + + Type variable tuples can be used in ``Generic`` declarations. + Consider the following example:: + + class Array(Generic[*Ts]): ... + + The ``Ts`` type variable tuple here behaves like ``tuple[T1, T2]``, + where ``T1`` and ``T2`` are type variables. To use these type variables + as type parameters of ``Array``, we must *unpack* the type variable tuple using + the star operator: ``*Ts``. The signature of ``Array`` then behaves + as if we had simply written ``class Array(Generic[T1, T2]): ...``. + In contrast to ``Generic[T1, T2]``, however, ``Generic[*Shape]`` allows + us to parameterise the class with an *arbitrary* number of type parameters. + + Type variable tuples can be used anywhere a normal ``TypeVar`` can. + This includes class definitions, as shown above, as well as function + signatures and variable annotations:: + + class Array(Generic[*Ts]): + + def __init__(self, shape: Tuple[*Ts]): + self._shape: Tuple[*Ts] = shape + + def get_shape(self) -> Tuple[*Ts]: + return self._shape + + shape = (Height(480), Width(640)) + x: Array[Height, Width] = Array(shape) + y = abs(x) # Inferred type is Array[Height, Width] + z = x + x # ... is Array[Height, Width] + x.get_shape() # ... is tuple[Height, Width] + + """ + + # Trick Generic __parameters__. + __class__ = typing.TypeVar + + def __iter__(self): + yield self.__unpacked__ + + def __init__(self, name, *, default=NoDefault): + self.__name__ = name + _DefaultMixin.__init__(self, default) + + # for pickling: + def_mod = _caller() + if def_mod != 'typing_extensions': + self.__module__ = def_mod + + self.__unpacked__ = Unpack[self] + + def __repr__(self): + return self.__name__ + + def __hash__(self): + return object.__hash__(self) + + def __eq__(self, other): + return self is other + + def __reduce__(self): + return self.__name__ + + def __init_subclass__(self, *args, **kwds): + if '_root' not in kwds: + raise TypeError("Cannot subclass special typing classes") + + +if hasattr(typing, "reveal_type"): # 3.11+ + reveal_type = typing.reveal_type +else: # <=3.10 + def reveal_type(obj: T, /) -> T: + """Reveal the inferred type of a variable. + + When a static type checker encounters a call to ``reveal_type()``, + it will emit the inferred type of the argument:: + + x: int = 1 + reveal_type(x) + + Running a static type checker (e.g., ``mypy``) on this example + will produce output similar to 'Revealed type is "builtins.int"'. + + At runtime, the function prints the runtime type of the + argument and returns it unchanged. + + """ + print(f"Runtime type is {type(obj).__name__!r}", file=sys.stderr) + return obj + + +if hasattr(typing, "_ASSERT_NEVER_REPR_MAX_LENGTH"): # 3.11+ + _ASSERT_NEVER_REPR_MAX_LENGTH = typing._ASSERT_NEVER_REPR_MAX_LENGTH +else: # <=3.10 + _ASSERT_NEVER_REPR_MAX_LENGTH = 100 + + +if hasattr(typing, "assert_never"): # 3.11+ + assert_never = typing.assert_never +else: # <=3.10 + def assert_never(arg: Never, /) -> Never: + """Assert to the type checker that a line of code is unreachable. + + Example:: + + def int_or_str(arg: int | str) -> None: + match arg: + case int(): + print("It's an int") + case str(): + print("It's a str") + case _: + assert_never(arg) + + If a type checker finds that a call to assert_never() is + reachable, it will emit an error. + + At runtime, this throws an exception when called. + + """ + value = repr(arg) + if len(value) > _ASSERT_NEVER_REPR_MAX_LENGTH: + value = value[:_ASSERT_NEVER_REPR_MAX_LENGTH] + '...' + raise AssertionError(f"Expected code to be unreachable, but got: {value}") + + +if sys.version_info >= (3, 12): # 3.12+ + # dataclass_transform exists in 3.11 but lacks the frozen_default parameter + dataclass_transform = typing.dataclass_transform +else: # <=3.11 + def dataclass_transform( + *, + eq_default: bool = True, + order_default: bool = False, + kw_only_default: bool = False, + frozen_default: bool = False, + field_specifiers: typing.Tuple[ + typing.Union[typing.Type[typing.Any], typing.Callable[..., typing.Any]], + ... + ] = (), + **kwargs: typing.Any, + ) -> typing.Callable[[T], T]: + """Decorator that marks a function, class, or metaclass as providing + dataclass-like behavior. + + Example: + + from typing_extensions import dataclass_transform + + _T = TypeVar("_T") + + # Used on a decorator function + @dataclass_transform() + def create_model(cls: type[_T]) -> type[_T]: + ... + return cls + + @create_model + class CustomerModel: + id: int + name: str + + # Used on a base class + @dataclass_transform() + class ModelBase: ... + + class CustomerModel(ModelBase): + id: int + name: str + + # Used on a metaclass + @dataclass_transform() + class ModelMeta(type): ... + + class ModelBase(metaclass=ModelMeta): ... + + class CustomerModel(ModelBase): + id: int + name: str + + Each of the ``CustomerModel`` classes defined in this example will now + behave similarly to a dataclass created with the ``@dataclasses.dataclass`` + decorator. For example, the type checker will synthesize an ``__init__`` + method. + + The arguments to this decorator can be used to customize this behavior: + - ``eq_default`` indicates whether the ``eq`` parameter is assumed to be + True or False if it is omitted by the caller. + - ``order_default`` indicates whether the ``order`` parameter is + assumed to be True or False if it is omitted by the caller. + - ``kw_only_default`` indicates whether the ``kw_only`` parameter is + assumed to be True or False if it is omitted by the caller. + - ``frozen_default`` indicates whether the ``frozen`` parameter is + assumed to be True or False if it is omitted by the caller. + - ``field_specifiers`` specifies a static list of supported classes + or functions that describe fields, similar to ``dataclasses.field()``. + + At runtime, this decorator records its arguments in the + ``__dataclass_transform__`` attribute on the decorated object. + + See PEP 681 for details. + + """ + def decorator(cls_or_fn): + cls_or_fn.__dataclass_transform__ = { + "eq_default": eq_default, + "order_default": order_default, + "kw_only_default": kw_only_default, + "frozen_default": frozen_default, + "field_specifiers": field_specifiers, + "kwargs": kwargs, + } + return cls_or_fn + return decorator + + +if hasattr(typing, "override"): # 3.12+ + override = typing.override +else: # <=3.11 + _F = typing.TypeVar("_F", bound=typing.Callable[..., typing.Any]) + + def override(arg: _F, /) -> _F: + """Indicate that a method is intended to override a method in a base class. + + Usage: + + class Base: + def method(self) -> None: + pass + + class Child(Base): + @override + def method(self) -> None: + super().method() + + When this decorator is applied to a method, the type checker will + validate that it overrides a method with the same name on a base class. + This helps prevent bugs that may occur when a base class is changed + without an equivalent change to a child class. + + There is no runtime checking of these properties. The decorator + sets the ``__override__`` attribute to ``True`` on the decorated object + to allow runtime introspection. + + See PEP 698 for details. + + """ + try: + arg.__override__ = True + except (AttributeError, TypeError): + # Skip the attribute silently if it is not writable. + # AttributeError happens if the object has __slots__ or a + # read-only property, TypeError if it's a builtin class. + pass + return arg + + +if hasattr(warnings, "deprecated"): + deprecated = warnings.deprecated +else: + _T = typing.TypeVar("_T") + + class deprecated: + """Indicate that a class, function or overload is deprecated. + + When this decorator is applied to an object, the type checker + will generate a diagnostic on usage of the deprecated object. + + Usage: + + @deprecated("Use B instead") + class A: + pass + + @deprecated("Use g instead") + def f(): + pass + + @overload + @deprecated("int support is deprecated") + def g(x: int) -> int: ... + @overload + def g(x: str) -> int: ... + + The warning specified by *category* will be emitted at runtime + on use of deprecated objects. For functions, that happens on calls; + for classes, on instantiation and on creation of subclasses. + If the *category* is ``None``, no warning is emitted at runtime. + The *stacklevel* determines where the + warning is emitted. If it is ``1`` (the default), the warning + is emitted at the direct caller of the deprecated object; if it + is higher, it is emitted further up the stack. + Static type checker behavior is not affected by the *category* + and *stacklevel* arguments. + + The deprecation message passed to the decorator is saved in the + ``__deprecated__`` attribute on the decorated object. + If applied to an overload, the decorator + must be after the ``@overload`` decorator for the attribute to + exist on the overload as returned by ``get_overloads()``. + + See PEP 702 for details. + + """ + def __init__( + self, + message: str, + /, + *, + category: typing.Optional[typing.Type[Warning]] = DeprecationWarning, + stacklevel: int = 1, + ) -> None: + if not isinstance(message, str): + raise TypeError( + "Expected an object of type str for 'message', not " + f"{type(message).__name__!r}" + ) + self.message = message + self.category = category + self.stacklevel = stacklevel + + def __call__(self, arg: _T, /) -> _T: + # Make sure the inner functions created below don't + # retain a reference to self. + msg = self.message + category = self.category + stacklevel = self.stacklevel + if category is None: + arg.__deprecated__ = msg + return arg + elif isinstance(arg, type): + import functools + from types import MethodType + + original_new = arg.__new__ + + @functools.wraps(original_new) + def __new__(cls, *args, **kwargs): + if cls is arg: + warnings.warn(msg, category=category, stacklevel=stacklevel + 1) + if original_new is not object.__new__: + return original_new(cls, *args, **kwargs) + # Mirrors a similar check in object.__new__. + elif cls.__init__ is object.__init__ and (args or kwargs): + raise TypeError(f"{cls.__name__}() takes no arguments") + else: + return original_new(cls) + + arg.__new__ = staticmethod(__new__) + + original_init_subclass = arg.__init_subclass__ + # We need slightly different behavior if __init_subclass__ + # is a bound method (likely if it was implemented in Python) + if isinstance(original_init_subclass, MethodType): + original_init_subclass = original_init_subclass.__func__ + + @functools.wraps(original_init_subclass) + def __init_subclass__(*args, **kwargs): + warnings.warn(msg, category=category, stacklevel=stacklevel + 1) + return original_init_subclass(*args, **kwargs) + + arg.__init_subclass__ = classmethod(__init_subclass__) + # Or otherwise, which likely means it's a builtin such as + # object's implementation of __init_subclass__. + else: + @functools.wraps(original_init_subclass) + def __init_subclass__(*args, **kwargs): + warnings.warn(msg, category=category, stacklevel=stacklevel + 1) + return original_init_subclass(*args, **kwargs) + + arg.__init_subclass__ = __init_subclass__ + + arg.__deprecated__ = __new__.__deprecated__ = msg + __init_subclass__.__deprecated__ = msg + return arg + elif callable(arg): + import functools + + @functools.wraps(arg) + def wrapper(*args, **kwargs): + warnings.warn(msg, category=category, stacklevel=stacklevel + 1) + return arg(*args, **kwargs) + + arg.__deprecated__ = wrapper.__deprecated__ = msg + return wrapper + else: + raise TypeError( + "@deprecated decorator with non-None category must be applied to " + f"a class or callable, not {arg!r}" + ) + + +# We have to do some monkey patching to deal with the dual nature of +# Unpack/TypeVarTuple: +# - We want Unpack to be a kind of TypeVar so it gets accepted in +# Generic[Unpack[Ts]] +# - We want it to *not* be treated as a TypeVar for the purposes of +# counting generic parameters, so that when we subscript a generic, +# the runtime doesn't try to substitute the Unpack with the subscripted type. +if not hasattr(typing, "TypeVarTuple"): + def _check_generic(cls, parameters, elen=_marker): + """Check correct count for parameters of a generic cls (internal helper). + + This gives a nice error message in case of count mismatch. + """ + if not elen: + raise TypeError(f"{cls} is not a generic class") + if elen is _marker: + if not hasattr(cls, "__parameters__") or not cls.__parameters__: + raise TypeError(f"{cls} is not a generic class") + elen = len(cls.__parameters__) + alen = len(parameters) + if alen != elen: + expect_val = elen + if hasattr(cls, "__parameters__"): + parameters = [p for p in cls.__parameters__ if not _is_unpack(p)] + num_tv_tuples = sum(isinstance(p, TypeVarTuple) for p in parameters) + if (num_tv_tuples > 0) and (alen >= elen - num_tv_tuples): + return + + # deal with TypeVarLike defaults + # required TypeVarLikes cannot appear after a defaulted one. + if alen < elen: + # since we validate TypeVarLike default in _collect_type_vars + # or _collect_parameters we can safely check parameters[alen] + if ( + getattr(parameters[alen], '__default__', NoDefault) + is not NoDefault + ): + return + + num_default_tv = sum(getattr(p, '__default__', NoDefault) + is not NoDefault for p in parameters) + + elen -= num_default_tv + + expect_val = f"at least {elen}" + + things = "arguments" if sys.version_info >= (3, 10) else "parameters" + raise TypeError(f"Too {'many' if alen > elen else 'few'} {things}" + f" for {cls}; actual {alen}, expected {expect_val}") +else: + # Python 3.11+ + + def _check_generic(cls, parameters, elen): + """Check correct count for parameters of a generic cls (internal helper). + + This gives a nice error message in case of count mismatch. + """ + if not elen: + raise TypeError(f"{cls} is not a generic class") + alen = len(parameters) + if alen != elen: + expect_val = elen + if hasattr(cls, "__parameters__"): + parameters = [p for p in cls.__parameters__ if not _is_unpack(p)] + + # deal with TypeVarLike defaults + # required TypeVarLikes cannot appear after a defaulted one. + if alen < elen: + # since we validate TypeVarLike default in _collect_type_vars + # or _collect_parameters we can safely check parameters[alen] + if ( + getattr(parameters[alen], '__default__', NoDefault) + is not NoDefault + ): + return + + num_default_tv = sum(getattr(p, '__default__', NoDefault) + is not NoDefault for p in parameters) + + elen -= num_default_tv + + expect_val = f"at least {elen}" + + raise TypeError(f"Too {'many' if alen > elen else 'few'} arguments" + f" for {cls}; actual {alen}, expected {expect_val}") + +if not _PEP_696_IMPLEMENTED: + typing._check_generic = _check_generic + + +def _has_generic_or_protocol_as_origin() -> bool: + try: + frame = sys._getframe(2) + # - Catch AttributeError: not all Python implementations have sys._getframe() + # - Catch ValueError: maybe we're called from an unexpected module + # and the call stack isn't deep enough + except (AttributeError, ValueError): + return False # err on the side of leniency + else: + # If we somehow get invoked from outside typing.py, + # also err on the side of leniency + if frame.f_globals.get("__name__") != "typing": + return False + origin = frame.f_locals.get("origin") + # Cannot use "in" because origin may be an object with a buggy __eq__ that + # throws an error. + return origin is typing.Generic or origin is Protocol or origin is typing.Protocol + + +_TYPEVARTUPLE_TYPES = {TypeVarTuple, getattr(typing, "TypeVarTuple", None)} + + +def _is_unpacked_typevartuple(x) -> bool: + if get_origin(x) is not Unpack: + return False + args = get_args(x) + return ( + bool(args) + and len(args) == 1 + and type(args[0]) in _TYPEVARTUPLE_TYPES + ) + + +# Python 3.11+ _collect_type_vars was renamed to _collect_parameters +if hasattr(typing, '_collect_type_vars'): + def _collect_type_vars(types, typevar_types=None): + """Collect all type variable contained in types in order of + first appearance (lexicographic order). For example:: + + _collect_type_vars((T, List[S, T])) == (T, S) + """ + if typevar_types is None: + typevar_types = typing.TypeVar + tvars = [] + + # A required TypeVarLike cannot appear after a TypeVarLike with a default + # if it was a direct call to `Generic[]` or `Protocol[]` + enforce_default_ordering = _has_generic_or_protocol_as_origin() + default_encountered = False + + # Also, a TypeVarLike with a default cannot appear after a TypeVarTuple + type_var_tuple_encountered = False + + for t in types: + if _is_unpacked_typevartuple(t): + type_var_tuple_encountered = True + elif isinstance(t, typevar_types) and t not in tvars: + if enforce_default_ordering: + has_default = getattr(t, '__default__', NoDefault) is not NoDefault + if has_default: + if type_var_tuple_encountered: + raise TypeError('Type parameter with a default' + ' follows TypeVarTuple') + default_encountered = True + elif default_encountered: + raise TypeError(f'Type parameter {t!r} without a default' + ' follows type parameter with a default') + + tvars.append(t) + if _should_collect_from_parameters(t): + tvars.extend([t for t in t.__parameters__ if t not in tvars]) + return tuple(tvars) + + typing._collect_type_vars = _collect_type_vars +else: + def _collect_parameters(args): + """Collect all type variables and parameter specifications in args + in order of first appearance (lexicographic order). + + For example:: + + assert _collect_parameters((T, Callable[P, T])) == (T, P) + """ + parameters = [] + + # A required TypeVarLike cannot appear after a TypeVarLike with default + # if it was a direct call to `Generic[]` or `Protocol[]` + enforce_default_ordering = _has_generic_or_protocol_as_origin() + default_encountered = False + + # Also, a TypeVarLike with a default cannot appear after a TypeVarTuple + type_var_tuple_encountered = False + + for t in args: + if isinstance(t, type): + # We don't want __parameters__ descriptor of a bare Python class. + pass + elif isinstance(t, tuple): + # `t` might be a tuple, when `ParamSpec` is substituted with + # `[T, int]`, or `[int, *Ts]`, etc. + for x in t: + for collected in _collect_parameters([x]): + if collected not in parameters: + parameters.append(collected) + elif hasattr(t, '__typing_subst__'): + if t not in parameters: + if enforce_default_ordering: + has_default = ( + getattr(t, '__default__', NoDefault) is not NoDefault + ) + + if type_var_tuple_encountered and has_default: + raise TypeError('Type parameter with a default' + ' follows TypeVarTuple') + + if has_default: + default_encountered = True + elif default_encountered: + raise TypeError(f'Type parameter {t!r} without a default' + ' follows type parameter with a default') + + parameters.append(t) + else: + if _is_unpacked_typevartuple(t): + type_var_tuple_encountered = True + for x in getattr(t, '__parameters__', ()): + if x not in parameters: + parameters.append(x) + + return tuple(parameters) + + if not _PEP_696_IMPLEMENTED: + typing._collect_parameters = _collect_parameters + +# Backport typing.NamedTuple as it exists in Python 3.13. +# In 3.11, the ability to define generic `NamedTuple`s was supported. +# This was explicitly disallowed in 3.9-3.10, and only half-worked in <=3.8. +# On 3.12, we added __orig_bases__ to call-based NamedTuples +# On 3.13, we deprecated kwargs-based NamedTuples +if sys.version_info >= (3, 13): + NamedTuple = typing.NamedTuple +else: + def _make_nmtuple(name, types, module, defaults=()): + fields = [n for n, t in types] + annotations = {n: typing._type_check(t, f"field {n} annotation must be a type") + for n, t in types} + nm_tpl = collections.namedtuple(name, fields, + defaults=defaults, module=module) + nm_tpl.__annotations__ = nm_tpl.__new__.__annotations__ = annotations + # The `_field_types` attribute was removed in 3.9; + # in earlier versions, it is the same as the `__annotations__` attribute + if sys.version_info < (3, 9): + nm_tpl._field_types = annotations + return nm_tpl + + _prohibited_namedtuple_fields = typing._prohibited + _special_namedtuple_fields = frozenset({'__module__', '__name__', '__annotations__'}) + + class _NamedTupleMeta(type): + def __new__(cls, typename, bases, ns): + assert _NamedTuple in bases + for base in bases: + if base is not _NamedTuple and base is not typing.Generic: + raise TypeError( + 'can only inherit from a NamedTuple type and Generic') + bases = tuple(tuple if base is _NamedTuple else base for base in bases) + if "__annotations__" in ns: + types = ns["__annotations__"] + elif "__annotate__" in ns: + # TODO: Use inspect.VALUE here, and make the annotations lazily evaluated + types = ns["__annotate__"](1) + else: + types = {} + default_names = [] + for field_name in types: + if field_name in ns: + default_names.append(field_name) + elif default_names: + raise TypeError(f"Non-default namedtuple field {field_name} " + f"cannot follow default field" + f"{'s' if len(default_names) > 1 else ''} " + f"{', '.join(default_names)}") + nm_tpl = _make_nmtuple( + typename, types.items(), + defaults=[ns[n] for n in default_names], + module=ns['__module__'] + ) + nm_tpl.__bases__ = bases + if typing.Generic in bases: + if hasattr(typing, '_generic_class_getitem'): # 3.12+ + nm_tpl.__class_getitem__ = classmethod(typing._generic_class_getitem) + else: + class_getitem = typing.Generic.__class_getitem__.__func__ + nm_tpl.__class_getitem__ = classmethod(class_getitem) + # update from user namespace without overriding special namedtuple attributes + for key, val in ns.items(): + if key in _prohibited_namedtuple_fields: + raise AttributeError("Cannot overwrite NamedTuple attribute " + key) + elif key not in _special_namedtuple_fields: + if key not in nm_tpl._fields: + setattr(nm_tpl, key, ns[key]) + try: + set_name = type(val).__set_name__ + except AttributeError: + pass + else: + try: + set_name(val, nm_tpl, key) + except BaseException as e: + msg = ( + f"Error calling __set_name__ on {type(val).__name__!r} " + f"instance {key!r} in {typename!r}" + ) + # BaseException.add_note() existed on py311, + # but the __set_name__ machinery didn't start + # using add_note() until py312. + # Making sure exceptions are raised in the same way + # as in "normal" classes seems most important here. + if sys.version_info >= (3, 12): + e.add_note(msg) + raise + else: + raise RuntimeError(msg) from e + + if typing.Generic in bases: + nm_tpl.__init_subclass__() + return nm_tpl + + _NamedTuple = type.__new__(_NamedTupleMeta, 'NamedTuple', (), {}) + + def _namedtuple_mro_entries(bases): + assert NamedTuple in bases + return (_NamedTuple,) + + @_ensure_subclassable(_namedtuple_mro_entries) + def NamedTuple(typename, fields=_marker, /, **kwargs): + """Typed version of namedtuple. + + Usage:: + + class Employee(NamedTuple): + name: str + id: int + + This is equivalent to:: + + Employee = collections.namedtuple('Employee', ['name', 'id']) + + The resulting class has an extra __annotations__ attribute, giving a + dict that maps field names to types. (The field names are also in + the _fields attribute, which is part of the namedtuple API.) + An alternative equivalent functional syntax is also accepted:: + + Employee = NamedTuple('Employee', [('name', str), ('id', int)]) + """ + if fields is _marker: + if kwargs: + deprecated_thing = "Creating NamedTuple classes using keyword arguments" + deprecation_msg = ( + "{name} is deprecated and will be disallowed in Python {remove}. " + "Use the class-based or functional syntax instead." + ) + else: + deprecated_thing = "Failing to pass a value for the 'fields' parameter" + example = f"`{typename} = NamedTuple({typename!r}, [])`" + deprecation_msg = ( + "{name} is deprecated and will be disallowed in Python {remove}. " + "To create a NamedTuple class with 0 fields " + "using the functional syntax, " + "pass an empty list, e.g. " + ) + example + "." + elif fields is None: + if kwargs: + raise TypeError( + "Cannot pass `None` as the 'fields' parameter " + "and also specify fields using keyword arguments" + ) + else: + deprecated_thing = "Passing `None` as the 'fields' parameter" + example = f"`{typename} = NamedTuple({typename!r}, [])`" + deprecation_msg = ( + "{name} is deprecated and will be disallowed in Python {remove}. " + "To create a NamedTuple class with 0 fields " + "using the functional syntax, " + "pass an empty list, e.g. " + ) + example + "." + elif kwargs: + raise TypeError("Either list of fields or keywords" + " can be provided to NamedTuple, not both") + if fields is _marker or fields is None: + warnings.warn( + deprecation_msg.format(name=deprecated_thing, remove="3.15"), + DeprecationWarning, + stacklevel=2, + ) + fields = kwargs.items() + nt = _make_nmtuple(typename, fields, module=_caller()) + nt.__orig_bases__ = (NamedTuple,) + return nt + + +if hasattr(collections.abc, "Buffer"): + Buffer = collections.abc.Buffer +else: + class Buffer(abc.ABC): # noqa: B024 + """Base class for classes that implement the buffer protocol. + + The buffer protocol allows Python objects to expose a low-level + memory buffer interface. Before Python 3.12, it is not possible + to implement the buffer protocol in pure Python code, or even + to check whether a class implements the buffer protocol. In + Python 3.12 and higher, the ``__buffer__`` method allows access + to the buffer protocol from Python code, and the + ``collections.abc.Buffer`` ABC allows checking whether a class + implements the buffer protocol. + + To indicate support for the buffer protocol in earlier versions, + inherit from this ABC, either in a stub file or at runtime, + or use ABC registration. This ABC provides no methods, because + there is no Python-accessible methods shared by pre-3.12 buffer + classes. It is useful primarily for static checks. + + """ + + # As a courtesy, register the most common stdlib buffer classes. + Buffer.register(memoryview) + Buffer.register(bytearray) + Buffer.register(bytes) + + +# Backport of types.get_original_bases, available on 3.12+ in CPython +if hasattr(_types, "get_original_bases"): + get_original_bases = _types.get_original_bases +else: + def get_original_bases(cls, /): + """Return the class's "original" bases prior to modification by `__mro_entries__`. + + Examples:: + + from typing import TypeVar, Generic + from typing_extensions import NamedTuple, TypedDict + + T = TypeVar("T") + class Foo(Generic[T]): ... + class Bar(Foo[int], float): ... + class Baz(list[str]): ... + Eggs = NamedTuple("Eggs", [("a", int), ("b", str)]) + Spam = TypedDict("Spam", {"a": int, "b": str}) + + assert get_original_bases(Bar) == (Foo[int], float) + assert get_original_bases(Baz) == (list[str],) + assert get_original_bases(Eggs) == (NamedTuple,) + assert get_original_bases(Spam) == (TypedDict,) + assert get_original_bases(int) == (object,) + """ + try: + return cls.__dict__.get("__orig_bases__", cls.__bases__) + except AttributeError: + raise TypeError( + f'Expected an instance of type, not {type(cls).__name__!r}' + ) from None + + +# NewType is a class on Python 3.10+, making it pickleable +# The error message for subclassing instances of NewType was improved on 3.11+ +if sys.version_info >= (3, 11): + NewType = typing.NewType +else: + class NewType: + """NewType creates simple unique types with almost zero + runtime overhead. NewType(name, tp) is considered a subtype of tp + by static type checkers. At runtime, NewType(name, tp) returns + a dummy callable that simply returns its argument. Usage:: + UserId = NewType('UserId', int) + def name_by_id(user_id: UserId) -> str: + ... + UserId('user') # Fails type check + name_by_id(42) # Fails type check + name_by_id(UserId(42)) # OK + num = UserId(5) + 1 # type: int + """ + + def __call__(self, obj, /): + return obj + + def __init__(self, name, tp): + self.__qualname__ = name + if '.' in name: + name = name.rpartition('.')[-1] + self.__name__ = name + self.__supertype__ = tp + def_mod = _caller() + if def_mod != 'typing_extensions': + self.__module__ = def_mod + + def __mro_entries__(self, bases): + # We defined __mro_entries__ to get a better error message + # if a user attempts to subclass a NewType instance. bpo-46170 + supercls_name = self.__name__ + + class Dummy: + def __init_subclass__(cls): + subcls_name = cls.__name__ + raise TypeError( + f"Cannot subclass an instance of NewType. " + f"Perhaps you were looking for: " + f"`{subcls_name} = NewType({subcls_name!r}, {supercls_name})`" + ) + + return (Dummy,) + + def __repr__(self): + return f'{self.__module__}.{self.__qualname__}' + + def __reduce__(self): + return self.__qualname__ + + if sys.version_info >= (3, 10): + # PEP 604 methods + # It doesn't make sense to have these methods on Python <3.10 + + def __or__(self, other): + return typing.Union[self, other] + + def __ror__(self, other): + return typing.Union[other, self] + + +if hasattr(typing, "TypeAliasType"): + TypeAliasType = typing.TypeAliasType +else: + def _is_unionable(obj): + """Corresponds to is_unionable() in unionobject.c in CPython.""" + return obj is None or isinstance(obj, ( + type, + _types.GenericAlias, + _types.UnionType, + TypeAliasType, + )) + + class TypeAliasType: + """Create named, parameterized type aliases. + + This provides a backport of the new `type` statement in Python 3.12: + + type ListOrSet[T] = list[T] | set[T] + + is equivalent to: + + T = TypeVar("T") + ListOrSet = TypeAliasType("ListOrSet", list[T] | set[T], type_params=(T,)) + + The name ListOrSet can then be used as an alias for the type it refers to. + + The type_params argument should contain all the type parameters used + in the value of the type alias. If the alias is not generic, this + argument is omitted. + + Static type checkers should only support type aliases declared using + TypeAliasType that follow these rules: + + - The first argument (the name) must be a string literal. + - The TypeAliasType instance must be immediately assigned to a variable + of the same name. (For example, 'X = TypeAliasType("Y", int)' is invalid, + as is 'X, Y = TypeAliasType("X", int), TypeAliasType("Y", int)'). + + """ + + def __init__(self, name: str, value, *, type_params=()): + if not isinstance(name, str): + raise TypeError("TypeAliasType name must be a string") + self.__value__ = value + self.__type_params__ = type_params + + parameters = [] + for type_param in type_params: + if isinstance(type_param, TypeVarTuple): + parameters.extend(type_param) + else: + parameters.append(type_param) + self.__parameters__ = tuple(parameters) + def_mod = _caller() + if def_mod != 'typing_extensions': + self.__module__ = def_mod + # Setting this attribute closes the TypeAliasType from further modification + self.__name__ = name + + def __setattr__(self, name: str, value: object, /) -> None: + if hasattr(self, "__name__"): + self._raise_attribute_error(name) + super().__setattr__(name, value) + + def __delattr__(self, name: str, /) -> Never: + self._raise_attribute_error(name) + + def _raise_attribute_error(self, name: str) -> Never: + # Match the Python 3.12 error messages exactly + if name == "__name__": + raise AttributeError("readonly attribute") + elif name in {"__value__", "__type_params__", "__parameters__", "__module__"}: + raise AttributeError( + f"attribute '{name}' of 'typing.TypeAliasType' objects " + "is not writable" + ) + else: + raise AttributeError( + f"'typing.TypeAliasType' object has no attribute '{name}'" + ) + + def __repr__(self) -> str: + return self.__name__ + + def __getitem__(self, parameters): + if not isinstance(parameters, tuple): + parameters = (parameters,) + parameters = [ + typing._type_check( + item, f'Subscripting {self.__name__} requires a type.' + ) + for item in parameters + ] + return typing._GenericAlias(self, tuple(parameters)) + + def __reduce__(self): + return self.__name__ + + def __init_subclass__(cls, *args, **kwargs): + raise TypeError( + "type 'typing_extensions.TypeAliasType' is not an acceptable base type" + ) + + # The presence of this method convinces typing._type_check + # that TypeAliasTypes are types. + def __call__(self): + raise TypeError("Type alias is not callable") + + if sys.version_info >= (3, 10): + def __or__(self, right): + # For forward compatibility with 3.12, reject Unions + # that are not accepted by the built-in Union. + if not _is_unionable(right): + return NotImplemented + return typing.Union[self, right] + + def __ror__(self, left): + if not _is_unionable(left): + return NotImplemented + return typing.Union[left, self] + + +if hasattr(typing, "is_protocol"): + is_protocol = typing.is_protocol + get_protocol_members = typing.get_protocol_members +else: + def is_protocol(tp: type, /) -> bool: + """Return True if the given type is a Protocol. + + Example:: + + >>> from typing_extensions import Protocol, is_protocol + >>> class P(Protocol): + ... def a(self) -> str: ... + ... b: int + >>> is_protocol(P) + True + >>> is_protocol(int) + False + """ + return ( + isinstance(tp, type) + and getattr(tp, '_is_protocol', False) + and tp is not Protocol + and tp is not typing.Protocol + ) + + def get_protocol_members(tp: type, /) -> typing.FrozenSet[str]: + """Return the set of members defined in a Protocol. + + Example:: + + >>> from typing_extensions import Protocol, get_protocol_members + >>> class P(Protocol): + ... def a(self) -> str: ... + ... b: int + >>> get_protocol_members(P) + frozenset({'a', 'b'}) + + Raise a TypeError for arguments that are not Protocols. + """ + if not is_protocol(tp): + raise TypeError(f'{tp!r} is not a Protocol') + if hasattr(tp, '__protocol_attrs__'): + return frozenset(tp.__protocol_attrs__) + return frozenset(_get_protocol_attrs(tp)) + + +if hasattr(typing, "Doc"): + Doc = typing.Doc +else: + class Doc: + """Define the documentation of a type annotation using ``Annotated``, to be + used in class attributes, function and method parameters, return values, + and variables. + + The value should be a positional-only string literal to allow static tools + like editors and documentation generators to use it. + + This complements docstrings. + + The string value passed is available in the attribute ``documentation``. + + Example:: + + >>> from typing_extensions import Annotated, Doc + >>> def hi(to: Annotated[str, Doc("Who to say hi to")]) -> None: ... + """ + def __init__(self, documentation: str, /) -> None: + self.documentation = documentation + + def __repr__(self) -> str: + return f"Doc({self.documentation!r})" + + def __hash__(self) -> int: + return hash(self.documentation) + + def __eq__(self, other: object) -> bool: + if not isinstance(other, Doc): + return NotImplemented + return self.documentation == other.documentation + + +_CapsuleType = getattr(_types, "CapsuleType", None) + +if _CapsuleType is None: + try: + import _socket + except ImportError: + pass + else: + _CAPI = getattr(_socket, "CAPI", None) + if _CAPI is not None: + _CapsuleType = type(_CAPI) + +if _CapsuleType is not None: + CapsuleType = _CapsuleType + __all__.append("CapsuleType") + + +# Aliases for items that have always been in typing. +# Explicitly assign these (rather than using `from typing import *` at the top), +# so that we get a CI error if one of these is deleted from typing.py +# in a future version of Python +AbstractSet = typing.AbstractSet +AnyStr = typing.AnyStr +BinaryIO = typing.BinaryIO +Callable = typing.Callable +Collection = typing.Collection +Container = typing.Container +Dict = typing.Dict +ForwardRef = typing.ForwardRef +FrozenSet = typing.FrozenSet +Generic = typing.Generic +Hashable = typing.Hashable +IO = typing.IO +ItemsView = typing.ItemsView +Iterable = typing.Iterable +Iterator = typing.Iterator +KeysView = typing.KeysView +List = typing.List +Mapping = typing.Mapping +MappingView = typing.MappingView +Match = typing.Match +MutableMapping = typing.MutableMapping +MutableSequence = typing.MutableSequence +MutableSet = typing.MutableSet +Optional = typing.Optional +Pattern = typing.Pattern +Reversible = typing.Reversible +Sequence = typing.Sequence +Set = typing.Set +Sized = typing.Sized +TextIO = typing.TextIO +Tuple = typing.Tuple +Union = typing.Union +ValuesView = typing.ValuesView +cast = typing.cast +no_type_check = typing.no_type_check +no_type_check_decorator = typing.no_type_check_decorator diff --git a/undill b/undill new file mode 100644 index 0000000000000000000000000000000000000000..5f9f716cc96f80c47d033d655782aea3ca276798 --- /dev/null +++ b/undill @@ -0,0 +1,22 @@ +#!C:\Users\migue\Downloads\Codigo\AI\HuggingModelAI\IAservicies\myenv\Scripts\python.exe +# +# Author: Mike McKerns (mmckerns @caltech and @uqfoundation) +# Copyright (c) 2008-2016 California Institute of Technology. +# Copyright (c) 2016-2024 The Uncertainty Quantification Foundation. +# License: 3-clause BSD. The full license text is available at: +# - https://github.com/uqfoundation/dill/blob/master/LICENSE +""" +unpickle the contents of a pickled object file + +Examples:: + + $ undill hello.pkl + ['hello', 'world'] +""" + +if __name__ == '__main__': + import sys + import dill + for file in sys.argv[1:]: + print (dill.load(open(file,'rb'))) + diff --git a/utils.py b/utils.py new file mode 100644 index 0000000000000000000000000000000000000000..08e45a79527edbfb17e046bed0aa445e79a6da0f --- /dev/null +++ b/utils.py @@ -0,0 +1,509 @@ +from __future__ import annotations + +import contextlib +import functools +import hashlib +import os +import re +import sys +import textwrap +from dataclasses import fields, is_dataclass +from enum import auto, Enum +from pathlib import Path +from typing import Any, Callable, Generic, Literal, NoReturn, TYPE_CHECKING, TypeVar +from typing_extensions import Self + +from torchgen.code_template import CodeTemplate + + +if TYPE_CHECKING: + from argparse import Namespace + from collections.abc import Iterable, Iterator, Sequence + + +REPO_ROOT = Path(__file__).absolute().parent.parent + + +# Many of these functions share logic for defining both the definition +# and declaration (for example, the function signature is the same), so +# we organize them into one function that takes a Target to say which +# code we want. +# +# This is an OPEN enum (we may add more cases to it in the future), so be sure +# to explicitly specify with Literal[Target.XXX] or Literal[Target.XXX, Target.YYY] +# what targets are valid for your use. +class Target(Enum): + # top level namespace (not including at) + DEFINITION = auto() + DECLARATION = auto() + # TORCH_LIBRARY(...) { ... } + REGISTRATION = auto() + # namespace { ... } + ANONYMOUS_DEFINITION = auto() + # namespace cpu { ... } + NAMESPACED_DEFINITION = auto() + NAMESPACED_DECLARATION = auto() + + +# Matches "foo" in "foo, bar" but not "foobar". Used to search for the +# occurrence of a parameter in the derivative formula +IDENT_REGEX = r"(^|\W){}($|\W)" + + +# TODO: Use a real parser here; this will get bamboozled +def split_name_params(schema: str) -> tuple[str, list[str]]: + m = re.match(r"(\w+)(\.\w+)?\((.*)\)", schema) + if m is None: + raise RuntimeError(f"Unsupported function schema: {schema}") + name, _, params = m.groups() + return name, params.split(", ") + + +T = TypeVar("T") +S = TypeVar("S") + +# These two functions purposely return generators in analogy to map() +# so that you don't mix up when you need to list() them + + +# Map over function that may return None; omit Nones from output sequence +def mapMaybe(func: Callable[[T], S | None], xs: Iterable[T]) -> Iterator[S]: + for x in xs: + r = func(x) + if r is not None: + yield r + + +# Map over function that returns sequences and cat them all together +def concatMap(func: Callable[[T], Sequence[S]], xs: Iterable[T]) -> Iterator[S]: + for x in xs: + yield from func(x) + + +# Conveniently add error context to exceptions raised. Lets us +# easily say that an error occurred while processing a specific +# context. +@contextlib.contextmanager +def context(msg_fn: Callable[[], str]) -> Iterator[None]: + try: + yield + except Exception as e: + # TODO: this does the wrong thing with KeyError + msg = msg_fn() + msg = textwrap.indent(msg, " ") + msg = f"{e.args[0]}\n{msg}" if e.args else msg + e.args = (msg,) + e.args[1:] + raise + + +# A little trick from https://github.com/python/mypy/issues/6366 +# for getting mypy to do exhaustiveness checking +# TODO: put this somewhere else, maybe +def assert_never(x: NoReturn) -> NoReturn: + raise AssertionError(f"Unhandled type: {type(x).__name__}") + + +@functools.cache +def _read_template(template_fn: str) -> CodeTemplate: + return CodeTemplate.from_file(template_fn) + + +# String hash that's stable across different executions, unlike builtin hash +def string_stable_hash(s: str) -> int: + sha1 = hashlib.sha1(s.encode("latin1")).digest() + return int.from_bytes(sha1, byteorder="little") + + +# A small abstraction for writing out generated files and keeping track +# of what files have been written (so you can write out a list of output +# files) +class FileManager: + install_dir: str + template_dir: str + dry_run: bool + filenames: set[str] + + def __init__(self, install_dir: str, template_dir: str, dry_run: bool) -> None: + self.install_dir = install_dir + self.template_dir = template_dir + self.filenames = set() + self.dry_run = dry_run + + def _write_if_changed(self, filename: str, contents: str) -> None: + old_contents: str | None + try: + with open(filename) as f: + old_contents = f.read() + except OSError: + old_contents = None + if contents != old_contents: + # Create output directory if it doesn't exist + os.makedirs(os.path.dirname(filename), exist_ok=True) + with open(filename, "w") as f: + f.write(contents) + + # Read from template file and replace pattern with callable (type could be dict or str). + def substitute_with_template( + self, template_fn: str, env_callable: Callable[[], str | dict[str, Any]] + ) -> str: + template_path = os.path.join(self.template_dir, template_fn) + env = env_callable() + if isinstance(env, dict): + if "generated_comment" not in env: + generator_default = REPO_ROOT / "torchgen" / "gen.py" + try: + generator = Path( + sys.modules["__main__"].__file__ or generator_default + ).absolute() + except (KeyError, AttributeError): + generator = generator_default.absolute() + + try: + generator_path = generator.relative_to(REPO_ROOT).as_posix() + except ValueError: + generator_path = generator.name + + env = { + **env, # copy the original dict instead of mutating it + "generated_comment": ( + "@" + f"generated by {generator_path} from {template_fn}" + ), + } + template = _read_template(template_path) + return template.substitute(env) + elif isinstance(env, str): + return env + else: + assert_never(env) + + def write_with_template( + self, + filename: str, + template_fn: str, + env_callable: Callable[[], str | dict[str, Any]], + ) -> None: + filename = f"{self.install_dir}/{filename}" + assert filename not in self.filenames, "duplicate file write {filename}" + self.filenames.add(filename) + if not self.dry_run: + substitute_out = self.substitute_with_template( + template_fn=template_fn, + env_callable=env_callable, + ) + self._write_if_changed(filename=filename, contents=substitute_out) + + def write( + self, + filename: str, + env_callable: Callable[[], str | dict[str, Any]], + ) -> None: + self.write_with_template(filename, filename, env_callable) + + def write_sharded( + self, + filename: str, + items: Iterable[T], + *, + key_fn: Callable[[T], str], + env_callable: Callable[[T], dict[str, list[str]]], + num_shards: int, + base_env: dict[str, Any] | None = None, + sharded_keys: set[str], + ) -> None: + everything: dict[str, Any] = {"shard_id": "Everything"} + shards: list[dict[str, Any]] = [ + {"shard_id": f"_{i}"} for i in range(num_shards) + ] + all_shards = [everything] + shards + + if base_env is not None: + for shard in all_shards: + shard.update(base_env) + + for key in sharded_keys: + for shard in all_shards: + if key in shard: + assert isinstance( + shard[key], list + ), "sharded keys in base_env must be a list" + shard[key] = shard[key].copy() + else: + shard[key] = [] + + def merge_env(into: dict[str, list[str]], from_: dict[str, list[str]]) -> None: + for k, v in from_.items(): + assert k in sharded_keys, f"undeclared sharded key {k}" + into[k] += v + + if self.dry_run: + # Dry runs don't write any templates, so incomplete environments are fine + items = () + + for item in items: + key = key_fn(item) + sid = string_stable_hash(key) % num_shards + env = env_callable(item) + + merge_env(shards[sid], env) + merge_env(everything, env) + + dot_pos = filename.rfind(".") + if dot_pos == -1: + dot_pos = len(filename) + base_filename = filename[:dot_pos] + extension = filename[dot_pos:] + + for shard in all_shards: + shard_id = shard["shard_id"] + self.write_with_template( + f"{base_filename}{shard_id}{extension}", filename, lambda: shard + ) + + # filenames is used to track compiled files, but FooEverything.cpp isn't meant to be compiled + self.filenames.discard( + f"{self.install_dir}/{base_filename}Everything{extension}" + ) + + def write_outputs(self, variable_name: str, filename: str) -> None: + """Write a file containing the list of all outputs which are + generated by this script.""" + content = "set({}\n {})".format( + variable_name, + "\n ".join('"' + name + '"' for name in sorted(self.filenames)), + ) + self._write_if_changed(filename, content) + + def template_dir_for_comments(self) -> str: + """ + This needs to be deterministic. The template dir is an absolute path + that varies across builds. So, just use the path relative to this file, + which will point to the codegen source but will be stable. + """ + return os.path.relpath(self.template_dir, os.path.dirname(__file__)) + + +# Helper function to generate file manager +def make_file_manager( + options: Namespace, install_dir: str | None = None +) -> FileManager: + template_dir = os.path.join(options.source_path, "templates") + install_dir = install_dir if install_dir else options.install_dir + return FileManager( + install_dir=install_dir, template_dir=template_dir, dry_run=options.dry_run + ) + + +# Helper function to create a pretty representation for dataclasses +def dataclass_repr( + obj: Any, + indent: int = 0, + width: int = 80, +) -> str: + # built-in pprint module support dataclasses from python 3.10 + if sys.version_info >= (3, 10): + from pprint import pformat + + return pformat(obj, indent, width) + + return _pformat(obj, indent=indent, width=width) + + +def _pformat( + obj: Any, + indent: int, + width: int, + curr_indent: int = 0, +) -> str: + assert is_dataclass(obj), f"obj should be a dataclass, received: {type(obj)}" + + class_name = obj.__class__.__name__ + # update current indentation level with class name + curr_indent += len(class_name) + 1 + + fields_list = [(f.name, getattr(obj, f.name)) for f in fields(obj) if f.repr] + + fields_str = [] + for name, attr in fields_list: + # update the current indent level with the field name + # dict, list, set and tuple also add indent as done in pprint + _curr_indent = curr_indent + len(name) + 1 + if is_dataclass(attr): + str_repr = _pformat(attr, indent, width, _curr_indent) + elif isinstance(attr, dict): + str_repr = _format_dict(attr, indent, width, _curr_indent) + elif isinstance(attr, (list, set, tuple)): + str_repr = _format_list(attr, indent, width, _curr_indent) + else: + str_repr = repr(attr) + + fields_str.append(f"{name}={str_repr}") + + indent_str = curr_indent * " " + body = f",\n{indent_str}".join(fields_str) + return f"{class_name}({body})" + + +def _format_dict( + attr: dict[Any, Any], + indent: int, + width: int, + curr_indent: int, +) -> str: + curr_indent += indent + 3 + dict_repr = [] + for k, v in attr.items(): + k_repr = repr(k) + v_str = ( + _pformat(v, indent, width, curr_indent + len(k_repr)) + if is_dataclass(v) + else repr(v) + ) + dict_repr.append(f"{k_repr}: {v_str}") + + return _format(dict_repr, indent, width, curr_indent, "{", "}") + + +def _format_list( + attr: list[Any] | set[Any] | tuple[Any, ...], + indent: int, + width: int, + curr_indent: int, +) -> str: + curr_indent += indent + 1 + list_repr = [ + _pformat(l, indent, width, curr_indent) if is_dataclass(l) else repr(l) + for l in attr + ] + start, end = ("[", "]") if isinstance(attr, list) else ("(", ")") + return _format(list_repr, indent, width, curr_indent, start, end) + + +def _format( + fields_str: list[str], + indent: int, + width: int, + curr_indent: int, + start: str, + end: str, +) -> str: + delimiter, curr_indent_str = "", "" + # if it exceed the max width then we place one element per line + if len(repr(fields_str)) >= width: + delimiter = "\n" + curr_indent_str = " " * curr_indent + + indent_str = " " * indent + body = f", {delimiter}{curr_indent_str}".join(fields_str) + return f"{start}{indent_str}{body}{end}" + + +class NamespaceHelper: + """A helper for constructing the namespace open and close strings for a nested set of namespaces. + + e.g. for namespace_str torch::lazy, + + prologue: + namespace torch { + namespace lazy { + + epilogue: + } // namespace lazy + } // namespace torch + """ + + def __init__( + self, namespace_str: str, entity_name: str = "", max_level: int = 2 + ) -> None: + # cpp_namespace can be a colon joined string such as torch::lazy + cpp_namespaces = namespace_str.split("::") + assert ( + len(cpp_namespaces) <= max_level + ), f"Codegen doesn't support more than {max_level} level(s) of custom namespace. Got {namespace_str}." + self.cpp_namespace_ = namespace_str + self.prologue_ = "\n".join([f"namespace {n} {{" for n in cpp_namespaces]) + self.epilogue_ = "\n".join( + [f"}} // namespace {n}" for n in reversed(cpp_namespaces)] + ) + self.namespaces_ = cpp_namespaces + self.entity_name_ = entity_name + + @staticmethod + def from_namespaced_entity( + namespaced_entity: str, max_level: int = 2 + ) -> NamespaceHelper: + """ + Generate helper from nested namespaces as long as class/function name. E.g.: "torch::lazy::add" + """ + names = namespaced_entity.split("::") + entity_name = names[-1] + namespace_str = "::".join(names[:-1]) + return NamespaceHelper( + namespace_str=namespace_str, entity_name=entity_name, max_level=max_level + ) + + @property + def prologue(self) -> str: + return self.prologue_ + + @property + def epilogue(self) -> str: + return self.epilogue_ + + @property + def entity_name(self) -> str: + return self.entity_name_ + + # Only allow certain level of namespaces + def get_cpp_namespace(self, default: str = "") -> str: + """ + Return the namespace string from joining all the namespaces by "::" (hence no leading "::"). + Return default if namespace string is empty. + """ + return self.cpp_namespace_ if self.cpp_namespace_ else default + + +class OrderedSet(Generic[T]): + storage: dict[T, Literal[None]] + + def __init__(self, iterable: Iterable[T] | None = None) -> None: + if iterable is None: + self.storage = {} + else: + self.storage = dict.fromkeys(iterable) + + def __contains__(self, item: T) -> bool: + return item in self.storage + + def __iter__(self) -> Iterator[T]: + return iter(self.storage.keys()) + + def update(self, items: OrderedSet[T]) -> None: + self.storage.update(items.storage) + + def add(self, item: T) -> None: + self.storage[item] = None + + def copy(self) -> OrderedSet[T]: + ret: OrderedSet[T] = OrderedSet() + ret.storage = self.storage.copy() + return ret + + @staticmethod + def union(*args: OrderedSet[T]) -> OrderedSet[T]: + ret = args[0].copy() + for s in args[1:]: + ret.update(s) + return ret + + def __or__(self, other: OrderedSet[T]) -> OrderedSet[T]: + return OrderedSet.union(self, other) + + def __ior__(self, other: OrderedSet[T]) -> Self: + self.update(other) + return self + + def __eq__(self, other: object) -> bool: + if isinstance(other, OrderedSet): + return self.storage == other.storage + else: + return set(self.storage.keys()) == other diff --git a/wheel.exe b/wheel.exe new file mode 100644 index 0000000000000000000000000000000000000000..40c32517ba85f826e4da3ac0220e8b38f2d7080f --- /dev/null +++ b/wheel.exe @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56c6a5294ae02bebe4412c69b1468cad77bd4d2ee71d39753d2c7a8cd2b8043a +size 108432 diff --git a/yaml_utils.py b/yaml_utils.py new file mode 100644 index 0000000000000000000000000000000000000000..f3272a5cdf7ae3a2fa32f7ad4c64f739eb239eff --- /dev/null +++ b/yaml_utils.py @@ -0,0 +1,26 @@ +# Safely load fast C Yaml loader/dumper if they are available +try: + from yaml import CSafeLoader as Loader +except ImportError: + from yaml import SafeLoader as Loader # type: ignore[assignment, misc] + +try: + from yaml import CSafeDumper as Dumper +except ImportError: + from yaml import SafeDumper as Dumper # type: ignore[assignment, misc] +YamlDumper = Dumper + + +# A custom loader for YAML that errors on duplicate keys. +# This doesn't happen by default: see https://github.com/yaml/pyyaml/issues/165 +class YamlLoader(Loader): + def construct_mapping(self, node, deep=False): # type: ignore[no-untyped-def] + mapping = [] + for key_node, value_node in node.value: + key = self.construct_object(key_node, deep=deep) # type: ignore[no-untyped-call] + assert ( + key not in mapping + ), f"Found a duplicate key in the yaml. key={key}, line={node.start_mark.line}" + mapping.append(key) + mapping = super().construct_mapping(node, deep=deep) # type: ignore[no-untyped-call] + return mapping