#!/usr/bin/env perl

##
# Copyright (c) 2015-present 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.
##

# IMPORTANT: Do not change this file manually: it is generated by hipify-clang --perl

# USAGE
#
my $USAGE =<<USAGE;

    hipify-perl is a tool to translate CUDA source code into portable HIP C++

    USAGE: hipify-perl [OPTIONS] INPUT_FILE

    OPTIONS:

      -cuda-kernel-execution-syntax - Keep CUDA kernel launch syntax (default)
      -examine                      - Combines -no-output and -print-stats options
      -exclude-dirs=s               - Exclude directories
      -exclude-files=s              - Exclude files
      -experimental                 - HIPIFY experimentally supported APIs
      -help                         - Display available options
      -hip-kernel-execution-syntax  - Transform CUDA kernel launch syntax to a regular HIP function call (overrides "--cuda-kernel-execution-syntax")
      -inplace                      - Backup the input file in .prehip file, modify the input file inplace
      -miopen                       - Translate cuDNN to MIOpen instead of hipDNN where it is possible
      -no-output                    - Don't write any translated output to stdout
      -o=s                          - Output filename
      -print-stats                  - Print translation statistics
      -quiet-warnings               - Don't print warnings on unknown CUDA identifiers
      -roc                          - Translate to roc instead of hip where it is possible
      -version                      - The supported HIP version
      -whitelist=s                  - Whitelist of identifiers
USAGE
#
use warnings;
use Cwd;
use Getopt::Long;
use File::Basename;
my $whitelist = "";
my $exclude_dirs =  "";
my $exclude_files = "";
my $fileName = "";
my $hipFileName = "";
my %ft;
my %Tkernels;
my %tags = ();
my %tagsTotal = ();
my %tagsToConvertedTags = ();
my %tagsToConvertedTagsTotal = ();
my %convertedTags = ();
my %convertedTagsTotal = ();

GetOptions(
      "cuda-kernel-execution-syntax" => \$cuda_kernel_execution_syntax  # Keep CUDA kernel launch syntax (default)
    , "examine" => \$examine                                            # Combines -no-output and -print-stats options
    , "exclude-dirs=s" => \$exclude_dirs                                # Exclude directories
    , "exclude-files=s" => \$exclude_files                              # Exclude files
    , "experimental" => \$experimental                                  # HIPIFY experimentally supported APIs
    , "help" => \$help                                                  # Display available options
    , "hip-kernel-execution-syntax" => \$hip_kernel_execution_syntax    # Transform CUDA kernel launch syntax to a regular HIP function call (overrides "--cuda-kernel-execution-syntax")
    , "inplace" => \$inplace                                            # Backup the input file in .prehip file, modify the input file inplace
    , "no-output" => \$no_output                                        # Don't write any translated output to stdout
    , "miopen" => \$miopen                                              # Translate cuDNN to MIOpen instead of hipDNN where it is possible
    , "o=s" => \$hipFileName                                            # Output filename
    , "print-stats" => \$print_stats                                    # Print translation statistics
    , "quiet-warnings" => \$quiet_warnings                              # Don't print warnings on unknown CUDA identifiers
    , "roc" => \$roc                                                    # Translate to roc instead of hip where it is possible
    , "version" => \$version                                            # The supported HIP version
    , "whitelist=s" => \$whitelist                                      # Whitelist of identifiers
);

$cuda_kernel_execution_syntax = 1;

my %deprecated_funcs = (
    "pruneInfo_t" => "12.2",
    "pruneInfo" => "12.2",
    "nvrtcGetNVVMSize" => "12.0",
    "nvrtcGetNVVM" => "12.0",
    "cusparseZsctr" => "11.0",
    "cusparseZnnz_compress" => "12.2",
    "cusparseZhybsv_solve" => "10.2",
    "cusparseZhybsv_analysis" => "10.2",
    "cusparseZhybmv" => "10.2",
    "cusparseZhyb2dense" => "10.2",
    "cusparseZhyb2csr" => "10.2",
    "cusparseZhyb2csc" => "10.2",
    "cusparseZgtsv_nopivot" => "10.2",
    "cusparseZgtsvStridedBatch" => "10.2",
    "cusparseZgtsv" => "10.2",
    "cusparseZgthrz" => "11.0",
    "cusparseZgthr" => "11.0",
    "cusparseZgemmi" => "11.0",
    "cusparseZgebsr2csr" => "12.4",
    "cusparseZdoti" => "10.2",
    "cusparseZdotci" => "10.2",
    "cusparseZdense2hyb" => "10.2",
    "cusparseZdense2csr" => "11.1",
    "cusparseZdense2csc" => "11.1",
    "cusparseZcsru2csr_bufferSizeExt" => "12.2",
    "cusparseZcsru2csr" => "12.2",
    "cusparseZcsrsv_solve" => "10.2",
    "cusparseZcsrsv_analysis" => "10.2",
    "cusparseZcsrsv2_solve" => "11.3",
    "cusparseZcsrsv2_bufferSizeExt" => "11.3",
    "cusparseZcsrsv2_bufferSize" => "11.3",
    "cusparseZcsrsv2_analysis" => "11.3",
    "cusparseZcsrsm_solve" => "10.2",
    "cusparseZcsrsm_analysis" => "10.2",
    "cusparseZcsrsm2_solve" => "11.3",
    "cusparseZcsrsm2_bufferSizeExt" => "11.3",
    "cusparseZcsrsm2_analysis" => "11.3",
    "cusparseZcsrmv_mp" => "10.2",
    "cusparseZcsrmv" => "10.2",
    "cusparseZcsrmm2" => "10.2",
    "cusparseZcsrmm" => "10.2",
    "cusparseZcsrilu02_numericBoost" => "12.2",
    "cusparseZcsrilu02_bufferSizeExt" => "12.2",
    "cusparseZcsrilu02_bufferSize" => "12.2",
    "cusparseZcsrilu02_analysis" => "12.2",
    "cusparseZcsrilu02" => "12.2",
    "cusparseZcsrilu0" => "10.2",
    "cusparseZcsric02_bufferSizeExt" => "12.2",
    "cusparseZcsric02_bufferSize" => "12.2",
    "cusparseZcsric02_analysis" => "12.2",
    "cusparseZcsric02" => "12.2",
    "cusparseZcsric0" => "10.2",
    "cusparseZcsrgemm2_bufferSizeExt" => "11.0",
    "cusparseZcsrgemm2" => "11.0",
    "cusparseZcsrgemm" => "10.2",
    "cusparseZcsrgeam" => "10.2",
    "cusparseZcsrcolor" => "12.2",
    "cusparseZcsr2hyb" => "10.2",
    "cusparseZcsr2dense" => "11.1",
    "cusparseZcsr2csru" => "12.2",
    "cusparseZcsr2csr_compress" => "12.2",
    "cusparseZcsr2csc" => "10.2",
    "cusparseZcsr2bsr" => "12.4",
    "cusparseZcsc2hyb" => "10.2",
    "cusparseZcsc2dense" => "11.1",
    "cusparseZbsrxmv" => "12.2",
    "cusparseZbsrsv2_solve" => "12.2",
    "cusparseZbsrsv2_bufferSizeExt" => "12.2",
    "cusparseZbsrsv2_bufferSize" => "12.2",
    "cusparseZbsrsv2_analysis" => "12.2",
    "cusparseZbsrsm2_solve" => "12.2",
    "cusparseZbsrsm2_bufferSizeExt" => "12.2",
    "cusparseZbsrsm2_bufferSize" => "12.2",
    "cusparseZbsrsm2_analysis" => "12.2",
    "cusparseZbsrilu02_numericBoost" => "12.2",
    "cusparseZbsrilu02_bufferSizeExt" => "12.2",
    "cusparseZbsrilu02_bufferSize" => "12.2",
    "cusparseZbsrilu02_analysis" => "12.2",
    "cusparseZbsrilu02" => "12.2",
    "cusparseZbsric02_bufferSizeExt" => "12.2",
    "cusparseZbsric02_bufferSize" => "12.2",
    "cusparseZbsric02_analysis" => "12.2",
    "cusparseZbsric02" => "12.2",
    "cusparseZaxpyi" => "11.0",
    "cusparseXgebsr2csr" => "12.4",
    "cusparseXcsrsv2_zeroPivot" => "11.3",
    "cusparseXcsrsm2_zeroPivot" => "11.3",
    "cusparseXcsrilu02_zeroPivot" => "12.2",
    "cusparseXcsric02_zeroPivot" => "12.2",
    "cusparseXcsrgemmNnz" => "10.2",
    "cusparseXcsrgemm2Nnz" => "11.0",
    "cusparseXcsrgeamNnz" => "10.2",
    "cusparseXcsr2bsrNnz" => "12.4",
    "cusparseXbsrsv2_zeroPivot" => "12.2",
    "cusparseXbsrsm2_zeroPivot" => "12.2",
    "cusparseXbsrilu02_zeroPivot" => "12.2",
    "cusparseXbsric02_zeroPivot" => "12.2",
    "cusparseSsctr" => "11.0",
    "cusparseSroti" => "11.0",
    "cusparseSpruneDense2csr_bufferSizeExt" => "12.2",
    "cusparseSpruneDense2csrNnzByPercentage" => "12.2",
    "cusparseSpruneDense2csrNnz" => "12.2",
    "cusparseSpruneDense2csrByPercentage_bufferSizeExt" => "12.2",
    "cusparseSpruneDense2csrByPercentage" => "12.2",
    "cusparseSpruneDense2csr" => "12.2",
    "cusparseSpruneCsr2csr_bufferSizeExt" => "12.2",
    "cusparseSpruneCsr2csrNnzByPercentage" => "12.2",
    "cusparseSpruneCsr2csrNnz" => "12.2",
    "cusparseSpruneCsr2csrByPercentage_bufferSizeExt" => "12.2",
    "cusparseSpruneCsr2csrByPercentage" => "12.2",
    "cusparseSpruneCsr2csr" => "12.2",
    "cusparseSolvePolicy_t" => "12.2",
    "cusparseSolveAnalysisInfo_t" => "10.2",
    "cusparseSolveAnalysisInfo" => "10.2",
    "cusparseSnnz_compress" => "12.2",
    "cusparseShybsv_solve" => "10.2",
    "cusparseShybsv_analysis" => "10.2",
    "cusparseShybmv" => "10.2",
    "cusparseShyb2dense" => "10.2",
    "cusparseShyb2csr" => "10.2",
    "cusparseShyb2csc" => "10.2",
    "cusparseSgtsv_nopivot" => "10.2",
    "cusparseSgtsvStridedBatch" => "10.2",
    "cusparseSgtsv" => "10.2",
    "cusparseSgthrz" => "11.0",
    "cusparseSgthr" => "11.0",
    "cusparseSgemmi" => "11.0",
    "cusparseSgebsr2csr" => "12.4",
    "cusparseSdoti" => "10.2",
    "cusparseSdense2hyb" => "10.2",
    "cusparseSdense2csr" => "11.1",
    "cusparseSdense2csc" => "11.1",
    "cusparseScsru2csr_bufferSizeExt" => "12.2",
    "cusparseScsru2csr" => "12.2",
    "cusparseScsrsv_solve" => "10.2",
    "cusparseScsrsv_analysis" => "10.2",
    "cusparseScsrsv2_solve" => "11.3",
    "cusparseScsrsv2_bufferSizeExt" => "11.3",
    "cusparseScsrsv2_bufferSize" => "11.3",
    "cusparseScsrsv2_analysis" => "11.3",
    "cusparseScsrsm_solve" => "10.2",
    "cusparseScsrsm_analysis" => "10.2",
    "cusparseScsrsm2_solve" => "11.3",
    "cusparseScsrsm2_bufferSizeExt" => "11.3",
    "cusparseScsrsm2_analysis" => "11.3",
    "cusparseScsrmv_mp" => "10.2",
    "cusparseScsrmv" => "10.2",
    "cusparseScsrmm2" => "10.2",
    "cusparseScsrmm" => "10.2",
    "cusparseScsrilu02_numericBoost" => "12.2",
    "cusparseScsrilu02_bufferSizeExt" => "12.2",
    "cusparseScsrilu02_bufferSize" => "12.2",
    "cusparseScsrilu02_analysis" => "12.2",
    "cusparseScsrilu02" => "12.2",
    "cusparseScsrilu0" => "10.2",
    "cusparseScsric02_bufferSizeExt" => "12.2",
    "cusparseScsric02_bufferSize" => "12.2",
    "cusparseScsric02_analysis" => "12.2",
    "cusparseScsric02" => "12.2",
    "cusparseScsric0" => "10.2",
    "cusparseScsrgemm2_bufferSizeExt" => "11.0",
    "cusparseScsrgemm2" => "11.0",
    "cusparseScsrgemm" => "10.2",
    "cusparseScsrgeam" => "10.2",
    "cusparseScsrcolor" => "12.2",
    "cusparseScsr2hyb" => "10.2",
    "cusparseScsr2dense" => "11.1",
    "cusparseScsr2csru" => "12.2",
    "cusparseScsr2csr_compress" => "12.2",
    "cusparseScsr2csc" => "10.2",
    "cusparseScsr2bsr" => "12.4",
    "cusparseScsc2hyb" => "10.2",
    "cusparseScsc2dense" => "11.1",
    "cusparseSbsrxmv" => "12.2",
    "cusparseSbsrsv2_solve" => "12.2",
    "cusparseSbsrsv2_bufferSizeExt" => "12.2",
    "cusparseSbsrsv2_bufferSize" => "12.2",
    "cusparseSbsrsv2_analysis" => "12.2",
    "cusparseSbsrsm2_solve" => "12.2",
    "cusparseSbsrsm2_bufferSizeExt" => "12.2",
    "cusparseSbsrsm2_bufferSize" => "12.2",
    "cusparseSbsrsm2_analysis" => "12.2",
    "cusparseSbsrilu02_numericBoost" => "12.2",
    "cusparseSbsrilu02_bufferSizeExt" => "12.2",
    "cusparseSbsrilu02_bufferSize" => "12.2",
    "cusparseSbsrilu02_analysis" => "12.2",
    "cusparseSbsrilu02" => "12.2",
    "cusparseSbsric02_bufferSizeExt" => "12.2",
    "cusparseSbsric02_bufferSize" => "12.2",
    "cusparseSbsric02_analysis" => "12.2",
    "cusparseSbsric02" => "12.2",
    "cusparseSaxpyi" => "11.0",
    "cusparseRot" => "12.2",
    "cusparseHybPartition_t" => "10.2",
    "cusparseHybMat_t" => "10.2",
    "cusparseHybMat" => "10.2",
    "cusparseHpruneDense2csr_bufferSizeExt" => "12.2",
    "cusparseHpruneDense2csrNnzByPercentage" => "12.2",
    "cusparseHpruneDense2csrNnz" => "12.2",
    "cusparseHpruneDense2csrByPercentage_bufferSizeExt" => "12.2",
    "cusparseHpruneDense2csrByPercentage" => "12.2",
    "cusparseHpruneDense2csr" => "12.2",
    "cusparseHpruneCsr2csr_bufferSizeExt" => "12.2",
    "cusparseHpruneCsr2csrNnzByPercentage" => "12.2",
    "cusparseHpruneCsr2csrNnz" => "12.2",
    "cusparseHpruneCsr2csrByPercentage_bufferSizeExt" => "12.2",
    "cusparseHpruneCsr2csrByPercentage" => "12.2",
    "cusparseHpruneCsr2csr" => "12.2",
    "cusparseDsctr" => "11.0",
    "cusparseDroti" => "11.0",
    "cusparseDpruneDense2csr_bufferSizeExt" => "12.2",
    "cusparseDpruneDense2csrNnzByPercentage" => "12.2",
    "cusparseDpruneDense2csrNnz" => "12.2",
    "cusparseDpruneDense2csrByPercentage_bufferSizeExt" => "12.2",
    "cusparseDpruneDense2csrByPercentage" => "12.2",
    "cusparseDpruneDense2csr" => "12.2",
    "cusparseDpruneCsr2csr_bufferSizeExt" => "12.2",
    "cusparseDpruneCsr2csrNnzByPercentage" => "12.2",
    "cusparseDpruneCsr2csrNnz" => "12.2",
    "cusparseDpruneCsr2csrByPercentage_bufferSizeExt" => "12.2",
    "cusparseDpruneCsr2csrByPercentage" => "12.2",
    "cusparseDpruneCsr2csr" => "12.2",
    "cusparseDnnz_compress" => "12.2",
    "cusparseDhybsv_solve" => "10.2",
    "cusparseDhybsv_analysis" => "10.2",
    "cusparseDhybmv" => "10.2",
    "cusparseDhyb2dense" => "10.2",
    "cusparseDhyb2csr" => "10.2",
    "cusparseDhyb2csc" => "10.2",
    "cusparseDgtsv_nopivot" => "10.2",
    "cusparseDgtsvStridedBatch" => "10.2",
    "cusparseDgtsv" => "10.2",
    "cusparseDgthrz" => "11.0",
    "cusparseDgthr" => "11.0",
    "cusparseDgemmi" => "11.0",
    "cusparseDgebsr2csr" => "12.4",
    "cusparseDestroySolveAnalysisInfo" => "10.2",
    "cusparseDestroyPruneInfo" => "12.2",
    "cusparseDestroyHybMat" => "10.2",
    "cusparseDestroyCsru2csrInfo" => "12.2",
    "cusparseDestroyCsrsv2Info" => "11.3",
    "cusparseDestroyCsrsm2Info" => "11.3",
    "cusparseDestroyCsrilu02Info" => "12.2",
    "cusparseDestroyCsric02Info" => "12.2",
    "cusparseDestroyCsrgemm2Info" => "11.0",
    "cusparseDestroyColorInfo" => "12.2",
    "cusparseDestroyBsrsv2Info" => "12.2",
    "cusparseDestroyBsrsm2Info" => "12.2",
    "cusparseDestroyBsrilu02Info" => "12.2",
    "cusparseDestroyBsric02Info" => "12.2",
    "cusparseDdoti" => "10.2",
    "cusparseDdense2hyb" => "10.2",
    "cusparseDdense2csr" => "11.1",
    "cusparseDdense2csc" => "11.1",
    "cusparseDcsru2csr_bufferSizeExt" => "12.2",
    "cusparseDcsru2csr" => "12.2",
    "cusparseDcsrsv_solve" => "10.2",
    "cusparseDcsrsv_analysis" => "10.2",
    "cusparseDcsrsv2_solve" => "11.3",
    "cusparseDcsrsv2_bufferSizeExt" => "11.3",
    "cusparseDcsrsv2_bufferSize" => "11.3",
    "cusparseDcsrsv2_analysis" => "11.3",
    "cusparseDcsrsm_solve" => "10.2",
    "cusparseDcsrsm_analysis" => "10.2",
    "cusparseDcsrsm2_solve" => "11.3",
    "cusparseDcsrsm2_bufferSizeExt" => "11.3",
    "cusparseDcsrsm2_analysis" => "11.3",
    "cusparseDcsrmv_mp" => "10.2",
    "cusparseDcsrmv" => "10.2",
    "cusparseDcsrmm2" => "10.2",
    "cusparseDcsrmm" => "10.2",
    "cusparseDcsrilu02_numericBoost" => "12.2",
    "cusparseDcsrilu02_bufferSizeExt" => "12.2",
    "cusparseDcsrilu02_bufferSize" => "12.2",
    "cusparseDcsrilu02_analysis" => "12.2",
    "cusparseDcsrilu02" => "12.2",
    "cusparseDcsrilu0" => "10.2",
    "cusparseDcsric02_bufferSizeExt" => "12.2",
    "cusparseDcsric02_bufferSize" => "12.2",
    "cusparseDcsric02_analysis" => "12.2",
    "cusparseDcsric02" => "12.2",
    "cusparseDcsric0" => "10.2",
    "cusparseDcsrgemm2_bufferSizeExt" => "11.0",
    "cusparseDcsrgemm2" => "11.0",
    "cusparseDcsrgemm" => "10.2",
    "cusparseDcsrgeam" => "10.2",
    "cusparseDcsrcolor" => "12.2",
    "cusparseDcsr2hyb" => "10.2",
    "cusparseDcsr2dense" => "11.1",
    "cusparseDcsr2csru" => "12.2",
    "cusparseDcsr2csr_compress" => "12.2",
    "cusparseDcsr2csc" => "10.2",
    "cusparseDcsr2bsr" => "12.4",
    "cusparseDcsc2hyb" => "10.2",
    "cusparseDcsc2dense" => "11.1",
    "cusparseDbsrxmv" => "12.2",
    "cusparseDbsrsv2_solve" => "12.2",
    "cusparseDbsrsv2_bufferSizeExt" => "12.2",
    "cusparseDbsrsv2_bufferSize" => "12.2",
    "cusparseDbsrsv2_analysis" => "12.2",
    "cusparseDbsrsm2_solve" => "12.2",
    "cusparseDbsrsm2_bufferSizeExt" => "12.2",
    "cusparseDbsrsm2_bufferSize" => "12.2",
    "cusparseDbsrsm2_analysis" => "12.2",
    "cusparseDbsrilu02_numericBoost" => "12.2",
    "cusparseDbsrilu02_bufferSizeExt" => "12.2",
    "cusparseDbsrilu02_bufferSize" => "12.2",
    "cusparseDbsrilu02_analysis" => "12.2",
    "cusparseDbsrilu02" => "12.2",
    "cusparseDbsric02_bufferSizeExt" => "12.2",
    "cusparseDbsric02_bufferSize" => "12.2",
    "cusparseDbsric02_analysis" => "12.2",
    "cusparseDbsric02" => "12.2",
    "cusparseDaxpyi" => "11.0",
    "cusparseCsrsv_solveEx" => "10.2",
    "cusparseCsrsv_analysisEx" => "10.2",
    "cusparseCsrmvEx_bufferSize" => "11.2",
    "cusparseCsrmvEx" => "11.2",
    "cusparseCsrilu0Ex" => "10.2",
    "cusparseCsr2cscEx" => "10.2",
    "cusparseCsctr" => "11.0",
    "cusparseCreateSolveAnalysisInfo" => "10.2",
    "cusparseCreatePruneInfo" => "12.2",
    "cusparseCreateIdentityPermutation" => "12.2",
    "cusparseCreateHybMat" => "10.2",
    "cusparseCreateCsru2csrInfo" => "12.2",
    "cusparseCreateCsrsv2Info" => "11.3",
    "cusparseCreateCsrsm2Info" => "11.3",
    "cusparseCreateCsrilu02Info" => "12.2",
    "cusparseCreateCsric02Info" => "12.2",
    "cusparseCreateCsrgemm2Info" => "11.0",
    "cusparseCreateCooAoS" => "11.2",
    "cusparseCreateColorInfo" => "12.2",
    "cusparseCreateBsrsv2Info" => "12.2",
    "cusparseCreateBsrsm2Info" => "12.2",
    "cusparseCreateBsrilu02Info" => "12.2",
    "cusparseCreateBsric02Info" => "12.2",
    "cusparseCooAoSGet" => "11.2",
    "cusparseConstrainedGeMM_bufferSize" => "11.2",
    "cusparseConstrainedGeMM" => "11.2",
    "cusparseColorInfo_t" => "12.2",
    "cusparseColorInfo" => "12.2",
    "cusparseColorAlg_t" => "12.2",
    "cusparseCnnz_compress" => "12.2",
    "cusparseChybsv_solve" => "10.2",
    "cusparseChybsv_analysis" => "10.2",
    "cusparseChybmv" => "10.2",
    "cusparseChyb2dense" => "10.2",
    "cusparseChyb2csr" => "10.2",
    "cusparseChyb2csc" => "10.2",
    "cusparseCgtsv_nopivot" => "10.2",
    "cusparseCgtsvStridedBatch" => "10.2",
    "cusparseCgtsv" => "10.2",
    "cusparseCgthrz" => "11.0",
    "cusparseCgthr" => "11.0",
    "cusparseCgemmi" => "11.0",
    "cusparseCgebsr2csr" => "12.4",
    "cusparseCdoti" => "10.2",
    "cusparseCdotci" => "10.2",
    "cusparseCdense2hyb" => "10.2",
    "cusparseCdense2csr" => "11.1",
    "cusparseCdense2csc" => "11.1",
    "cusparseCcsru2csr_bufferSizeExt" => "12.2",
    "cusparseCcsru2csr" => "12.2",
    "cusparseCcsrsv_solve" => "10.2",
    "cusparseCcsrsv_analysis" => "10.2",
    "cusparseCcsrsv2_solve" => "11.3",
    "cusparseCcsrsv2_bufferSizeExt" => "11.3",
    "cusparseCcsrsv2_bufferSize" => "11.3",
    "cusparseCcsrsv2_analysis" => "11.3",
    "cusparseCcsrsm_solve" => "10.2",
    "cusparseCcsrsm_analysis" => "10.2",
    "cusparseCcsrsm2_solve" => "11.3",
    "cusparseCcsrsm2_bufferSizeExt" => "11.3",
    "cusparseCcsrsm2_analysis" => "11.3",
    "cusparseCcsrmv_mp" => "10.2",
    "cusparseCcsrmv" => "10.2",
    "cusparseCcsrmm2" => "10.2",
    "cusparseCcsrmm" => "10.2",
    "cusparseCcsrilu02_numericBoost" => "12.2",
    "cusparseCcsrilu02_bufferSizeExt" => "12.2",
    "cusparseCcsrilu02_bufferSize" => "12.2",
    "cusparseCcsrilu02_analysis" => "12.2",
    "cusparseCcsrilu02" => "12.2",
    "cusparseCcsrilu0" => "10.2",
    "cusparseCcsric02_bufferSizeExt" => "12.2",
    "cusparseCcsric02_bufferSize" => "12.2",
    "cusparseCcsric02_analysis" => "12.2",
    "cusparseCcsric02" => "12.2",
    "cusparseCcsric0" => "10.2",
    "cusparseCcsrgemm2_bufferSizeExt" => "11.0",
    "cusparseCcsrgemm2" => "11.0",
    "cusparseCcsrgemm" => "10.2",
    "cusparseCcsrgeam" => "10.2",
    "cusparseCcsrcolor" => "12.2",
    "cusparseCcsr2hyb" => "10.2",
    "cusparseCcsr2dense" => "11.1",
    "cusparseCcsr2csru" => "12.2",
    "cusparseCcsr2csr_compress" => "12.2",
    "cusparseCcsr2csc" => "10.2",
    "cusparseCcsr2bsr" => "12.4",
    "cusparseCcsc2hyb" => "10.2",
    "cusparseCcsc2dense" => "11.1",
    "cusparseCbsrxmv" => "12.2",
    "cusparseCbsrsv2_solve" => "12.2",
    "cusparseCbsrsv2_bufferSizeExt" => "12.2",
    "cusparseCbsrsv2_bufferSize" => "12.2",
    "cusparseCbsrsv2_analysis" => "12.2",
    "cusparseCbsrsm2_solve" => "12.2",
    "cusparseCbsrsm2_bufferSizeExt" => "12.2",
    "cusparseCbsrsm2_bufferSize" => "12.2",
    "cusparseCbsrsm2_analysis" => "12.2",
    "cusparseCbsrilu02_numericBoost" => "12.2",
    "cusparseCbsrilu02_bufferSizeExt" => "12.2",
    "cusparseCbsrilu02_bufferSize" => "12.2",
    "cusparseCbsrilu02_analysis" => "12.2",
    "cusparseCbsrilu02" => "12.2",
    "cusparseCbsric02_bufferSizeExt" => "12.2",
    "cusparseCbsric02_bufferSize" => "12.2",
    "cusparseCbsric02_analysis" => "12.2",
    "cusparseCbsric02" => "12.2",
    "cusparseCaxpyi" => "11.0",
    "cudnnTransformTensorEx" => "9.0.0",
    "cudnnTransformTensor" => "9.0.0",
    "cudnnTransformFilter" => "9.0.0",
    "cudnnTensorTransformStruct" => "9.0.0",
    "cudnnTensorTransformDescriptor_t" => "9.0.0",
    "cudnnSetTensorTransformDescriptor" => "9.0.0",
    "cudnnSetSeqDataDescriptor" => "9.0.0",
    "cudnnSetReduceTensorDescriptor" => "9.0.0",
    "cudnnSetRNNProjectionLayers" => "8.0.1",
    "cudnnSetRNNPaddingMode" => "8.0.1",
    "cudnnSetRNNMatrixMathType" => "8.0.1",
    "cudnnSetRNNDescriptor_v6" => "8.0.1",
    "cudnnSetRNNDescriptor_v5" => "7.6.5",
    "cudnnSetRNNDescriptor" => "7.6.5",
    "cudnnSetRNNBiasMode" => "8.0.1",
    "cudnnSetRNNAlgorithmDescriptor" => "8.0.2",
    "cudnnSetPoolingNdDescriptor" => "9.0.0",
    "cudnnSetPooling2dDescriptor" => "9.0.0",
    "cudnnSetPersistentRNNPlan" => "8.0.1",
    "cudnnSetOpTensorDescriptor" => "9.0.0",
    "cudnnSetFusedOpsVariantParamPackAttribute" => "9.0.0",
    "cudnnSetFusedOpsConstParamPackAttribute" => "9.0.0",
    "cudnnSetFilterNdDescriptor" => "9.0.0",
    "cudnnSetFilter4dDescriptor" => "9.0.0",
    "cudnnSetConvolutionReorderType" => "9.0.0",
    "cudnnSetConvolutionNdDescriptor" => "9.0.0",
    "cudnnSetConvolutionMathType" => "9.0.0",
    "cudnnSetConvolutionGroupCount" => "9.0.0",
    "cudnnSetConvolution2dDescriptor" => "9.0.0",
    "cudnnSetCTCLossDescriptor_v8" => "9.0.0",
    "cudnnSetCTCLossDescriptorEx" => "9.0.0",
    "cudnnSetCTCLossDescriptor" => "9.0.0",
    "cudnnSetAttnDescriptor" => "9.0.0",
    "cudnnSetAlgorithmPerformance" => "8.0.2",
    "cudnnSetAlgorithmDescriptor" => "8.0.2",
    "cudnnSetActivationDescriptorSwishBeta" => "9.0.0",
    "cudnnSetActivationDescriptor" => "9.0.0",
    "cudnnSeqDataDescriptor_t" => "9.0.0",
    "cudnnScaleTensor" => "9.0.0",
    "cudnnSaveAlgorithm" => "8.0.2",
    "cudnnRuntimeTag_t" => "9.0.0",
    "cudnnRestoreAlgorithm" => "8.0.2",
    "cudnnReorderType_t" => "9.0.0",
    "cudnnReorderFilterAndBias" => "9.0.0",
    "cudnnReduceTensorStruct" => "9.0.0",
    "cudnnReduceTensorIndices_t" => "9.0.0",
    "cudnnReduceTensorDescriptor_t" => "9.0.0",
    "cudnnReduceTensor" => "9.0.0",
    "cudnnRNNSetClip" => "8.0.1",
    "cudnnRNNGetClip" => "8.0.1",
    "cudnnRNNForwardTrainingEx" => "8.0.1",
    "cudnnRNNForwardTraining" => "8.0.1",
    "cudnnRNNForwardInferenceEx" => "8.0.1",
    "cudnnRNNForwardInference" => "8.0.1",
    "cudnnRNNBackwardWeightsEx" => "8.0.2",
    "cudnnRNNBackwardWeights" => "8.0.2",
    "cudnnRNNBackwardDataEx" => "8.0.2",
    "cudnnRNNBackwardData" => "8.0.2",
    "cudnnQueryRuntimeError" => "9.0.0",
    "cudnnPoolingStruct" => "9.0.0",
    "cudnnPoolingMode_t" => "9.0.0",
    "cudnnPoolingForward" => "9.0.0",
    "cudnnPoolingDescriptor_t" => "9.0.0",
    "cudnnPoolingBackward" => "9.0.0",
    "cudnnOpTensorStruct" => "9.0.0",
    "cudnnOpTensorDescriptor_t" => "9.0.0",
    "cudnnOpTensor" => "9.0.0",
    "cudnnNormalizationForwardTraining" => "9.0.0",
    "cudnnNormalizationForwardInference" => "9.0.0",
    "cudnnNormalizationBackward" => "9.0.0",
    "cudnnNormOps_t" => "9.0.0",
    "cudnnNormMode_t" => "9.0.0",
    "cudnnNormAlgo_t" => "9.0.0",
    "cudnnMultiHeadAttnForward" => "9.0.0",
    "cudnnMultiHeadAttnBackwardWeights" => "9.0.0",
    "cudnnMultiHeadAttnBackwardData" => "9.0.0",
    "cudnnMakeFusedOpsPlan" => "9.0.0",
    "cudnnInitTransformDest" => "9.0.0",
    "cudnnIndicesType_t" => "9.0.0",
    "cudnnIm2Col" => "9.0.0",
    "cudnnGetTensorTransformDescriptor" => "9.0.0",
    "cudnnGetSeqDataDescriptor" => "9.0.0",
    "cudnnGetReductionWorkspaceSize" => "9.0.0",
    "cudnnGetReductionIndicesSize" => "9.0.0",
    "cudnnGetReduceTensorDescriptor" => "9.0.0",
    "cudnnGetRNNWorkspaceSize" => "8.0.1",
    "cudnnGetRNNTrainingReserveSize" => "8.0.1",
    "cudnnGetRNNProjectionLayers" => "8.0.1",
    "cudnnGetRNNParamsSize" => "8.0.1",
    "cudnnGetRNNPaddingMode" => "8.0.1",
    "cudnnGetRNNMatrixMathType" => "8.0.1",
    "cudnnGetRNNLinLayerMatrixParams" => "8.0.1",
    "cudnnGetRNNLinLayerBiasParams" => "8.0.1",
    "cudnnGetRNNForwardTrainingAlgorithmMaxCount" => "8.0.2",
    "cudnnGetRNNForwardInferenceAlgorithmMaxCount" => "8.0.2",
    "cudnnGetRNNDescriptor_v6" => "8.0.1",
    "cudnnGetRNNDescriptor" => "7.6.5",
    "cudnnGetRNNBiasMode" => "8.0.1",
    "cudnnGetRNNBackwardWeightsAlgorithmMaxCount" => "8.0.2",
    "cudnnGetRNNBackwardDataAlgorithmMaxCount" => "8.0.2",
    "cudnnGetPoolingNdForwardOutputDim" => "9.0.0",
    "cudnnGetPoolingNdDescriptor" => "9.0.0",
    "cudnnGetPooling2dForwardOutputDim" => "9.0.0",
    "cudnnGetPooling2dDescriptor" => "9.0.0",
    "cudnnGetOpTensorDescriptor" => "9.0.0",
    "cudnnGetNormalizationTrainingReserveSpaceSize" => "9.0.0",
    "cudnnGetNormalizationForwardTrainingWorkspaceSize" => "9.0.0",
    "cudnnGetNormalizationBackwardWorkspaceSize" => "9.0.0",
    "cudnnGetMultiHeadAttnWeights" => "9.0.0",
    "cudnnGetMultiHeadAttnBuffers" => "9.0.0",
    "cudnnGetFusedOpsVariantParamPackAttribute" => "9.0.0",
    "cudnnGetFusedOpsConstParamPackAttribute" => "9.0.0",
    "cudnnGetFoldedConvBackwardDataDescriptors" => "9.0.0",
    "cudnnGetFilterSizeInBytes" => "9.0.0",
    "cudnnGetFilterNdDescriptor" => "9.0.0",
    "cudnnGetFilter4dDescriptor" => "9.0.0",
    "cudnnGetConvolutionReorderType" => "9.0.0",
    "cudnnGetConvolutionNdForwardOutputDim" => "9.0.0",
    "cudnnGetConvolutionNdDescriptor" => "9.0.0",
    "cudnnGetConvolutionMathType" => "9.0.0",
    "cudnnGetConvolutionGroupCount" => "9.0.0",
    "cudnnGetConvolutionForwardWorkspaceSize" => "9.0.0",
    "cudnnGetConvolutionForwardAlgorithm_v7" => "9.0.0",
    "cudnnGetConvolutionForwardAlgorithmMaxCount" => "9.0.0",
    "cudnnGetConvolutionForwardAlgorithm" => "7.6.5",
    "cudnnGetConvolutionBackwardFilterWorkspaceSize" => "9.0.0",
    "cudnnGetConvolutionBackwardFilterAlgorithm_v7" => "9.0.0",
    "cudnnGetConvolutionBackwardFilterAlgorithm" => "7.6.5",
    "cudnnGetConvolutionBackwardDataWorkspaceSize" => "9.0.0",
    "cudnnGetConvolutionBackwardDataAlgorithm_v7" => "9.0.0",
    "cudnnGetConvolutionBackwardDataAlgorithmMaxCount" => "9.0.0",
    "cudnnGetConvolutionBackwardDataAlgorithm" => "7.6.5",
    "cudnnGetConvolution2dForwardOutputDim" => "9.0.0",
    "cudnnGetConvolution2dDescriptor" => "9.0.0",
    "cudnnGetCTCLossDescriptor_v8" => "9.0.0",
    "cudnnGetCTCLossDescriptorEx" => "9.0.0",
    "cudnnGetCTCLossDescriptor" => "9.0.0",
    "cudnnGetBatchNormalizationTrainingExReserveSpaceSize" => "9.0.0",
    "cudnnGetBatchNormalizationForwardTrainingExWorkspaceSize" => "9.0.0",
    "cudnnGetBatchNormalizationBackwardExWorkspaceSize" => "9.0.0",
    "cudnnGetAttnDescriptor" => "9.0.0",
    "cudnnGetAlgorithmSpaceSize" => "8.0.2",
    "cudnnGetAlgorithmPerformance" => "8.0.2",
    "cudnnGetAlgorithmDescriptor" => "8.0.2",
    "cudnnGetActivationDescriptorSwishBeta" => "9.0.0",
    "cudnnGetActivationDescriptor" => "9.0.0",
    "cudnnFusedOps_t" => "9.0.0",
    "cudnnFusedOpsVariantParamStruct" => "9.0.0",
    "cudnnFusedOpsVariantParamPack_t" => "9.0.0",
    "cudnnFusedOpsVariantParamLabel_t" => "9.0.0",
    "cudnnFusedOpsPointerPlaceHolder_t" => "9.0.0",
    "cudnnFusedOpsPlan_t" => "9.0.0",
    "cudnnFusedOpsPlanStruct" => "9.0.0",
    "cudnnFusedOpsExecute" => "9.0.0",
    "cudnnFusedOpsConstParamStruct" => "9.0.0",
    "cudnnFusedOpsConstParamPack_t" => "9.0.0",
    "cudnnFusedOpsConstParamLabel_t" => "9.0.0",
    "cudnnFindRNNForwardTrainingAlgorithmEx" => "8.0.2",
    "cudnnFindRNNForwardInferenceAlgorithmEx" => "8.0.2",
    "cudnnFindRNNBackwardWeightsAlgorithmEx" => "8.0.2",
    "cudnnFindRNNBackwardDataAlgorithmEx" => "8.0.2",
    "cudnnFindConvolutionForwardAlgorithmEx" => "9.0.0",
    "cudnnFindConvolutionForwardAlgorithm" => "9.0.0",
    "cudnnFindConvolutionBackwardFilterAlgorithmEx" => "9.0.0",
    "cudnnFindConvolutionBackwardFilterAlgorithm" => "9.0.0",
    "cudnnFindConvolutionBackwardDataAlgorithmEx" => "9.0.0",
    "cudnnFindConvolutionBackwardDataAlgorithm" => "9.0.0",
    "cudnnFilterStruct" => "9.0.0",
    "cudnnDestroyTensorTransformDescriptor" => "9.0.0",
    "cudnnDestroySeqDataDescriptor" => "9.0.0",
    "cudnnDestroyReduceTensorDescriptor" => "9.0.0",
    "cudnnDestroyPoolingDescriptor" => "9.0.0",
    "cudnnDestroyPersistentRNNPlan" => "8.0.1",
    "cudnnDestroyOpTensorDescriptor" => "9.0.0",
    "cudnnDestroyFusedOpsVariantParamPack" => "9.0.0",
    "cudnnDestroyFusedOpsPlan" => "9.0.0",
    "cudnnDestroyFusedOpsConstParamPack" => "9.0.0",
    "cudnnDestroyFilterDescriptor" => "9.0.0",
    "cudnnDestroyConvolutionDescriptor" => "9.0.0",
    "cudnnDestroyAttnDescriptor" => "9.0.0",
    "cudnnDestroyAlgorithmPerformance" => "8.0.2",
    "cudnnDestroyAlgorithmDescriptor" => "8.0.2",
    "cudnnDestroyActivationDescriptor" => "9.0.0",
    "cudnnDeriveNormTensorDescriptor" => "9.0.0",
    "cudnnDeriveBNTensorDescriptor" => "9.0.0",
    "cudnnCreateTensorTransformDescriptor" => "9.0.0",
    "cudnnCreateSeqDataDescriptor" => "9.0.0",
    "cudnnCreateReduceTensorDescriptor" => "9.0.0",
    "cudnnCreatePoolingDescriptor" => "9.0.0",
    "cudnnCreatePersistentRNNPlan" => "8.0.1",
    "cudnnCreateOpTensorDescriptor" => "9.0.0",
    "cudnnCreateFusedOpsVariantParamPack" => "9.0.0",
    "cudnnCreateFusedOpsPlan" => "9.0.0",
    "cudnnCreateFusedOpsConstParamPack" => "9.0.0",
    "cudnnCreateFilterDescriptor" => "9.0.0",
    "cudnnCreateConvolutionDescriptor" => "9.0.0",
    "cudnnCreateAttnDescriptor" => "9.0.0",
    "cudnnCreateAlgorithmPerformance" => "8.0.2",
    "cudnnCreateAlgorithmDescriptor" => "8.0.2",
    "cudnnCreateActivationDescriptor" => "9.0.0",
    "cudnnCopyAlgorithmDescriptor" => "8.0.2",
    "cudnnConvolutionFwdPreference_t" => "7.6.5",
    "cudnnConvolutionFwdAlgoPerf_t" => "9.0.0",
    "cudnnConvolutionForward" => "9.0.0",
    "cudnnConvolutionDescriptor_t" => "9.0.0",
    "cudnnConvolutionBwdFilterPreference_t" => "7.6.5",
    "cudnnConvolutionBwdFilterAlgoPerf_t" => "9.0.0",
    "cudnnConvolutionBwdDataPreference_t" => "7.6.5",
    "cudnnConvolutionBwdDataAlgoPerf_t" => "9.0.0",
    "cudnnConvolutionBwdDataAlgoPerfStruct" => "9.0.0",
    "cudnnConvolutionBiasActivationForward" => "9.0.0",
    "cudnnConvolutionBackwardFilter" => "9.0.0",
    "cudnnConvolutionBackwardData" => "9.0.0",
    "cudnnConvolutionBackwardBias" => "9.0.0",
    "cudnnBatchNormalizationForwardTrainingEx" => "9.0.0",
    "cudnnBatchNormalizationForwardTraining" => "9.0.0",
    "cudnnBatchNormalizationForwardInference" => "9.0.0",
    "cudnnBatchNormalizationBackwardEx" => "9.0.0",
    "cudnnBatchNormalizationBackward" => "9.0.0",
    "cudnnBatchNormOps_t" => "9.0.0",
    "cudnnBatchNormMode_t" => "9.0.0",
    "cudnnAttnDescriptor_t" => "9.0.0",
    "cudnnAddTensor" => "9.0.0",
    "cudnnActivationStruct" => "9.0.0",
    "cudnnActivationMode_t" => "9.0.0",
    "cudnnActivationForward" => "9.0.0",
    "cudnnActivationDescriptor_t" => "9.0.0",
    "cudnnActivationBackward" => "9.0.0",
    "cudaThreadSynchronize" => "10.0",
    "cudaThreadSetLimit" => "10.0",
    "cudaThreadSetCacheConfig" => "10.0",
    "cudaThreadGetLimit" => "10.0",
    "cudaThreadGetCacheConfig" => "10.0",
    "cudaThreadExit" => "10.0",
    "cudaSharedMemConfig" => "12.4",
    "cudaSetDoubleForHost" => "10.0",
    "cudaSetDoubleForDevice" => "10.0",
    "cudaMemcpyToArrayAsync" => "10.1",
    "cudaMemcpyToArray" => "10.1",
    "cudaMemcpyFromArrayAsync" => "10.1",
    "cudaMemcpyFromArray" => "10.1",
    "cudaMemcpyArrayToArray" => "10.1",
    "cudaLaunchCooperativeKernelMultiDevice" => "11.3",
    "cudaGLUnregisterBufferObject" => "10.0",
    "cudaGLUnmapBufferObjectAsync" => "10.0",
    "cudaGLUnmapBufferObject" => "10.0",
    "cudaGLSetGLDevice" => "10.0",
    "cudaGLSetBufferObjectMapFlags" => "10.0",
    "cudaGLRegisterBufferObject" => "10.0",
    "cudaGLMapBufferObjectAsync" => "10.0",
    "cudaGLMapBufferObject" => "10.0",
    "cudaFuncSetSharedMemConfig" => "12.4",
    "cudaErrorTextureNotBound" => "3.1",
    "cudaErrorTextureFetchFailed" => "3.1",
    "cudaErrorSynchronizationError" => "3.1",
    "cudaErrorProfilerNotInitialized" => "5.0",
    "cudaErrorProfilerAlreadyStopped" => "5.0",
    "cudaErrorProfilerAlreadyStarted" => "5.0",
    "cudaErrorPriorLaunchFailure" => "3.1",
    "cudaErrorNotYetImplemented" => "4.1",
    "cudaErrorMixedDeviceExecution" => "3.1",
    "cudaErrorMemoryValueTooLarge" => "3.1",
    "cudaErrorInvalidHostPointer" => "10.1",
    "cudaErrorInvalidDevicePointer" => "10.1",
    "cudaErrorApiFailureBase" => "4.1",
    "cudaErrorAddressOfConstant" => "3.1",
    "cudaDeviceSetSharedMemConfig" => "12.4",
    "cudaDeviceGetSharedMemConfig" => "12.4",
    "cudaDevAttrMaxTimelineSemaphoreInteropSupported" => "11.5",
    "cudaD3D9UnregisterResource" => "10.0",
    "cudaD3D9UnmapResources" => "10.0",
    "cudaD3D9ResourceSetMapFlags" => "10.0",
    "cudaD3D9ResourceGetSurfaceDimensions" => "10.0",
    "cudaD3D9ResourceGetMappedSize" => "10.0",
    "cudaD3D9ResourceGetMappedPointer" => "10.0",
    "cudaD3D9ResourceGetMappedPitch" => "10.0",
    "cudaD3D9ResourceGetMappedArray" => "10.0",
    "cudaD3D9MapResources" => "10.0",
    "cudaD3D11SetDirect3DDevice" => "10.0",
    "cudaD3D11GetDirect3DDevice" => "10.0",
    "cudaD3D10UnregisterResource" => "10.0",
    "cudaD3D10UnmapResources" => "10.0",
    "cudaD3D10SetDirect3DDevice" => "10.0",
    "cudaD3D10ResourceSetMapFlags" => "10.0",
    "cudaD3D10ResourceGetSurfaceDimensions" => "10.0",
    "cudaD3D10ResourceGetMappedSize" => "10.0",
    "cudaD3D10ResourceGetMappedPointer" => "10.0",
    "cudaD3D10ResourceGetMappedPitch" => "10.0",
    "cudaD3D10ResourceGetMappedArray" => "10.0",
    "cudaD3D10RegisterResource" => "10.0",
    "cudaD3D10MapResources" => "10.0",
    "cudaD3D10GetDirect3DDevice" => "10.0",
    "cuTexRefSetMipmappedArray" => "11.0",
    "cuTexRefSetMipmapLevelClamp" => "11.0",
    "cuTexRefSetMipmapLevelBias" => "11.0",
    "cuTexRefSetMipmapFilterMode" => "11.0",
    "cuTexRefSetMaxAnisotropy" => "11.0",
    "cuTexRefSetFormat" => "11.0",
    "cuTexRefSetFlags" => "11.0",
    "cuTexRefSetFilterMode" => "11.0",
    "cuTexRefSetBorderColor" => "11.0",
    "cuTexRefSetArray" => "11.0",
    "cuTexRefSetAddress_v2" => "11.0",
    "cuTexRefSetAddressMode" => "11.0",
    "cuTexRefSetAddress2D" => "11.0",
    "cuTexRefSetAddress" => "11.0",
    "cuTexRefGetMipmappedArray" => "11.0",
    "cuTexRefGetMipmapLevelClamp" => "11.0",
    "cuTexRefGetMipmapLevelBias" => "11.0",
    "cuTexRefGetMipmapFilterMode" => "11.0",
    "cuTexRefGetMaxAnisotropy" => "11.0",
    "cuTexRefGetFormat" => "11.0",
    "cuTexRefGetFlags" => "11.0",
    "cuTexRefGetFilterMode" => "11.0",
    "cuTexRefGetBorderColor" => "11.0",
    "cuTexRefGetArray" => "11.0",
    "cuTexRefGetAddress_v2" => "11.0",
    "cuTexRefGetAddressMode" => "11.0",
    "cuTexRefGetAddress" => "11.0",
    "cuTexRefDestroy" => "11.0",
    "cuTexRefCreate" => "11.0",
    "cuSurfRefSetArray" => "11.0",
    "cuSurfRefGetArray" => "11.0",
    "cuParamSetv" => "9.2",
    "cuParamSeti" => "9.2",
    "cuParamSetf" => "9.2",
    "cuParamSetTexRef" => "9.2",
    "cuParamSetSize" => "9.2",
    "cuModuleGetTexRef" => "12.0",
    "cuModuleGetSurfRef" => "12.0",
    "cuLaunchGridAsync" => "9.2",
    "cuLaunchGrid" => "9.2",
    "cuLaunchCooperativeKernelMultiDevice" => "11.3",
    "cuLaunch" => "9.2",
    "cuGLUnregisterBufferObject" => "9.2",
    "cuGLUnmapBufferObjectAsync" => "9.2",
    "cuGLUnmapBufferObject" => "9.2",
    "cuGLSetBufferObjectMapFlags" => "9.2",
    "cuGLRegisterBufferObject" => "9.2",
    "cuGLMapBufferObjectAsync" => "9.2",
    "cuGLMapBufferObject" => "9.2",
    "cuGLInit" => "9.2",
    "cuGLCtxCreate" => "9.2",
    "cuFuncSetSharedSize" => "9.2",
    "cuFuncSetSharedMemConfig" => "",
    "cuFuncSetBlockShape" => "9.2",
    "cuDeviceGetProperties" => "9.2",
    "cuDeviceComputeCapability" => "9.2",
    "cuD3D9UnregisterResource" => "9.2",
    "cuD3D9UnmapResources" => "9.2",
    "cuD3D9ResourceSetMapFlags" => "9.2",
    "cuD3D9ResourceGetSurfaceDimensions" => "9.2",
    "cuD3D9ResourceGetMappedSize" => "9.2",
    "cuD3D9ResourceGetMappedPointer" => "9.2",
    "cuD3D9ResourceGetMappedPitch" => "9.2",
    "cuD3D9ResourceGetMappedArray" => "9.2",
    "cuD3D9RegisterResource" => "9.2",
    "cuD3D9MapResources" => "9.2",
    "cuD3D11GetDirect3DDevice" => "9.2",
    "cuD3D11CtxCreateOnDevice" => "9.2",
    "cuD3D11CtxCreate" => "9.2",
    "cuD3D10UnregisterResource" => "9.2",
    "cuD3D10UnmapResources" => "9.2",
    "cuD3D10ResourceSetMapFlags" => "9.2",
    "cuD3D10ResourceGetSurfaceDimensions" => "9.2",
    "cuD3D10ResourceGetMappedSize" => "9.2",
    "cuD3D10ResourceGetMappedPointer" => "9.2",
    "cuD3D10ResourceGetMappedPitch" => "9.2",
    "cuD3D10ResourceGetMappedArray" => "9.2",
    "cuD3D10RegisterResource" => "9.2",
    "cuD3D10MapResources" => "9.2",
    "cuD3D10GetDirect3DDevice" => "9.2",
    "cuD3D10CtxCreateOnDevice" => "9.2",
    "cuD3D10CtxCreate" => "9.2",
    "cuCtxSetSharedMemConfig" => "",
    "cuCtxGetSharedMemConfig" => "",
    "csru2csrInfo_t" => "12.2",
    "csru2csrInfo" => "12.2",
    "csrilu02Info_t" => "12.2",
    "csrilu02Info" => "12.2",
    "csric02Info_t" => "12.2",
    "csric02Info" => "12.2",
    "bsrsv2Info_t" => "12.2",
    "bsrsv2Info" => "12.2",
    "bsrsm2Info_t" => "12.2",
    "bsrsm2Info" => "12.2",
    "bsrilu02Info_t" => "12.2",
    "bsrilu02Info" => "12.2",
    "__shfl_xor" => "9.0",
    "__shfl_up" => "9.0",
    "__shfl_down" => "9.0",
    "__shfl" => "9.0",
    "CU_JIT_REFERENCED_VARIABLE_NAMES" => "12.0",
    "CU_JIT_REFERENCED_VARIABLE_COUNT" => "12.0",
    "CU_JIT_REFERENCED_KERNEL_NAMES" => "12.0",
    "CU_JIT_REFERENCED_KERNEL_COUNT" => "12.0",
    "CU_JIT_PREC_SQRT" => "12.0",
    "CU_JIT_PREC_DIV" => "12.0",
    "CU_JIT_OPTIMIZE_UNUSED_DEVICE_VARIABLES" => "12.0",
    "CU_JIT_LTO" => "12.0",
    "CU_JIT_INPUT_NVVM" => "12.0",
    "CU_JIT_FTZ" => "12.0",
    "CU_JIT_FMA" => "12.0",
    "CU_DEVICE_P2P_ATTRIBUTE_ARRAY_ACCESS_ACCESS_SUPPORTED" => "10.0",
    "CU_DEVICE_P2P_ATTRIBUTE_ACCESS_ACCESS_SUPPORTED" => "10.1",
    "CU_DEVICE_ATTRIBUTE_VIRTUAL_ADDRESS_MANAGEMENT_SUPPORTED" => "11.2",
    "CU_DEVICE_ATTRIBUTE_SHARED_MEMORY_PER_BLOCK" => "5.0",
    "CU_DEVICE_ATTRIBUTE_REGISTERS_PER_BLOCK" => "5.0",
    "CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_WIDTH" => "5.0",
    "CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_NUMSLICES" => "5.0",
    "CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_HEIGHT" => "5.0",
    "CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LINEAR_WIDTH" => "11.2",
    "CU_DEVICE_ATTRIBUTE_GPU_OVERLAP" => "5.0",
    "CU_DEVICE_ATTRIBUTE_CAN_TEX2D_GATHER" => "5.0",
    "CU_CTX_BLOCKING_SYNC" => "4.0",
    "CUSPARSE_SOLVE_POLICY_USE_LEVEL" => "12.2",
    "CUSPARSE_SOLVE_POLICY_NO_LEVEL" => "12.2",
    "CUSPARSE_MV_ALG_DEFAULT" => "11.3",
    "CUSPARSE_MM_ALG_DEFAULT" => "11.0",
    "CUSPARSE_HYB_PARTITION_USER" => "10.2",
    "CUSPARSE_HYB_PARTITION_MAX" => "10.2",
    "CUSPARSE_HYB_PARTITION_AUTO" => "10.2",
    "CUSPARSE_CSRMV_ALG2" => "11.2",
    "CUSPARSE_CSRMV_ALG1" => "11.2",
    "CUSPARSE_CSRMM_ALG1" => "11.0",
    "CUSPARSE_COOMV_ALG" => "11.2",
    "CUSPARSE_COOMM_ALG3" => "11.0",
    "CUSPARSE_COOMM_ALG2" => "11.0",
    "CUSPARSE_COOMM_ALG1" => "11.0",
    "CUSPARSE_COLOR_ALG1" => "12.2",
    "CUSPARSE_COLOR_ALG0" => "12.2",
    "CUDNN_TYPE_NAN_PROPOGATION" => "9.0.0",
    "CUDNN_STATUS_VERSION_MISMATCH" => "9.0.0",
    "CUDNN_STATUS_RUNTIME_PREREQUISITE_MISSING" => "9.0.0",
    "CUDNN_STATUS_MAPPING_ERROR" => "9.0.0",
    "CUDNN_STATUS_INVALID_VALUE" => "9.0.0",
    "CUDNN_STATUS_ARCH_MISMATCH" => "9.0.0",
    "CUDNN_STATUS_ALLOC_FAILED" => "9.0.0",
    "CUDNN_REDUCE_TENSOR_NO_INDICES" => "9.0.0",
    "CUDNN_REDUCE_TENSOR_FLATTENED_INDICES" => "9.0.0",
    "CUDNN_PROPAGATE_NAN" => "9.0.0",
    "CUDNN_POOLING_MAX_DETERMINISTIC" => "9.0.0",
    "CUDNN_POOLING_MAX" => "9.0.0",
    "CUDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING" => "9.0.0",
    "CUDNN_POOLING_AVERAGE_COUNT_EXCLUDE_PADDING" => "9.0.0",
    "CUDNN_NO_REORDER" => "9.0.0",
    "CUDNN_NOT_PROPAGATE_NAN" => "9.0.0",
    "CUDNN_NORM_PER_CHANNEL" => "9.0.0",
    "CUDNN_NORM_PER_ACTIVATION" => "9.0.0",
    "CUDNN_NORM_OPS_NORM_ADD_ACTIVATION" => "9.0.0",
    "CUDNN_NORM_OPS_NORM_ACTIVATION" => "9.0.0",
    "CUDNN_NORM_OPS_NORM" => "9.0.0",
    "CUDNN_NORM_ALGO_STANDARD" => "9.0.0",
    "CUDNN_NORM_ALGO_PERSIST" => "9.0.0",
    "CUDNN_KNOB_TYPE_WINO_TILE" => "9.0.0",
    "CUDNN_KNOB_TYPE_USE_TEX" => "9.0.0",
    "CUDNN_KNOB_TYPE_TILE_CGA" => "9.0.0",
    "CUDNN_KNOB_TYPE_SPLIT_RS" => "9.0.0",
    "CUDNN_KNOB_TYPE_SPLIT_K" => "9.0.0",
    "CUDNN_KNOB_TYPE_SPLIT_H" => "9.0.0",
    "CUDNN_KNOB_TYPE_SLICED" => "9.0.0",
    "CUDNN_KNOB_TYPE_SINGLEBUFFER" => "9.0.0",
    "CUDNN_KNOB_TYPE_NUM_C_PER_BLOCK" => "9.0.0",
    "CUDNN_KNOB_TYPE_LDGC" => "9.0.0",
    "CUDNN_KNOB_TYPE_LDGB" => "9.0.0",
    "CUDNN_KNOB_TYPE_LDGA" => "9.0.0",
    "CUDNN_KNOB_TYPE_KBLOCK" => "9.0.0",
    "CUDNN_KNOB_TYPE_IDX_MODE" => "9.0.0",
    "CUDNN_KNOB_TYPE_CTA_SPLIT_K_MODE" => "9.0.0",
    "CUDNN_KNOB_TYPE_CHUNK_K" => "9.0.0",
    "CUDNN_DEFAULT_REORDER" => "9.0.0",
    "CUDNN_DATA_UINT8x4" => "9.0.0",
    "CUDNN_DATA_INT8x4" => "9.0.0",
    "CUDNN_DATA_INT8x32" => "9.0.0",
    "CUDNN_CROSS_CORRELATION" => "9.0.0",
    "CUDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT" => "7.6.5",
    "CUDNN_CONVOLUTION_FWD_PREFER_FASTEST" => "7.6.5",
    "CUDNN_CONVOLUTION_FWD_NO_WORKSPACE" => "7.6.5",
    "CUDNN_CONVOLUTION_BWD_FILTER_SPECIFY_WORKSPACE_LIMIT" => "7.6.5",
    "CUDNN_CONVOLUTION_BWD_FILTER_PREFER_FASTEST" => "7.6.5",
    "CUDNN_CONVOLUTION_BWD_FILTER_NO_WORKSPACE" => "7.6.5",
    "CUDNN_CONVOLUTION_BWD_DATA_SPECIFY_WORKSPACE_LIMIT" => "7.6.5",
    "CUDNN_CONVOLUTION_BWD_DATA_PREFER_FASTEST" => "7.6.5",
    "CUDNN_CONVOLUTION_BWD_DATA_NO_WORKSPACE" => "7.6.5",
    "CUDNN_CONVOLUTION" => "9.0.0",
    "CUDNN_BATCHNORM_SPATIAL_PERSISTENT" => "9.0.0",
    "CUDNN_BATCHNORM_SPATIAL" => "9.0.0",
    "CUDNN_BATCHNORM_PER_ACTIVATION" => "9.0.0",
    "CUDNN_BATCHNORM_OPS_BN_ADD_ACTIVATION" => "9.0.0",
    "CUDNN_BATCHNORM_OPS_BN_ACTIVATION" => "9.0.0",
    "CUDNN_BATCHNORM_OPS_BN" => "9.0.0",
    "CUDNN_ATTR_OPERATION_RESAMPLE_FWD_BETA" => "9.0.0",
    "CUDNN_ATTR_OPERATION_RESAMPLE_FWD_ALPHA" => "9.0.0",
    "CUDNN_ATTR_OPERATION_RESAMPLE_BWD_BETA" => "9.0.0",
    "CUDNN_ATTR_OPERATION_RESAMPLE_BWD_ALPHA" => "9.0.0",
    "CUDNN_ATTR_OPERATION_MATMUL_IRREGULARLY_STRIDED_BATCH_COUNT" => "9.0.0",
    "CUDNN_ACTIVATION_TANH" => "9.0.0",
    "CUDNN_ACTIVATION_SWISH" => "9.0.0",
    "CUDNN_ACTIVATION_SIGMOID" => "9.0.0",
    "CUDNN_ACTIVATION_RELU" => "9.0.0",
    "CUDNN_ACTIVATION_IDENTITY" => "9.0.0",
    "CUDNN_ACTIVATION_ELU" => "9.0.0",
    "CUDNN_ACTIVATION_CLIPPED_RELU" => "9.0.0",
    "CUDNN_8BIT_INDICES" => "9.0.0",
    "CUDNN_64BIT_INDICES" => "9.0.0",
    "CUDNN_32BIT_INDICES" => "9.0.0",
    "CUDNN_16BIT_INDICES" => "9.0.0",
    "CUDA_ERROR_PROFILER_NOT_INITIALIZED" => "5.0",
    "CUDA_ERROR_PROFILER_ALREADY_STOPPED" => "5.0",
    "CUDA_ERROR_PROFILER_ALREADY_STARTED" => "5.0",
    "CUDA_ERROR_CONTEXT_ALREADY_CURRENT" => "3.2",
    "CUDA_ARRAY3D_2DARRAY" => "5.0",
    "CUBLAS_TENSOR_OP_MATH" => "11.0"
);

my %removed_funcs = (
    "texture" => "12.0",
    "surfaceReference" => "12.0",
    "cusparseZsctr" => "12.0",
    "cusparseZhybsv_solve" => "11.0",
    "cusparseZhybsv_analysis" => "11.0",
    "cusparseZhybmv" => "11.0",
    "cusparseZhyb2dense" => "11.0",
    "cusparseZhyb2csr" => "11.0",
    "cusparseZhyb2csc" => "11.0",
    "cusparseZgtsv_nopivot" => "11.0",
    "cusparseZgtsvStridedBatch" => "11.0",
    "cusparseZgtsv" => "11.0",
    "cusparseZgthrz" => "12.0",
    "cusparseZgthr" => "12.0",
    "cusparseZgemmi" => "12.0",
    "cusparseZdoti" => "11.0",
    "cusparseZdotci" => "11.0",
    "cusparseZdense2hyb" => "11.0",
    "cusparseZdense2csr" => "12.0",
    "cusparseZdense2csc" => "12.0",
    "cusparseZcsrsv_solve" => "11.0",
    "cusparseZcsrsv_analysis" => "11.0",
    "cusparseZcsrsv2_solve" => "12.0",
    "cusparseZcsrsv2_bufferSizeExt" => "12.0",
    "cusparseZcsrsv2_bufferSize" => "12.0",
    "cusparseZcsrsv2_analysis" => "12.0",
    "cusparseZcsrsm_solve" => "11.0",
    "cusparseZcsrsm_analysis" => "11.0",
    "cusparseZcsrsm2_solve" => "12.0",
    "cusparseZcsrsm2_bufferSizeExt" => "12.0",
    "cusparseZcsrsm2_analysis" => "12.0",
    "cusparseZcsrmv_mp" => "11.0",
    "cusparseZcsrmv" => "11.0",
    "cusparseZcsrmm2" => "11.0",
    "cusparseZcsrmm" => "11.0",
    "cusparseZcsrilu0" => "11.0",
    "cusparseZcsric0" => "11.0",
    "cusparseZcsrgemm2_bufferSizeExt" => "12.0",
    "cusparseZcsrgemm2" => "12.0",
    "cusparseZcsrgemm" => "11.0",
    "cusparseZcsrgeam" => "11.0",
    "cusparseZcsr2hyb" => "11.0",
    "cusparseZcsr2dense" => "12.0",
    "cusparseZcsr2csc" => "11.0",
    "cusparseZcsc2hyb" => "11.0",
    "cusparseZcsc2dense" => "12.0",
    "cusparseZaxpyi" => "12.0",
    "cusparseXcsrsv2_zeroPivot" => "12.0",
    "cusparseXcsrsm2_zeroPivot" => "12.0",
    "cusparseXcsrgemmNnz" => "11.0",
    "cusparseXcsrgemm2Nnz" => "12.0",
    "cusparseXcsrgeamNnz" => "11.0",
    "cusparseSsctr" => "12.0",
    "cusparseSroti" => "12.0",
    "cusparseSpMatSetStridedBatch" => "12.0",
    "cusparseSolveAnalysisInfo_t" => "11.0",
    "cusparseSolveAnalysisInfo" => "11.0",
    "cusparseSideMode_t" => "11.5",
    "cusparseShybsv_solve" => "11.0",
    "cusparseShybsv_analysis" => "11.0",
    "cusparseShybmv" => "11.0",
    "cusparseShyb2dense" => "11.0",
    "cusparseShyb2csr" => "11.0",
    "cusparseShyb2csc" => "11.0",
    "cusparseSgtsv_nopivot" => "11.0",
    "cusparseSgtsvStridedBatch" => "11.0",
    "cusparseSgtsv" => "11.0",
    "cusparseSgthrz" => "12.0",
    "cusparseSgthr" => "12.0",
    "cusparseSgemmi" => "12.0",
    "cusparseSdoti" => "11.0",
    "cusparseSdense2hyb" => "11.0",
    "cusparseSdense2csr" => "12.0",
    "cusparseSdense2csc" => "12.0",
    "cusparseScsrsv_solve" => "11.0",
    "cusparseScsrsv_analysis" => "11.0",
    "cusparseScsrsv2_solve" => "12.0",
    "cusparseScsrsv2_bufferSizeExt" => "12.0",
    "cusparseScsrsv2_bufferSize" => "12.0",
    "cusparseScsrsv2_analysis" => "12.0",
    "cusparseScsrsm_solve" => "11.0",
    "cusparseScsrsm_analysis" => "11.0",
    "cusparseScsrsm2_solve" => "12.0",
    "cusparseScsrsm2_bufferSizeExt" => "12.0",
    "cusparseScsrsm2_analysis" => "12.0",
    "cusparseScsrmv_mp" => "11.0",
    "cusparseScsrmv" => "11.0",
    "cusparseScsrmm2" => "11.0",
    "cusparseScsrmm" => "11.0",
    "cusparseScsrilu0" => "11.0",
    "cusparseScsric0" => "11.0",
    "cusparseScsrgemm2_bufferSizeExt" => "12.0",
    "cusparseScsrgemm2" => "12.0",
    "cusparseScsrgemm" => "11.0",
    "cusparseScsrgeam" => "11.0",
    "cusparseScsr2hyb" => "11.0",
    "cusparseScsr2dense" => "12.0",
    "cusparseScsr2csc" => "11.0",
    "cusparseScsc2hyb" => "11.0",
    "cusparseScsc2dense" => "12.0",
    "cusparseSaxpyi" => "12.0",
    "cusparseHybPartition_t" => "11.0",
    "cusparseHybMat_t" => "11.0",
    "cusparseHybMat" => "11.0",
    "cusparseGetLevelInfo" => "11.0",
    "cusparseDsctr" => "12.0",
    "cusparseDroti" => "12.0",
    "cusparseDhybsv_solve" => "11.0",
    "cusparseDhybsv_analysis" => "11.0",
    "cusparseDhybmv" => "11.0",
    "cusparseDhyb2dense" => "11.0",
    "cusparseDhyb2csr" => "11.0",
    "cusparseDhyb2csc" => "11.0",
    "cusparseDgtsv_nopivot" => "11.0",
    "cusparseDgtsvStridedBatch" => "11.0",
    "cusparseDgtsv" => "11.0",
    "cusparseDgthrz" => "12.0",
    "cusparseDgthr" => "12.0",
    "cusparseDgemmi" => "12.0",
    "cusparseDestroySolveAnalysisInfo" => "11.0",
    "cusparseDestroyHybMat" => "11.0",
    "cusparseDestroyCsrsv2Info" => "12.0",
    "cusparseDestroyCsrsm2Info" => "12.0",
    "cusparseDestroyCsrgemm2Info" => "12.0",
    "cusparseDdoti" => "11.0",
    "cusparseDdense2hyb" => "11.0",
    "cusparseDdense2csr" => "12.0",
    "cusparseDdense2csc" => "12.0",
    "cusparseDcsrsv_solve" => "11.0",
    "cusparseDcsrsv_analysis" => "11.0",
    "cusparseDcsrsv2_solve" => "12.0",
    "cusparseDcsrsv2_bufferSizeExt" => "12.0",
    "cusparseDcsrsv2_bufferSize" => "12.0",
    "cusparseDcsrsv2_analysis" => "12.0",
    "cusparseDcsrsm_solve" => "11.0",
    "cusparseDcsrsm_analysis" => "11.0",
    "cusparseDcsrsm2_solve" => "12.0",
    "cusparseDcsrsm2_bufferSizeExt" => "12.0",
    "cusparseDcsrsm2_analysis" => "12.0",
    "cusparseDcsrmv_mp" => "11.0",
    "cusparseDcsrmv" => "11.0",
    "cusparseDcsrmm2" => "11.0",
    "cusparseDcsrmm" => "11.0",
    "cusparseDcsrilu0" => "11.0",
    "cusparseDcsric0" => "11.0",
    "cusparseDcsrgemm2_bufferSizeExt" => "12.0",
    "cusparseDcsrgemm2" => "12.0",
    "cusparseDcsrgemm" => "11.0",
    "cusparseDcsrgeam" => "11.0",
    "cusparseDcsr2hyb" => "11.0",
    "cusparseDcsr2dense" => "12.0",
    "cusparseDcsr2csc" => "11.0",
    "cusparseDcsc2hyb" => "11.0",
    "cusparseDcsc2dense" => "12.0",
    "cusparseDaxpyi" => "12.0",
    "cusparseCsrsv_solveEx" => "11.0",
    "cusparseCsrsv_analysisEx" => "11.0",
    "cusparseCsrmvEx_bufferSize" => "12.0",
    "cusparseCsrmvEx" => "12.0",
    "cusparseCsrilu0Ex" => "11.0",
    "cusparseCsr2cscEx" => "11.0",
    "cusparseCsctr" => "12.0",
    "cusparseCreateSolveAnalysisInfo" => "11.0",
    "cusparseCreateHybMat" => "11.0",
    "cusparseCreateCsrsv2Info" => "12.0",
    "cusparseCreateCsrsm2Info" => "12.0",
    "cusparseCreateCsrgemm2Info" => "12.0",
    "cusparseCreateCooAoS" => "12.0",
    "cusparseCopyMatDescr" => "12.0",
    "cusparseCooAoSGet" => "12.0",
    "cusparseConstrainedGeMM_bufferSize" => "12.0",
    "cusparseConstrainedGeMM" => "12.0",
    "cusparseChybsv_solve" => "11.0",
    "cusparseChybsv_analysis" => "11.0",
    "cusparseChybmv" => "11.0",
    "cusparseChyb2dense" => "11.0",
    "cusparseChyb2csr" => "11.0",
    "cusparseChyb2csc" => "11.0",
    "cusparseCgtsv_nopivot" => "11.0",
    "cusparseCgtsvStridedBatch" => "11.0",
    "cusparseCgtsv" => "11.0",
    "cusparseCgthrz" => "12.0",
    "cusparseCgthr" => "12.0",
    "cusparseCgemmi" => "12.0",
    "cusparseCdoti" => "11.0",
    "cusparseCdotci" => "11.0",
    "cusparseCdense2hyb" => "11.0",
    "cusparseCdense2csr" => "12.0",
    "cusparseCdense2csc" => "12.0",
    "cusparseCcsrsv_solve" => "11.0",
    "cusparseCcsrsv_analysis" => "11.0",
    "cusparseCcsrsv2_solve" => "12.0",
    "cusparseCcsrsv2_bufferSizeExt" => "12.0",
    "cusparseCcsrsv2_bufferSize" => "12.0",
    "cusparseCcsrsv2_analysis" => "12.0",
    "cusparseCcsrsm_solve" => "11.0",
    "cusparseCcsrsm_analysis" => "11.0",
    "cusparseCcsrsm2_solve" => "12.0",
    "cusparseCcsrsm2_bufferSizeExt" => "12.0",
    "cusparseCcsrsm2_analysis" => "12.0",
    "cusparseCcsrmv_mp" => "11.0",
    "cusparseCcsrmv" => "11.0",
    "cusparseCcsrmm2" => "11.0",
    "cusparseCcsrmm" => "11.0",
    "cusparseCcsrilu0" => "11.0",
    "cusparseCcsric0" => "11.0",
    "cusparseCcsrgemm2_bufferSizeExt" => "12.0",
    "cusparseCcsrgemm2" => "12.0",
    "cusparseCcsrgemm" => "11.0",
    "cusparseCcsrgeam" => "11.0",
    "cusparseCcsr2hyb" => "11.0",
    "cusparseCcsr2dense" => "12.0",
    "cusparseCcsr2csc" => "11.0",
    "cusparseCcsc2hyb" => "11.0",
    "cusparseCcsc2dense" => "12.0",
    "cusparseCaxpyi" => "12.0",
    "cusparseAlgMode_t" => "12.0",
    "cudnnSetRNNProjectionLayers" => "9.0.0",
    "cudnnSetRNNPaddingMode" => "9.0.0",
    "cudnnSetRNNMatrixMathType" => "9.0.0",
    "cudnnSetRNNDescriptor_v6" => "9.0.0",
    "cudnnSetRNNDescriptor_v5" => "8.0.1",
    "cudnnSetRNNDescriptor" => "8.0.1",
    "cudnnSetRNNBiasMode" => "9.0.0",
    "cudnnSetRNNAlgorithmDescriptor" => "9.0.0",
    "cudnnSetPersistentRNNPlan" => "9.0.0",
    "cudnnSetAlgorithmPerformance" => "9.0.0",
    "cudnnSetAlgorithmDescriptor" => "9.0.0",
    "cudnnSaveAlgorithm" => "9.0.0",
    "cudnnRestoreAlgorithm" => "9.0.0",
    "cudnnRNNSetClip" => "9.0.0",
    "cudnnRNNPaddingMode_t" => "9.0.0",
    "cudnnRNNGetClip" => "9.0.0",
    "cudnnRNNForwardTrainingEx" => "9.0.0",
    "cudnnRNNForwardTraining" => "9.0.0",
    "cudnnRNNForwardInferenceEx" => "9.0.0",
    "cudnnRNNForwardInference" => "9.0.0",
    "cudnnRNNBackwardWeightsEx" => "9.0.0",
    "cudnnRNNBackwardWeights" => "9.0.0",
    "cudnnRNNBackwardDataEx" => "9.0.0",
    "cudnnRNNBackwardData" => "9.0.0",
    "cudnnOpsTrainVersionCheck" => "9.0.0",
    "cudnnGetRNNWorkspaceSize" => "9.0.0",
    "cudnnGetRNNTrainingReserveSize" => "9.0.0",
    "cudnnGetRNNProjectionLayers" => "9.0.0",
    "cudnnGetRNNParamsSize" => "9.0.0",
    "cudnnGetRNNPaddingMode" => "9.0.0",
    "cudnnGetRNNMatrixMathType" => "9.0.0",
    "cudnnGetRNNLinLayerMatrixParams" => "9.0.0",
    "cudnnGetRNNLinLayerBiasParams" => "9.0.0",
    "cudnnGetRNNForwardTrainingAlgorithmMaxCount" => "9.0.0",
    "cudnnGetRNNForwardInferenceAlgorithmMaxCount" => "9.0.0",
    "cudnnGetRNNDescriptor_v6" => "9.0.0",
    "cudnnGetRNNDescriptor" => "8.0.1",
    "cudnnGetRNNBiasMode" => "9.0.0",
    "cudnnGetRNNBackwardWeightsAlgorithmMaxCount" => "9.0.0",
    "cudnnGetRNNBackwardDataAlgorithmMaxCount" => "9.0.0",
    "cudnnGetConvolutionForwardAlgorithm" => "8.0.1",
    "cudnnGetConvolutionBackwardFilterAlgorithm" => "8.0.1",
    "cudnnGetConvolutionBackwardDataAlgorithm" => "8.0.1",
    "cudnnGetAlgorithmSpaceSize" => "9.0.0",
    "cudnnGetAlgorithmPerformance" => "9.0.0",
    "cudnnGetAlgorithmDescriptor" => "9.0.0",
    "cudnnFindRNNForwardTrainingAlgorithmEx" => "9.0.0",
    "cudnnFindRNNForwardInferenceAlgorithmEx" => "9.0.0",
    "cudnnFindRNNBackwardWeightsAlgorithmEx" => "9.0.0",
    "cudnnFindRNNBackwardDataAlgorithmEx" => "9.0.0",
    "cudnnDestroyPersistentRNNPlan" => "9.0.0",
    "cudnnDestroyAlgorithmPerformance" => "9.0.0",
    "cudnnDestroyAlgorithmDescriptor" => "9.0.0",
    "cudnnCreatePersistentRNNPlan" => "9.0.0",
    "cudnnCreateAlgorithmPerformance" => "9.0.0",
    "cudnnCreateAlgorithmDescriptor" => "9.0.0",
    "cudnnCopyAlgorithmDescriptor" => "9.0.0",
    "cudnnConvolutionFwdPreference_t" => "8.0.1",
    "cudnnConvolutionBwdFilterPreference_t" => "8.0.1",
    "cudnnConvolutionBwdDataPreference_t" => "8.0.1",
    "cudnnAttnQueryMap_t" => "9.0.0",
    "cudnnAlgorithm_t" => "9.0.0",
    "cudnnAlgorithmUnionStruct" => "9.0.0",
    "cudnnAlgorithmStruct" => "9.0.0",
    "cudnnAlgorithmPerformance_t" => "9.0.0",
    "cudnnAlgorithmPerformanceStruct" => "9.0.0",
    "cudnnAlgorithmDescriptor_t" => "9.0.0",
    "cudnnAdvTrainVersionCheck" => "9.0.0",
    "cudnnAdvInferVersionCheck" => "9.0.0",
    "cudaUnbindTexture" => "12.0",
    "cudaSetupArgument" => "10.1",
    "cudaProfilerInitialize" => "12.0",
    "cudaOutputMode_t" => "12.0",
    "cudaOutputMode" => "12.0",
    "cudaLaunch" => "10.1",
    "cudaKeyValuePair" => "12.0",
    "cudaGetTextureReference" => "12.0",
    "cudaGetTextureObjectTextureDesc_v2" => "12.0",
    "cudaGetTextureAlignmentOffset" => "12.0",
    "cudaGetSurfaceReference" => "12.0",
    "cudaDevicePropDontCare" => "12.0",
    "cudaCreateTextureObject_v2" => "12.0",
    "cudaConfigureCall" => "10.1",
    "cudaCSV" => "12.0",
    "cudaBindTextureToMipmappedArray" => "12.0",
    "cudaBindTextureToArray" => "12.0",
    "cudaBindTexture2D" => "12.0",
    "cudaBindTexture" => "12.0",
    "cudaBindSurfaceToArray" => "12.0",
    "csrsv2Info_t" => "12.0",
    "csrsv2Info" => "12.0",
    "csrsm2Info_t" => "12.0",
    "csrsm2Info" => "12.0",
    "csrgemm2Info_t" => "12.0",
    "csrgemm2Info" => "12.0",
    "CUstreamAttrID_enum" => "11.8",
    "CUkernelNodeAttrValue_union" => "11.8",
    "CUkernelNodeAttrID_enum" => "11.8",
    "CU_TARGET_COMPUTE_73" => "10.0",
    "CU_TARGET_COMPUTE_21" => "12.0",
    "CU_TARGET_COMPUTE_20" => "12.0",
    "CU_TARGET_COMPUTE_13" => "9.0",
    "CU_TARGET_COMPUTE_12" => "9.0",
    "CU_TARGET_COMPUTE_11" => "9.0",
    "CU_TARGET_COMPUTE_10" => "9.0",
    "CU_GRAPH_NODE_TYPE_COUNT" => "11.0",
    "CU_DEVICE_P2P_ATTRIBUTE_ARRAY_ACCESS_ACCESS_SUPPORTED" => "10.1",
    "CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR_V2" => "12.0",
    "CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_MEM_OPS" => "12.0",
    "CU_DEVICE_ATTRIBUTE_CAN_USE_64_BIT_STREAM_MEM_OPS_V2" => "12.0",
    "CU_COMPUTEMODE_EXCLUSIVE" => "8.0",
    "CUSPARSE_SPMMA_PREPROCESS" => "11.2",
    "CUSPARSE_SPMMA_ALG4" => "11.2",
    "CUSPARSE_SPMMA_ALG3" => "11.2",
    "CUSPARSE_SPMMA_ALG2" => "11.2",
    "CUSPARSE_SPMMA_ALG1" => "11.2",
    "CUSPARSE_SIDE_RIGHT" => "11.5",
    "CUSPARSE_SIDE_LEFT" => "11.5",
    "CUSPARSE_MV_ALG_DEFAULT" => "12.0",
    "CUSPARSE_MM_ALG_DEFAULT" => "12.0",
    "CUSPARSE_HYB_PARTITION_USER" => "11.0",
    "CUSPARSE_HYB_PARTITION_MAX" => "11.0",
    "CUSPARSE_HYB_PARTITION_AUTO" => "11.0",
    "CUSPARSE_FORMAT_COO_AOS" => "12.0",
    "CUSPARSE_CSRMV_ALG2" => "12.0",
    "CUSPARSE_CSRMV_ALG1" => "12.0",
    "CUSPARSE_CSRMM_ALG1" => "12.0",
    "CUSPARSE_COOMV_ALG" => "12.0",
    "CUSPARSE_COOMM_ALG3" => "12.0",
    "CUSPARSE_COOMM_ALG2" => "12.0",
    "CUSPARSE_COOMM_ALG1" => "12.0",
    "CUSPARSE_ALG_NAIVE" => "11.0",
    "CUSPARSE_ALG_MERGE_PATH" => "12.0",
    "CUSPARSE_ALG1" => "11.0",
    "CUSPARSE_ALG0" => "11.0",
    "CUDNN_RNN_PADDED_IO_ENABLED" => "9.0.0",
    "CUDNN_RNN_PADDED_IO_DISABLED" => "9.0.0",
    "CUDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT" => "8.0.1",
    "CUDNN_CONVOLUTION_FWD_PREFER_FASTEST" => "8.0.1",
    "CUDNN_CONVOLUTION_FWD_NO_WORKSPACE" => "8.0.1",
    "CUDNN_CONVOLUTION_BWD_FILTER_SPECIFY_WORKSPACE_LIMIT" => "8.0.1",
    "CUDNN_CONVOLUTION_BWD_FILTER_PREFER_FASTEST" => "8.0.1",
    "CUDNN_CONVOLUTION_BWD_FILTER_NO_WORKSPACE" => "8.0.1",
    "CUDNN_CONVOLUTION_BWD_DATA_SPECIFY_WORKSPACE_LIMIT" => "8.0.1",
    "CUDNN_CONVOLUTION_BWD_DATA_PREFER_FASTEST" => "8.0.1",
    "CUDNN_CONVOLUTION_BWD_DATA_NO_WORKSPACE" => "8.0.1",
    "CUDA_MEM_ALLOC_NODE_PARAMS_st" => "12.2",
    "CUDA_BATCH_MEM_OP_NODE_PARAMS_st" => "12.2"
);

my %experimental_funcs = (
    "cusolverSpScsrlsvqr" => "6.4.0",
    "cusolverSpDcsrlsvqr" => "6.4.0",
    "cudaEventRecordWithFlags" => "6.4.0",
    "cudaErrorInvalidTexture" => "6.4.0",
    "cudaErrorInvalidChannelDescriptor" => "6.4.0",
    "cudaDeviceGetTexture1DLinearMaxWidth" => "6.4.0",
    "cuStreamBatchMemOp_v2" => "6.4.0",
    "cuStreamBatchMemOp" => "6.4.0",
    "cuGraphExecBatchMemOpNodeSetParams" => "6.4.0",
    "cuGraphBatchMemOpNodeSetParams" => "6.4.0",
    "cuGraphBatchMemOpNodeGetParams" => "6.4.0",
    "cuGraphAddBatchMemOpNode" => "6.4.0",
    "cuEventRecordWithFlags" => "6.4.0",
    "cuDeviceGetTexture1DLinearMaxWidth" => "6.4.0",
    "CUstreamBatchMemOpType_enum" => "6.4.0",
    "CUstreamBatchMemOpType" => "6.4.0",
    "CUstreamBatchMemOpParams_v1" => "6.4.0",
    "CUstreamBatchMemOpParams_union" => "6.4.0",
    "CUstreamBatchMemOpParams" => "6.4.0",
    "CU_STREAM_MEM_OP_WRITE_VALUE_64" => "6.4.0",
    "CU_STREAM_MEM_OP_WRITE_VALUE_32" => "6.4.0",
    "CU_STREAM_MEM_OP_WAIT_VALUE_64" => "6.4.0",
    "CU_STREAM_MEM_OP_WAIT_VALUE_32" => "6.4.0",
    "CU_STREAM_MEM_OP_FLUSH_REMOTE_WRITES" => "6.4.0",
    "CU_STREAM_MEM_OP_BARRIER" => "6.4.0",
    "CU_GRAPH_NODE_TYPE_BATCH_MEM_OP" => "6.4.0",
    "CUDA_BATCH_MEM_OP_NODE_PARAMS_v2_st" => "6.4.0",
    "CUDA_BATCH_MEM_OP_NODE_PARAMS_v2" => "6.4.0",
    "CUDA_BATCH_MEM_OP_NODE_PARAMS_v1_st" => "6.4.0",
    "CUDA_BATCH_MEM_OP_NODE_PARAMS_v1" => "6.4.0",
    "CUDA_BATCH_MEM_OP_NODE_PARAMS_st" => "6.4.0",
    "CUDA_BATCH_MEM_OP_NODE_PARAMS" => "6.4.0"
);

$print_stats = 1 if $examine;
$no_output = 1 if $examine;

# Whitelist of cuda[A-Z] identifiers, which are commonly used in CUDA sources but don't map to any CUDA API:
@whitelist = (
      "cudaCloverField"
    , "cudaColorSpinorField"
    , "cudaCpsGauge"
    , "cudaDevice"
    , "cudaDeviceId"
    , "cudaDevice_t"
    , "cudaDevices"
    , "cudaDimBlock"
    , "cudaDimGrid"
    , "cudaEigValueSet"
    , "cudaEigVecSet"
    , "cudaFatLink"
    , "cudaForce"
    , "cudaForce_ex"
    , "cudaGauge"
    , "cudaGaugeField"
    , "cudaGaugeTemp"
    , "cudaGauge_ex"
    , "cudaGradInput"
    , "cudaGradOutput"
    , "cudaGridDim"
    , "cudaIDs"
    , "cudaInForce"
    , "cudaInGauge"
    , "cudaInGaugeEx"
    , "cudaInLink"
    , "cudaInLinkEx"
    , "cudaIndices"
    , "cudaInput"
    , "cudaLongLink"
    , "cudaLongLinkOprod"
    , "cudaLongLinkOprod_ex"
    , "cudaMemcpys"
    , "cudaMom"
    , "cudaOprod"
    , "cudaOprod_ex"
    , "cudaOutForce"
    , "cudaOutGauge"
    , "cudaOutput"
    , "cudaParam"
    , "cudaQdpGauge"
    , "cudaQuark"
    , "cudaResult"
    , "cudaRitzVectors"
    , "cudaSiteLink"
    , "cudaSpinor"
    , "cudaSpinorOut"
    , "cudaStaple"
    , "cudaULink"
    , "cudaUnitarizedLink"
);

push(@whitelist, split(',', $whitelist));
push(@exclude_dirlist, split(',', $exclude_dirs));
push(@exclude_filelist, split(',', $exclude_files));

# Turn exclude dirlist and exclude_filelist into hash maps
%exclude_dirhash = map { $_ => 1 } @exclude_dirlist;
%exclude_filehash = map { $_ => 1 } @exclude_filelist;

@statNames = ("error", "init", "version", "device", "context", "module", "library", "memory", "virtual_memory", "ordered_memory", "multicast", "unified", "stream", "event", "external_resource", "stream_memory", "execution", "graph", "occupancy", "texture", "surface", "tensor", "peer", "graphics", "driver_entry_point", "cpp", "coredump", "driver_interact", "profiler", "openGL", "D3D9", "D3D10", "D3D11", "VDPAU", "EGL", "thread", "complex", "library", "device_library", "device_function", "device_type", "include", "include_cuda_main_header", "include_cuda_main_header_v2", "type", "literal", "numeric_literal", "define", "extern_shared", "kernel_launch");

sub totalStats {
    my %count = %{shift()};
    my $total = 0;
    foreach $key (keys %count) {
        $total += $count{$key};
    }
    return $total;
}

sub printStats {
    my %counts    = %{shift()};
    my $warnings  = shift();
    my $loc       = shift();
    my $fileName  = shift();
    my $global    = shift();
    my $total     = totalStats(\%counts);
    printf STDERR "\n[HIPIFY] info: file '$fileName' statistics:\n";
    printf STDERR "  CONVERTED refs count: $total\n";
    printf STDERR "  TOTAL lines of code: $loc\n";
    printf STDERR "  WARNINGS: $warnings\n";
    printf STDERR "[HIPIFY] info: CONVERTED refs by names:\n";
    if ($global) {
        foreach my $key (sort keys %tagsToConvertedTagsTotal) {
            printf STDERR "  %s => %s: %d\n", $key, $tagsToConvertedTagsTotal{$key}, $convertedTagsTotal{$tagsToConvertedTagsTotal{$key}};
        }
    } else {
        foreach my $key (sort keys %tagsToConvertedTags) {
            printf STDERR "  %s => %s: %d\n", $key, $tagsToConvertedTags{$key}, $convertedTags{$tagsToConvertedTags{$key}};
        }
    }
}

sub addStats {
    my $dest_ref  = shift();
    my %adder     = %{shift()};
    foreach $key (keys %adder) {
        $dest_ref->{$key} += $adder{$key};
    }
}

sub clearStats {
    my $dest_ref  = shift();
    my @statNames = @{shift()};
    foreach $stat(@statNames) {
        $dest_ref->{$stat} = 0;
    }
}

sub subst {
    my $a = shift();
    my $b = shift();
    my $t = shift();
    my $i = "";
    if ($t eq "include" or $t eq "include_cuda_main_header") {
        $i = "(?<![\\!~`@#\\$%\\^&\\*\\-+=\\[\\]\\(\\)\\{\\}\\.\\,\\?'\\>])";
    }
    if (my $c += s/$i\b$a\b/$b/g) {
        $ft{$t} += $c;
        $tags{$a} +=$c;
        $tagsTotal{$a} +=$c;
        $convertedTags{$b} +=$c;
        $convertedTagsTotal{$b} +=$c;
        $tagsToConvertedTags{$a} = $b;
        $tagsToConvertedTagsTotal{$a} = $b;
    }
}

sub experimentalSubstitutions {
    subst("cuDeviceGetTexture1DLinearMaxWidth", "hipDeviceGetTexture1DLinearMaxWidth", "device");
    subst("cudaDeviceGetTexture1DLinearMaxWidth", "hipDeviceGetTexture1DLinearMaxWidth", "device");
    subst("cuEventRecordWithFlags", "hipEventRecordWithFlags", "event");
    subst("cudaEventRecordWithFlags", "hipEventRecordWithFlags", "event");
    subst("cuStreamBatchMemOp", "hipStreamBatchMemOp", "stream_memory");
    subst("cuStreamBatchMemOp_v2", "hipStreamBatchMemOp", "stream_memory");
    subst("cuGraphAddBatchMemOpNode", "hipGraphAddBatchMemOpNode", "graph");
    subst("cuGraphBatchMemOpNodeGetParams", "hipGraphBatchMemOpNodeGetParams", "graph");
    subst("cuGraphBatchMemOpNodeSetParams", "hipGraphBatchMemOpNodeSetParams", "graph");
    subst("cuGraphExecBatchMemOpNodeSetParams", "hipGraphExecBatchMemOpNodeSetParams", "graph");
    subst("cusolverSpDcsrlsvqr", "hipsolverSpDcsrlsvqr", "library");
    subst("cusolverSpScsrlsvqr", "hipsolverSpScsrlsvqr", "library");
    subst("CUDA_BATCH_MEM_OP_NODE_PARAMS", "hipBatchMemOpNodeParams", "type");
    subst("CUDA_BATCH_MEM_OP_NODE_PARAMS_st", "hipBatchMemOpNodeParams", "type");
    subst("CUDA_BATCH_MEM_OP_NODE_PARAMS_v1", "hipBatchMemOpNodeParams", "type");
    subst("CUDA_BATCH_MEM_OP_NODE_PARAMS_v1_st", "hipBatchMemOpNodeParams", "type");
    subst("CUDA_BATCH_MEM_OP_NODE_PARAMS_v2", "hipBatchMemOpNodeParams", "type");
    subst("CUDA_BATCH_MEM_OP_NODE_PARAMS_v2_st", "hipBatchMemOpNodeParams", "type");
    subst("CUstreamBatchMemOpParams", "hipStreamBatchMemOpParams", "type");
    subst("CUstreamBatchMemOpParams_union", "hipStreamBatchMemOpParams_union", "type");
    subst("CUstreamBatchMemOpParams_v1", "hipStreamBatchMemOpParams", "type");
    subst("CUstreamBatchMemOpType", "hipStreamBatchMemOpType", "type");
    subst("CUstreamBatchMemOpType_enum", "hipStreamBatchMemOpType", "type");
    subst("CU_GRAPH_NODE_TYPE_BATCH_MEM_OP", "hipGraphNodeTypeBatchMemOp", "numeric_literal");
    subst("CU_STREAM_MEM_OP_BARRIER", "hipStreamMemOpBarrier", "numeric_literal");
    subst("CU_STREAM_MEM_OP_FLUSH_REMOTE_WRITES", "hipStreamMemOpFlushRemoteWrites", "numeric_literal");
    subst("CU_STREAM_MEM_OP_WAIT_VALUE_32", "hipStreamMemOpWaitValue32", "numeric_literal");
    subst("CU_STREAM_MEM_OP_WAIT_VALUE_64", "hipStreamMemOpWaitValue64", "numeric_literal");
    subst("CU_STREAM_MEM_OP_WRITE_VALUE_32", "hipStreamMemOpWriteValue32", "numeric_literal");
    subst("CU_STREAM_MEM_OP_WRITE_VALUE_64", "hipStreamMemOpWriteValue64", "numeric_literal");
    subst("cudaErrorInvalidChannelDescriptor", "hipErrorInvalidChannelDescriptor", "numeric_literal");
    subst("cudaErrorInvalidTexture", "hipErrorInvalidTexture", "numeric_literal");
}

sub rocSubstitutions {
    subst("cublasAxpyEx", "rocblas_axpy_ex", "library");
    subst("cublasAxpyEx_64", "rocblas_axpy_ex_64", "library");
    subst("cublasCaxpy", "rocblas_caxpy", "library");
    subst("cublasCaxpy_64", "rocblas_caxpy_64", "library");
    subst("cublasCaxpy_v2", "rocblas_caxpy", "library");
    subst("cublasCaxpy_v2_64", "rocblas_caxpy_64", "library");
    subst("cublasCcopy", "rocblas_ccopy", "library");
    subst("cublasCcopy_64", "rocblas_ccopy_64", "library");
    subst("cublasCcopy_v2", "rocblas_ccopy", "library");
    subst("cublasCcopy_v2_64", "rocblas_ccopy_64", "library");
    subst("cublasCdgmm", "rocblas_cdgmm", "library");
    subst("cublasCdgmm_64", "rocblas_cdgmm_64", "library");
    subst("cublasCdotc", "rocblas_cdotc", "library");
    subst("cublasCdotc_64", "rocblas_cdotc_64", "library");
    subst("cublasCdotc_v2", "rocblas_cdotc", "library");
    subst("cublasCdotc_v2_64", "rocblas_cdotc_64", "library");
    subst("cublasCdotu", "rocblas_cdotu", "library");
    subst("cublasCdotu_64", "rocblas_cdotu_64", "library");
    subst("cublasCdotu_v2", "rocblas_cdotu", "library");
    subst("cublasCdotu_v2_64", "rocblas_cdotu_64", "library");
    subst("cublasCgbmv", "rocblas_cgbmv", "library");
    subst("cublasCgbmv_64", "rocblas_cgbmv_64", "library");
    subst("cublasCgbmv_v2", "rocblas_cgbmv", "library");
    subst("cublasCgbmv_v2_64", "rocblas_cgbmv_64", "library");
    subst("cublasCgeam", "rocblas_cgeam", "library");
    subst("cublasCgeam_64", "rocblas_cgeam_64", "library");
    subst("cublasCgemm", "rocblas_cgemm", "library");
    subst("cublasCgemmBatched", "rocblas_cgemm_batched", "library");
    subst("cublasCgemmBatched_64", "rocblas_cgemm_batched_64", "library");
    subst("cublasCgemmStridedBatched", "rocblas_cgemm_strided_batched", "library");
    subst("cublasCgemmStridedBatched_64", "rocblas_cgemm_strided_batched_64", "library");
    subst("cublasCgemm_64", "rocblas_cgemm_64", "library");
    subst("cublasCgemm_v2", "rocblas_cgemm", "library");
    subst("cublasCgemm_v2_64", "rocblas_cgemm_64", "library");
    subst("cublasCgemv", "rocblas_cgemv", "library");
    subst("cublasCgemvBatched", "rocblas_cgemv_batched", "library");
    subst("cublasCgemvBatched_64", "rocblas_cgemv_batched_64", "library");
    subst("cublasCgemvStridedBatched", "rocblas_cgemv_strided_batched", "library");
    subst("cublasCgemvStridedBatched_64", "rocblas_cgemv_strided_batched_64", "library");
    subst("cublasCgemv_64", "rocblas_cgemv_64", "library");
    subst("cublasCgemv_v2", "rocblas_cgemv", "library");
    subst("cublasCgemv_v2_64", "rocblas_cgemv_64", "library");
    subst("cublasCgerc", "rocblas_cgerc", "library");
    subst("cublasCgerc_64", "rocblas_cgerc_64", "library");
    subst("cublasCgerc_v2", "rocblas_cgerc", "library");
    subst("cublasCgerc_v2_64", "rocblas_cgerc_64", "library");
    subst("cublasCgeru", "rocblas_cgeru", "library");
    subst("cublasCgeru_64", "rocblas_cgeru_64", "library");
    subst("cublasCgeru_v2", "rocblas_cgeru", "library");
    subst("cublasCgeru_v2_64", "rocblas_cgeru_64", "library");
    subst("cublasChbmv", "rocblas_chbmv", "library");
    subst("cublasChbmv_64", "rocblas_chbmv_64", "library");
    subst("cublasChbmv_v2", "rocblas_chbmv", "library");
    subst("cublasChbmv_v2_64", "rocblas_chbmv_64", "library");
    subst("cublasChemm", "rocblas_chemm", "library");
    subst("cublasChemm_64", "rocblas_chemm_64", "library");
    subst("cublasChemm_v2", "rocblas_chemm", "library");
    subst("cublasChemm_v2_64", "rocblas_chemm_64", "library");
    subst("cublasChemv", "rocblas_chemv", "library");
    subst("cublasChemv_64", "rocblas_chemv_64", "library");
    subst("cublasChemv_v2", "rocblas_chemv", "library");
    subst("cublasChemv_v2_64", "rocblas_chemv_64", "library");
    subst("cublasCher", "rocblas_cher", "library");
    subst("cublasCher2", "rocblas_cher2", "library");
    subst("cublasCher2_64", "rocblas_cher2_64", "library");
    subst("cublasCher2_v2", "rocblas_cher2", "library");
    subst("cublasCher2_v2_64", "rocblas_cher2_64", "library");
    subst("cublasCher2k", "rocblas_cher2k", "library");
    subst("cublasCher2k_64", "rocblas_cher2k_64", "library");
    subst("cublasCher2k_v2", "rocblas_cher2k", "library");
    subst("cublasCher2k_v2_64", "rocblas_cher2k_64", "library");
    subst("cublasCher_64", "rocblas_cher_64", "library");
    subst("cublasCher_v2", "rocblas_cher", "library");
    subst("cublasCher_v2_64", "rocblas_cher_64", "library");
    subst("cublasCherk", "rocblas_cherk", "library");
    subst("cublasCherk_64", "rocblas_cherk_64", "library");
    subst("cublasCherk_v2", "rocblas_cherk", "library");
    subst("cublasCherk_v2_64", "rocblas_cherk_64", "library");
    subst("cublasCherkx", "rocblas_cherkx", "library");
    subst("cublasCherkx_64", "rocblas_cherkx_64", "library");
    subst("cublasChpmv", "rocblas_chpmv", "library");
    subst("cublasChpmv_64", "rocblas_chpmv_64", "library");
    subst("cublasChpmv_v2", "rocblas_chpmv", "library");
    subst("cublasChpmv_v2_64", "rocblas_chpmv_64", "library");
    subst("cublasChpr", "rocblas_chpr", "library");
    subst("cublasChpr2", "rocblas_chpr2", "library");
    subst("cublasChpr2_64", "rocblas_chpr2_64", "library");
    subst("cublasChpr2_v2", "rocblas_chpr2", "library");
    subst("cublasChpr2_v2_64", "rocblas_chpr2_64", "library");
    subst("cublasChpr_64", "rocblas_chpr_64", "library");
    subst("cublasChpr_v2", "rocblas_chpr", "library");
    subst("cublasChpr_v2_64", "rocblas_chpr_64", "library");
    subst("cublasCreate", "rocblas_create_handle", "library");
    subst("cublasCreate_v2", "rocblas_create_handle", "library");
    subst("cublasCrot", "rocblas_crot", "library");
    subst("cublasCrot_64", "rocblas_crot_64", "library");
    subst("cublasCrot_v2", "rocblas_crot", "library");
    subst("cublasCrot_v2_64", "rocblas_crot_64", "library");
    subst("cublasCrotg", "rocblas_crotg", "library");
    subst("cublasCrotg_v2", "rocblas_crotg", "library");
    subst("cublasCscal", "rocblas_cscal", "library");
    subst("cublasCscal_64", "rocblas_cscal_64", "library");
    subst("cublasCscal_v2", "rocblas_cscal", "library");
    subst("cublasCscal_v2_64", "rocblas_cscal_64", "library");
    subst("cublasCsrot", "rocblas_csrot", "library");
    subst("cublasCsrot_64", "rocblas_csrot_64", "library");
    subst("cublasCsrot_v2", "rocblas_csrot", "library");
    subst("cublasCsrot_v2_64", "rocblas_csrot_64", "library");
    subst("cublasCsscal", "rocblas_csscal", "library");
    subst("cublasCsscal_64", "rocblas_csscal_64", "library");
    subst("cublasCsscal_v2", "rocblas_csscal", "library");
    subst("cublasCsscal_v2_64", "rocblas_csscal_64", "library");
    subst("cublasCswap", "rocblas_cswap", "library");
    subst("cublasCswap_64", "rocblas_cswap_64", "library");
    subst("cublasCswap_v2", "rocblas_cswap", "library");
    subst("cublasCswap_v2_64", "rocblas_cswap_64", "library");
    subst("cublasCsymm", "rocblas_csymm", "library");
    subst("cublasCsymm_64", "rocblas_csymm_64", "library");
    subst("cublasCsymm_v2", "rocblas_csymm", "library");
    subst("cublasCsymm_v2_64", "rocblas_csymm_64", "library");
    subst("cublasCsymv", "rocblas_csymv", "library");
    subst("cublasCsymv_64", "rocblas_csymv_64", "library");
    subst("cublasCsymv_v2", "rocblas_csymv", "library");
    subst("cublasCsymv_v2_64", "rocblas_csymv_64", "library");
    subst("cublasCsyr", "rocblas_csyr", "library");
    subst("cublasCsyr2", "rocblas_csyr2", "library");
    subst("cublasCsyr2_64", "rocblas_csyr2_64", "library");
    subst("cublasCsyr2_v2", "rocblas_csyr2", "library");
    subst("cublasCsyr2_v2_64", "rocblas_csyr2_64", "library");
    subst("cublasCsyr2k", "rocblas_csyr2k", "library");
    subst("cublasCsyr2k_64", "rocblas_csyr2k_64", "library");
    subst("cublasCsyr2k_v2", "rocblas_csyr2k", "library");
    subst("cublasCsyr2k_v2_64", "rocblas_csyr2k_64", "library");
    subst("cublasCsyr_64", "rocblas_csyr_64", "library");
    subst("cublasCsyr_v2", "rocblas_csyr", "library");
    subst("cublasCsyr_v2_64", "rocblas_csyr_64", "library");
    subst("cublasCsyrk", "rocblas_csyrk", "library");
    subst("cublasCsyrk_64", "rocblas_csyrk_64", "library");
    subst("cublasCsyrk_v2", "rocblas_csyrk", "library");
    subst("cublasCsyrk_v2_64", "rocblas_csyrk_64", "library");
    subst("cublasCsyrkx", "rocblas_csyrkx", "library");
    subst("cublasCsyrkx_64", "rocblas_csyrkx_64", "library");
    subst("cublasCtbmv", "rocblas_ctbmv", "library");
    subst("cublasCtbmv_64", "rocblas_ctbmv_64", "library");
    subst("cublasCtbmv_v2", "rocblas_ctbmv", "library");
    subst("cublasCtbmv_v2_64", "rocblas_ctbmv_64", "library");
    subst("cublasCtbsv", "rocblas_ctbsv", "library");
    subst("cublasCtbsv_64", "rocblas_ctbsv_64", "library");
    subst("cublasCtbsv_v2", "rocblas_ctbsv", "library");
    subst("cublasCtbsv_v2_64", "rocblas_ctbsv_64", "library");
    subst("cublasCtpmv", "rocblas_ctpmv", "library");
    subst("cublasCtpmv_64", "rocblas_ctpmv_64", "library");
    subst("cublasCtpmv_v2", "rocblas_ctpmv", "library");
    subst("cublasCtpmv_v2_64", "rocblas_ctpmv_64", "library");
    subst("cublasCtpsv", "rocblas_ctpsv", "library");
    subst("cublasCtpsv_64", "rocblas_ctpsv_64", "library");
    subst("cublasCtpsv_v2", "rocblas_ctpsv", "library");
    subst("cublasCtpsv_v2_64", "rocblas_ctpsv_64", "library");
    subst("cublasCtrmm", "rocblas_ctrmm", "library");
    subst("cublasCtrmm_64", "rocblas_ctrmm_64", "library");
    subst("cublasCtrmm_v2", "rocblas_ctrmm", "library");
    subst("cublasCtrmm_v2_64", "rocblas_ctrmm_64", "library");
    subst("cublasCtrmv", "rocblas_ctrmv", "library");
    subst("cublasCtrmv_64", "rocblas_ctrmv_64", "library");
    subst("cublasCtrmv_v2", "rocblas_ctrmv", "library");
    subst("cublasCtrmv_v2_64", "rocblas_ctrmv_64", "library");
    subst("cublasCtrsm", "rocblas_ctrsm", "library");
    subst("cublasCtrsmBatched", "rocblas_ctrsm_batched", "library");
    subst("cublasCtrsmBatched_64", "rocblas_ctrsm_batched_64", "library");
    subst("cublasCtrsm_64", "rocblas_ctrsm_64", "library");
    subst("cublasCtrsm_v2", "rocblas_ctrsm", "library");
    subst("cublasCtrsm_v2_64", "rocblas_ctrsm_64", "library");
    subst("cublasCtrsv", "rocblas_ctrsv", "library");
    subst("cublasCtrsv_64", "rocblas_ctrsv_64", "library");
    subst("cublasCtrsv_v2", "rocblas_ctrsv", "library");
    subst("cublasCtrsv_v2_64", "rocblas_ctrsv_64", "library");
    subst("cublasDasum", "rocblas_dasum", "library");
    subst("cublasDasum_64", "rocblas_dasum_64", "library");
    subst("cublasDasum_v2", "rocblas_dasum", "library");
    subst("cublasDasum_v2_64", "rocblas_dasum_64", "library");
    subst("cublasDaxpy", "rocblas_daxpy", "library");
    subst("cublasDaxpy_64", "rocblas_daxpy_64", "library");
    subst("cublasDaxpy_v2", "rocblas_daxpy", "library");
    subst("cublasDaxpy_v2_64", "rocblas_daxpy_64", "library");
    subst("cublasDcopy", "rocblas_dcopy", "library");
    subst("cublasDcopy_64", "rocblas_dcopy_64", "library");
    subst("cublasDcopy_v2", "rocblas_dcopy", "library");
    subst("cublasDcopy_v2_64", "rocblas_dcopy_64", "library");
    subst("cublasDdgmm", "rocblas_ddgmm", "library");
    subst("cublasDdgmm_64", "rocblas_ddgmm_64", "library");
    subst("cublasDdot", "rocblas_ddot", "library");
    subst("cublasDdot_64", "rocblas_ddot_64", "library");
    subst("cublasDdot_v2", "rocblas_ddot", "library");
    subst("cublasDdot_v2_64", "rocblas_ddot_64", "library");
    subst("cublasDestroy", "rocblas_destroy_handle", "library");
    subst("cublasDestroy_v2", "rocblas_destroy_handle", "library");
    subst("cublasDgbmv", "rocblas_dgbmv", "library");
    subst("cublasDgbmv_64", "rocblas_dgbmv_64", "library");
    subst("cublasDgbmv_v2", "rocblas_dgbmv", "library");
    subst("cublasDgbmv_v2_64", "rocblas_dgbmv_64", "library");
    subst("cublasDgeam", "rocblas_dgeam", "library");
    subst("cublasDgeam_64", "rocblas_dgeam_64", "library");
    subst("cublasDgemm", "rocblas_dgemm", "library");
    subst("cublasDgemmBatched", "rocblas_dgemm_batched", "library");
    subst("cublasDgemmBatched_64", "rocblas_dgemm_batched_64", "library");
    subst("cublasDgemmStridedBatched", "rocblas_dgemm_strided_batched", "library");
    subst("cublasDgemmStridedBatched_64", "rocblas_dgemm_strided_batched_64", "library");
    subst("cublasDgemm_64", "rocblas_dgemm_64", "library");
    subst("cublasDgemm_v2", "rocblas_dgemm", "library");
    subst("cublasDgemm_v2_64", "rocblas_dgemm_64", "library");
    subst("cublasDgemv", "rocblas_dgemv", "library");
    subst("cublasDgemvBatched", "rocblas_dgemv_batched", "library");
    subst("cublasDgemvBatched_64", "rocblas_dgemv_batched_64", "library");
    subst("cublasDgemvStridedBatched", "rocblas_dgemv_strided_batched", "library");
    subst("cublasDgemvStridedBatched_64", "rocblas_dgemv_strided_batched_64", "library");
    subst("cublasDgemv_64", "rocblas_dgemv_64", "library");
    subst("cublasDgemv_v2", "rocblas_dgemv", "library");
    subst("cublasDgemv_v2_64", "rocblas_dgemv_64", "library");
    subst("cublasDger", "rocblas_dger", "library");
    subst("cublasDger_64", "rocblas_dger_64", "library");
    subst("cublasDger_v2", "rocblas_dger", "library");
    subst("cublasDger_v2_64", "rocblas_dger_64", "library");
    subst("cublasDnrm2", "rocblas_dnrm2", "library");
    subst("cublasDnrm2_64", "rocblas_dnrm2_64", "library");
    subst("cublasDnrm2_v2", "rocblas_dnrm2", "library");
    subst("cublasDnrm2_v2_64", "rocblas_dnrm2_64", "library");
    subst("cublasDotEx", "rocblas_dot_ex", "library");
    subst("cublasDotEx_64", "rocblas_dot_ex_64", "library");
    subst("cublasDotcEx", "rocblas_dotc_ex", "library");
    subst("cublasDotcEx_64", "rocblas_dotc_ex_64", "library");
    subst("cublasDrot", "rocblas_drot", "library");
    subst("cublasDrot_64", "rocblas_drot_64", "library");
    subst("cublasDrot_v2", "rocblas_drot", "library");
    subst("cublasDrot_v2_64", "rocblas_drot_64", "library");
    subst("cublasDrotg", "rocblas_drotg", "library");
    subst("cublasDrotg_v2", "rocblas_drotg", "library");
    subst("cublasDrotm", "rocblas_drotm", "library");
    subst("cublasDrotm_64", "rocblas_drotm_64", "library");
    subst("cublasDrotm_v2", "rocblas_drotm", "library");
    subst("cublasDrotm_v2_64", "rocblas_drotm_64", "library");
    subst("cublasDrotmg", "rocblas_drotmg", "library");
    subst("cublasDrotmg_v2", "rocblas_drotmg", "library");
    subst("cublasDsbmv", "rocblas_dsbmv", "library");
    subst("cublasDsbmv_64", "rocblas_dsbmv_64", "library");
    subst("cublasDsbmv_v2", "rocblas_dsbmv", "library");
    subst("cublasDsbmv_v2_64", "rocblas_dsbmv_64", "library");
    subst("cublasDscal", "rocblas_dscal", "library");
    subst("cublasDscal_64", "rocblas_dscal_64", "library");
    subst("cublasDscal_v2", "rocblas_dscal", "library");
    subst("cublasDscal_v2_64", "rocblas_dscal_64", "library");
    subst("cublasDspmv", "rocblas_dspmv", "library");
    subst("cublasDspmv_64", "rocblas_dspmv_64", "library");
    subst("cublasDspmv_v2", "rocblas_dspmv", "library");
    subst("cublasDspmv_v2_64", "rocblas_dspmv_64", "library");
    subst("cublasDspr", "rocblas_dspr", "library");
    subst("cublasDspr2", "rocblas_dspr2", "library");
    subst("cublasDspr2_64", "rocblas_dspr2_64", "library");
    subst("cublasDspr2_v2", "rocblas_dspr2", "library");
    subst("cublasDspr2_v2_64", "rocblas_dspr2_64", "library");
    subst("cublasDspr_64", "rocblas_dspr_64", "library");
    subst("cublasDspr_v2", "rocblas_dspr", "library");
    subst("cublasDspr_v2_64", "rocblas_dspr_64", "library");
    subst("cublasDswap", "rocblas_dswap", "library");
    subst("cublasDswap_64", "rocblas_dswap_64", "library");
    subst("cublasDswap_v2", "rocblas_dswap", "library");
    subst("cublasDswap_v2_64", "rocblas_dswap_64", "library");
    subst("cublasDsymm", "rocblas_dsymm", "library");
    subst("cublasDsymm_64", "rocblas_dsymm_64", "library");
    subst("cublasDsymm_v2", "rocblas_dsymm", "library");
    subst("cublasDsymm_v2_64", "rocblas_dsymm_64", "library");
    subst("cublasDsymv", "rocblas_dsymv", "library");
    subst("cublasDsymv_64", "rocblas_dsymv_64", "library");
    subst("cublasDsymv_v2", "rocblas_dsymv", "library");
    subst("cublasDsymv_v2_64", "rocblas_dsymv_64", "library");
    subst("cublasDsyr", "rocblas_dsyr", "library");
    subst("cublasDsyr2", "rocblas_dsyr2", "library");
    subst("cublasDsyr2_64", "rocblas_dsyr2_64", "library");
    subst("cublasDsyr2_v2", "rocblas_dsyr2", "library");
    subst("cublasDsyr2_v2_64", "rocblas_dsyr2_64", "library");
    subst("cublasDsyr2k", "rocblas_dsyr2k", "library");
    subst("cublasDsyr2k_64", "rocblas_dsyr2k_64", "library");
    subst("cublasDsyr2k_v2", "rocblas_dsyr2k", "library");
    subst("cublasDsyr2k_v2_64", "rocblas_dsyr2k_64", "library");
    subst("cublasDsyr_64", "rocblas_dsyr_64", "library");
    subst("cublasDsyr_v2", "rocblas_dsyr", "library");
    subst("cublasDsyr_v2_64", "rocblas_dsyr_64", "library");
    subst("cublasDsyrk", "rocblas_dsyrk", "library");
    subst("cublasDsyrk_64", "rocblas_dsyrk_64", "library");
    subst("cublasDsyrk_v2", "rocblas_dsyrk", "library");
    subst("cublasDsyrk_v2_64", "rocblas_dsyrk_64", "library");
    subst("cublasDsyrkx", "rocblas_dsyrkx", "library");
    subst("cublasDsyrkx_64", "rocblas_dsyrkx_64", "library");
    subst("cublasDtbmv", "rocblas_dtbmv", "library");
    subst("cublasDtbmv_64", "rocblas_dtbmv_64", "library");
    subst("cublasDtbmv_v2", "rocblas_dtbmv", "library");
    subst("cublasDtbmv_v2_64", "rocblas_dtbmv_64", "library");
    subst("cublasDtbsv", "rocblas_dtbsv", "library");
    subst("cublasDtbsv_64", "rocblas_dtbsv_64", "library");
    subst("cublasDtbsv_v2", "rocblas_dtbsv", "library");
    subst("cublasDtbsv_v2_64", "rocblas_dtbsv_64", "library");
    subst("cublasDtpmv", "rocblas_dtpmv", "library");
    subst("cublasDtpmv_64", "rocblas_dtpmv_64", "library");
    subst("cublasDtpmv_v2", "rocblas_dtpmv", "library");
    subst("cublasDtpmv_v2_64", "rocblas_dtpmv_64", "library");
    subst("cublasDtpsv", "rocblas_dtpsv", "library");
    subst("cublasDtpsv_64", "rocblas_dtpsv_64", "library");
    subst("cublasDtpsv_v2", "rocblas_dtpsv", "library");
    subst("cublasDtpsv_v2_64", "rocblas_dtpsv_64", "library");
    subst("cublasDtrmm", "rocblas_dtrmm", "library");
    subst("cublasDtrmm_64", "rocblas_dtrmm_64", "library");
    subst("cublasDtrmm_v2", "rocblas_dtrmm", "library");
    subst("cublasDtrmm_v2_64", "rocblas_dtrmm_64", "library");
    subst("cublasDtrmv", "rocblas_dtrmv", "library");
    subst("cublasDtrmv_64", "rocblas_dtrmv_64", "library");
    subst("cublasDtrmv_v2", "rocblas_dtrmv", "library");
    subst("cublasDtrmv_v2_64", "rocblas_dtrmv_64", "library");
    subst("cublasDtrsm", "rocblas_dtrsm", "library");
    subst("cublasDtrsmBatched", "rocblas_dtrsm_batched", "library");
    subst("cublasDtrsmBatched_64", "rocblas_dtrsm_batched_64", "library");
    subst("cublasDtrsm_64", "rocblas_dtrsm_64", "library");
    subst("cublasDtrsm_v2", "rocblas_dtrsm", "library");
    subst("cublasDtrsm_v2_64", "rocblas_dtrsm_64", "library");
    subst("cublasDtrsv", "rocblas_dtrsv", "library");
    subst("cublasDtrsv_64", "rocblas_dtrsv_64", "library");
    subst("cublasDtrsv_v2", "rocblas_dtrsv", "library");
    subst("cublasDtrsv_v2_64", "rocblas_dtrsv_64", "library");
    subst("cublasDzasum", "rocblas_dzasum", "library");
    subst("cublasDzasum_64", "rocblas_dzasum_64", "library");
    subst("cublasDzasum_v2", "rocblas_dzasum", "library");
    subst("cublasDzasum_v2_64", "rocblas_dzasum_64", "library");
    subst("cublasDznrm2", "rocblas_dznrm2", "library");
    subst("cublasDznrm2_64", "rocblas_dznrm2_64", "library");
    subst("cublasDznrm2_v2", "rocblas_dznrm2", "library");
    subst("cublasDznrm2_v2_64", "rocblas_dznrm2_64", "library");
    subst("cublasGemmBatchedEx", "rocblas_gemm_batched_ex", "library");
    subst("cublasGemmEx", "rocblas_gemm_ex", "library");
    subst("cublasGemmStridedBatchedEx", "rocblas_gemm_strided_batched_ex", "library");
    subst("cublasGetAtomicsMode", "rocblas_get_atomics_mode", "library");
    subst("cublasGetMathMode", "rocblas_get_math_mode", "library");
    subst("cublasGetMatrix", "rocblas_get_matrix", "library");
    subst("cublasGetMatrixAsync", "rocblas_get_matrix_async", "library");
    subst("cublasGetPointerMode", "rocblas_get_pointer_mode", "library");
    subst("cublasGetPointerMode_v2", "rocblas_get_pointer_mode", "library");
    subst("cublasGetStatusString", "rocblas_status_to_string", "library");
    subst("cublasGetStream", "rocblas_get_stream", "library");
    subst("cublasGetStream_v2", "rocblas_get_stream", "library");
    subst("cublasGetVector", "rocblas_get_vector", "library");
    subst("cublasGetVectorAsync", "rocblas_get_vector_async", "library");
    subst("cublasHSHgemvBatched", "rocblas_hshgemv_batched", "library");
    subst("cublasHSHgemvBatched_64", "rocblas_hshgemv_batched_64", "library");
    subst("cublasHSHgemvStridedBatched", "rocblas_hshgemv_strided_batched", "library");
    subst("cublasHSHgemvStridedBatched_64", "rocblas_hshgemv_strided_batched_64", "library");
    subst("cublasHSSgemvBatched", "rocblas_hssgemv_batched", "library");
    subst("cublasHSSgemvBatched_64", "rocblas_hssgemv_batched_64", "library");
    subst("cublasHSSgemvStridedBatched", "rocblas_hssgemv_strided_batched", "library");
    subst("cublasHSSgemvStridedBatched_64", "rocblas_hssgemv_strided_batched_64", "library");
    subst("cublasHgemm", "rocblas_hgemm", "library");
    subst("cublasHgemmBatched", "rocblas_hgemm_batched", "library");
    subst("cublasHgemmBatched_64", "rocblas_hgemm_batched_64", "library");
    subst("cublasHgemmStridedBatched", "rocblas_hgemm_strided_batched", "library");
    subst("cublasHgemmStridedBatched_64", "rocblas_hgemm_strided_batched_64", "library");
    subst("cublasHgemm_64", "rocblas_hgemm_64", "library");
    subst("cublasIcamax", "rocblas_icamax", "library");
    subst("cublasIcamax_64", "rocblas_icamax_64", "library");
    subst("cublasIcamax_v2", "rocblas_icamax", "library");
    subst("cublasIcamax_v2_64", "rocblas_icamax_64", "library");
    subst("cublasIcamin", "rocblas_icamin", "library");
    subst("cublasIcamin_64", "rocblas_icamin_64", "library");
    subst("cublasIcamin_v2", "rocblas_icamin", "library");
    subst("cublasIcamin_v2_64", "rocblas_icamin_64", "library");
    subst("cublasIdamax", "rocblas_idamax", "library");
    subst("cublasIdamax_64", "rocblas_idamax_64", "library");
    subst("cublasIdamax_v2", "rocblas_idamax", "library");
    subst("cublasIdamax_v2_64", "rocblas_idamax_64", "library");
    subst("cublasIdamin", "rocblas_idamin", "library");
    subst("cublasIdamin_64", "rocblas_idamin_64", "library");
    subst("cublasIdamin_v2", "rocblas_idamin", "library");
    subst("cublasIdamin_v2_64", "rocblas_idamin_64", "library");
    subst("cublasInit", "rocblas_initialize", "library");
    subst("cublasIsamax", "rocblas_isamax", "library");
    subst("cublasIsamax_64", "rocblas_isamax_64", "library");
    subst("cublasIsamax_v2", "rocblas_isamax", "library");
    subst("cublasIsamax_v2_64", "rocblas_isamax_64", "library");
    subst("cublasIsamin", "rocblas_isamin", "library");
    subst("cublasIsamin_64", "rocblas_isamin_64", "library");
    subst("cublasIsamin_v2", "rocblas_isamin", "library");
    subst("cublasIsamin_v2_64", "rocblas_isamin_64", "library");
    subst("cublasIzamax", "rocblas_izamax", "library");
    subst("cublasIzamax_64", "rocblas_izamax_64", "library");
    subst("cublasIzamax_v2", "rocblas_izamax", "library");
    subst("cublasIzamax_v2_64", "rocblas_izamax_64", "library");
    subst("cublasIzamin", "rocblas_izamin", "library");
    subst("cublasIzamin_64", "rocblas_izamin_64", "library");
    subst("cublasIzamin_v2", "rocblas_izamin", "library");
    subst("cublasIzamin_v2_64", "rocblas_izamin_64", "library");
    subst("cublasNrm2Ex", "rocblas_nrm2_ex", "library");
    subst("cublasNrm2Ex_64", "rocblas_nrm2_ex_64", "library");
    subst("cublasRotEx", "rocblas_rot_ex", "library");
    subst("cublasRotEx_64", "rocblas_rot_ex_64", "library");
    subst("cublasSasum", "rocblas_sasum", "library");
    subst("cublasSasum_64", "rocblas_sasum_64", "library");
    subst("cublasSasum_v2", "rocblas_sasum", "library");
    subst("cublasSasum_v2_64", "rocblas_sasum_64", "library");
    subst("cublasSaxpy", "rocblas_saxpy", "library");
    subst("cublasSaxpy_64", "rocblas_saxpy_64", "library");
    subst("cublasSaxpy_v2", "rocblas_saxpy", "library");
    subst("cublasSaxpy_v2_64", "rocblas_saxpy_64", "library");
    subst("cublasScalEx", "rocblas_scal_ex", "library");
    subst("cublasScalEx_64", "rocblas_scal_ex_64", "library");
    subst("cublasScasum", "rocblas_scasum", "library");
    subst("cublasScasum_64", "rocblas_scasum_64", "library");
    subst("cublasScasum_v2", "rocblas_scasum", "library");
    subst("cublasScasum_v2_64", "rocblas_scasum_64", "library");
    subst("cublasScnrm2", "rocblas_scnrm2", "library");
    subst("cublasScnrm2_64", "rocblas_scnrm2_64", "library");
    subst("cublasScnrm2_v2", "rocblas_scnrm2", "library");
    subst("cublasScnrm2_v2_64", "rocblas_scnrm2_64", "library");
    subst("cublasScopy", "rocblas_scopy", "library");
    subst("cublasScopy_64", "rocblas_scopy_64", "library");
    subst("cublasScopy_v2", "rocblas_scopy", "library");
    subst("cublasScopy_v2_64", "rocblas_scopy_64", "library");
    subst("cublasSdgmm", "rocblas_sdgmm", "library");
    subst("cublasSdgmm_64", "rocblas_sdgmm_64", "library");
    subst("cublasSdot", "rocblas_sdot", "library");
    subst("cublasSdot_64", "rocblas_sdot_64", "library");
    subst("cublasSdot_v2", "rocblas_sdot", "library");
    subst("cublasSdot_v2_64", "rocblas_sdot_64", "library");
    subst("cublasSetAtomicsMode", "rocblas_set_atomics_mode", "library");
    subst("cublasSetMathMode", "rocblas_set_math_mode", "library");
    subst("cublasSetMatrix", "rocblas_set_matrix", "library");
    subst("cublasSetMatrixAsync", "rocblas_set_matrix_async", "library");
    subst("cublasSetPointerMode", "rocblas_set_pointer_mode", "library");
    subst("cublasSetPointerMode_v2", "rocblas_set_pointer_mode", "library");
    subst("cublasSetStream", "rocblas_set_stream", "library");
    subst("cublasSetStream_v2", "rocblas_set_stream", "library");
    subst("cublasSetVector", "rocblas_set_vector", "library");
    subst("cublasSetVectorAsync", "rocblas_set_vector_async", "library");
    subst("cublasSgbmv", "rocblas_sgbmv", "library");
    subst("cublasSgbmv_64", "rocblas_sgbmv_64", "library");
    subst("cublasSgbmv_v2", "rocblas_sgbmv", "library");
    subst("cublasSgbmv_v2_64", "rocblas_sgbmv_64", "library");
    subst("cublasSgeam", "rocblas_sgeam", "library");
    subst("cublasSgeam_64", "rocblas_sgeam_64", "library");
    subst("cublasSgemm", "rocblas_sgemm", "library");
    subst("cublasSgemmBatched", "rocblas_sgemm_batched", "library");
    subst("cublasSgemmBatched_64", "rocblas_sgemm_batched_64", "library");
    subst("cublasSgemmStridedBatched", "rocblas_sgemm_strided_batched", "library");
    subst("cublasSgemmStridedBatched_64", "rocblas_sgemm_strided_batched_64", "library");
    subst("cublasSgemm_64", "rocblas_sgemm_64", "library");
    subst("cublasSgemm_v2", "rocblas_sgemm", "library");
    subst("cublasSgemm_v2_64", "rocblas_sgemm_64", "library");
    subst("cublasSgemv", "rocblas_sgemv", "library");
    subst("cublasSgemvBatched", "rocblas_sgemv_batched", "library");
    subst("cublasSgemvBatched_64", "rocblas_sgemv_batched_64", "library");
    subst("cublasSgemvStridedBatched", "rocblas_sgemv_strided_batched", "library");
    subst("cublasSgemvStridedBatched_64", "rocblas_sgemv_strided_batched_64", "library");
    subst("cublasSgemv_64", "rocblas_sgemv_64", "library");
    subst("cublasSgemv_v2", "rocblas_sgemv", "library");
    subst("cublasSgemv_v2_64", "rocblas_sgemv_64", "library");
    subst("cublasSger", "rocblas_sger", "library");
    subst("cublasSger_64", "rocblas_sger_64", "library");
    subst("cublasSger_v2", "rocblas_sger", "library");
    subst("cublasSger_v2_64", "rocblas_sger_64", "library");
    subst("cublasSnrm2", "rocblas_snrm2", "library");
    subst("cublasSnrm2_64", "rocblas_snrm2_64", "library");
    subst("cublasSnrm2_v2", "rocblas_snrm2", "library");
    subst("cublasSnrm2_v2_64", "rocblas_snrm2_64", "library");
    subst("cublasSrot", "rocblas_srot", "library");
    subst("cublasSrot_64", "rocblas_srot_64", "library");
    subst("cublasSrot_v2", "rocblas_srot", "library");
    subst("cublasSrot_v2_64", "rocblas_srot_64", "library");
    subst("cublasSrotg", "rocblas_srotg", "library");
    subst("cublasSrotg_v2", "rocblas_srotg", "library");
    subst("cublasSrotm", "rocblas_srotm", "library");
    subst("cublasSrotm_64", "rocblas_srotm_64", "library");
    subst("cublasSrotm_v2", "rocblas_srotm", "library");
    subst("cublasSrotm_v2_64", "rocblas_srotm_64", "library");
    subst("cublasSrotmg", "rocblas_srotmg", "library");
    subst("cublasSrotmg_v2", "rocblas_srotmg", "library");
    subst("cublasSsbmv", "rocblas_ssbmv", "library");
    subst("cublasSsbmv_64", "rocblas_ssbmv_64", "library");
    subst("cublasSsbmv_v2", "rocblas_ssbmv", "library");
    subst("cublasSsbmv_v2_64", "rocblas_ssbmv_64", "library");
    subst("cublasSscal", "rocblas_sscal", "library");
    subst("cublasSscal_64", "rocblas_sscal_64", "library");
    subst("cublasSscal_v2", "rocblas_sscal", "library");
    subst("cublasSscal_v2_64", "rocblas_sscal_64", "library");
    subst("cublasSspmv", "rocblas_sspmv", "library");
    subst("cublasSspmv_64", "rocblas_sspmv_64", "library");
    subst("cublasSspmv_v2", "rocblas_sspmv", "library");
    subst("cublasSspmv_v2_64", "rocblas_sspmv_64", "library");
    subst("cublasSspr", "rocblas_sspr", "library");
    subst("cublasSspr2", "rocblas_sspr2", "library");
    subst("cublasSspr2_64", "rocblas_sspr2_64", "library");
    subst("cublasSspr2_v2", "rocblas_sspr2", "library");
    subst("cublasSspr2_v2_64", "rocblas_sspr2_64", "library");
    subst("cublasSspr_64", "rocblas_sspr_64", "library");
    subst("cublasSspr_v2", "rocblas_sspr", "library");
    subst("cublasSspr_v2_64", "rocblas_sspr_64", "library");
    subst("cublasSswap", "rocblas_sswap", "library");
    subst("cublasSswap_64", "rocblas_sswap_64", "library");
    subst("cublasSswap_v2", "rocblas_sswap", "library");
    subst("cublasSswap_v2_64", "rocblas_sswap_64", "library");
    subst("cublasSsymm", "rocblas_ssymm", "library");
    subst("cublasSsymm_64", "rocblas_ssymm_64", "library");
    subst("cublasSsymm_v2", "rocblas_ssymm", "library");
    subst("cublasSsymm_v2_64", "rocblas_ssymm_64", "library");
    subst("cublasSsymv", "rocblas_ssymv", "library");
    subst("cublasSsymv_64", "rocblas_ssymv_64", "library");
    subst("cublasSsymv_v2", "rocblas_ssymv", "library");
    subst("cublasSsymv_v2_64", "rocblas_ssymv_64", "library");
    subst("cublasSsyr", "rocblas_ssyr", "library");
    subst("cublasSsyr2", "rocblas_ssyr2", "library");
    subst("cublasSsyr2_64", "rocblas_ssyr2_64", "library");
    subst("cublasSsyr2_v2", "rocblas_ssyr2", "library");
    subst("cublasSsyr2_v2_64", "rocblas_ssyr2_64", "library");
    subst("cublasSsyr2k", "rocblas_ssyr2k", "library");
    subst("cublasSsyr2k_64", "rocblas_ssyr2k_64", "library");
    subst("cublasSsyr2k_v2", "rocblas_ssyr2k", "library");
    subst("cublasSsyr2k_v2_64", "rocblas_ssyr2k_64", "library");
    subst("cublasSsyr_64", "rocblas_ssyr_64", "library");
    subst("cublasSsyr_v2", "rocblas_ssyr", "library");
    subst("cublasSsyr_v2_64", "rocblas_ssyr_64", "library");
    subst("cublasSsyrk", "rocblas_ssyrk", "library");
    subst("cublasSsyrk_64", "rocblas_ssyrk_64", "library");
    subst("cublasSsyrk_v2", "rocblas_ssyrk", "library");
    subst("cublasSsyrk_v2_64", "rocblas_ssyrk_64", "library");
    subst("cublasSsyrkx", "rocblas_ssyrkx", "library");
    subst("cublasSsyrkx_64", "rocblas_ssyrkx_64", "library");
    subst("cublasStbmv", "rocblas_stbmv", "library");
    subst("cublasStbmv_64", "rocblas_stbmv_64", "library");
    subst("cublasStbmv_v2", "rocblas_stbmv", "library");
    subst("cublasStbmv_v2_64", "rocblas_stbmv_64", "library");
    subst("cublasStbsv", "rocblas_stbsv", "library");
    subst("cublasStbsv_64", "rocblas_stbsv_64", "library");
    subst("cublasStbsv_v2", "rocblas_stbsv", "library");
    subst("cublasStbsv_v2_64", "rocblas_stbsv_64", "library");
    subst("cublasStpmv", "rocblas_stpmv", "library");
    subst("cublasStpmv_64", "rocblas_stpmv_64", "library");
    subst("cublasStpmv_v2", "rocblas_stpmv", "library");
    subst("cublasStpmv_v2_64", "rocblas_stpmv_64", "library");
    subst("cublasStpsv", "rocblas_stpsv", "library");
    subst("cublasStpsv_64", "rocblas_stpsv_64", "library");
    subst("cublasStpsv_v2", "rocblas_stpsv", "library");
    subst("cublasStpsv_v2_64", "rocblas_stpsv_64", "library");
    subst("cublasStrmm", "rocblas_strmm", "library");
    subst("cublasStrmm_64", "rocblas_strmm_64", "library");
    subst("cublasStrmm_v2", "rocblas_strmm", "library");
    subst("cublasStrmm_v2_64", "rocblas_strmm_64", "library");
    subst("cublasStrmv", "rocblas_strmv", "library");
    subst("cublasStrmv_64", "rocblas_strmv_64", "library");
    subst("cublasStrmv_v2", "rocblas_strmv", "library");
    subst("cublasStrmv_v2_64", "rocblas_strmv_64", "library");
    subst("cublasStrsm", "rocblas_strsm", "library");
    subst("cublasStrsmBatched", "rocblas_strsm_batched", "library");
    subst("cublasStrsmBatched_64", "rocblas_strsm_batched_64", "library");
    subst("cublasStrsm_64", "rocblas_strsm_64", "library");
    subst("cublasStrsm_v2", "rocblas_strsm", "library");
    subst("cublasStrsm_v2_64", "rocblas_strsm_64", "library");
    subst("cublasStrsv", "rocblas_strsv", "library");
    subst("cublasStrsv_64", "rocblas_strsv_64", "library");
    subst("cublasStrsv_v2", "rocblas_strsv", "library");
    subst("cublasStrsv_v2_64", "rocblas_strsv_64", "library");
    subst("cublasTSSgemvBatched", "rocblas_tssgemv_batched", "library");
    subst("cublasTSSgemvBatched_64", "rocblas_tssgemv_batched_64", "library");
    subst("cublasTSSgemvStridedBatched", "rocblas_tssgemv_strided_batched", "library");
    subst("cublasTSSgemvStridedBatched_64", "rocblas_tssgemv_strided_batched_64", "library");
    subst("cublasTSTgemvBatched", "rocblas_tstgemv_batched", "library");
    subst("cublasTSTgemvBatched_64", "rocblas_tstgemv_batched_64", "library");
    subst("cublasTSTgemvStridedBatched", "rocblas_tstgemv_strided_batched", "library");
    subst("cublasTSTgemvStridedBatched_64", "rocblas_tstgemv_strided_batched_64", "library");
    subst("cublasZaxpy", "rocblas_zaxpy", "library");
    subst("cublasZaxpy_64", "rocblas_zaxpy_64", "library");
    subst("cublasZaxpy_v2", "rocblas_zaxpy", "library");
    subst("cublasZaxpy_v2_64", "rocblas_zaxpy_64", "library");
    subst("cublasZcopy", "rocblas_zcopy", "library");
    subst("cublasZcopy_64", "rocblas_zcopy_64", "library");
    subst("cublasZcopy_v2", "rocblas_zcopy", "library");
    subst("cublasZcopy_v2_64", "rocblas_zcopy_64", "library");
    subst("cublasZdgmm", "rocblas_zdgmm", "library");
    subst("cublasZdgmm_64", "rocblas_zdgmm_64", "library");
    subst("cublasZdotc", "rocblas_zdotc", "library");
    subst("cublasZdotc_64", "rocblas_zdotc_64", "library");
    subst("cublasZdotc_v2", "rocblas_zdotc", "library");
    subst("cublasZdotc_v2_64", "rocblas_zdotc_64", "library");
    subst("cublasZdotu", "rocblas_zdotu", "library");
    subst("cublasZdotu_64", "rocblas_zdotu_64", "library");
    subst("cublasZdotu_v2", "rocblas_zdotu", "library");
    subst("cublasZdotu_v2_64", "rocblas_zdotu_64", "library");
    subst("cublasZdrot", "rocblas_zdrot", "library");
    subst("cublasZdrot_64", "rocblas_zdrot_64", "library");
    subst("cublasZdrot_v2", "rocblas_zdrot", "library");
    subst("cublasZdrot_v2_64", "rocblas_zdrot_64", "library");
    subst("cublasZdscal", "rocblas_zdscal", "library");
    subst("cublasZdscal_64", "rocblas_zdscal_64", "library");
    subst("cublasZdscal_v2", "rocblas_zdscal", "library");
    subst("cublasZdscal_v2_64", "rocblas_zdscal_64", "library");
    subst("cublasZgbmv", "rocblas_zgbmv", "library");
    subst("cublasZgbmv_64", "rocblas_zgbmv_64", "library");
    subst("cublasZgbmv_v2", "rocblas_zgbmv", "library");
    subst("cublasZgbmv_v2_64", "rocblas_zgbmv_64", "library");
    subst("cublasZgeam", "rocblas_zgeam", "library");
    subst("cublasZgeam_64", "rocblas_zgeam_64", "library");
    subst("cublasZgemm", "rocblas_zgemm", "library");
    subst("cublasZgemmBatched", "rocblas_zgemm_batched", "library");
    subst("cublasZgemmBatched_64", "rocblas_zgemm_batched_64", "library");
    subst("cublasZgemmStridedBatched", "rocblas_zgemm_strided_batched", "library");
    subst("cublasZgemmStridedBatched_64", "rocblas_zgemm_strided_batched_64", "library");
    subst("cublasZgemm_64", "rocblas_zgemm_64", "library");
    subst("cublasZgemm_v2", "rocblas_zgemm", "library");
    subst("cublasZgemm_v2_64", "rocblas_zgemm_64", "library");
    subst("cublasZgemv", "rocblas_zgemv", "library");
    subst("cublasZgemvBatched", "rocblas_zgemv_batched", "library");
    subst("cublasZgemvBatched_64", "rocblas_zgemv_batched_64", "library");
    subst("cublasZgemvStridedBatched", "rocblas_zgemv_strided_batched", "library");
    subst("cublasZgemvStridedBatched_64", "rocblas_zgemv_strided_batched_64", "library");
    subst("cublasZgemv_64", "rocblas_zgemv_64", "library");
    subst("cublasZgemv_v2", "rocblas_zgemv", "library");
    subst("cublasZgemv_v2_64", "rocblas_zgemv_64", "library");
    subst("cublasZgerc", "rocblas_zgerc", "library");
    subst("cublasZgerc_64", "rocblas_zgerc_64", "library");
    subst("cublasZgerc_v2", "rocblas_zgerc", "library");
    subst("cublasZgerc_v2_64", "rocblas_zgerc_64", "library");
    subst("cublasZgeru", "rocblas_zgeru", "library");
    subst("cublasZgeru_64", "rocblas_zgeru_64", "library");
    subst("cublasZgeru_v2", "rocblas_zgeru", "library");
    subst("cublasZgeru_v2_64", "rocblas_zgeru_64", "library");
    subst("cublasZhbmv", "rocblas_zhbmv", "library");
    subst("cublasZhbmv_64", "rocblas_zhbmv_64", "library");
    subst("cublasZhbmv_v2", "rocblas_zhbmv", "library");
    subst("cublasZhbmv_v2_64", "rocblas_zhbmv_64", "library");
    subst("cublasZhemm", "rocblas_zhemm", "library");
    subst("cublasZhemm_64", "rocblas_zhemm_64", "library");
    subst("cublasZhemm_v2", "rocblas_zhemm", "library");
    subst("cublasZhemm_v2_64", "rocblas_zhemm_64", "library");
    subst("cublasZhemv", "rocblas_zhemv", "library");
    subst("cublasZhemv_64", "rocblas_zhemv_64", "library");
    subst("cublasZhemv_v2", "rocblas_zhemv", "library");
    subst("cublasZhemv_v2_64", "rocblas_zhemv_64", "library");
    subst("cublasZher", "rocblas_zher", "library");
    subst("cublasZher2", "rocblas_zher2", "library");
    subst("cublasZher2_64", "rocblas_zher2_64", "library");
    subst("cublasZher2_v2", "rocblas_zher2", "library");
    subst("cublasZher2_v2_64", "rocblas_zher2_64", "library");
    subst("cublasZher2k", "rocblas_zher2k", "library");
    subst("cublasZher2k_64", "rocblas_zher2k_64", "library");
    subst("cublasZher2k_v2", "rocblas_zher2k", "library");
    subst("cublasZher2k_v2_64", "rocblas_zher2k_64", "library");
    subst("cublasZher_64", "rocblas_zher_64", "library");
    subst("cublasZher_v2", "rocblas_zher", "library");
    subst("cublasZher_v2_64", "rocblas_zher_64", "library");
    subst("cublasZherk", "rocblas_zherk", "library");
    subst("cublasZherk_64", "rocblas_zherk_64", "library");
    subst("cublasZherk_v2", "rocblas_zherk", "library");
    subst("cublasZherk_v2_64", "rocblas_zherk_64", "library");
    subst("cublasZherkx", "rocblas_zherkx", "library");
    subst("cublasZherkx_64", "rocblas_zherkx_64", "library");
    subst("cublasZhpmv", "rocblas_zhpmv", "library");
    subst("cublasZhpmv_64", "rocblas_zhpmv_64", "library");
    subst("cublasZhpmv_v2", "rocblas_zhpmv", "library");
    subst("cublasZhpmv_v2_64", "rocblas_zhpmv_64", "library");
    subst("cublasZhpr", "rocblas_zhpr", "library");
    subst("cublasZhpr2", "rocblas_zhpr2", "library");
    subst("cublasZhpr2_64", "rocblas_zhpr2_64", "library");
    subst("cublasZhpr2_v2", "rocblas_zhpr2", "library");
    subst("cublasZhpr2_v2_64", "rocblas_zhpr2_64", "library");
    subst("cublasZhpr_64", "rocblas_zhpr_64", "library");
    subst("cublasZhpr_v2", "rocblas_zhpr", "library");
    subst("cublasZhpr_v2_64", "rocblas_zhpr_64", "library");
    subst("cublasZrot", "rocblas_zrot", "library");
    subst("cublasZrot_64", "rocblas_zrot_64", "library");
    subst("cublasZrot_v2", "rocblas_zrot", "library");
    subst("cublasZrot_v2_64", "rocblas_zrot_64", "library");
    subst("cublasZrotg", "rocblas_zrotg", "library");
    subst("cublasZrotg_v2", "rocblas_zrotg", "library");
    subst("cublasZscal", "rocblas_zscal", "library");
    subst("cublasZscal_64", "rocblas_zscal_64", "library");
    subst("cublasZscal_v2", "rocblas_zscal", "library");
    subst("cublasZscal_v2_64", "rocblas_zscal_64", "library");
    subst("cublasZswap", "rocblas_zswap", "library");
    subst("cublasZswap_64", "rocblas_zswap_64", "library");
    subst("cublasZswap_v2", "rocblas_zswap", "library");
    subst("cublasZswap_v2_64", "rocblas_zswap_64", "library");
    subst("cublasZsymm", "rocblas_zsymm", "library");
    subst("cublasZsymm_64", "rocblas_zsymm_64", "library");
    subst("cublasZsymm_v2", "rocblas_zsymm", "library");
    subst("cublasZsymm_v2_64", "rocblas_zsymm_64", "library");
    subst("cublasZsymv", "rocblas_zsymv", "library");
    subst("cublasZsymv_64", "rocblas_zsymv_64", "library");
    subst("cublasZsymv_v2", "rocblas_zsymv", "library");
    subst("cublasZsymv_v2_64", "rocblas_zsymv_64", "library");
    subst("cublasZsyr", "rocblas_zsyr", "library");
    subst("cublasZsyr2", "rocblas_zsyr2", "library");
    subst("cublasZsyr2_64", "rocblas_zsyr2_64", "library");
    subst("cublasZsyr2_v2", "rocblas_zsyr2", "library");
    subst("cublasZsyr2_v2_64", "rocblas_zsyr2_64", "library");
    subst("cublasZsyr2k", "rocblas_zsyr2k", "library");
    subst("cublasZsyr2k_64", "rocblas_zsyr2k_64", "library");
    subst("cublasZsyr2k_v2", "rocblas_zsyr2k", "library");
    subst("cublasZsyr2k_v2_64", "rocblas_zsyr2k_64", "library");
    subst("cublasZsyr_64", "rocblas_zsyr_64", "library");
    subst("cublasZsyr_v2", "rocblas_zsyr", "library");
    subst("cublasZsyr_v2_64", "rocblas_zsyr_64", "library");
    subst("cublasZsyrk", "rocblas_zsyrk", "library");
    subst("cublasZsyrk_64", "rocblas_zsyrk_64", "library");
    subst("cublasZsyrk_v2", "rocblas_zsyrk", "library");
    subst("cublasZsyrk_v2_64", "rocblas_zsyrk_64", "library");
    subst("cublasZsyrkx", "rocblas_zsyrkx", "library");
    subst("cublasZsyrkx_64", "rocblas_zsyrkx_64", "library");
    subst("cublasZtbmv", "rocblas_ztbmv", "library");
    subst("cublasZtbmv_64", "rocblas_ztbmv_64", "library");
    subst("cublasZtbmv_v2", "rocblas_ztbmv", "library");
    subst("cublasZtbmv_v2_64", "rocblas_ztbmv_64", "library");
    subst("cublasZtbsv", "rocblas_ztbsv", "library");
    subst("cublasZtbsv_64", "rocblas_ztbsv_64", "library");
    subst("cublasZtbsv_v2", "rocblas_ztbsv", "library");
    subst("cublasZtbsv_v2_64", "rocblas_ztbsv_64", "library");
    subst("cublasZtpmv", "rocblas_ztpmv", "library");
    subst("cublasZtpmv_64", "rocblas_ztpmv_64", "library");
    subst("cublasZtpmv_v2", "rocblas_ztpmv", "library");
    subst("cublasZtpmv_v2_64", "rocblas_ztpmv_64", "library");
    subst("cublasZtpsv", "rocblas_ztpsv", "library");
    subst("cublasZtpsv_64", "rocblas_ztpsv_64", "library");
    subst("cublasZtpsv_v2", "rocblas_ztpsv", "library");
    subst("cublasZtpsv_v2_64", "rocblas_ztpsv_64", "library");
    subst("cublasZtrmm", "rocblas_ztrmm", "library");
    subst("cublasZtrmm_64", "rocblas_ztrmm_64", "library");
    subst("cublasZtrmm_v2", "rocblas_ztrmm", "library");
    subst("cublasZtrmm_v2_64", "rocblas_ztrmm_64", "library");
    subst("cublasZtrmv", "rocblas_ztrmv", "library");
    subst("cublasZtrmv_64", "rocblas_ztrmv_64", "library");
    subst("cublasZtrmv_v2", "rocblas_ztrmv", "library");
    subst("cublasZtrmv_v2_64", "rocblas_ztrmv_64", "library");
    subst("cublasZtrsm", "rocblas_ztrsm", "library");
    subst("cublasZtrsmBatched", "rocblas_ztrsm_batched", "library");
    subst("cublasZtrsmBatched_64", "rocblas_ztrsm_batched_64", "library");
    subst("cublasZtrsm_64", "rocblas_ztrsm_64", "library");
    subst("cublasZtrsm_v2", "rocblas_ztrsm", "library");
    subst("cublasZtrsm_v2_64", "rocblas_ztrsm_64", "library");
    subst("cublasZtrsv", "rocblas_ztrsv", "library");
    subst("cublasZtrsv_64", "rocblas_ztrsv_64", "library");
    subst("cublasZtrsv_v2", "rocblas_ztrsv", "library");
    subst("cublasZtrsv_v2_64", "rocblas_ztrsv_64", "library");
    subst("curandCreateGenerator", "rocrand_create_generator", "library");
    subst("curandCreateGeneratorHost", "rocrand_create_generator_host_blocking", "library");
    subst("curandCreatePoissonDistribution", "rocrand_create_poisson_distribution", "library");
    subst("curandDestroyDistribution", "rocrand_destroy_discrete_distribution", "library");
    subst("curandDestroyGenerator", "rocrand_destroy_generator", "library");
    subst("curandGenerate", "rocrand_generate", "library");
    subst("curandGenerateLogNormal", "rocrand_generate_log_normal", "library");
    subst("curandGenerateLogNormalDouble", "rocrand_generate_log_normal_double", "library");
    subst("curandGenerateLongLong", "rocrand_generate_long_long", "library");
    subst("curandGenerateNormal", "rocrand_generate_normal", "library");
    subst("curandGenerateNormalDouble", "rocrand_generate_normal_double", "library");
    subst("curandGeneratePoisson", "rocrand_generate_poisson", "library");
    subst("curandGenerateSeeds", "rocrand_initialize_generator", "library");
    subst("curandGenerateUniform", "rocrand_generate_uniform", "library");
    subst("curandGenerateUniformDouble", "rocrand_generate_uniform_double", "library");
    subst("curandGetDirectionVectors32", "rocrand_get_direction_vectors32", "library");
    subst("curandGetDirectionVectors64", "rocrand_get_direction_vectors64", "library");
    subst("curandGetScrambleConstants32", "rocrand_get_scramble_constants32", "library");
    subst("curandGetScrambleConstants64", "rocrand_get_scramble_constants64", "library");
    subst("curandGetVersion", "rocrand_get_version", "library");
    subst("curandMakeMTGP32Constants", "rocrand_make_constant", "library");
    subst("curandMakeMTGP32KernelState", "rocrand_make_state_mtgp32", "library");
    subst("curandSetGeneratorOffset", "rocrand_set_offset", "library");
    subst("curandSetGeneratorOrdering", "rocrand_set_ordering", "library");
    subst("curandSetPseudoRandomGeneratorSeed", "rocrand_set_seed", "library");
    subst("curandSetQuasiRandomGeneratorDimensions", "rocrand_set_quasi_random_generator_dimensions", "library");
    subst("curandSetStream", "rocrand_set_stream", "library");
    subst("cusolverDnCpotrf", "rocsolver_cpotrf", "library");
    subst("cusolverDnCreate", "rocblas_create_handle", "library");
    subst("cusolverDnDestroy", "rocblas_destroy_handle", "library");
    subst("cusolverDnDpotrf", "rocsolver_dpotrf", "library");
    subst("cusolverDnGetStream", "rocblas_get_stream", "library");
    subst("cusolverDnSetStream", "rocblas_set_stream", "library");
    subst("cusolverDnSpotrf", "rocsolver_spotrf", "library");
    subst("cusolverDnZpotrf", "rocsolver_zpotrf", "library");
    subst("cusparseAxpby", "rocsparse_axpby", "library");
    subst("cusparseBlockedEllGet", "rocsparse_bell_get", "library");
    subst("cusparseCaxpyi", "rocsparse_caxpyi", "library");
    subst("cusparseCbsr2csr", "rocsparse_cbsr2csr", "library");
    subst("cusparseCbsric02", "rocsparse_cbsric0", "library");
    subst("cusparseCbsric02_analysis", "rocsparse_cbsric0_analysis", "library");
    subst("cusparseCbsric02_bufferSize", "rocsparse_cbsric0_buffer_size", "library");
    subst("cusparseCbsrilu02", "rocsparse_cbsrilu0", "library");
    subst("cusparseCbsrilu02_analysis", "rocsparse_cbsrilu0_analysis", "library");
    subst("cusparseCbsrilu02_bufferSize", "rocsparse_cbsrilu0_buffer_size", "library");
    subst("cusparseCbsrilu02_numericBoost", "rocsparse_dcbsrilu0_numeric_boost", "library");
    subst("cusparseCbsrmm", "rocsparse_cbsrmm", "library");
    subst("cusparseCbsrmv", "rocsparse_cbsrmv", "library");
    subst("cusparseCbsrsm2_analysis", "rocsparse_cbsrsm_analysis", "library");
    subst("cusparseCbsrsm2_bufferSize", "rocsparse_cbsrsm_buffer_size", "library");
    subst("cusparseCbsrsm2_solve", "rocsparse_cbsrsm_solve", "library");
    subst("cusparseCbsrsv2_analysis", "rocsparse_cbsrsv_analysis", "library");
    subst("cusparseCbsrsv2_bufferSize", "rocsparse_cbsrsv_buffer_size", "library");
    subst("cusparseCbsrsv2_bufferSizeExt", "rocsparse_cbsrsv_buffer_size", "library");
    subst("cusparseCbsrsv2_solve", "rocsparse_cbsrsv_solve", "library");
    subst("cusparseCbsrxmv", "rocsparse_cbsrxmv", "library");
    subst("cusparseCcsc2dense", "rocsparse_ccsc2dense", "library");
    subst("cusparseCcsr2bsr", "rocsparse_ccsr2bsr", "library");
    subst("cusparseCcsr2csr_compress", "rocsparse_ccsr2csr_compress", "library");
    subst("cusparseCcsr2dense", "rocsparse_ccsr2dense", "library");
    subst("cusparseCcsr2gebsr", "rocsparse_ccsr2gebsr", "library");
    subst("cusparseCcsr2gebsr_bufferSize", "rocsparse_ccsr2gebsr_buffer_size", "library");
    subst("cusparseCcsr2hyb", "rocsparse_ccsr2hyb", "library");
    subst("cusparseCcsrcolor", "rocsparse_ccsrcolor", "library");
    subst("cusparseCcsrgeam", "rocsparse_ccsrgeam", "library");
    subst("cusparseCcsrgeam2", "rocsparse_ccsrgeam", "library");
    subst("cusparseCcsrgemm2", "rocsparse_ccsrgemm", "library");
    subst("cusparseCcsrgemm2_bufferSizeExt", "rocsparse_ccsrgemm_buffer_size", "library");
    subst("cusparseCcsric02", "rocsparse_ccsric0", "library");
    subst("cusparseCcsric02_analysis", "rocsparse_ccsric0_analysis", "library");
    subst("cusparseCcsric02_bufferSize", "rocsparse_ccsric0_buffer_size", "library");
    subst("cusparseCcsric02_bufferSizeExt", "rocsparse_ccsric0_buffer_size", "library");
    subst("cusparseCcsrilu02", "rocsparse_ccsrilu0", "library");
    subst("cusparseCcsrilu02_analysis", "rocsparse_ccsrilu0_analysis", "library");
    subst("cusparseCcsrilu02_bufferSize", "rocsparse_ccsrilu0_buffer_size", "library");
    subst("cusparseCcsrilu02_bufferSizeExt", "rocsparse_ccsrilu0_buffer_size", "library");
    subst("cusparseCcsrilu02_numericBoost", "rocsparse_dccsrilu0_numeric_boost", "library");
    subst("cusparseCcsrmm", "rocsparse_ccsrmm", "library");
    subst("cusparseCcsrmm2", "rocsparse_ccsrmm", "library");
    subst("cusparseCcsrmv", "rocsparse_ccsrmv", "library");
    subst("cusparseCcsrsm2_analysis", "rocsparse_ccsrsm_analysis", "library");
    subst("cusparseCcsrsm2_bufferSizeExt", "rocsparse_ccsrsm_buffer_size", "library");
    subst("cusparseCcsrsm2_solve", "rocsparse_ccsrsm_solve", "library");
    subst("cusparseCcsrsv2_analysis", "rocsparse_ccsrsv_analysis", "library");
    subst("cusparseCcsrsv2_bufferSize", "rocsparse_ccsrsv_buffer_size", "library");
    subst("cusparseCcsrsv2_bufferSizeExt", "rocsparse_ccsrsv_buffer_size", "library");
    subst("cusparseCcsrsv2_solve", "rocsparse_ccsrsv_solve", "library");
    subst("cusparseCdense2csc", "rocsparse_cdense2csc", "library");
    subst("cusparseCdense2csr", "rocsparse_cdense2csr", "library");
    subst("cusparseCdotci", "rocsparse_cdotci", "library");
    subst("cusparseCdoti", "rocsparse_cdoti", "library");
    subst("cusparseCgebsr2csr", "rocsparse_cgebsr2csr", "library");
    subst("cusparseCgebsr2gebsc", "rocsparse_cgebsr2gebsc", "library");
    subst("cusparseCgebsr2gebsc_bufferSize", "rocsparse_cgebsr2gebsc_buffer_size", "library");
    subst("cusparseCgebsr2gebsr", "rocsparse_cgebsr2gebsr", "library");
    subst("cusparseCgebsr2gebsr_bufferSize", "rocsparse_cgebsr2gebsr_buffer_size", "library");
    subst("cusparseCgemvi", "rocsparse_cgemvi", "library");
    subst("cusparseCgemvi_bufferSize", "rocsparse_cgemvi_buffer_size", "library");
    subst("cusparseCgpsvInterleavedBatch", "rocsparse_cgpsv_interleaved_batch", "library");
    subst("cusparseCgpsvInterleavedBatch_bufferSizeExt", "rocsparse_cgpsv_interleaved_batch_buffer_size", "library");
    subst("cusparseCgthr", "rocsparse_cgthr", "library");
    subst("cusparseCgthrz", "rocsparse_cgthrz", "library");
    subst("cusparseCgtsv2", "rocsparse_cgtsv", "library");
    subst("cusparseCgtsv2StridedBatch", "rocsparse_cgtsv_no_pivot_strided_batch", "library");
    subst("cusparseCgtsv2StridedBatch_bufferSizeExt", "rocsparse_cgtsv_no_pivot_strided_batch_buffer_size", "library");
    subst("cusparseCgtsv2_bufferSizeExt", "rocsparse_cgtsv_buffer_size", "library");
    subst("cusparseCgtsv2_nopivot", "rocsparse_cgtsv_no_pivot", "library");
    subst("cusparseCgtsv2_nopivot_bufferSizeExt", "rocsparse_cgtsv_no_pivot_buffer_size", "library");
    subst("cusparseCgtsvInterleavedBatch", "rocsparse_cgtsv_interleaved_batch", "library");
    subst("cusparseCgtsvInterleavedBatch_bufferSizeExt", "rocsparse_cgtsv_interleaved_batch_buffer_size", "library");
    subst("cusparseChybmv", "rocsparse_chybmv", "library");
    subst("cusparseCnnz", "rocsparse_cnnz", "library");
    subst("cusparseCnnz_compress", "rocsparse_cnnz_compress", "library");
    subst("cusparseConstBlockedEllGet", "rocsparse_const_bell_get", "library");
    subst("cusparseConstCooGet", "rocsparse_const_coo_get", "library");
    subst("cusparseConstCscGet", "rocsparse_const_csc_get", "library");
    subst("cusparseConstCsrGet", "rocsparse_const_csr_get", "library");
    subst("cusparseConstDnMatGet", "rocsparse_const_dnmat_get", "library");
    subst("cusparseConstDnMatGetValues", "rocsparse_const_dnmat_get_values", "library");
    subst("cusparseConstDnVecGet", "rocsparse_const_dnvec_get", "library");
    subst("cusparseConstDnVecGetValues", "rocsparse_const_dnvec_get_values", "library");
    subst("cusparseConstSpMatGetValues", "rocsparse_const_spmat_get_values", "library");
    subst("cusparseConstSpVecGet", "rocsparse_const_spvec_get", "library");
    subst("cusparseConstSpVecGetValues", "rocsparse_const_spvec_get_values", "library");
    subst("cusparseCooAoSGet", "rocsparse_coo_aos_get", "library");
    subst("cusparseCooGet", "rocsparse_coo_get", "library");
    subst("cusparseCooSetPointers", "rocsparse_coo_set_pointers", "library");
    subst("cusparseCooSetStridedBatch", "rocsparse_coo_set_strided_batch", "library");
    subst("cusparseCopyMatDescr", "rocsparse_copy_mat_descr", "library");
    subst("cusparseCreate", "rocsparse_create_handle", "library");
    subst("cusparseCreateBlockedEll", "rocsparse_create_bell_descr", "library");
    subst("cusparseCreateBsric02Info", "rocsparse_create_mat_info", "library");
    subst("cusparseCreateBsrilu02Info", "rocsparse_create_mat_info", "library");
    subst("cusparseCreateBsrsm2Info", "rocsparse_create_mat_info", "library");
    subst("cusparseCreateBsrsv2Info", "rocsparse_create_mat_info", "library");
    subst("cusparseCreateColorInfo", "rocsparse_create_color_info", "library");
    subst("cusparseCreateConstBlockedEll", "rocsparse_create_const_bell_descr", "library");
    subst("cusparseCreateConstCoo", "rocsparse_create_const_coo_descr", "library");
    subst("cusparseCreateConstCsc", "rocsparse_create_const_csc_descr", "library");
    subst("cusparseCreateConstCsr", "rocsparse_create_const_csr_descr", "library");
    subst("cusparseCreateConstDnMat", "rocsparse_create_const_dnmat_descr", "library");
    subst("cusparseCreateConstDnVec", "rocsparse_create_const_dnvec_descr", "library");
    subst("cusparseCreateConstSpVec", "rocsparse_create_const_spvec_descr", "library");
    subst("cusparseCreateCoo", "rocsparse_create_coo_descr", "library");
    subst("cusparseCreateCooAoS", "rocsparse_create_coo_aos_descr", "library");
    subst("cusparseCreateCsc", "rocsparse_create_csc_descr", "library");
    subst("cusparseCreateCsr", "rocsparse_create_csr_descr", "library");
    subst("cusparseCreateCsrgemm2Info", "rocsparse_create_mat_info", "library");
    subst("cusparseCreateCsric02Info", "rocsparse_create_mat_info", "library");
    subst("cusparseCreateCsrilu02Info", "rocsparse_create_mat_info", "library");
    subst("cusparseCreateCsrsm2Info", "rocsparse_create_mat_info", "library");
    subst("cusparseCreateCsrsv2Info", "rocsparse_create_mat_info", "library");
    subst("cusparseCreateDnMat", "rocsparse_create_dnmat_descr", "library");
    subst("cusparseCreateDnVec", "rocsparse_create_dnvec_descr", "library");
    subst("cusparseCreateHybMat", "rocsparse_create_hyb_mat", "library");
    subst("cusparseCreateIdentityPermutation", "rocsparse_create_identity_permutation", "library");
    subst("cusparseCreateMatDescr", "rocsparse_create_mat_descr", "library");
    subst("cusparseCreatePruneInfo", "rocsparse_create_mat_info", "library");
    subst("cusparseCreateSpVec", "rocsparse_create_spvec_descr", "library");
    subst("cusparseCscGet", "rocsparse_csc_get", "library");
    subst("cusparseCscSetPointers", "rocsparse_csc_set_pointers", "library");
    subst("cusparseCsctr", "rocsparse_csctr", "library");
    subst("cusparseCsr2cscEx2_bufferSize", "rocsparse_csr2csc_buffer_size", "library");
    subst("cusparseCsrGet", "rocsparse_csr_get", "library");
    subst("cusparseCsrSetPointers", "rocsparse_csr_set_pointers", "library");
    subst("cusparseCsrSetStridedBatch", "rocsparse_csr_set_strided_batch", "library");
    subst("cusparseDaxpyi", "rocsparse_daxpyi", "library");
    subst("cusparseDbsr2csr", "rocsparse_dbsr2csr", "library");
    subst("cusparseDbsric02", "rocsparse_dbsric0", "library");
    subst("cusparseDbsric02_analysis", "rocsparse_dbsric0_analysis", "library");
    subst("cusparseDbsric02_bufferSize", "rocsparse_dbsric0_buffer_size", "library");
    subst("cusparseDbsrilu02", "rocsparse_dbsrilu0", "library");
    subst("cusparseDbsrilu02_analysis", "rocsparse_dbsrilu0_analysis", "library");
    subst("cusparseDbsrilu02_bufferSize", "rocsparse_dbsrilu0_buffer_size", "library");
    subst("cusparseDbsrilu02_numericBoost", "rocsparse_dbsrilu0_numeric_boost", "library");
    subst("cusparseDbsrmm", "rocsparse_dbsrmm", "library");
    subst("cusparseDbsrmv", "rocsparse_dbsrmv", "library");
    subst("cusparseDbsrsm2_analysis", "rocsparse_dbsrsm_analysis", "library");
    subst("cusparseDbsrsm2_bufferSize", "rocsparse_dbsrsm_buffer_size", "library");
    subst("cusparseDbsrsm2_solve", "rocsparse_dbsrsm_solve", "library");
    subst("cusparseDbsrsv2_analysis", "rocsparse_dbsrsv_analysis", "library");
    subst("cusparseDbsrsv2_bufferSize", "rocsparse_dbsrsv_buffer_size", "library");
    subst("cusparseDbsrsv2_bufferSizeExt", "rocsparse_dbsrsv_buffer_size", "library");
    subst("cusparseDbsrsv2_solve", "rocsparse_dbsrsv_solve", "library");
    subst("cusparseDbsrxmv", "rocsparse_dbsrxmv", "library");
    subst("cusparseDcsc2dense", "rocsparse_dcsc2dense", "library");
    subst("cusparseDcsr2bsr", "rocsparse_dcsr2bsr", "library");
    subst("cusparseDcsr2csr_compress", "rocsparse_dcsr2csr_compress", "library");
    subst("cusparseDcsr2dense", "rocsparse_dcsr2dense", "library");
    subst("cusparseDcsr2gebsr", "rocsparse_dcsr2gebsr", "library");
    subst("cusparseDcsr2gebsr_bufferSize", "rocsparse_dcsr2gebsr_buffer_size", "library");
    subst("cusparseDcsr2hyb", "rocsparse_dcsr2hyb", "library");
    subst("cusparseDcsrcolor", "rocsparse_dcsrcolor", "library");
    subst("cusparseDcsrgeam", "rocsparse_dcsrgeam", "library");
    subst("cusparseDcsrgeam2", "rocsparse_dcsrgeam", "library");
    subst("cusparseDcsrgemm2", "rocsparse_dcsrgemm", "library");
    subst("cusparseDcsrgemm2_bufferSizeExt", "rocsparse_dcsrgemm_buffer_size", "library");
    subst("cusparseDcsric02", "rocsparse_dcsric0", "library");
    subst("cusparseDcsric02_analysis", "rocsparse_dcsric0_analysis", "library");
    subst("cusparseDcsric02_bufferSize", "rocsparse_dcsric0_buffer_size", "library");
    subst("cusparseDcsric02_bufferSizeExt", "rocsparse_dcsric0_buffer_size", "library");
    subst("cusparseDcsrilu02", "rocsparse_dcsrilu0", "library");
    subst("cusparseDcsrilu02_analysis", "rocsparse_dcsrilu0_analysis", "library");
    subst("cusparseDcsrilu02_bufferSize", "rocsparse_dcsrilu0_buffer_size", "library");
    subst("cusparseDcsrilu02_bufferSizeExt", "rocsparse_dcsrilu0_buffer_size", "library");
    subst("cusparseDcsrilu02_numericBoost", "rocsparse_dcsrilu0_numeric_boost", "library");
    subst("cusparseDcsrmm", "rocsparse_dcsrmm", "library");
    subst("cusparseDcsrmm2", "rocsparse_dcsrmm", "library");
    subst("cusparseDcsrmv", "rocsparse_dcsrmv", "library");
    subst("cusparseDcsrsm2_analysis", "rocsparse_dcsrsm_analysis", "library");
    subst("cusparseDcsrsm2_bufferSizeExt", "rocsparse_dcsrsm_buffer_size", "library");
    subst("cusparseDcsrsm2_solve", "rocsparse_dcsrsm_solve", "library");
    subst("cusparseDcsrsv2_analysis", "rocsparse_dcsrsv_analysis", "library");
    subst("cusparseDcsrsv2_bufferSize", "rocsparse_dcsrsv_buffer_size", "library");
    subst("cusparseDcsrsv2_bufferSizeExt", "rocsparse_dcsrsv_buffer_size", "library");
    subst("cusparseDcsrsv2_solve", "rocsparse_dcsrsv_solve", "library");
    subst("cusparseDdense2csc", "rocsparse_ddense2csc", "library");
    subst("cusparseDdense2csr", "rocsparse_ddense2csr", "library");
    subst("cusparseDdoti", "rocsparse_ddoti", "library");
    subst("cusparseDenseToSparse_analysis", "rocsparse_dense_to_sparse", "library");
    subst("cusparseDenseToSparse_bufferSize", "rocsparse_dense_to_sparse", "library");
    subst("cusparseDestroy", "rocsparse_destroy_handle", "library");
    subst("cusparseDestroyBsric02Info", "rocsparse_destroy_mat_info", "library");
    subst("cusparseDestroyBsrilu02Info", "rocsparse_destroy_mat_info", "library");
    subst("cusparseDestroyBsrsm2Info", "rocsparse_destroy_mat_info", "library");
    subst("cusparseDestroyBsrsv2Info", "rocsparse_destroy_mat_info", "library");
    subst("cusparseDestroyColorInfo", "rocsparse_destroy_color_info", "library");
    subst("cusparseDestroyCsrgemm2Info", "rocsparse_destroy_mat_info", "library");
    subst("cusparseDestroyCsric02Info", "rocsparse_destroy_mat_info", "library");
    subst("cusparseDestroyCsrilu02Info", "rocsparse_destroy_mat_info", "library");
    subst("cusparseDestroyCsrsm2Info", "rocsparse_destroy_mat_info", "library");
    subst("cusparseDestroyCsrsv2Info", "rocsparse_destroy_mat_info", "library");
    subst("cusparseDestroyDnMat", "rocsparse_destroy_dnmat_descr", "library");
    subst("cusparseDestroyDnVec", "rocsparse_destroy_dnvec_descr", "library");
    subst("cusparseDestroyHybMat", "rocsparse_destroy_hyb_mat", "library");
    subst("cusparseDestroyMatDescr", "rocsparse_destroy_mat_descr", "library");
    subst("cusparseDestroyPruneInfo", "rocsparse_destroy_mat_info", "library");
    subst("cusparseDestroySpMat", "rocsparse_destroy_spmat_descr", "library");
    subst("cusparseDestroySpVec", "rocsparse_destroy_spvec_descr", "library");
    subst("cusparseDgebsr2csr", "rocsparse_dgebsr2csr", "library");
    subst("cusparseDgebsr2gebsc", "rocsparse_dgebsr2gebsc", "library");
    subst("cusparseDgebsr2gebsc_bufferSize", "rocsparse_dgebsr2gebsc_buffer_size", "library");
    subst("cusparseDgebsr2gebsr", "rocsparse_dgebsr2gebsr", "library");
    subst("cusparseDgebsr2gebsr_bufferSize", "rocsparse_dgebsr2gebsr_buffer_size", "library");
    subst("cusparseDgemvi", "rocsparse_dgemvi", "library");
    subst("cusparseDgemvi_bufferSize", "rocsparse_dgemvi_buffer_size", "library");
    subst("cusparseDgpsvInterleavedBatch", "rocsparse_dgpsv_interleaved_batch", "library");
    subst("cusparseDgpsvInterleavedBatch_bufferSizeExt", "rocsparse_dgpsv_interleaved_batch_buffer_size", "library");
    subst("cusparseDgthr", "rocsparse_dgthr", "library");
    subst("cusparseDgthrz", "rocsparse_dgthrz", "library");
    subst("cusparseDgtsv2", "rocsparse_dgtsv", "library");
    subst("cusparseDgtsv2StridedBatch", "rocsparse_dgtsv_no_pivot_strided_batch", "library");
    subst("cusparseDgtsv2StridedBatch_bufferSizeExt", "rocsparse_dgtsv_no_pivot_strided_batch_buffer_size", "library");
    subst("cusparseDgtsv2_bufferSizeExt", "rocsparse_dgtsv_buffer_size", "library");
    subst("cusparseDgtsv2_nopivot", "rocsparse_dgtsv_no_pivot", "library");
    subst("cusparseDgtsv2_nopivot_bufferSizeExt", "rocsparse_dgtsv_no_pivot_buffer_size", "library");
    subst("cusparseDgtsvInterleavedBatch", "rocsparse_dgtsv_interleaved_batch", "library");
    subst("cusparseDgtsvInterleavedBatch_bufferSizeExt", "rocsparse_dgtsv_interleaved_batch_buffer_size", "library");
    subst("cusparseDhybmv", "rocsparse_dhybmv", "library");
    subst("cusparseDnMatGet", "rocsparse_dnmat_get", "library");
    subst("cusparseDnMatGetStridedBatch", "rocsparse_dnmat_get_strided_batch", "library");
    subst("cusparseDnMatGetValues", "rocsparse_dnmat_get_values", "library");
    subst("cusparseDnMatSetStridedBatch", "rocsparse_dnmat_set_strided_batch", "library");
    subst("cusparseDnMatSetValues", "rocsparse_dnmat_set_values", "library");
    subst("cusparseDnVecGet", "rocsparse_dnvec_get", "library");
    subst("cusparseDnVecGetValues", "rocsparse_dnvec_get_values", "library");
    subst("cusparseDnVecSetValues", "rocsparse_dnvec_set_values", "library");
    subst("cusparseDnnz", "rocsparse_dnnz", "library");
    subst("cusparseDnnz_compress", "rocsparse_dnnz_compress", "library");
    subst("cusparseDpruneCsr2csr", "rocsparse_dprune_csr2csr", "library");
    subst("cusparseDpruneCsr2csrByPercentage", "rocsparse_dprune_csr2csr_by_percentage", "library");
    subst("cusparseDpruneCsr2csrByPercentage_bufferSizeExt", "rocsparse_dprune_csr2csr_by_percentage_buffer_size", "library");
    subst("cusparseDpruneCsr2csrNnz", "rocsparse_dprune_csr2csr_nnz", "library");
    subst("cusparseDpruneCsr2csrNnzByPercentage", "rocsparse_dprune_csr2csr_nnz_by_percentage", "library");
    subst("cusparseDpruneCsr2csr_bufferSizeExt", "rocsparse_dprune_csr2csr_buffer_size", "library");
    subst("cusparseDpruneDense2csr", "rocsparse_dprune_dense2csr", "library");
    subst("cusparseDpruneDense2csrByPercentage", "rocsparse_dprune_dense2csr_by_percentage", "library");
    subst("cusparseDpruneDense2csrByPercentage_bufferSizeExt", "rocsparse_dprune_dense2csr_by_percentage_buffer_size", "library");
    subst("cusparseDpruneDense2csrNnz", "rocsparse_dprune_dense2csr_nnz", "library");
    subst("cusparseDpruneDense2csrNnzByPercentage", "rocsparse_dprune_dense2csr_nnz_by_percentage", "library");
    subst("cusparseDpruneDense2csr_bufferSizeExt", "rocsparse_dprune_dense2csr_buffer_size", "library");
    subst("cusparseDroti", "rocsparse_droti", "library");
    subst("cusparseDsctr", "rocsparse_dsctr", "library");
    subst("cusparseGather", "rocsparse_gather", "library");
    subst("cusparseGetErrorName", "rocsparse_get_status_name", "library");
    subst("cusparseGetErrorString", "rocsparse_get_status_description", "library");
    subst("cusparseGetMatDiagType", "rocsparse_get_mat_diag_type", "library");
    subst("cusparseGetMatFillMode", "rocsparse_get_mat_fill_mode", "library");
    subst("cusparseGetMatIndexBase", "rocsparse_get_mat_index_base", "library");
    subst("cusparseGetMatType", "rocsparse_get_mat_type", "library");
    subst("cusparseGetPointerMode", "rocsparse_get_pointer_mode", "library");
    subst("cusparseGetStream", "rocsparse_get_stream", "library");
    subst("cusparseGetVersion", "rocsparse_get_version", "library");
    subst("cusparseRot", "rocsparse_rot", "library");
    subst("cusparseSDDMM", "rocsparse_sddmm", "library");
    subst("cusparseSDDMM_bufferSize", "rocsparse_sddmm_buffer_size", "library");
    subst("cusparseSDDMM_preprocess", "rocsparse_sddmm_preprocess", "library");
    subst("cusparseSaxpyi", "rocsparse_saxpyi", "library");
    subst("cusparseSbsr2csr", "rocsparse_sbsr2csr", "library");
    subst("cusparseSbsric02", "rocsparse_sbsric0", "library");
    subst("cusparseSbsric02_analysis", "rocsparse_sbsric0_analysis", "library");
    subst("cusparseSbsric02_bufferSize", "rocsparse_sbsric0_buffer_size", "library");
    subst("cusparseSbsrilu02", "rocsparse_sbsrilu0", "library");
    subst("cusparseSbsrilu02_analysis", "rocsparse_sbsrilu0_analysis", "library");
    subst("cusparseSbsrilu02_bufferSize", "rocsparse_sbsrilu0_buffer_size", "library");
    subst("cusparseSbsrilu02_numericBoost", "rocsparse_dsbsrilu0_numeric_boost", "library");
    subst("cusparseSbsrmm", "rocsparse_sbsrmm", "library");
    subst("cusparseSbsrmv", "rocsparse_sbsrmv", "library");
    subst("cusparseSbsrsm2_analysis", "rocsparse_sbsrsm_analysis", "library");
    subst("cusparseSbsrsm2_bufferSize", "rocsparse_sbsrsm_buffer_size", "library");
    subst("cusparseSbsrsm2_solve", "rocsparse_sbsrsm_solve", "library");
    subst("cusparseSbsrsv2_analysis", "rocsparse_sbsrsv_analysis", "library");
    subst("cusparseSbsrsv2_bufferSize", "rocsparse_sbsrsv_buffer_size", "library");
    subst("cusparseSbsrsv2_bufferSizeExt", "rocsparse_sbsrsv_buffer_size", "library");
    subst("cusparseSbsrsv2_solve", "rocsparse_sbsrsv_solve", "library");
    subst("cusparseSbsrxmv", "rocsparse_sbsrxmv", "library");
    subst("cusparseScatter", "rocsparse_scatter", "library");
    subst("cusparseScsc2dense", "rocsparse_scsc2dense", "library");
    subst("cusparseScsr2bsr", "rocsparse_scsr2bsr", "library");
    subst("cusparseScsr2csr_compress", "rocsparse_scsr2csr_compress", "library");
    subst("cusparseScsr2dense", "rocsparse_scsr2dense", "library");
    subst("cusparseScsr2gebsr", "rocsparse_scsr2gebsr", "library");
    subst("cusparseScsr2gebsr_bufferSize", "rocsparse_scsr2gebsr_buffer_size", "library");
    subst("cusparseScsr2hyb", "rocsparse_scsr2hyb", "library");
    subst("cusparseScsrcolor", "rocsparse_scsrcolor", "library");
    subst("cusparseScsrgeam", "rocsparse_scsrgeam", "library");
    subst("cusparseScsrgeam2", "rocsparse_scsrgeam", "library");
    subst("cusparseScsrgemm2", "rocsparse_scsrgemm", "library");
    subst("cusparseScsrgemm2_bufferSizeExt", "rocsparse_scsrgemm_buffer_size", "library");
    subst("cusparseScsric02", "rocsparse_scsric0", "library");
    subst("cusparseScsric02_analysis", "rocsparse_scsric0_analysis", "library");
    subst("cusparseScsric02_bufferSize", "rocsparse_scsric0_buffer_size", "library");
    subst("cusparseScsric02_bufferSizeExt", "rocsparse_scsric0_buffer_size", "library");
    subst("cusparseScsrilu02", "rocsparse_scsrilu0", "library");
    subst("cusparseScsrilu02_analysis", "rocsparse_scsrilu0_analysis", "library");
    subst("cusparseScsrilu02_bufferSize", "rocsparse_scsrilu0_buffer_size", "library");
    subst("cusparseScsrilu02_bufferSizeExt", "rocsparse_scsrilu0_buffer_size", "library");
    subst("cusparseScsrilu02_numericBoost", "rocsparse_dscsrilu0_numeric_boost", "library");
    subst("cusparseScsrmm", "rocsparse_scsrmm", "library");
    subst("cusparseScsrmm2", "rocsparse_scsrmm", "library");
    subst("cusparseScsrmv", "rocsparse_scsrmv", "library");
    subst("cusparseScsrsm2_analysis", "rocsparse_scsrsm_analysis", "library");
    subst("cusparseScsrsm2_bufferSizeExt", "rocsparse_scsrsm_buffer_size", "library");
    subst("cusparseScsrsm2_solve", "rocsparse_scsrsm_solve", "library");
    subst("cusparseScsrsv2_analysis", "rocsparse_scsrsv_analysis", "library");
    subst("cusparseScsrsv2_bufferSize", "rocsparse_scsrsv_buffer_size", "library");
    subst("cusparseScsrsv2_bufferSizeExt", "rocsparse_scsrsv_buffer_size", "library");
    subst("cusparseScsrsv2_solve", "rocsparse_scsrsv_solve", "library");
    subst("cusparseSdense2csc", "rocsparse_sdense2csc", "library");
    subst("cusparseSdense2csr", "rocsparse_sdense2csr", "library");
    subst("cusparseSdoti", "rocsparse_sdoti", "library");
    subst("cusparseSetMatDiagType", "rocsparse_set_mat_diag_type", "library");
    subst("cusparseSetMatFillMode", "rocsparse_set_mat_fill_mode", "library");
    subst("cusparseSetMatIndexBase", "rocsparse_set_mat_index_base", "library");
    subst("cusparseSetMatType", "rocsparse_set_mat_type", "library");
    subst("cusparseSetPointerMode", "rocsparse_set_pointer_mode", "library");
    subst("cusparseSetStream", "rocsparse_set_stream", "library");
    subst("cusparseSgebsr2csr", "rocsparse_sgebsr2csr", "library");
    subst("cusparseSgebsr2gebsc", "rocsparse_sgebsr2gebsc", "library");
    subst("cusparseSgebsr2gebsc_bufferSize", "rocsparse_sgebsr2gebsc_buffer_size", "library");
    subst("cusparseSgebsr2gebsr", "rocsparse_sgebsr2gebsr", "library");
    subst("cusparseSgebsr2gebsr_bufferSize", "rocsparse_sgebsr2gebsr_buffer_size", "library");
    subst("cusparseSgemvi", "rocsparse_sgemvi", "library");
    subst("cusparseSgemvi_bufferSize", "rocsparse_sgemvi_buffer_size", "library");
    subst("cusparseSgpsvInterleavedBatch", "rocsparse_sgpsv_interleaved_batch", "library");
    subst("cusparseSgpsvInterleavedBatch_bufferSizeExt", "rocsparse_sgpsv_interleaved_batch_buffer_size", "library");
    subst("cusparseSgthr", "rocsparse_sgthr", "library");
    subst("cusparseSgthrz", "rocsparse_sgthrz", "library");
    subst("cusparseSgtsv2", "rocsparse_sgtsv", "library");
    subst("cusparseSgtsv2StridedBatch", "rocsparse_sgtsv_no_pivot_strided_batch", "library");
    subst("cusparseSgtsv2StridedBatch_bufferSizeExt", "rocsparse_sgtsv_no_pivot_strided_batch_buffer_size", "library");
    subst("cusparseSgtsv2_bufferSizeExt", "rocsparse_sgtsv_buffer_size", "library");
    subst("cusparseSgtsv2_nopivot", "rocsparse_sgtsv_no_pivot", "library");
    subst("cusparseSgtsv2_nopivot_bufferSizeExt", "rocsparse_sgtsv_no_pivot_buffer_size", "library");
    subst("cusparseSgtsvInterleavedBatch", "rocsparse_sgtsv_interleaved_batch", "library");
    subst("cusparseSgtsvInterleavedBatch_bufferSizeExt", "rocsparse_sgtsv_interleaved_batch_buffer_size", "library");
    subst("cusparseShybmv", "rocsparse_shybmv", "library");
    subst("cusparseSnnz", "rocsparse_snnz", "library");
    subst("cusparseSnnz_compress", "rocsparse_snnz_compress", "library");
    subst("cusparseSpMM", "rocsparse_spmm", "library");
    subst("cusparseSpMM_bufferSize", "rocsparse_spmm", "library");
    subst("cusparseSpMM_preprocess", "rocsparse_spmm", "library");
    subst("cusparseSpMV", "rocsparse_spmv", "library");
    subst("cusparseSpMV_bufferSize", "rocsparse_spmv", "library");
    subst("cusparseSpMatGetAttribute", "rocsparse_spmat_get_attribute", "library");
    subst("cusparseSpMatGetFormat", "rocsparse_spmat_get_format", "library");
    subst("cusparseSpMatGetIndexBase", "rocsparse_spmat_get_index_base", "library");
    subst("cusparseSpMatGetSize", "rocsparse_spmat_get_size", "library");
    subst("cusparseSpMatGetStridedBatch", "rocsparse_spmat_get_strided_batch", "library");
    subst("cusparseSpMatGetValues", "rocsparse_spmat_get_values", "library");
    subst("cusparseSpMatSetAttribute", "rocsparse_spmat_set_attribute", "library");
    subst("cusparseSpMatSetStridedBatch", "rocsparse_spmat_set_strided_batch", "library");
    subst("cusparseSpMatSetValues", "rocsparse_spmat_set_values", "library");
    subst("cusparseSpSM_analysis", "rocsparse_spsm", "library");
    subst("cusparseSpSM_solve", "rocsparse_spsm", "library");
    subst("cusparseSpSV_bufferSize", "rocsparse_spsv", "library");
    subst("cusparseSpVV", "rocsparse_spvv", "library");
    subst("cusparseSpVV_bufferSize", "rocsparse_spvv", "library");
    subst("cusparseSpVecGet", "rocsparse_spvec_get", "library");
    subst("cusparseSpVecGetIndexBase", "rocsparse_spvec_get_index_base", "library");
    subst("cusparseSpVecGetValues", "rocsparse_spvec_get_values", "library");
    subst("cusparseSpVecSetValues", "rocsparse_spvec_set_values", "library");
    subst("cusparseSparseToDense", "rocsparse_sparse_to_dense", "library");
    subst("cusparseSparseToDense_bufferSize", "rocsparse_sparse_to_dense", "library");
    subst("cusparseSpruneCsr2csr", "rocsparse_sprune_csr2csr", "library");
    subst("cusparseSpruneCsr2csrByPercentage", "rocsparse_sprune_csr2csr_by_percentage", "library");
    subst("cusparseSpruneCsr2csrByPercentage_bufferSizeExt", "rocsparse_sprune_csr2csr_by_percentage_buffer_size", "library");
    subst("cusparseSpruneCsr2csrNnz", "rocsparse_sprune_csr2csr_nnz", "library");
    subst("cusparseSpruneCsr2csrNnzByPercentage", "rocsparse_sprune_csr2csr_nnz_by_percentage", "library");
    subst("cusparseSpruneCsr2csr_bufferSizeExt", "rocsparse_sprune_csr2csr_buffer_size", "library");
    subst("cusparseSpruneDense2csr", "rocsparse_sprune_dense2csr", "library");
    subst("cusparseSpruneDense2csrByPercentage", "rocsparse_sprune_dense2csr_by_percentage", "library");
    subst("cusparseSpruneDense2csrByPercentage_bufferSizeExt", "rocsparse_sprune_dense2csr_by_percentage_buffer_size", "library");
    subst("cusparseSpruneDense2csrNnz", "rocsparse_sprune_dense2csr_nnz", "library");
    subst("cusparseSpruneDense2csrNnzByPercentage", "rocsparse_sprune_dense2csr_nnz_by_percentage", "library");
    subst("cusparseSpruneDense2csr_bufferSizeExt", "rocsparse_sprune_dense2csr_buffer_size", "library");
    subst("cusparseSroti", "rocsparse_sroti", "library");
    subst("cusparseSsctr", "rocsparse_ssctr", "library");
    subst("cusparseXbsric02_zeroPivot", "rocsparse_bsric0_zero_pivot", "library");
    subst("cusparseXbsrilu02_zeroPivot", "rocsparse_bsrilu0_zero_pivot", "library");
    subst("cusparseXbsrsm2_zeroPivot", "rocsparse_bsrsm_zero_pivot", "library");
    subst("cusparseXbsrsv2_zeroPivot", "rocsparse_bsrsv_zero_pivot", "library");
    subst("cusparseXcoo2csr", "rocsparse_coo2csr", "library");
    subst("cusparseXcoosortByColumn", "rocsparse_coosort_by_column", "library");
    subst("cusparseXcoosortByRow", "rocsparse_coosort_by_row", "library");
    subst("cusparseXcoosort_bufferSizeExt", "rocsparse_coosort_buffer_size", "library");
    subst("cusparseXcscsort", "rocsparse_cscsort", "library");
    subst("cusparseXcscsort_bufferSizeExt", "rocsparse_cscsort_buffer_size", "library");
    subst("cusparseXcsr2bsrNnz", "rocsparse_csr2bsr_nnz", "library");
    subst("cusparseXcsr2coo", "rocsparse_csr2coo", "library");
    subst("cusparseXcsr2gebsrNnz", "rocsparse_csr2gebsr_nnz", "library");
    subst("cusparseXcsrgeam2Nnz", "rocsparse_csrgeam_nnz", "library");
    subst("cusparseXcsrgeamNnz", "rocsparse_csrgeam_nnz", "library");
    subst("cusparseXcsrgemm2Nnz", "rocsparse_csrgemm_nnz", "library");
    subst("cusparseXcsric02_zeroPivot", "rocsparse_csric0_zero_pivot", "library");
    subst("cusparseXcsrilu02_zeroPivot", "rocsparse_csrilu0_zero_pivot", "library");
    subst("cusparseXcsrsm2_zeroPivot", "rocsparse_csrsm_zero_pivot", "library");
    subst("cusparseXcsrsort", "rocsparse_csrsort", "library");
    subst("cusparseXcsrsort_bufferSizeExt", "rocsparse_csrsort_buffer_size", "library");
    subst("cusparseXcsrsv2_zeroPivot", "rocsparse_csrsv_zero_pivot", "library");
    subst("cusparseXgebsr2gebsrNnz", "rocsparse_gebsr2gebsr_nnz", "library");
    subst("cusparseZaxpyi", "rocsparse_zaxpyi", "library");
    subst("cusparseZbsr2csr", "rocsparse_zbsr2csr", "library");
    subst("cusparseZbsric02", "rocsparse_zbsric0", "library");
    subst("cusparseZbsric02_analysis", "rocsparse_zbsric0_analysis", "library");
    subst("cusparseZbsric02_bufferSize", "rocsparse_zbsric0_buffer_size", "library");
    subst("cusparseZbsrilu02", "rocsparse_zbsrilu0", "library");
    subst("cusparseZbsrilu02_analysis", "rocsparse_zbsrilu0_analysis", "library");
    subst("cusparseZbsrilu02_bufferSize", "rocsparse_zbsrilu0_buffer_size", "library");
    subst("cusparseZbsrilu02_numericBoost", "rocsparse_zbsrilu0_numeric_boost", "library");
    subst("cusparseZbsrmm", "rocsparse_zbsrmm", "library");
    subst("cusparseZbsrmv", "rocsparse_zbsrmv", "library");
    subst("cusparseZbsrsm2_analysis", "rocsparse_zbsrsm_analysis", "library");
    subst("cusparseZbsrsm2_bufferSize", "rocsparse_zbsrsm_buffer_size", "library");
    subst("cusparseZbsrsm2_solve", "rocsparse_zbsrsm_solve", "library");
    subst("cusparseZbsrsv2_analysis", "rocsparse_zbsrsv_analysis", "library");
    subst("cusparseZbsrsv2_bufferSize", "rocsparse_zbsrsv_buffer_size", "library");
    subst("cusparseZbsrsv2_bufferSizeExt", "rocsparse_zbsrsv_buffer_size", "library");
    subst("cusparseZbsrsv2_solve", "rocsparse_zbsrsv_solve", "library");
    subst("cusparseZbsrxmv", "rocsparse_zbsrxmv", "library");
    subst("cusparseZcsc2dense", "rocsparse_zcsc2dense", "library");
    subst("cusparseZcsr2bsr", "rocsparse_zcsr2bsr", "library");
    subst("cusparseZcsr2csr_compress", "rocsparse_zcsr2csr_compress", "library");
    subst("cusparseZcsr2dense", "rocsparse_zcsr2dense", "library");
    subst("cusparseZcsr2gebsr", "rocsparse_zcsr2gebsr", "library");
    subst("cusparseZcsr2gebsr_bufferSize", "rocsparse_zcsr2gebsr_buffer_size", "library");
    subst("cusparseZcsr2hyb", "rocsparse_zcsr2hyb", "library");
    subst("cusparseZcsrcolor", "rocsparse_zcsrcolor", "library");
    subst("cusparseZcsrgeam", "rocsparse_zcsrgeam", "library");
    subst("cusparseZcsrgeam2", "rocsparse_zcsrgeam", "library");
    subst("cusparseZcsrgemm2", "rocsparse_zcsrgemm", "library");
    subst("cusparseZcsrgemm2_bufferSizeExt", "rocsparse_zcsrgemm_buffer_size", "library");
    subst("cusparseZcsric02", "rocsparse_zcsric0", "library");
    subst("cusparseZcsric02_analysis", "rocsparse_zcsric0_analysis", "library");
    subst("cusparseZcsric02_bufferSize", "rocsparse_zcsric0_buffer_size", "library");
    subst("cusparseZcsric02_bufferSizeExt", "rocsparse_zcsric0_buffer_size", "library");
    subst("cusparseZcsrilu02", "rocsparse_zcsrilu0", "library");
    subst("cusparseZcsrilu02_analysis", "rocsparse_zcsrilu0_analysis", "library");
    subst("cusparseZcsrilu02_bufferSize", "rocsparse_zcsrilu0_buffer_size", "library");
    subst("cusparseZcsrilu02_bufferSizeExt", "rocsparse_zcsrilu0_buffer_size", "library");
    subst("cusparseZcsrilu02_numericBoost", "rocsparse_zcsrilu0_numeric_boost", "library");
    subst("cusparseZcsrmm", "rocsparse_zcsrmm", "library");
    subst("cusparseZcsrmm2", "rocsparse_zcsrmm", "library");
    subst("cusparseZcsrmv", "rocsparse_zcsrmv", "library");
    subst("cusparseZcsrsm2_analysis", "rocsparse_zcsrsm_analysis", "library");
    subst("cusparseZcsrsm2_bufferSizeExt", "rocsparse_zcsrsm_buffer_size", "library");
    subst("cusparseZcsrsm2_solve", "rocsparse_zcsrsm_solve", "library");
    subst("cusparseZcsrsv2_analysis", "rocsparse_zcsrsv_analysis", "library");
    subst("cusparseZcsrsv2_bufferSize", "rocsparse_zcsrsv_buffer_size", "library");
    subst("cusparseZcsrsv2_bufferSizeExt", "rocsparse_zcsrsv_buffer_size", "library");
    subst("cusparseZcsrsv2_solve", "rocsparse_zcsrsv_solve", "library");
    subst("cusparseZdense2csc", "rocsparse_zdense2csc", "library");
    subst("cusparseZdense2csr", "rocsparse_zdense2csr", "library");
    subst("cusparseZdotci", "rocsparse_zdotci", "library");
    subst("cusparseZdoti", "rocsparse_zdoti", "library");
    subst("cusparseZgebsr2csr", "rocsparse_zgebsr2csr", "library");
    subst("cusparseZgebsr2gebsc", "rocsparse_zgebsr2gebsc", "library");
    subst("cusparseZgebsr2gebsc_bufferSize", "rocsparse_zgebsr2gebsc_buffer_size", "library");
    subst("cusparseZgebsr2gebsr", "rocsparse_zgebsr2gebsr", "library");
    subst("cusparseZgebsr2gebsr_bufferSize", "rocsparse_zgebsr2gebsr_buffer_size", "library");
    subst("cusparseZgemvi", "rocsparse_zgemvi", "library");
    subst("cusparseZgemvi_bufferSize", "rocsparse_zgemvi_buffer_size", "library");
    subst("cusparseZgpsvInterleavedBatch", "rocsparse_zgpsv_interleaved_batch", "library");
    subst("cusparseZgpsvInterleavedBatch_bufferSizeExt", "rocsparse_zgpsv_interleaved_batch_buffer_size", "library");
    subst("cusparseZgthr", "rocsparse_zgthr", "library");
    subst("cusparseZgthrz", "rocsparse_zgthrz", "library");
    subst("cusparseZgtsv2", "rocsparse_zgtsv", "library");
    subst("cusparseZgtsv2StridedBatch", "rocsparse_zgtsv_no_pivot_strided_batch", "library");
    subst("cusparseZgtsv2StridedBatch_bufferSizeExt", "rocsparse_zgtsv_no_pivot_strided_batch_buffer_size", "library");
    subst("cusparseZgtsv2_bufferSizeExt", "rocsparse_zgtsv_buffer_size", "library");
    subst("cusparseZgtsv2_nopivot", "rocsparse_zgtsv_no_pivot", "library");
    subst("cusparseZgtsv2_nopivot_bufferSizeExt", "rocsparse_zgtsv_no_pivot_buffer_size", "library");
    subst("cusparseZgtsvInterleavedBatch", "rocsparse_zgtsv_interleaved_batch", "library");
    subst("cusparseZgtsvInterleavedBatch_bufferSizeExt", "rocsparse_zgtsv_interleaved_batch_buffer_size", "library");
    subst("cusparseZhybmv", "rocsparse_zhybmv", "library");
    subst("cusparseZnnz", "rocsparse_znnz", "library");
    subst("cusparseZnnz_compress", "rocsparse_znnz_compress", "library");
    subst("cusparseZsctr", "rocsparse_zsctr", "library");
    subst("curand", "rocrand", "device_library");
    subst("curand_discrete", "rocrand_discrete", "device_library");
    subst("curand_discrete4", "rocrand_discrete4", "device_library");
    subst("curand_init", "rocrand_init", "device_library");
    subst("curand_log_normal", "rocrand_log_normal", "device_library");
    subst("curand_log_normal2", "rocrand_log_normal2", "device_library");
    subst("curand_log_normal2_double", "rocrand_log_normal_double2", "device_library");
    subst("curand_log_normal4", "rocrand_log_normal4", "device_library");
    subst("curand_log_normal4_double", "rocrand_log_normal_double4", "device_library");
    subst("curand_log_normal_double", "rocrand_log_normal_double", "device_library");
    subst("curand_normal", "rocrand_normal", "device_library");
    subst("curand_normal2", "rocrand_normal2", "device_library");
    subst("curand_normal2_double", "rocrand_normal_double2", "device_library");
    subst("curand_normal4", "rocrand_normal4", "device_library");
    subst("curand_normal4_double", "rocrand_normal_double4", "device_library");
    subst("curand_normal_double", "rocrand_normal_double", "device_library");
    subst("curand_poisson", "rocrand_poisson", "device_library");
    subst("curand_poisson4", "rocrand_poisson4", "device_library");
    subst("curand_uniform", "rocrand_uniform", "device_library");
    subst("curand_uniform2_double", "rocrand_uniform_double2", "device_library");
    subst("curand_uniform4", "rocrand_uniform4", "device_library");
    subst("curand_uniform4_double", "rocrand_uniform_double4", "device_library");
    subst("curand_uniform_double", "rocrand_uniform_double", "device_library");
    subst("__half", "rocblas_half", "device_type");
    subst("__nv_bfloat16", "rocblas_bfloat16", "device_type");
    subst("cublas_api.h", "rocblas.h", "include");
    subst("curand_discrete.h", "rocrand\/rocrand_discrete.h", "include");
    subst("curand_discrete2.h", "rocrand\/rocrand_discrete.h", "include");
    subst("curand_globals.h", "rocrand\/rocrand_common.h", "include");
    subst("curand_kernel.h", "rocrand\/rocrand_kernel.h", "include");
    subst("curand_lognormal.h", "rocrand\/rocrand_log_normal.h", "include");
    subst("curand_mrg32k3a.h", "rocrand\/rocrand_mrg32k3a.h", "include");
    subst("curand_mtgp32.h", "rocrand\/rocrand_mtgp32.h", "include");
    subst("curand_mtgp32_host.h", "rocrand\/rocrand_mtgp32.h", "include");
    subst("curand_mtgp32_kernel.h", "rocrand\/rocrand_mtgp32.h", "include");
    subst("curand_mtgp32dc_p_11213.h", "rocrand\/rocrand_mtgp32_11213.h", "include");
    subst("curand_normal.h", "rocrand\/rocrand_normal.h", "include");
    subst("curand_normal_static.h", "rocrand\/rocrand_normal.h", "include");
    subst("curand_philox4x32_x.h", "rocrand\/rocrand_philox4x32_10.h", "include");
    subst("curand_poisson.h", "rocrand\/rocrand_poisson.h", "include");
    subst("curand_precalc.h", "rocrand\/rocrand_xorwow_precomputed.h", "include");
    subst("curand_uniform.h", "rocrand\/rocrand_uniform.h", "include");
    subst("cublas.h", "rocblas.h", "include_cuda_main_header");
    subst("cudnn.h", "miopen\/miopen.h", "include_cuda_main_header");
    subst("curand.h", "rocrand\/rocrand.h", "include_cuda_main_header");
    subst("cusolverDn.h", "rocsolver\/rocsolver.h", "include_cuda_main_header");
    subst("cusolverMg.h", "rocsolver\/rocsolver.h", "include_cuda_main_header");
    subst("cusolverRf.h", "rocsolver\/rocsolver.h", "include_cuda_main_header");
    subst("cusolverSp.h", "rocsolver\/rocsolver.h", "include_cuda_main_header");
    subst("cusolverSp_LOWLEVEL_PREVIEW.h", "rocsolver\/rocsolver.h", "include_cuda_main_header");
    subst("cusolver_common.h", "rocsolver\/rocsolver.h", "include_cuda_main_header");
    subst("cusparse.h", "rocsparse.h", "include_cuda_main_header");
    subst("cublas_v2.h", "rocblas.h", "include_cuda_main_header_v2");
    subst("cusparse_v2.h", "rocsparse.h", "include_cuda_main_header_v2");
    subst("bsric02Info", "_rocsparse_mat_info", "type");
    subst("bsric02Info_t", "rocsparse_mat_info", "type");
    subst("bsrilu02Info", "_rocsparse_mat_info", "type");
    subst("bsrilu02Info_t", "rocsparse_mat_info", "type");
    subst("bsrsm2Info", "_rocsparse_mat_info", "type");
    subst("bsrsm2Info_t", "rocsparse_mat_info", "type");
    subst("bsrsv2Info", "_rocsparse_mat_info", "type");
    subst("bsrsv2Info_t", "rocsparse_mat_info", "type");
    subst("csrgemm2Info", "_rocsparse_mat_info", "type");
    subst("csrgemm2Info_t", "rocsparse_mat_info", "type");
    subst("csric02Info", "_rocsparse_mat_info", "type");
    subst("csric02Info_t", "rocsparse_mat_info", "type");
    subst("csrilu02Info", "_rocsparse_mat_info", "type");
    subst("csrilu02Info_t", "rocsparse_mat_info", "type");
    subst("csrsm2Info", "_rocsparse_mat_info", "type");
    subst("csrsm2Info_t", "rocsparse_mat_info", "type");
    subst("csrsv2Info", "_rocsparse_mat_descr", "type");
    subst("csrsv2Info_t", "rocsparse_mat_descr", "type");
    subst("cuComplex", "rocblas_float_complex", "type");
    subst("cuDoubleComplex", "rocblas_double_complex", "type");
    subst("cuFloatComplex", "rocblas_float_complex", "type");
    subst("cublasAtomicsMode_t", "rocblas_atomics_mode", "type");
    subst("cublasComputeType_t", "rocblas_computetype", "type");
    subst("cublasContext", "_rocblas_handle", "type");
    subst("cublasDataType_t", "rocblas_datatype", "type");
    subst("cublasDiagType_t", "rocblas_diagonal", "type");
    subst("cublasFillMode_t", "rocblas_fill", "type");
    subst("cublasGemmAlgo_t", "rocblas_gemm_algo", "type");
    subst("cublasHandle_t", "rocblas_handle", "type");
    subst("cublasMath_t", "rocblas_math_mode", "type");
    subst("cublasOperation_t", "rocblas_operation", "type");
    subst("cublasPointerMode_t", "rocblas_pointer_mode", "type");
    subst("cublasSideMode_t", "rocblas_side", "type");
    subst("cublasStatus", "rocblas_status", "type");
    subst("cublasStatus_t", "rocblas_status", "type");
    subst("cudaDataType", "rocblas_datatype", "type");
    subst("cudaDataType_t", "rocblas_datatype_", "type");
    subst("curandDirectionVectorSet", "rocrand_direction_vector_set", "type");
    subst("curandDirectionVectorSet_t", "rocrand_direction_vector_set", "type");
    subst("curandDiscreteDistribution_st", "rocrand_discrete_distribution_st", "type");
    subst("curandDiscreteDistribution_t", "rocrand_discrete_distribution", "type");
    subst("curandGenerator_st", "rocrand_generator_base_type", "type");
    subst("curandGenerator_t", "rocrand_generator", "type");
    subst("curandOrdering", "rocrand_ordering", "type");
    subst("curandOrdering_t", "rocrand_ordering", "type");
    subst("curandRngType", "rocrand_rng_type", "type");
    subst("curandRngType_t", "rocrand_rng_type", "type");
    subst("curandStateMRG32k3a", "rocrand_device::mrg32k3a_engine", "type");
    subst("curandStateMRG32k3a_t", "rocrand_state_mrg32k3a", "type");
    subst("curandStateMtgp32", "rocrand_device::mtgp32_engine", "type");
    subst("curandStateMtgp32_t", "rocrand_state_mtgp32", "type");
    subst("curandStatePhilox4_32_10", "rocrand_device::philox4x32_10_engine", "type");
    subst("curandStatePhilox4_32_10_t", "rocrand_state_philox4x32_10", "type");
    subst("curandStateScrambledSobol32", "rocrand_device::scrambled_sobol32_engine<false>", "type");
    subst("curandStateScrambledSobol32_t", "rocrand_state_scrambled_sobol32", "type");
    subst("curandStateScrambledSobol64", "rocrand_device::scrambled_sobol64_engine<false>", "type");
    subst("curandStateScrambledSobol64_t", "rocrand_state_scrambled_sobol64", "type");
    subst("curandStateSobol32", "rocrand_device::sobol32_engine<false>", "type");
    subst("curandStateSobol32_t", "rocrand_state_sobol32", "type");
    subst("curandStateSobol64", "rocrand_device::sobol64_engine<false>", "type");
    subst("curandStateSobol64_t", "rocrand_state_sobol64", "type");
    subst("curandStatus", "rocrand_status", "type");
    subst("curandStatus_t", "rocrand_status", "type");
    subst("cusolverDnHandle_t", "rocblas_handle", "type");
    subst("cusolverEigMode_t", "rocblas_evect", "type");
    subst("cusolverEigRange_t", "rocblas_erange", "type");
    subst("cusolverEigType_t", "rocblas_eform", "type");
    subst("cusolverStatus_t", "rocblas_status", "type");
    subst("cusparseAction_t", "rocsparse_action", "type");
    subst("cusparseColorInfo", "_rocsparse_color_info", "type");
    subst("cusparseColorInfo_t", "rocsparse_color_info", "type");
    subst("cusparseConstDnMatDescr_t", "rocsparse_const_dnmat_descr", "type");
    subst("cusparseConstDnVecDescr_t", "rocsparse_const_dnvec_descr", "type");
    subst("cusparseConstSpMatDescr_t", "rocsparse_const_spmat_descr", "type");
    subst("cusparseConstSpVecDescr_t", "rocsparse_const_spvec_descr", "type");
    subst("cusparseContext", "_rocsparse_handle", "type");
    subst("cusparseDenseToSparseAlg_t", "rocsparse_dense_to_sparse_alg", "type");
    subst("cusparseDiagType_t", "rocsparse_diag_type", "type");
    subst("cusparseDirection_t", "rocsparse_direction", "type");
    subst("cusparseDnMatDescr", "_rocsparse_dnmat_descr", "type");
    subst("cusparseDnMatDescr_t", "rocsparse_dnmat_descr", "type");
    subst("cusparseDnVecDescr", "_rocsparse_dnvec_descr", "type");
    subst("cusparseDnVecDescr_t", "rocsparse_dnvec_descr", "type");
    subst("cusparseFillMode_t", "rocsparse_fill_mode", "type");
    subst("cusparseFormat_t", "rocsparse_format", "type");
    subst("cusparseHandle_t", "rocsparse_handle", "type");
    subst("cusparseHybMat", "_rocsparse_hyb_mat", "type");
    subst("cusparseHybMat_t", "rocsparse_hyb_mat", "type");
    subst("cusparseHybPartition_t", "rocsparse_hyb_partition", "type");
    subst("cusparseIndexBase_t", "rocsparse_index_base", "type");
    subst("cusparseIndexType_t", "rocsparse_indextype", "type");
    subst("cusparseMatDescr", "_rocsparse_mat_descr", "type");
    subst("cusparseMatDescr_t", "rocsparse_mat_descr", "type");
    subst("cusparseMatrixType_t", "rocsparse_matrix_type", "type");
    subst("cusparseOperation_t", "rocsparse_operation", "type");
    subst("cusparseOrder_t", "rocsparse_order", "type");
    subst("cusparsePointerMode_t", "rocsparse_pointer_mode", "type");
    subst("cusparseSDDMMAlg_t", "rocsparse_sddmm_alg", "type");
    subst("cusparseSolvePolicy_t", "rocsparse_solve_policy", "type");
    subst("cusparseSpGEMMAlg_t", "rocsparse_spgemm_alg", "type");
    subst("cusparseSpMMAlg_t", "rocsparse_spmm_alg", "type");
    subst("cusparseSpMVAlg_t", "rocsparse_spmv_alg", "type");
    subst("cusparseSpMatAttribute_t", "rocsparse_spmat_attribute", "type");
    subst("cusparseSpMatDescr", "_rocsparse_spmat_descr", "type");
    subst("cusparseSpMatDescr_t", "rocsparse_spmat_descr", "type");
    subst("cusparseSpSMAlg_t", "rocsparse_spsm_alg", "type");
    subst("cusparseSpSVAlg_t", "rocsparse_spsv_alg", "type");
    subst("cusparseSpVecDescr", "_rocsparse_spvec_descr", "type");
    subst("cusparseSpVecDescr_t", "rocsparse_spvec_descr", "type");
    subst("cusparseSparseToDenseAlg_t", "rocsparse_sparse_to_dense_alg", "type");
    subst("cusparseStatus_t", "rocsparse_status", "type");
    subst("pruneInfo", "_rocsparse_mat_info", "type");
    subst("pruneInfo_t", "rocsparse_mat_info", "type");
    subst("CUBLAS_ATOMICS_ALLOWED", "rocblas_atomics_allowed", "numeric_literal");
    subst("CUBLAS_ATOMICS_NOT_ALLOWED", "rocblas_atomics_not_allowed", "numeric_literal");
    subst("CUBLAS_COMPUTE_32F", "rocblas_compute_type_f32", "numeric_literal");
    subst("CUBLAS_DEFAULT_MATH", "rocblas_default_math", "numeric_literal");
    subst("CUBLAS_DIAG_NON_UNIT", "rocblas_diagonal_non_unit", "numeric_literal");
    subst("CUBLAS_DIAG_UNIT", "rocblas_diagonal_unit", "numeric_literal");
    subst("CUBLAS_FILL_MODE_FULL", "rocblas_fill_full", "numeric_literal");
    subst("CUBLAS_FILL_MODE_LOWER", "rocblas_fill_lower", "numeric_literal");
    subst("CUBLAS_FILL_MODE_UPPER", "rocblas_fill_upper", "numeric_literal");
    subst("CUBLAS_GEMM_DEFAULT", "rocblas_gemm_algo_standard", "numeric_literal");
    subst("CUBLAS_GEMM_DFALT", "rocblas_gemm_algo_standard", "numeric_literal");
    subst("CUBLAS_OP_C", "rocblas_operation_conjugate_transpose", "numeric_literal");
    subst("CUBLAS_OP_HERMITAN", "rocblas_operation_conjugate_transpose", "numeric_literal");
    subst("CUBLAS_OP_N", "rocblas_operation_none", "numeric_literal");
    subst("CUBLAS_OP_T", "rocblas_operation_transpose", "numeric_literal");
    subst("CUBLAS_POINTER_MODE_DEVICE", "rocblas_pointer_mode_device", "numeric_literal");
    subst("CUBLAS_POINTER_MODE_HOST", "rocblas_pointer_mode_host", "numeric_literal");
    subst("CUBLAS_SIDE_LEFT", "rocblas_side_left", "numeric_literal");
    subst("CUBLAS_SIDE_RIGHT", "rocblas_side_right", "numeric_literal");
    subst("CUBLAS_STATUS_ALLOC_FAILED", "rocblas_status_not_implemented", "numeric_literal");
    subst("CUBLAS_STATUS_ARCH_MISMATCH", "rocblas_status_arch_mismatch", "numeric_literal");
    subst("CUBLAS_STATUS_EXECUTION_FAILED", "rocblas_status_memory_error", "numeric_literal");
    subst("CUBLAS_STATUS_INTERNAL_ERROR", "rocblas_status_internal_error", "numeric_literal");
    subst("CUBLAS_STATUS_INVALID_VALUE", "rocblas_status_invalid_value", "numeric_literal");
    subst("CUBLAS_STATUS_MAPPING_ERROR", "rocblas_status_invalid_size", "numeric_literal");
    subst("CUBLAS_STATUS_NOT_INITIALIZED", "rocblas_status_invalid_handle", "numeric_literal");
    subst("CUBLAS_STATUS_NOT_SUPPORTED", "rocblas_status_perf_degraded", "numeric_literal");
    subst("CUBLAS_STATUS_SUCCESS", "rocblas_status_success", "numeric_literal");
    subst("CUDA_C_16BF", "rocblas_datatype_bf16_c", "numeric_literal");
    subst("CUDA_C_16F", "rocblas_datatype_f16_c", "numeric_literal");
    subst("CUDA_C_32F", "rocblas_datatype_f32_c", "numeric_literal");
    subst("CUDA_C_32I", "rocblas_datatype_i32_c", "numeric_literal");
    subst("CUDA_C_32U", "rocblas_datatype_u32_c", "numeric_literal");
    subst("CUDA_C_64F", "rocblas_datatype_f64_c", "numeric_literal");
    subst("CUDA_C_8I", "rocblas_datatype_i8_c", "numeric_literal");
    subst("CUDA_C_8U", "rocblas_datatype_u8_c", "numeric_literal");
    subst("CUDA_R_16BF", "rocblas_datatype_bf16_r", "numeric_literal");
    subst("CUDA_R_16F", "rocblas_datatype_f16_r", "numeric_literal");
    subst("CUDA_R_32F", "rocblas_datatype_f32_r", "numeric_literal");
    subst("CUDA_R_32I", "rocblas_datatype_i32_r", "numeric_literal");
    subst("CUDA_R_32U", "rocblas_datatype_u32_r", "numeric_literal");
    subst("CUDA_R_64F", "rocblas_datatype_f64_r", "numeric_literal");
    subst("CUDA_R_8I", "rocblas_datatype_i8_r", "numeric_literal");
    subst("CUDA_R_8U", "rocblas_datatype_u8_r", "numeric_literal");
    subst("CURAND_DIRECTION_VECTORS_32_JOEKUO6", "ROCRAND_DIRECTION_VECTORS_32_JOEKUO6", "numeric_literal");
    subst("CURAND_DIRECTION_VECTORS_64_JOEKUO6", "ROCRAND_DIRECTION_VECTORS_64_JOEKUO6", "numeric_literal");
    subst("CURAND_ORDERING_PSEUDO_BEST", "ROCRAND_ORDERING_PSEUDO_BEST", "numeric_literal");
    subst("CURAND_ORDERING_PSEUDO_DEFAULT", "ROCRAND_ORDERING_PSEUDO_DEFAULT", "numeric_literal");
    subst("CURAND_ORDERING_PSEUDO_DYNAMIC", "ROCRAND_ORDERING_PSEUDO_DYNAMIC", "numeric_literal");
    subst("CURAND_ORDERING_PSEUDO_LEGACY", "ROCRAND_ORDERING_PSEUDO_LEGACY", "numeric_literal");
    subst("CURAND_ORDERING_PSEUDO_SEEDED", "ROCRAND_ORDERING_PSEUDO_SEEDED", "numeric_literal");
    subst("CURAND_ORDERING_QUASI_DEFAULT", "ROCRAND_ORDERING_QUASI_DEFAULT", "numeric_literal");
    subst("CURAND_RNG_PSEUDO_DEFAULT", "ROCRAND_RNG_PSEUDO_DEFAULT", "numeric_literal");
    subst("CURAND_RNG_PSEUDO_MRG32K3A", "ROCRAND_RNG_PSEUDO_MRG32K3A", "numeric_literal");
    subst("CURAND_RNG_PSEUDO_MT19937", "ROCRAND_RNG_PSEUDO_MT19937", "numeric_literal");
    subst("CURAND_RNG_PSEUDO_MTGP32", "ROCRAND_RNG_PSEUDO_MTGP32", "numeric_literal");
    subst("CURAND_RNG_PSEUDO_PHILOX4_32_10", "ROCRAND_RNG_PSEUDO_PHILOX4_32_10", "numeric_literal");
    subst("CURAND_RNG_PSEUDO_XORWOW", "ROCRAND_RNG_PSEUDO_XORWOW", "numeric_literal");
    subst("CURAND_RNG_QUASI_DEFAULT", "ROCRAND_RNG_QUASI_DEFAULT", "numeric_literal");
    subst("CURAND_RNG_QUASI_SCRAMBLED_SOBOL32", "ROCRAND_RNG_QUASI_SCRAMBLED_SOBOL32", "numeric_literal");
    subst("CURAND_RNG_QUASI_SCRAMBLED_SOBOL64", "ROCRAND_RNG_QUASI_SCRAMBLED_SOBOL64", "numeric_literal");
    subst("CURAND_RNG_QUASI_SOBOL32", "ROCRAND_RNG_QUASI_SOBOL32", "numeric_literal");
    subst("CURAND_RNG_QUASI_SOBOL64", "ROCRAND_RNG_QUASI_SOBOL64", "numeric_literal");
    subst("CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6", "ROCRAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6", "numeric_literal");
    subst("CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6", "ROCRAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6", "numeric_literal");
    subst("CURAND_STATUS_ALLOCATION_FAILED", "ROCRAND_STATUS_ALLOCATION_FAILED", "numeric_literal");
    subst("CURAND_STATUS_DOUBLE_PRECISION_REQUIRED", "ROCRAND_STATUS_DOUBLE_PRECISION_REQUIRED", "numeric_literal");
    subst("CURAND_STATUS_INTERNAL_ERROR", "ROCRAND_STATUS_INTERNAL_ERROR", "numeric_literal");
    subst("CURAND_STATUS_LAUNCH_FAILURE", "ROCRAND_STATUS_LAUNCH_FAILURE", "numeric_literal");
    subst("CURAND_STATUS_LENGTH_NOT_MULTIPLE", "ROCRAND_STATUS_LENGTH_NOT_MULTIPLE", "numeric_literal");
    subst("CURAND_STATUS_NOT_INITIALIZED", "ROCRAND_STATUS_NOT_CREATED", "numeric_literal");
    subst("CURAND_STATUS_OUT_OF_RANGE", "ROCRAND_STATUS_OUT_OF_RANGE", "numeric_literal");
    subst("CURAND_STATUS_SUCCESS", "ROCRAND_STATUS_SUCCESS", "numeric_literal");
    subst("CURAND_STATUS_TYPE_ERROR", "ROCRAND_STATUS_TYPE_ERROR", "numeric_literal");
    subst("CURAND_STATUS_VERSION_MISMATCH", "ROCRAND_STATUS_VERSION_MISMATCH", "numeric_literal");
    subst("CUSOLVER_EIG_MODE_NOVECTOR", "rocblas_evect_none", "numeric_literal");
    subst("CUSOLVER_EIG_MODE_VECTOR", "rocblas_evect_original", "numeric_literal");
    subst("CUSOLVER_EIG_RANGE_ALL", "rocblas_erange_all", "numeric_literal");
    subst("CUSOLVER_EIG_RANGE_I", "rocblas_erange_index", "numeric_literal");
    subst("CUSOLVER_EIG_RANGE_V", "rocblas_erange_value", "numeric_literal");
    subst("CUSOLVER_EIG_TYPE_1", "rocblas_eform_ax", "numeric_literal");
    subst("CUSOLVER_EIG_TYPE_2", "rocblas_eform_abx", "numeric_literal");
    subst("CUSOLVER_EIG_TYPE_3", "rocblas_eform_bax", "numeric_literal");
    subst("CUSOLVER_STATUS_ALLOC_FAILED", "rocblas_status_memory_error", "numeric_literal");
    subst("CUSOLVER_STATUS_ARCH_MISMATCH", "rocblas_status_arch_mismatch", "numeric_literal");
    subst("CUSOLVER_STATUS_EXECUTION_FAILED", "rocblas_status_not_implemented", "numeric_literal");
    subst("CUSOLVER_STATUS_INTERNAL_ERROR", "rocblas_status_internal_error", "numeric_literal");
    subst("CUSOLVER_STATUS_INVALID_VALUE", "rocblas_status_invalid_value", "numeric_literal");
    subst("CUSOLVER_STATUS_MAPPING_ERROR", "rocblas_status_not_implemented", "numeric_literal");
    subst("CUSOLVER_STATUS_NOT_INITIALIZED", "rocblas_status_invalid_handle", "numeric_literal");
    subst("CUSOLVER_STATUS_NOT_SUPPORTED", "rocblas_status_not_implemented", "numeric_literal");
    subst("CUSOLVER_STATUS_SUCCESS", "rocblas_status_success", "numeric_literal");
    subst("CUSOLVER_STATUS_ZERO_PIVOT", "rocblas_status_not_implemented", "numeric_literal");
    subst("CUSPARSE_ACTION_NUMERIC", "rocsparse_action_numeric", "numeric_literal");
    subst("CUSPARSE_ACTION_SYMBOLIC", "rocsparse_action_symbolic", "numeric_literal");
    subst("CUSPARSE_DENSETOSPARSE_ALG_DEFAULT", "rocsparse_dense_to_sparse_alg_default", "numeric_literal");
    subst("CUSPARSE_DIAG_TYPE_NON_UNIT", "rocsparse_diag_type_non_unit", "numeric_literal");
    subst("CUSPARSE_DIAG_TYPE_UNIT", "rocsparse_diag_type_unit", "numeric_literal");
    subst("CUSPARSE_DIRECTION_COLUMN", "rocsparse_direction_column", "numeric_literal");
    subst("CUSPARSE_DIRECTION_ROW", "rocsparse_direction_row", "numeric_literal");
    subst("CUSPARSE_FILL_MODE_LOWER", "rocsparse_fill_mode_lower", "numeric_literal");
    subst("CUSPARSE_FILL_MODE_UPPER", "rocsparse_fill_mode_upper", "numeric_literal");
    subst("CUSPARSE_FORMAT_BLOCKED_ELL", "rocsparse_format_bell", "numeric_literal");
    subst("CUSPARSE_FORMAT_BSR", "rocsparse_format_bsr", "numeric_literal");
    subst("CUSPARSE_FORMAT_COO", "rocsparse_format_coo", "numeric_literal");
    subst("CUSPARSE_FORMAT_COO_AOS", "rocsparse_format_coo_aos", "numeric_literal");
    subst("CUSPARSE_FORMAT_CSC", "rocsparse_format_csc", "numeric_literal");
    subst("CUSPARSE_FORMAT_CSR", "rocsparse_format_csr", "numeric_literal");
    subst("CUSPARSE_FORMAT_SLICED_ELLPACK", "rocsparse_format_ell", "numeric_literal");
    subst("CUSPARSE_HYB_PARTITION_AUTO", "rocsparse_hyb_partition_auto", "numeric_literal");
    subst("CUSPARSE_HYB_PARTITION_MAX", "rocsparse_hyb_partition_max", "numeric_literal");
    subst("CUSPARSE_HYB_PARTITION_USER", "rocsparse_hyb_partition_user", "numeric_literal");
    subst("CUSPARSE_INDEX_16U", "rocsparse_indextype_u16", "numeric_literal");
    subst("CUSPARSE_INDEX_32I", "rocsparse_indextype_i32", "numeric_literal");
    subst("CUSPARSE_INDEX_64I", "rocsparse_indextype_i64", "numeric_literal");
    subst("CUSPARSE_INDEX_BASE_ONE", "rocsparse_index_base_one", "numeric_literal");
    subst("CUSPARSE_INDEX_BASE_ZERO", "rocsparse_index_base_zero", "numeric_literal");
    subst("CUSPARSE_MATRIX_TYPE_GENERAL", "rocsparse_matrix_type_general", "numeric_literal");
    subst("CUSPARSE_MATRIX_TYPE_HERMITIAN", "rocsparse_matrix_type_hermitian", "numeric_literal");
    subst("CUSPARSE_MATRIX_TYPE_SYMMETRIC", "rocsparse_matrix_type_symmetric", "numeric_literal");
    subst("CUSPARSE_MATRIX_TYPE_TRIANGULAR", "rocsparse_matrix_type_triangular", "numeric_literal");
    subst("CUSPARSE_OPERATION_CONJUGATE_TRANSPOSE", "rocsparse_operation_conjugate_transpose", "numeric_literal");
    subst("CUSPARSE_OPERATION_NON_TRANSPOSE", "rocsparse_operation_none", "numeric_literal");
    subst("CUSPARSE_OPERATION_TRANSPOSE", "rocsparse_operation_transpose", "numeric_literal");
    subst("CUSPARSE_ORDER_COL", "rocsparse_order_row", "numeric_literal");
    subst("CUSPARSE_ORDER_ROW", "rocsparse_order_column", "numeric_literal");
    subst("CUSPARSE_POINTER_MODE_DEVICE", "rocsparse_pointer_mode_device", "numeric_literal");
    subst("CUSPARSE_POINTER_MODE_HOST", "rocsparse_pointer_mode_host", "numeric_literal");
    subst("CUSPARSE_SDDMM_ALG_DEFAULT", "rocsparse_sddmm_alg_default", "numeric_literal");
    subst("CUSPARSE_SOLVE_POLICY_NO_LEVEL", "rocsparse_solve_policy_auto", "numeric_literal");
    subst("CUSPARSE_SOLVE_POLICY_USE_LEVEL", "rocsparse_solve_policy_auto", "numeric_literal");
    subst("CUSPARSE_SPARSETODENSE_ALG_DEFAULT", "rocsparse_sparse_to_dense_alg_default", "numeric_literal");
    subst("CUSPARSE_SPGEMM_DEFAULT", "rocsparse_spgemm_alg_default", "numeric_literal");
    subst("CUSPARSE_SPMAT_DIAG_TYPE", "rocsparse_spmat_diag_type", "numeric_literal");
    subst("CUSPARSE_SPMAT_FILL_MODE", "rocsparse_spmat_fill_mode", "numeric_literal");
    subst("CUSPARSE_SPMM_ALG_DEFAULT", "rocsparse_spmm_alg_default", "numeric_literal");
    subst("CUSPARSE_SPMM_BLOCKED_ELL_ALG1", "rocsparse_spmm_alg_bell", "numeric_literal");
    subst("CUSPARSE_SPMM_COO_ALG1", "rocsparse_spmm_alg_coo_segmented", "numeric_literal");
    subst("CUSPARSE_SPMM_COO_ALG2", "rocsparse_spmm_alg_coo_atomic", "numeric_literal");
    subst("CUSPARSE_SPMM_COO_ALG3", "rocsparse_spmm_alg_coo_segmented_atomic", "numeric_literal");
    subst("CUSPARSE_SPMM_CSR_ALG1", "rocsparse_spmm_alg_csr", "numeric_literal");
    subst("CUSPARSE_SPMM_CSR_ALG2", "rocsparse_spmm_alg_csr_row_split", "numeric_literal");
    subst("CUSPARSE_SPMM_CSR_ALG3", "rocsparse_spmm_alg_csr_merge", "numeric_literal");
    subst("CUSPARSE_SPMV_ALG_DEFAULT", "rocsparse_spmv_alg_default", "numeric_literal");
    subst("CUSPARSE_SPMV_COO_ALG1", "rocsparse_spmv_alg_coo", "numeric_literal");
    subst("CUSPARSE_SPMV_COO_ALG2", "rocsparse_spmv_alg_coo_atomic", "numeric_literal");
    subst("CUSPARSE_SPMV_CSR_ALG1", "rocsparse_spmv_alg_csr_adaptive", "numeric_literal");
    subst("CUSPARSE_SPMV_CSR_ALG2", "rocsparse_spmv_alg_csr_stream", "numeric_literal");
    subst("CUSPARSE_SPMV_SELL_ALG1", "rocsparse_spmv_alg_ell", "numeric_literal");
    subst("CUSPARSE_SPSM_ALG_DEFAULT", "rocsparse_spsm_alg_default", "numeric_literal");
    subst("CUSPARSE_SPSV_ALG_DEFAULT", "rocsparse_spsv_alg_default", "numeric_literal");
    subst("CUSPARSE_STATUS_ALLOC_FAILED", "rocsparse_status_memory_error", "numeric_literal");
    subst("CUSPARSE_STATUS_ARCH_MISMATCH", "rocsparse_status_arch_mismatch", "numeric_literal");
    subst("CUSPARSE_STATUS_INTERNAL_ERROR", "rocsparse_status_internal_error", "numeric_literal");
    subst("CUSPARSE_STATUS_INVALID_VALUE", "rocsparse_status_invalid_value", "numeric_literal");
    subst("CUSPARSE_STATUS_NOT_INITIALIZED", "rocsparse_status_not_initialized", "numeric_literal");
    subst("CUSPARSE_STATUS_NOT_SUPPORTED", "rocsparse_status_not_implemented", "numeric_literal");
    subst("CUSPARSE_STATUS_SUCCESS", "rocsparse_status_success", "numeric_literal");
    subst("CUSPARSE_STATUS_ZERO_PIVOT", "rocsparse_status_zero_pivot", "numeric_literal");
    subst("cusolver_int_t", "rocblas_int", "numeric_literal");
}

sub MIOpenSubstitutions {
    subst("cudnnActivationBackward", "miopenActivationBackward", "library");
    subst("cudnnActivationForward", "miopenActivationForward", "library");
    subst("cudnnBackendCreateDescriptor", "miopenBackendCreateDescriptor", "library");
    subst("cudnnBackendDestroyDescriptor", "miopenBackendDestroyDescriptor", "library");
    subst("cudnnBackendExecute", "miopenBackendExecute", "library");
    subst("cudnnBackendFinalize", "miopenBackendFinalize", "library");
    subst("cudnnBackendGetAttribute", "miopenBackendGetAttribute", "library");
    subst("cudnnBackendSetAttribute", "miopenBackendSetAttribute", "library");
    subst("cudnnBatchNormalizationBackward", "miopenBatchNormalizationBackward", "library");
    subst("cudnnBatchNormalizationForwardInference", "miopenBatchNormalizationForwardInference", "library");
    subst("cudnnBatchNormalizationForwardTraining", "miopenBatchNormalizationForwardTraining", "library");
    subst("cudnnCTCLoss", "miopenCTCLoss", "library");
    subst("cudnnConvolutionBackwardBias", "miopenConvolutionBackwardBias", "library");
    subst("cudnnConvolutionBackwardData", "miopenConvolutionBackwardData", "library");
    subst("cudnnConvolutionBiasActivationForward", "miopenConvolutionBiasActivationForward", "library");
    subst("cudnnConvolutionForward", "miopenConvolutionForward", "library");
    subst("cudnnCreate", "miopenCreate", "library");
    subst("cudnnCreateActivationDescriptor", "miopenCreateActivationDescriptor", "library");
    subst("cudnnCreateCTCLossDescriptor", "miopenCreateCTCLossDescriptor", "library");
    subst("cudnnCreateConvolutionDescriptor", "miopenCreateConvolutionDescriptor", "library");
    subst("cudnnCreateDropoutDescriptor", "miopenCreateDropoutDescriptor", "library");
    subst("cudnnCreateLRNDescriptor", "miopenCreateLRNDescriptor", "library");
    subst("cudnnCreatePoolingDescriptor", "miopenCreatePoolingDescriptor", "library");
    subst("cudnnCreateRNNDescriptor", "miopenCreateRNNDescriptor", "library");
    subst("cudnnCreateReduceTensorDescriptor", "miopenCreateReduceTensorDescriptor", "library");
    subst("cudnnCreateTensorDescriptor", "miopenCreateTensorDescriptor", "library");
    subst("cudnnDeriveBNTensorDescriptor", "miopenDeriveBNTensorDescriptor", "library");
    subst("cudnnDestroy", "miopenDestroy", "library");
    subst("cudnnDestroyActivationDescriptor", "miopenDestroyActivationDescriptor", "library");
    subst("cudnnDestroyCTCLossDescriptor", "miopenDestroyCTCLossDescriptor", "library");
    subst("cudnnDestroyConvolutionDescriptor", "miopenDestroyConvolutionDescriptor", "library");
    subst("cudnnDestroyDropoutDescriptor", "miopenDestroyDropoutDescriptor", "library");
    subst("cudnnDestroyLRNDescriptor", "miopenDestroyLRNDescriptor", "library");
    subst("cudnnDestroyPoolingDescriptor", "miopenDestroyPoolingDescriptor", "library");
    subst("cudnnDestroyRNNDescriptor", "miopenDestroyRNNDescriptor", "library");
    subst("cudnnDestroyReduceTensorDescriptor", "miopenDestroyReduceTensorDescriptor", "library");
    subst("cudnnDestroyTensorDescriptor", "miopenDestroyTensorDescriptor", "library");
    subst("cudnnDropoutBackward", "miopenDropoutBackward", "library");
    subst("cudnnDropoutForward", "miopenDropoutForward", "library");
    subst("cudnnDropoutGetReserveSpaceSize", "miopenDropoutGetReserveSpaceSize", "library");
    subst("cudnnDropoutGetStatesSize", "miopenDropoutGetStatesSize", "library");
    subst("cudnnFindConvolutionForwardAlgorithmEx", "miopenFindConvolutionForwardAlgorithm", "library");
    subst("cudnnGetCTCLossDescriptor", "miopenGetCTCLossDescriptor", "library");
    subst("cudnnGetCTCLossWorkspaceSize", "miopenGetCTCLossWorkspaceSize", "library");
    subst("cudnnGetConvolution2dForwardOutputDim", "miopenGetConvolutionForwardOutputDim", "library");
    subst("cudnnGetConvolutionBackwardDataWorkspaceSize", "miopenConvolutionBackwardDataGetWorkSpaceSize", "library");
    subst("cudnnGetConvolutionForwardWorkspaceSize", "miopenConvolutionForwardGetWorkSpaceSize", "library");
    subst("cudnnGetDropoutDescriptor", "miopenGetDropoutDescriptor", "library");
    subst("cudnnGetErrorString", "miopenGetErrorString", "library");
    subst("cudnnGetLRNDescriptor", "miopenGetLRNDescriptor", "library");
    subst("cudnnGetPooling2dDescriptor", "miopenGet2dPoolingDescriptor", "library");
    subst("cudnnGetPooling2dForwardOutputDim", "miopenGetPoolingForwardOutputDim", "library");
    subst("cudnnGetPoolingNdDescriptor", "miopenGetNdPoolingDescriptor", "library");
    subst("cudnnGetPoolingNdForwardOutputDim", "miopenGetPoolingNdForwardOutputDim", "library");
    subst("cudnnGetRNNDescriptor", "miopenGetRNNDescriptor_V2", "library");
    subst("cudnnGetRNNDescriptor_v6", "miopenGetRNNDescriptor_V2", "library");
    subst("cudnnGetRNNParamsSize", "miopenGetRNNParamsSize", "library");
    subst("cudnnGetRNNTrainingReserveSize", "miopenGetRNNTrainingReserveSize", "library");
    subst("cudnnGetRNNWorkspaceSize", "miopenGetRNNWorkspaceSize", "library");
    subst("cudnnGetReduceTensorDescriptor", "miopenGetReduceTensorDescriptor", "library");
    subst("cudnnGetReductionIndicesSize", "miopenGetReductionIndicesSize", "library");
    subst("cudnnGetReductionWorkspaceSize", "miopenGetReductionWorkspaceSize", "library");
    subst("cudnnGetStream", "miopenGetStream", "library");
    subst("cudnnGetTensor4dDescriptor", "miopenGet4dTensorDescriptor", "library");
    subst("cudnnRNNBackwardData", "miopenRNNBackwardData", "library");
    subst("cudnnRNNBackwardWeights", "miopenRNNBackwardWeights", "library");
    subst("cudnnRNNForwardInference", "miopenRNNForwardInference", "library");
    subst("cudnnRNNForwardTraining", "miopenRNNForwardTraining", "library");
    subst("cudnnReduceTensor", "miopenReduceTensor", "library");
    subst("cudnnRestoreDropoutDescriptor", "miopenRestoreDropoutDescriptor", "library");
    subst("cudnnScaleTensor", "miopenScaleTensor", "library");
    subst("cudnnSetCTCLossDescriptor", "miopenSetCTCLossDescriptor", "library");
    subst("cudnnSetConvolutionGroupCount", "miopenSetConvolutionGroupCount", "library");
    subst("cudnnSetDropoutDescriptor", "miopenSetDropoutDescriptor", "library");
    subst("cudnnSetLRNDescriptor", "miopenSetLRNDescriptor", "library");
    subst("cudnnSetPooling2dDescriptor", "miopenSet2dPoolingDescriptor", "library");
    subst("cudnnSetPoolingNdDescriptor", "miopenSetNdPoolingDescriptor", "library");
    subst("cudnnSetRNNDescriptor_v6", "miopenSetRNNDescriptor_V2", "library");
    subst("cudnnSetReduceTensorDescriptor", "miopenSetReduceTensorDescriptor", "library");
    subst("cudnnSetStream", "miopenSetStream", "library");
    subst("cudnnSetTensor", "miopenSetTensor", "library");
    subst("cudnnSetTensor4dDescriptorEx", "miopenSet4dTensorDescriptorEx", "library");
    subst("cudnnSoftmaxBackward", "miopenSoftmaxBackward_V2", "library");
    subst("cudnnSoftmaxForward", "miopenSoftmaxForward_V2", "library");
    subst("cudnnTransformTensor", "miopenTransformTensor", "library");
    subst("cudnn.h", "miopen\/miopen.h", "include_cuda_main_header");
    subst("cudnnActivationDescriptor_t", "miopenActivationDescriptor_t", "type");
    subst("cudnnActivationMode_t", "miopenActivationMode_t", "type");
    subst("cudnnBackendAttributeName_t", "miopenBackendAttributeName_t", "type");
    subst("cudnnBackendAttributeType_t", "miopenBackendAttributeType_t", "type");
    subst("cudnnBackendDescriptorType_t", "miopenBackendDescriptorType_t", "type");
    subst("cudnnBackendDescriptor_t", "miopenBackendDescriptor_t", "type");
    subst("cudnnBackendHeurMode_t", "miopenBackendHeurMode_t", "type");
    subst("cudnnBatchNormMode_t", "miopenBatchNormMode_t", "type");
    subst("cudnnCTCLossAlgo_t", "miopenCTCLossAlgo_t", "type");
    subst("cudnnCTCLossDescriptor_t", "miopenCTCLossDescriptor_t", "type");
    subst("cudnnContext", "miopenHandle", "type");
    subst("cudnnConvolutionBwdDataAlgoPerfStruct", "miopenConvAlgoPerf_t", "type");
    subst("cudnnConvolutionBwdDataAlgoPerf_t", "miopenConvAlgoPerf_t", "type");
    subst("cudnnConvolutionBwdDataAlgo_t", "miopenConvBwdDataAlgorithm_t", "type");
    subst("cudnnConvolutionDescriptor_t", "miopenConvolutionDescriptor_t", "type");
    subst("cudnnConvolutionFwdAlgoPerfStruct", "miopenConvAlgoPerf_t", "type");
    subst("cudnnConvolutionFwdAlgoPerf_t", "miopenConvAlgoPerf_t", "type");
    subst("cudnnConvolutionFwdAlgo_t", "miopenConvFwdAlgorithm_t", "type");
    subst("cudnnConvolutionMode_t", "miopenConvolutionMode_t", "type");
    subst("cudnnDataType_t", "miopenDataType_t", "type");
    subst("cudnnDirectionMode_t", "miopenRNNDirectionMode_t", "type");
    subst("cudnnDropoutDescriptor_t", "miopenDropoutDescriptor_t", "type");
    subst("cudnnFilterDescriptor_t", "miopenTensorDescriptor_t", "type");
    subst("cudnnHandle_t", "miopenHandle_t", "type");
    subst("cudnnIndicesType_t", "miopenIndicesType_t", "type");
    subst("cudnnLRNDescriptor_t", "miopenLRNDescriptor_t", "type");
    subst("cudnnLRNMode_t", "miopenLRNMode_t", "type");
    subst("cudnnNanPropagation_t", "miopenNanPropagation_t", "type");
    subst("cudnnOpTensorOp_t", "miopenTensorOp_t", "type");
    subst("cudnnPaddingMode_t", "miopenPaddingMode_t", "type");
    subst("cudnnPointwiseMode_t", "miopenPointwiseMode_t", "type");
    subst("cudnnPoolingDescriptor_t", "miopenPoolingDescriptor_t", "type");
    subst("cudnnPoolingMode_t", "miopenPoolingMode_t", "type");
    subst("cudnnRNNAlgo_t", "miopenRNNAlgo_t", "type");
    subst("cudnnRNNBiasMode_t", "miopenRNNBiasMode_t", "type");
    subst("cudnnRNNDescriptor_t", "miopenRNNDescriptor_t", "type");
    subst("cudnnRNNInputMode_t", "miopenRNNInputMode_t", "type");
    subst("cudnnRNNMode_t", "miopenRNNMode_t", "type");
    subst("cudnnRNNPaddingMode_t", "miopenRNNPaddingMode_t", "type");
    subst("cudnnReduceTensorDescriptor_t", "miopenReduceTensorDescriptor_t", "type");
    subst("cudnnReduceTensorIndices_t", "miopenReduceTensorIndices_t", "type");
    subst("cudnnReduceTensorOp_t", "miopenReduceTensorOp_t", "type");
    subst("cudnnRngDistribution_t", "miopenRngDistribution_t", "type");
    subst("cudnnSoftmaxAlgorithm_t", "miopenSoftmaxAlgorithm_t", "type");
    subst("cudnnSoftmaxMode_t", "miopenSoftmaxMode_t", "type");
    subst("cudnnStatus_t", "miopenStatus_t", "type");
    subst("cudnnTensorDescriptor_t", "miopenTensorDescriptor_t", "type");
    subst("cudnnTensorFormat_t", "miopenTensorLayout_t", "type");
    subst("CUDNN_16BIT_INDICES", "MIOPEN_16BIT_INDICES", "numeric_literal");
    subst("CUDNN_32BIT_INDICES", "MIOPEN_32BIT_INDICES", "numeric_literal");
    subst("CUDNN_64BIT_INDICES", "MIOPEN_64BIT_INDICES", "numeric_literal");
    subst("CUDNN_8BIT_INDICES", "MIOPEN_8BIT_INDICES", "numeric_literal");
    subst("CUDNN_ACTIVATION_CLIPPED_RELU", "miopenActivationCLIPPEDRELU", "numeric_literal");
    subst("CUDNN_ACTIVATION_ELU", "miopenActivationELU", "numeric_literal");
    subst("CUDNN_ACTIVATION_IDENTITY", "miopenActivationPASTHRU", "numeric_literal");
    subst("CUDNN_ACTIVATION_RELU", "miopenActivationRELU", "numeric_literal");
    subst("CUDNN_ACTIVATION_SIGMOID", "miopenActivationLOGISTIC", "numeric_literal");
    subst("CUDNN_ACTIVATION_TANH", "miopenActivationTANH", "numeric_literal");
    subst("CUDNN_ATTR_CONVOLUTION_COMP_TYPE", "MIOPEN_ATTR_CONVOLUTION_COMP_TYPE", "numeric_literal");
    subst("CUDNN_ATTR_CONVOLUTION_CONV_MODE", "MIOPEN_ATTR_CONVOLUTION_CONV_MODE", "numeric_literal");
    subst("CUDNN_ATTR_CONVOLUTION_DILATIONS", "MIOPEN_ATTR_CONVOLUTION_DILATIONS", "numeric_literal");
    subst("CUDNN_ATTR_CONVOLUTION_FILTER_STRIDES", "MIOPEN_ATTR_CONVOLUTION_FILTER_STRIDES", "numeric_literal");
    subst("CUDNN_ATTR_CONVOLUTION_POST_PADDINGS", "MIOPEN_ATTR_CONVOLUTION_POST_PADDINGS", "numeric_literal");
    subst("CUDNN_ATTR_CONVOLUTION_PRE_PADDINGS", "MIOPEN_ATTR_CONVOLUTION_PRE_PADDINGS", "numeric_literal");
    subst("CUDNN_ATTR_CONVOLUTION_SPATIAL_DIMS", "MIOPEN_ATTR_CONVOLUTION_SPATIAL_DIMS", "numeric_literal");
    subst("CUDNN_ATTR_ENGINECFG_ENGINE", "MIOPEN_ATTR_ENGINECFG_ENGINE", "numeric_literal");
    subst("CUDNN_ATTR_ENGINECFG_INTERMEDIATE_INFO", "MIOPEN_ATTR_ENGINECFG_INTERMEDIATE_INFO", "numeric_literal");
    subst("CUDNN_ATTR_ENGINECFG_KNOB_CHOICES", "MIOPEN_ATTR_ENGINECFG_KNOB_CHOICES", "numeric_literal");
    subst("CUDNN_ATTR_ENGINEHEUR_MODE", "MIOPEN_ATTR_ENGINEHEUR_MODE", "numeric_literal");
    subst("CUDNN_ATTR_ENGINEHEUR_OPERATION_GRAPH", "MIOPEN_ATTR_ENGINEHEUR_OPERATION_GRAPH", "numeric_literal");
    subst("CUDNN_ATTR_ENGINEHEUR_RESULTS", "MIOPEN_ATTR_ENGINEHEUR_RESULTS", "numeric_literal");
    subst("CUDNN_ATTR_ENGINEHEUR_SM_COUNT_TARGET", "MIOPEN_ATTR_ENGINEHEUR_SM_COUNT_TARGET", "numeric_literal");
    subst("CUDNN_ATTR_ENGINE_BEHAVIOR_NOTE", "MIOPEN_ATTR_ENGINE_BEHAVIOR_NOTE", "numeric_literal");
    subst("CUDNN_ATTR_ENGINE_GLOBAL_INDEX", "MIOPEN_ATTR_ENGINE_GLOBAL_INDEX", "numeric_literal");
    subst("CUDNN_ATTR_ENGINE_KNOB_INFO", "MIOPEN_ATTR_ENGINE_KNOB_INFO", "numeric_literal");
    subst("CUDNN_ATTR_ENGINE_LAYOUT_INFO", "MIOPEN_ATTR_ENGINE_LAYOUT_INFO", "numeric_literal");
    subst("CUDNN_ATTR_ENGINE_NUMERICAL_NOTE", "MIOPEN_ATTR_ENGINE_NUMERICAL_NOTE", "numeric_literal");
    subst("CUDNN_ATTR_ENGINE_OPERATION_GRAPH", "MIOPEN_ATTR_ENGINE_OPERATION_GRAPH", "numeric_literal");
    subst("CUDNN_ATTR_ENGINE_SM_COUNT_TARGET", "MIOPEN_ATTR_ENGINE_SM_COUNT_TARGET", "numeric_literal");
    subst("CUDNN_ATTR_EXECUTION_PLAN_COMPUTED_INTERMEDIATE_UIDS", "MIOPEN_ATTR_EXECUTION_PLAN_COMPUTED_INTERMEDIATE_UIDS", "numeric_literal");
    subst("CUDNN_ATTR_EXECUTION_PLAN_ENGINE_CONFIG", "MIOPEN_ATTR_EXECUTION_PLAN_ENGINE_CONFIG", "numeric_literal");
    subst("CUDNN_ATTR_EXECUTION_PLAN_HANDLE", "MIOPEN_ATTR_EXECUTION_PLAN_HANDLE", "numeric_literal");
    subst("CUDNN_ATTR_EXECUTION_PLAN_JSON_REPRESENTATION", "MIOPEN_ATTR_EXECUTION_PLAN_JSON_REPRESENTATION", "numeric_literal");
    subst("CUDNN_ATTR_EXECUTION_PLAN_RUN_ONLY_INTERMEDIATE_UIDS", "MIOPEN_ATTR_EXECUTION_PLAN_RUN_ONLY_INTERMEDIATE_UIDS", "numeric_literal");
    subst("CUDNN_ATTR_EXECUTION_PLAN_WORKSPACE_SIZE", "MIOPEN_ATTR_EXECUTION_PLAN_WORKSPACE_SIZE", "numeric_literal");
    subst("CUDNN_ATTR_INTERMEDIATE_INFO_DEPENDENT_ATTRIBUTES", "MIOPEN_ATTR_INTERMEDIATE_INFO_DEPENDENT_ATTRIBUTES", "numeric_literal");
    subst("CUDNN_ATTR_INTERMEDIATE_INFO_DEPENDENT_DATA_UIDS", "MIOPEN_ATTR_INTERMEDIATE_INFO_DEPENDENT_DATA_UIDS", "numeric_literal");
    subst("CUDNN_ATTR_INTERMEDIATE_INFO_SIZE", "MIOPEN_ATTR_INTERMEDIATE_INFO_SIZE", "numeric_literal");
    subst("CUDNN_ATTR_INTERMEDIATE_INFO_UNIQUE_ID", "MIOPEN_ATTR_INTERMEDIATE_INFO_UNIQUE_ID", "numeric_literal");
    subst("CUDNN_ATTR_KNOB_CHOICE_KNOB_TYPE", "MIOPEN_ATTR_KNOB_CHOICE_KNOB_TYPE", "numeric_literal");
    subst("CUDNN_ATTR_KNOB_CHOICE_KNOB_VALUE", "MIOPEN_ATTR_KNOB_CHOICE_KNOB_VALUE", "numeric_literal");
    subst("CUDNN_ATTR_KNOB_INFO_MAXIMUM_VALUE", "MIOPEN_ATTR_KNOB_INFO_MAXIMUM_VALUE", "numeric_literal");
    subst("CUDNN_ATTR_KNOB_INFO_MINIMUM_VALUE", "MIOPEN_ATTR_KNOB_INFO_MINIMUM_VALUE", "numeric_literal");
    subst("CUDNN_ATTR_KNOB_INFO_STRIDE", "MIOPEN_ATTR_KNOB_INFO_STRIDE", "numeric_literal");
    subst("CUDNN_ATTR_KNOB_INFO_TYPE", "MIOPEN_ATTR_KNOB_INFO_TYPE", "numeric_literal");
    subst("CUDNN_ATTR_LAYOUT_INFO_TENSOR_UID", "MIOPEN_ATTR_LAYOUT_INFO_TENSOR_UID", "numeric_literal");
    subst("CUDNN_ATTR_LAYOUT_INFO_TYPES", "MIOPEN_ATTR_LAYOUT_INFO_TYPES", "numeric_literal");
    subst("CUDNN_ATTR_MATMUL_COMP_TYPE", "MIOPEN_ATTR_MATMUL_COMP_TYPE", "numeric_literal");
    subst("CUDNN_ATTR_MATMUL_PADDING_VALUE", "MIOPEN_ATTR_MATMUL_PADDING_VALUE", "numeric_literal");
    subst("CUDNN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT", "MIOPEN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT", "numeric_literal");
    subst("CUDNN_ATTR_OPERATIONGRAPH_HANDLE", "MIOPEN_ATTR_OPERATIONGRAPH_HANDLE", "numeric_literal");
    subst("CUDNN_ATTR_OPERATIONGRAPH_OPS", "MIOPEN_ATTR_OPERATIONGRAPH_OPS", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_BN_SCALE_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_BN_SCALE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_BIAS_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_BIAS_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_SCALE_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_SCALE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_DY_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_DY_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_BIAS", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_BIAS", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_DY_SCALE_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_DY_SCALE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_X_SCALE_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_X_SCALE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_INVSTD_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_INVSTD_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_MATH_PREC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_MATH_PREC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_MEAN_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_MEAN_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_X_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_X_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_ACCUM_COUNT_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_ACCUM_COUNT_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_BIAS_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_BIAS_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_EPSILON_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_EPSILON_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_EQ_BIAS_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_EQ_BIAS_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_EQ_SCALE_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_EQ_SCALE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_EXP_AVERATE_FACTOR_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_EXP_AVERATE_FACTOR_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_MATH_PREC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_MATH_PREC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_PREV_RUNNING_MEAN_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_PREV_RUNNING_MEAN_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_PREV_RUNNING_VAR_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_PREV_RUNNING_VAR_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_SAVED_INV_STD_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_SAVED_INV_STD_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_SAVED_MEAN_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_SAVED_MEAN_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_SCALE_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_SCALE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_STATS_MODE", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_STATS_MODE", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_UPDATED_RUNNING_MEAN_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_UPDATED_RUNNING_MEAN_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_UPDATED_RUNNING_VAR_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_UPDATED_RUNNING_VAR_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_Y_SQ_SUM_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_Y_SQ_SUM_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_Y_SUM_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_Y_SUM_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONCAT_AXIS", "MIOPEN_ATTR_OPERATION_CONCAT_AXIS", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONCAT_INPLACE_INDEX", "MIOPEN_ATTR_OPERATION_CONCAT_INPLACE_INDEX", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONCAT_INPUT_DESCS", "MIOPEN_ATTR_OPERATION_CONCAT_INPUT_DESCS", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONCAT_OUTPUT_DESC", "MIOPEN_ATTR_OPERATION_CONCAT_OUTPUT_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_ALPHA", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_ALPHA", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_BETA", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_BETA", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_CONV_DESC", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_CONV_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_DX", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_DX", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_DY", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_DY", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_W", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_W", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_ALPHA", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_ALPHA", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_BETA", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_BETA", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_CONV_DESC", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_CONV_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_DW", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_DW", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_DY", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_DY", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_X", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_X", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_ALPHA", "MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_ALPHA", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_BETA", "MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_BETA", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_CONV_DESC", "MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_CONV_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_W", "MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_W", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_X", "MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_X", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_Y", "MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_Y", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_GENSTATS_MATH_PREC", "MIOPEN_ATTR_OPERATION_GENSTATS_MATH_PREC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_GENSTATS_MODE", "MIOPEN_ATTR_OPERATION_GENSTATS_MODE", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_GENSTATS_SQSUMDESC", "MIOPEN_ATTR_OPERATION_GENSTATS_SQSUMDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_GENSTATS_SUMDESC", "MIOPEN_ATTR_OPERATION_GENSTATS_SUMDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_GENSTATS_XDESC", "MIOPEN_ATTR_OPERATION_GENSTATS_XDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_MATMUL_ADESC", "MIOPEN_ATTR_OPERATION_MATMUL_ADESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_MATMUL_BDESC", "MIOPEN_ATTR_OPERATION_MATMUL_BDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_MATMUL_CDESC", "MIOPEN_ATTR_OPERATION_MATMUL_CDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_MATMUL_DESC", "MIOPEN_ATTR_OPERATION_MATMUL_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_MATMUL_GEMM_K_OVERRIDE_DESC", "MIOPEN_ATTR_OPERATION_MATMUL_GEMM_K_OVERRIDE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_MATMUL_GEMM_M_OVERRIDE_DESC", "MIOPEN_ATTR_OPERATION_MATMUL_GEMM_M_OVERRIDE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_MATMUL_GEMM_N_OVERRIDE_DESC", "MIOPEN_ATTR_OPERATION_MATMUL_GEMM_N_OVERRIDE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_MATMUL_IRREGULARLY_STRIDED_BATCH_COUNT", "MIOPEN_ATTR_OPERATION_MATMUL_IRREGULARLY_STRIDED_BATCH_COUNT", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_BWD_DBIAS_DESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_DBIAS_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_BWD_DSCALE_DESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_DSCALE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_BWD_DXDESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_DXDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_BWD_DYDESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_DYDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_BWD_EPSILON_DESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_EPSILON_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_BWD_INV_VARIANCE_DESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_INV_VARIANCE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_BWD_MEAN_DESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_MEAN_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_BWD_MODE", "MIOPEN_ATTR_OPERATION_NORM_BWD_MODE", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_BWD_PEER_STAT_DESCS", "MIOPEN_ATTR_OPERATION_NORM_BWD_PEER_STAT_DESCS", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_BWD_SCALE_DESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_SCALE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_BWD_XDESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_XDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_BIAS_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_BIAS_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_EPSILON_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_EPSILON_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_EXP_AVG_FACTOR_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_EXP_AVG_FACTOR_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_INPUT_RUNNING_MEAN_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_INPUT_RUNNING_MEAN_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_INPUT_RUNNING_VAR_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_INPUT_RUNNING_VAR_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_INV_VARIANCE_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_INV_VARIANCE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_MEAN_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_MEAN_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_MODE", "MIOPEN_ATTR_OPERATION_NORM_FWD_MODE", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_OUTPUT_RUNNING_MEAN_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_OUTPUT_RUNNING_MEAN_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_OUTPUT_RUNNING_VAR_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_OUTPUT_RUNNING_VAR_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_PEER_STAT_DESCS", "MIOPEN_ATTR_OPERATION_NORM_FWD_PEER_STAT_DESCS", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_PHASE", "MIOPEN_ATTR_OPERATION_NORM_FWD_PHASE", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_SCALE_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_SCALE_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_XDESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_XDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_NORM_FWD_YDESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_YDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_POINTWISE_ALPHA1", "MIOPEN_ATTR_OPERATION_POINTWISE_ALPHA1", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_POINTWISE_ALPHA2", "MIOPEN_ATTR_OPERATION_POINTWISE_ALPHA2", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_POINTWISE_BDESC", "MIOPEN_ATTR_OPERATION_POINTWISE_BDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_POINTWISE_DXDESC", "MIOPEN_ATTR_OPERATION_POINTWISE_DXDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_POINTWISE_DYDESC", "MIOPEN_ATTR_OPERATION_POINTWISE_DYDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_POINTWISE_PW_DESCRIPTOR", "MIOPEN_ATTR_OPERATION_POINTWISE_PW_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_POINTWISE_TDESC", "MIOPEN_ATTR_OPERATION_POINTWISE_TDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_POINTWISE_XDESC", "MIOPEN_ATTR_OPERATION_POINTWISE_XDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_POINTWISE_YDESC", "MIOPEN_ATTR_OPERATION_POINTWISE_YDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_REDUCTION_DESC", "MIOPEN_ATTR_OPERATION_REDUCTION_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_REDUCTION_XDESC", "MIOPEN_ATTR_OPERATION_REDUCTION_XDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_REDUCTION_YDESC", "MIOPEN_ATTR_OPERATION_REDUCTION_YDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_ALPHA", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_ALPHA", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_BETA", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_BETA", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_DESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_DXDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_DXDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_DYDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_DYDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_IDXDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_IDXDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_XDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_XDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_YDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_YDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_FWD_ALPHA", "MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_ALPHA", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_FWD_BETA", "MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_BETA", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_FWD_DESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_FWD_IDXDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_IDXDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_FWD_XDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_XDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESAMPLE_FWD_YDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_YDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESHAPE_XDESC", "MIOPEN_ATTR_OPERATION_RESHAPE_XDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RESHAPE_YDESC", "MIOPEN_ATTR_OPERATION_RESHAPE_YDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RNG_DESC", "MIOPEN_ATTR_OPERATION_RNG_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RNG_OFFSET_DESC", "MIOPEN_ATTR_OPERATION_RNG_OFFSET_DESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RNG_SEED", "MIOPEN_ATTR_OPERATION_RNG_SEED", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_RNG_YDESC", "MIOPEN_ATTR_OPERATION_RNG_YDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_SIGNAL_FLAGDESC", "MIOPEN_ATTR_OPERATION_SIGNAL_FLAGDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_SIGNAL_MODE", "MIOPEN_ATTR_OPERATION_SIGNAL_MODE", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_SIGNAL_VALUE", "MIOPEN_ATTR_OPERATION_SIGNAL_VALUE", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_SIGNAL_XDESC", "MIOPEN_ATTR_OPERATION_SIGNAL_XDESC", "numeric_literal");
    subst("CUDNN_ATTR_OPERATION_SIGNAL_YDESC", "MIOPEN_ATTR_OPERATION_SIGNAL_YDESC", "numeric_literal");
    subst("CUDNN_ATTR_POINTWISE_AXIS", "MIOPEN_ATTR_POINTWISE_AXIS", "numeric_literal");
    subst("CUDNN_ATTR_POINTWISE_ELU_ALPHA", "MIOPEN_ATTR_POINTWISE_ELU_ALPHA", "numeric_literal");
    subst("CUDNN_ATTR_POINTWISE_MATH_PREC", "MIOPEN_ATTR_POINTWISE_MATH_PREC", "numeric_literal");
    subst("CUDNN_ATTR_POINTWISE_MODE", "MIOPEN_ATTR_POINTWISE_MODE", "numeric_literal");
    subst("CUDNN_ATTR_POINTWISE_NAN_PROPAGATION", "MIOPEN_ATTR_POINTWISE_NAN_PROPAGATION", "numeric_literal");
    subst("CUDNN_ATTR_POINTWISE_RELU_LOWER_CLIP", "MIOPEN_ATTR_POINTWISE_RELU_LOWER_CLIP", "numeric_literal");
    subst("CUDNN_ATTR_POINTWISE_RELU_LOWER_CLIP_SLOPE", "MIOPEN_ATTR_POINTWISE_RELU_LOWER_CLIP_SLOPE", "numeric_literal");
    subst("CUDNN_ATTR_POINTWISE_RELU_UPPER_CLIP", "MIOPEN_ATTR_POINTWISE_RELU_UPPER_CLIP", "numeric_literal");
    subst("CUDNN_ATTR_POINTWISE_SOFTPLUS_BETA", "MIOPEN_ATTR_POINTWISE_SOFTPLUS_BETA", "numeric_literal");
    subst("CUDNN_ATTR_POINTWISE_SWISH_BETA", "MIOPEN_ATTR_POINTWISE_SWISH_BETA", "numeric_literal");
    subst("CUDNN_ATTR_REDUCTION_COMP_TYPE", "MIOPEN_ATTR_REDUCTION_COMP_TYPE", "numeric_literal");
    subst("CUDNN_ATTR_REDUCTION_OPERATOR", "MIOPEN_ATTR_REDUCTION_OPERATOR", "numeric_literal");
    subst("CUDNN_ATTR_RESAMPLE_COMP_TYPE", "MIOPEN_ATTR_RESAMPLE_COMP_TYPE", "numeric_literal");
    subst("CUDNN_ATTR_RESAMPLE_MODE", "MIOPEN_ATTR_RESAMPLE_MODE", "numeric_literal");
    subst("CUDNN_ATTR_RESAMPLE_NAN_PROPAGATION", "MIOPEN_ATTR_RESAMPLE_NAN_PROPAGATION", "numeric_literal");
    subst("CUDNN_ATTR_RESAMPLE_PADDING_MODE", "MIOPEN_ATTR_RESAMPLE_PADDING_MODE", "numeric_literal");
    subst("CUDNN_ATTR_RESAMPLE_POST_PADDINGS", "MIOPEN_ATTR_RESAMPLE_POST_PADDINGS", "numeric_literal");
    subst("CUDNN_ATTR_RESAMPLE_PRE_PADDINGS", "MIOPEN_ATTR_RESAMPLE_PRE_PADDINGS", "numeric_literal");
    subst("CUDNN_ATTR_RESAMPLE_SPATIAL_DIMS", "MIOPEN_ATTR_RESAMPLE_SPATIAL_DIMS", "numeric_literal");
    subst("CUDNN_ATTR_RESAMPLE_STRIDES", "MIOPEN_ATTR_RESAMPLE_STRIDES", "numeric_literal");
    subst("CUDNN_ATTR_RESAMPLE_WINDOW_DIMS", "MIOPEN_ATTR_RESAMPLE_WINDOW_DIMS", "numeric_literal");
    subst("CUDNN_ATTR_RNG_BERNOULLI_DIST_PROBABILITY", "MIOPEN_ATTR_RNG_BERNOULLI_DIST_PROBABILITY", "numeric_literal");
    subst("CUDNN_ATTR_RNG_DISTRIBUTION", "MIOPEN_ATTR_RNG_DISTRIBUTION", "numeric_literal");
    subst("CUDNN_ATTR_RNG_NORMAL_DIST_MEAN", "MIOPEN_ATTR_RNG_NORMAL_DIST_MEAN", "numeric_literal");
    subst("CUDNN_ATTR_RNG_NORMAL_DIST_STANDARD_DEVIATION", "MIOPEN_ATTR_RNG_NORMAL_DIST_STANDARD_DEVIATION", "numeric_literal");
    subst("CUDNN_ATTR_RNG_UNIFORM_DIST_MAXIMUM", "MIOPEN_ATTR_RNG_UNIFORM_DIST_MAXIMUM", "numeric_literal");
    subst("CUDNN_ATTR_RNG_UNIFORM_DIST_MINIMUM", "MIOPEN_ATTR_RNG_UNIFORM_DIST_MINIMUM", "numeric_literal");
    subst("CUDNN_ATTR_TENSOR_BYTE_ALIGNMENT", "MIOPEN_ATTR_TENSOR_BYTE_ALIGNMENT", "numeric_literal");
    subst("CUDNN_ATTR_TENSOR_DATA_TYPE", "MIOPEN_ATTR_TENSOR_DATA_TYPE", "numeric_literal");
    subst("CUDNN_ATTR_TENSOR_DIMENSIONS", "MIOPEN_ATTR_TENSOR_DIMENSIONS", "numeric_literal");
    subst("CUDNN_ATTR_TENSOR_IS_BY_VALUE", "MIOPEN_ATTR_TENSOR_IS_BY_VALUE", "numeric_literal");
    subst("CUDNN_ATTR_TENSOR_IS_VIRTUAL", "MIOPEN_ATTR_TENSOR_IS_VIRTUAL", "numeric_literal");
    subst("CUDNN_ATTR_TENSOR_RAGGED_OFFSET_DESC", "MIOPEN_ATTR_TENSOR_RAGGED_OFFSET_DESC", "numeric_literal");
    subst("CUDNN_ATTR_TENSOR_REORDERING_MODE", "MIOPEN_ATTR_TENSOR_REORDERING_MODE", "numeric_literal");
    subst("CUDNN_ATTR_TENSOR_STRIDES", "MIOPEN_ATTR_TENSOR_STRIDES", "numeric_literal");
    subst("CUDNN_ATTR_TENSOR_UNIQUE_ID", "MIOPEN_ATTR_TENSOR_UNIQUE_ID", "numeric_literal");
    subst("CUDNN_ATTR_TENSOR_VECTORIZED_DIMENSION", "MIOPEN_ATTR_TENSOR_VECTORIZED_DIMENSION", "numeric_literal");
    subst("CUDNN_ATTR_TENSOR_VECTOR_COUNT", "MIOPEN_ATTR_TENSOR_VECTOR_COUNT", "numeric_literal");
    subst("CUDNN_ATTR_VARIANT_PACK_DATA_POINTERS", "MIOPEN_ATTR_VARIANT_PACK_DATA_POINTERS", "numeric_literal");
    subst("CUDNN_ATTR_VARIANT_PACK_INTERMEDIATES", "MIOPEN_ATTR_VARIANT_PACK_INTERMEDIATES", "numeric_literal");
    subst("CUDNN_ATTR_VARIANT_PACK_UNIQUE_IDS", "MIOPEN_ATTR_VARIANT_PACK_UNIQUE_IDS", "numeric_literal");
    subst("CUDNN_ATTR_VARIANT_PACK_WORKSPACE", "MIOPEN_ATTR_VARIANT_PACK_WORKSPACE", "numeric_literal");
    subst("CUDNN_BACKEND_CONVOLUTION_DESCRIPTOR", "MIOPEN_BACKEND_CONVOLUTION_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_ENGINECFG_DESCRIPTOR", "MIOPEN_BACKEND_ENGINECFG_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_ENGINEHEUR_DESCRIPTOR", "MIOPEN_BACKEND_ENGINEHEUR_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_ENGINE_DESCRIPTOR", "MIOPEN_BACKEND_ENGINE_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_EXECUTION_PLAN_DESCRIPTOR", "MIOPEN_BACKEND_EXECUTION_PLAN_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_INTERMEDIATE_INFO_DESCRIPTOR", "MIOPEN_BACKEND_INTERMEDIATE_INFO_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_KNOB_CHOICE_DESCRIPTOR", "MIOPEN_BACKEND_KNOB_CHOICE_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_KNOB_INFO_DESCRIPTOR", "MIOPEN_BACKEND_KNOB_INFO_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_LAYOUT_INFO_DESCRIPTOR", "MIOPEN_BACKEND_LAYOUT_INFO_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_MATMUL_DESCRIPTOR", "MIOPEN_BACKEND_MATMUL_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATIONGRAPH_DESCRIPTOR", "MIOPEN_BACKEND_OPERATIONGRAPH_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_CONCAT_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_CONCAT_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_CONVOLUTION_BACKWARD_DATA_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_CONVOLUTION_BACKWARD_DATA_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_CONVOLUTION_BACKWARD_FILTER_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_CONVOLUTION_BACKWARD_FILTER_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_CONVOLUTION_FORWARD_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_CONVOLUTION_FORWARD_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_GEN_STATS_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_GEN_STATS_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_MATMUL_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_MATMUL_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_NORM_BACKWARD_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_NORM_BACKWARD_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_NORM_FORWARD_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_NORM_FORWARD_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_REDUCTION_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_REDUCTION_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_RESAMPLE_BWD_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_RESAMPLE_BWD_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_RESAMPLE_FWD_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_RESAMPLE_FWD_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_RESHAPE_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_RESHAPE_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_RNG_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_RNG_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_OPERATION_SIGNAL_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_SIGNAL_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_POINTWISE_DESCRIPTOR", "MIOPEN_BACKEND_POINTWISE_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_REDUCTION_DESCRIPTOR", "MIOPEN_BACKEND_REDUCTION_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_RESAMPLE_DESCRIPTOR", "MIOPEN_BACKEND_RESAMPLE_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_RNG_DESCRIPTOR", "MIOPEN_BACKEND_RNG_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_TENSOR_DESCRIPTOR", "MIOPEN_BACKEND_TENSOR_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BACKEND_VARIANT_PACK_DESCRIPTOR", "MIOPEN_BACKEND_VARIANT_PACK_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_BATCHNORM_PER_ACTIVATION", "miopenBNPerActivation", "numeric_literal");
    subst("CUDNN_BATCHNORM_SPATIAL", "miopenBNSpatial", "numeric_literal");
    subst("CUDNN_BIDIRECTIONAL", "miopenRNNbidirection", "numeric_literal");
    subst("CUDNN_CONVOLUTION", "miopenConvolution", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_0", "miopenConvolutionBwdDataAlgoGEMM", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_1", "miopenConvolutionBwdDataAlgoDirect", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_COUNT", "miopenTransposeBwdDataAlgoGEMM", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_FFT", "miopenConvolutionBwdDataAlgoFFT", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_WINOGRAD", "miopenConvolutionBwdDataAlgoWinograd", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_DIRECT", "miopenConvolutionFwdAlgoDirect", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_FFT", "miopenConvolutionFwdAlgoFFT", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_GEMM", "miopenConvolutionFwdAlgoGEMM", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_GEMM", "miopenConvolutionFwdAlgoImplicitGEMM", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_WINOGRAD", "miopenConvolutionFwdAlgoWinograd", "numeric_literal");
    subst("CUDNN_CROSS_CORRELATION", "miopenConvolution", "numeric_literal");
    subst("CUDNN_CTC_LOSS_ALGO_DETERMINISTIC", "MIOPEN_CTC_LOSS_ALGO_DETERMINISTIC", "numeric_literal");
    subst("CUDNN_DATA_BFLOAT16", "miopenBFloat16", "numeric_literal");
    subst("CUDNN_DATA_DOUBLE", "miopenDouble", "numeric_literal");
    subst("CUDNN_DATA_FLOAT", "miopenFloat", "numeric_literal");
    subst("CUDNN_DATA_FP8_E4M3", "miopenFloat8", "numeric_literal");
    subst("CUDNN_DATA_FP8_E5M2", "miopenBFloat8", "numeric_literal");
    subst("CUDNN_DATA_HALF", "miopenHalf", "numeric_literal");
    subst("CUDNN_DATA_INT32", "miopenInt32", "numeric_literal");
    subst("CUDNN_DATA_INT64", "miopenInt64", "numeric_literal");
    subst("CUDNN_DATA_INT8", "miopenInt8", "numeric_literal");
    subst("CUDNN_DATA_INT8x4", "miopenInt8x4", "numeric_literal");
    subst("CUDNN_EDGE_VAL_PAD", "miopenPaddingValid", "numeric_literal");
    subst("CUDNN_FWD_MODE_INFERENCE", "miopenRNNInference", "numeric_literal");
    subst("CUDNN_FWD_MODE_TRAINING", "miopenRNNTraining", "numeric_literal");
    subst("CUDNN_GRU", "miopenGRU", "numeric_literal");
    subst("CUDNN_HEUR_MODES_COUNT", "MIOPEN_HEUR_MODES_COUNT", "numeric_literal");
    subst("CUDNN_HEUR_MODE_A", "MIOPEN_HEUR_MODE_A", "numeric_literal");
    subst("CUDNN_HEUR_MODE_B", "MIOPEN_HEUR_MODE_B", "numeric_literal");
    subst("CUDNN_HEUR_MODE_FALLBACK", "MIOPEN_HEUR_MODE_FALLBACK", "numeric_literal");
    subst("CUDNN_HEUR_MODE_INSTANT", "MIOPEN_HEUR_MODE_INSTANT", "numeric_literal");
    subst("CUDNN_LINEAR_INPUT", "miopenRNNlinear", "numeric_literal");
    subst("CUDNN_LRN_CROSS_CHANNEL_DIM1", "miopenLRNCrossChannel", "numeric_literal");
    subst("CUDNN_LSTM", "miopenLSTM", "numeric_literal");
    subst("CUDNN_NEG_INF_PAD", "miopenPaddingSame", "numeric_literal");
    subst("CUDNN_NOT_PROPAGATE_NAN", "MIOPEN_NOT_PROPAGATE_NAN", "numeric_literal");
    subst("CUDNN_OP_TENSOR_ADD", "miopenTensorOpAdd", "numeric_literal");
    subst("CUDNN_OP_TENSOR_MAX", "miopenTensorOpMax", "numeric_literal");
    subst("CUDNN_OP_TENSOR_MIN", "miopenTensorOpMin", "numeric_literal");
    subst("CUDNN_OP_TENSOR_MUL", "miopenTensorOpMul", "numeric_literal");
    subst("CUDNN_POINTWISE_ABS", "MIOPEN_POINTWISE_ABS", "numeric_literal");
    subst("CUDNN_POINTWISE_ADD", "MIOPEN_POINTWISE_ADD", "numeric_literal");
    subst("CUDNN_POINTWISE_ADD_SQUARE", "MIOPEN_POINTWISE_ADD_SQUARE", "numeric_literal");
    subst("CUDNN_POINTWISE_BINARY_SELECT", "MIOPEN_POINTWISE_BINARY_SELECT", "numeric_literal");
    subst("CUDNN_POINTWISE_CEIL", "MIOPEN_POINTWISE_CEIL", "numeric_literal");
    subst("CUDNN_POINTWISE_CMP_EQ", "MIOPEN_POINTWISE_CMP_EQ", "numeric_literal");
    subst("CUDNN_POINTWISE_CMP_GE", "MIOPEN_POINTWISE_CMP_GE", "numeric_literal");
    subst("CUDNN_POINTWISE_CMP_GT", "MIOPEN_POINTWISE_CMP_GT", "numeric_literal");
    subst("CUDNN_POINTWISE_CMP_LE", "MIOPEN_POINTWISE_CMP_LE", "numeric_literal");
    subst("CUDNN_POINTWISE_CMP_LT", "MIOPEN_POINTWISE_CMP_LT", "numeric_literal");
    subst("CUDNN_POINTWISE_CMP_NEQ", "MIOPEN_POINTWISE_CMP_NEQ", "numeric_literal");
    subst("CUDNN_POINTWISE_COS", "MIOPEN_POINTWISE_COS", "numeric_literal");
    subst("CUDNN_POINTWISE_DIV", "MIOPEN_POINTWISE_DIV", "numeric_literal");
    subst("CUDNN_POINTWISE_ELU_BWD", "MIOPEN_POINTWISE_ELU_BWD", "numeric_literal");
    subst("CUDNN_POINTWISE_ELU_FWD", "MIOPEN_POINTWISE_ELU_FWD", "numeric_literal");
    subst("CUDNN_POINTWISE_ERF", "MIOPEN_POINTWISE_ERF", "numeric_literal");
    subst("CUDNN_POINTWISE_EXP", "MIOPEN_POINTWISE_EXP", "numeric_literal");
    subst("CUDNN_POINTWISE_FLOOR", "MIOPEN_POINTWISE_FLOOR", "numeric_literal");
    subst("CUDNN_POINTWISE_GELU_APPROX_TANH_BWD", "MIOPEN_POINTWISE_GELU_APPROX_TANH_BWD", "numeric_literal");
    subst("CUDNN_POINTWISE_GELU_APPROX_TANH_FWD", "MIOPEN_POINTWISE_GELU_APPROX_TANH_FWD", "numeric_literal");
    subst("CUDNN_POINTWISE_GELU_BWD", "MIOPEN_POINTWISE_GELU_BWD", "numeric_literal");
    subst("CUDNN_POINTWISE_GELU_FWD", "MIOPEN_POINTWISE_GELU_FWD", "numeric_literal");
    subst("CUDNN_POINTWISE_GEN_INDEX", "MIOPEN_POINTWISE_GEN_INDEX", "numeric_literal");
    subst("CUDNN_POINTWISE_IDENTITY", "MIOPEN_POINTWISE_IDENTITY", "numeric_literal");
    subst("CUDNN_POINTWISE_LOG", "MIOPEN_POINTWISE_LOG", "numeric_literal");
    subst("CUDNN_POINTWISE_LOGICAL_AND", "MIOPEN_POINTWISE_LOGICAL_AND", "numeric_literal");
    subst("CUDNN_POINTWISE_LOGICAL_NOT", "MIOPEN_POINTWISE_LOGICAL_NOT", "numeric_literal");
    subst("CUDNN_POINTWISE_LOGICAL_OR", "MIOPEN_POINTWISE_LOGICAL_OR", "numeric_literal");
    subst("CUDNN_POINTWISE_MAX", "MIOPEN_POINTWISE_MAX", "numeric_literal");
    subst("CUDNN_POINTWISE_MIN", "MIOPEN_POINTWISE_MIN", "numeric_literal");
    subst("CUDNN_POINTWISE_MOD", "MIOPEN_POINTWISE_MOD", "numeric_literal");
    subst("CUDNN_POINTWISE_MUL", "MIOPEN_POINTWISE_MUL", "numeric_literal");
    subst("CUDNN_POINTWISE_NEG", "MIOPEN_POINTWISE_NEG", "numeric_literal");
    subst("CUDNN_POINTWISE_POW", "MIOPEN_POINTWISE_POW", "numeric_literal");
    subst("CUDNN_POINTWISE_RECIPROCAL", "MIOPEN_POINTWISE_RECIPROCAL", "numeric_literal");
    subst("CUDNN_POINTWISE_RELU_BWD", "MIOPEN_POINTWISE_RELU_BWD", "numeric_literal");
    subst("CUDNN_POINTWISE_RELU_FWD", "MIOPEN_POINTWISE_RELU_FWD", "numeric_literal");
    subst("CUDNN_POINTWISE_RSQRT", "MIOPEN_POINTWISE_RSQRT", "numeric_literal");
    subst("CUDNN_POINTWISE_SIGMOID_BWD", "MIOPEN_POINTWISE_SIGMOID_BWD", "numeric_literal");
    subst("CUDNN_POINTWISE_SIGMOID_FWD", "MIOPEN_POINTWISE_SIGMOID_FWD", "numeric_literal");
    subst("CUDNN_POINTWISE_SIN", "MIOPEN_POINTWISE_SIN", "numeric_literal");
    subst("CUDNN_POINTWISE_SOFTPLUS_BWD", "MIOPEN_POINTWISE_SOFTPLUS_BWD", "numeric_literal");
    subst("CUDNN_POINTWISE_SOFTPLUS_FWD", "MIOPEN_POINTWISE_SOFTPLUS_FWD", "numeric_literal");
    subst("CUDNN_POINTWISE_SQRT", "MIOPEN_POINTWISE_SQRT", "numeric_literal");
    subst("CUDNN_POINTWISE_SUB", "MIOPEN_POINTWISE_SUB", "numeric_literal");
    subst("CUDNN_POINTWISE_SWISH_BWD", "MIOPEN_POINTWISE_SWISH_BWD", "numeric_literal");
    subst("CUDNN_POINTWISE_SWISH_FWD", "MIOPEN_POINTWISE_SWISH_FWD", "numeric_literal");
    subst("CUDNN_POINTWISE_TAN", "MIOPEN_POINTWISE_TAN", "numeric_literal");
    subst("CUDNN_POINTWISE_TANH_BWD", "MIOPEN_POINTWISE_TANH_BWD", "numeric_literal");
    subst("CUDNN_POINTWISE_TANH_FWD", "MIOPEN_POINTWISE_TANH_FWD", "numeric_literal");
    subst("CUDNN_POOLING_AVERAGE_COUNT_EXCLUDE_PADDING", "miopenPoolingAverage", "numeric_literal");
    subst("CUDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING", "miopenPoolingAverageInclusive", "numeric_literal");
    subst("CUDNN_POOLING_MAX", "miopenPoolingMax", "numeric_literal");
    subst("CUDNN_PROPAGATE_NAN", "MIOPEN_PROPAGATE_NAN", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_ADD", "MIOPEN_REDUCE_TENSOR_ADD", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_AMAX", "MIOPEN_REDUCE_TENSOR_AMAX", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_AVG", "MIOPEN_REDUCE_TENSOR_AVG", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_FLATTENED_INDICES", "MIOPEN_REDUCE_TENSOR_FLATTENED_INDICES", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_MAX", "MIOPEN_REDUCE_TENSOR_MAX", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_MIN", "MIOPEN_REDUCE_TENSOR_MIN", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_MUL", "MIOPEN_REDUCE_TENSOR_MUL", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_NORM1", "MIOPEN_REDUCE_TENSOR_NORM1", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_NORM2", "MIOPEN_REDUCE_TENSOR_NORM2", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_NO_INDICES", "MIOPEN_REDUCE_TENSOR_NO_INDICES", "numeric_literal");
    subst("CUDNN_RNG_DISTRIBUTION_BERNOULLI", "MIOPEN_RNG_DISTRIBUTION_BERNOULLI", "numeric_literal");
    subst("CUDNN_RNG_DISTRIBUTION_NORMAL", "MIOPEN_RNG_DISTRIBUTION_NORMAL", "numeric_literal");
    subst("CUDNN_RNG_DISTRIBUTION_UNIFORM", "MIOPEN_RNG_DISTRIBUTION_UNIFORM", "numeric_literal");
    subst("CUDNN_RNN_ALGO_STANDARD", "miopenRNNdefault", "numeric_literal");
    subst("CUDNN_RNN_DOUBLE_BIAS", "miopenRNNwithBias", "numeric_literal");
    subst("CUDNN_RNN_NO_BIAS", "miopenRNNNoBias", "numeric_literal");
    subst("CUDNN_RNN_PADDED_IO_DISABLED", "miopenRNNIONotPadded", "numeric_literal");
    subst("CUDNN_RNN_PADDED_IO_ENABLED", "miopenRNNIOWithPadding", "numeric_literal");
    subst("CUDNN_RNN_RELU", "miopenRNNRELU", "numeric_literal");
    subst("CUDNN_RNN_SINGLE_INP_BIAS", "miopenRNNwithBias", "numeric_literal");
    subst("CUDNN_RNN_SINGLE_REC_BIAS", "miopenRNNwithBias", "numeric_literal");
    subst("CUDNN_RNN_TANH", "miopenRNNTANH", "numeric_literal");
    subst("CUDNN_SKIP_INPUT", "miopenRNNskip", "numeric_literal");
    subst("CUDNN_SOFTMAX_ACCURATE", "MIOPEN_SOFTMAX_ACCURATE", "numeric_literal");
    subst("CUDNN_SOFTMAX_FAST", "MIOPEN_SOFTMAX_FAST", "numeric_literal");
    subst("CUDNN_SOFTMAX_LOG", "MIOPEN_SOFTMAX_LOG", "numeric_literal");
    subst("CUDNN_SOFTMAX_MODE_CHANNEL", "MIOPEN_SOFTMAX_MODE_CHANNEL", "numeric_literal");
    subst("CUDNN_SOFTMAX_MODE_INSTANCE", "MIOPEN_SOFTMAX_MODE_INSTANCE", "numeric_literal");
    subst("CUDNN_STATUS_ALLOC_FAILED", "miopenStatusAllocFailed", "numeric_literal");
    subst("CUDNN_STATUS_BAD_PARAM", "miopenStatusBadParm", "numeric_literal");
    subst("CUDNN_STATUS_INTERNAL_ERROR", "miopenStatusInternalError", "numeric_literal");
    subst("CUDNN_STATUS_INVALID_VALUE", "miopenStatusInvalidValue", "numeric_literal");
    subst("CUDNN_STATUS_NOT_INITIALIZED", "miopenStatusNotInitialized", "numeric_literal");
    subst("CUDNN_STATUS_NOT_SUPPORTED", "miopenStatusUnsupportedOp", "numeric_literal");
    subst("CUDNN_STATUS_SUCCESS", "miopenStatusSuccess", "numeric_literal");
    subst("CUDNN_STATUS_VERSION_MISMATCH", "miopenStatusVersionMismatch", "numeric_literal");
    subst("CUDNN_TENSOR_NCHW", "miopenTensorNCHW", "numeric_literal");
    subst("CUDNN_TENSOR_NHWC", "miopenTensorNHWC", "numeric_literal");
    subst("CUDNN_TYPE_ATTRIB_NAME", "MIOPEN_TYPE_ATTRIB_NAME", "numeric_literal");
    subst("CUDNN_TYPE_BACKEND_DESCRIPTOR", "MIOPEN_TYPE_BACKEND_DESCRIPTOR", "numeric_literal");
    subst("CUDNN_TYPE_BEHAVIOR_NOTE", "MIOPEN_TYPE_BEHAVIOR_NOTE", "numeric_literal");
    subst("CUDNN_TYPE_BN_FINALIZE_STATS_MODE", "MIOPEN_TYPE_BN_FINALIZE_STATS_MODE", "numeric_literal");
    subst("CUDNN_TYPE_BOOLEAN", "MIOPEN_TYPE_BOOLEAN", "numeric_literal");
    subst("CUDNN_TYPE_CHAR", "MIOPEN_TYPE_CHAR", "numeric_literal");
    subst("CUDNN_TYPE_CONVOLUTION_MODE", "MIOPEN_TYPE_CONVOLUTION_MODE", "numeric_literal");
    subst("CUDNN_TYPE_DATA_TYPE", "MIOPEN_TYPE_DATA_TYPE", "numeric_literal");
    subst("CUDNN_TYPE_DOUBLE", "MIOPEN_TYPE_DOUBLE", "numeric_literal");
    subst("CUDNN_TYPE_FLOAT", "MIOPEN_TYPE_FLOAT", "numeric_literal");
    subst("CUDNN_TYPE_FRACTION", "MIOPEN_TYPE_FRACTION", "numeric_literal");
    subst("CUDNN_TYPE_GENSTATS_MODE", "MIOPEN_TYPE_GENSTATS_MODE", "numeric_literal");
    subst("CUDNN_TYPE_HANDLE", "MIOPEN_TYPE_HANDLE", "numeric_literal");
    subst("CUDNN_TYPE_HEUR_MODE", "MIOPEN_TYPE_HEUR_MODE", "numeric_literal");
    subst("CUDNN_TYPE_INT32", "MIOPEN_TYPE_INT32", "numeric_literal");
    subst("CUDNN_TYPE_INT64", "MIOPEN_TYPE_INT64", "numeric_literal");
    subst("CUDNN_TYPE_KNOB_TYPE", "MIOPEN_TYPE_KNOB_TYPE", "numeric_literal");
    subst("CUDNN_TYPE_LAYOUT_TYPE", "MIOPEN_TYPE_LAYOUT_TYPE", "numeric_literal");
    subst("CUDNN_TYPE_NAN_PROPOGATION", "MIOPEN_TYPE_NAN_PROPOGATION", "numeric_literal");
    subst("CUDNN_TYPE_NORM_FWD_PHASE", "MIOPEN_TYPE_NORM_FWD_PHASE", "numeric_literal");
    subst("CUDNN_TYPE_NORM_MODE", "MIOPEN_TYPE_NORM_MODE", "numeric_literal");
    subst("CUDNN_TYPE_NUMERICAL_NOTE", "MIOPEN_TYPE_NUMERICAL_NOTE", "numeric_literal");
    subst("CUDNN_TYPE_PADDING_MODE", "MIOPEN_TYPE_PADDING_MODE", "numeric_literal");
    subst("CUDNN_TYPE_POINTWISE_MODE", "MIOPEN_TYPE_POINTWISE_MODE", "numeric_literal");
    subst("CUDNN_TYPE_REDUCTION_OPERATOR_TYPE", "MIOPEN_TYPE_REDUCTION_OPERATOR_TYPE", "numeric_literal");
    subst("CUDNN_TYPE_RESAMPLE_MODE", "MIOPEN_TYPE_RESAMPLE_MODE", "numeric_literal");
    subst("CUDNN_TYPE_RNG_DISTRIBUTION", "MIOPEN_TYPE_RNG_DISTRIBUTION", "numeric_literal");
    subst("CUDNN_TYPE_SIGNAL_MODE", "MIOPEN_TYPE_SIGNAL_MODE", "numeric_literal");
    subst("CUDNN_TYPE_TENSOR_REORDERING_MODE", "MIOPEN_TYPE_TENSOR_REORDERING_MODE", "numeric_literal");
    subst("CUDNN_TYPE_VOID_PTR", "MIOPEN_TYPE_VOID_PTR", "numeric_literal");
    subst("CUDNN_UNIDIRECTIONAL", "miopenRNNunidirection", "numeric_literal");
    subst("CUDNN_ZERO_PAD", "miopenPaddingDefault", "numeric_literal");
    subst("cudnnForwardMode_t", "miopenRNNFWDMode_t", "numeric_literal");
}

sub simpleSubstitutions {
    subst("cuGetErrorName", "hipDrvGetErrorName", "error");
    subst("cuGetErrorString", "hipDrvGetErrorString", "error");
    subst("cudaGetErrorName", "hipGetErrorName", "error");
    subst("cudaGetErrorString", "hipGetErrorString", "error");
    subst("cudaGetLastError", "hipGetLastError", "error");
    subst("cudaPeekAtLastError", "hipPeekAtLastError", "error");
    subst("cuInit", "hipInit", "init");
    subst("cuDriverGetVersion", "hipDriverGetVersion", "version");
    subst("cudaDriverGetVersion", "hipDriverGetVersion", "version");
    subst("cudaRuntimeGetVersion", "hipRuntimeGetVersion", "version");
    subst("cuDeviceComputeCapability", "hipDeviceComputeCapability", "device");
    subst("cuDeviceGet", "hipDeviceGet", "device");
    subst("cuDeviceGetAttribute", "hipDeviceGetAttribute", "device");
    subst("cuDeviceGetCount", "hipGetDeviceCount", "device");
    subst("cuDeviceGetDefaultMemPool", "hipDeviceGetDefaultMemPool", "device");
    subst("cuDeviceGetMemPool", "hipDeviceGetMemPool", "device");
    subst("cuDeviceGetName", "hipDeviceGetName", "device");
    subst("cuDeviceGetUuid", "hipDeviceGetUuid", "device");
    subst("cuDeviceGetUuid_v2", "hipDeviceGetUuid", "device");
    subst("cuDeviceSetMemPool", "hipDeviceSetMemPool", "device");
    subst("cuDeviceTotalMem", "hipDeviceTotalMem", "device");
    subst("cuDeviceTotalMem_v2", "hipDeviceTotalMem", "device");
    subst("cudaChooseDevice", "hipChooseDevice", "device");
    subst("cudaDeviceGetAttribute", "hipDeviceGetAttribute", "device");
    subst("cudaDeviceGetByPCIBusId", "hipDeviceGetByPCIBusId", "device");
    subst("cudaDeviceGetCacheConfig", "hipDeviceGetCacheConfig", "device");
    subst("cudaDeviceGetDefaultMemPool", "hipDeviceGetDefaultMemPool", "device");
    subst("cudaDeviceGetLimit", "hipDeviceGetLimit", "device");
    subst("cudaDeviceGetMemPool", "hipDeviceGetMemPool", "device");
    subst("cudaDeviceGetP2PAttribute", "hipDeviceGetP2PAttribute", "device");
    subst("cudaDeviceGetPCIBusId", "hipDeviceGetPCIBusId", "device");
    subst("cudaDeviceGetSharedMemConfig", "hipDeviceGetSharedMemConfig", "device");
    subst("cudaDeviceGetStreamPriorityRange", "hipDeviceGetStreamPriorityRange", "device");
    subst("cudaDeviceReset", "hipDeviceReset", "device");
    subst("cudaDeviceSetCacheConfig", "hipDeviceSetCacheConfig", "device");
    subst("cudaDeviceSetLimit", "hipDeviceSetLimit", "device");
    subst("cudaDeviceSetMemPool", "hipDeviceSetMemPool", "device");
    subst("cudaDeviceSetSharedMemConfig", "hipDeviceSetSharedMemConfig", "device");
    subst("cudaDeviceSynchronize", "hipDeviceSynchronize", "device");
    subst("cudaGetDevice", "hipGetDevice", "device");
    subst("cudaGetDeviceCount", "hipGetDeviceCount", "device");
    subst("cudaGetDeviceFlags", "hipGetDeviceFlags", "device");
    subst("cudaGetDeviceProperties", "hipGetDeviceProperties", "device");
    subst("cudaIpcCloseMemHandle", "hipIpcCloseMemHandle", "device");
    subst("cudaIpcGetEventHandle", "hipIpcGetEventHandle", "device");
    subst("cudaIpcGetMemHandle", "hipIpcGetMemHandle", "device");
    subst("cudaIpcOpenEventHandle", "hipIpcOpenEventHandle", "device");
    subst("cudaIpcOpenMemHandle", "hipIpcOpenMemHandle", "device");
    subst("cudaSetDevice", "hipSetDevice", "device");
    subst("cudaSetDeviceFlags", "hipSetDeviceFlags", "device");
    subst("cudaSetValidDevices", "hipSetValidDevices", "device");
    subst("cuCtxCreate", "hipCtxCreate", "context");
    subst("cuCtxCreate_v2", "hipCtxCreate", "context");
    subst("cuCtxDestroy", "hipCtxDestroy", "context");
    subst("cuCtxDestroy_v2", "hipCtxDestroy", "context");
    subst("cuCtxGetApiVersion", "hipCtxGetApiVersion", "context");
    subst("cuCtxGetCacheConfig", "hipCtxGetCacheConfig", "context");
    subst("cuCtxGetCurrent", "hipCtxGetCurrent", "context");
    subst("cuCtxGetDevice", "hipCtxGetDevice", "context");
    subst("cuCtxGetFlags", "hipCtxGetFlags", "context");
    subst("cuCtxGetLimit", "hipDeviceGetLimit", "context");
    subst("cuCtxGetSharedMemConfig", "hipCtxGetSharedMemConfig", "context");
    subst("cuCtxGetStreamPriorityRange", "hipDeviceGetStreamPriorityRange", "context");
    subst("cuCtxPopCurrent", "hipCtxPopCurrent", "context");
    subst("cuCtxPopCurrent_v2", "hipCtxPopCurrent", "context");
    subst("cuCtxPushCurrent", "hipCtxPushCurrent", "context");
    subst("cuCtxPushCurrent_v2", "hipCtxPushCurrent", "context");
    subst("cuCtxSetCacheConfig", "hipCtxSetCacheConfig", "context");
    subst("cuCtxSetCurrent", "hipCtxSetCurrent", "context");
    subst("cuCtxSetLimit", "hipDeviceSetLimit", "context");
    subst("cuCtxSetSharedMemConfig", "hipCtxSetSharedMemConfig", "context");
    subst("cuCtxSynchronize", "hipCtxSynchronize", "context");
    subst("cuDevicePrimaryCtxGetState", "hipDevicePrimaryCtxGetState", "context");
    subst("cuDevicePrimaryCtxRelease", "hipDevicePrimaryCtxRelease", "context");
    subst("cuDevicePrimaryCtxRelease_v2", "hipDevicePrimaryCtxRelease", "context");
    subst("cuDevicePrimaryCtxReset", "hipDevicePrimaryCtxReset", "context");
    subst("cuDevicePrimaryCtxReset_v2", "hipDevicePrimaryCtxReset", "context");
    subst("cuDevicePrimaryCtxRetain", "hipDevicePrimaryCtxRetain", "context");
    subst("cuDevicePrimaryCtxSetFlags", "hipDevicePrimaryCtxSetFlags", "context");
    subst("cuDevicePrimaryCtxSetFlags_v2", "hipDevicePrimaryCtxSetFlags", "context");
    subst("cuLinkAddData", "hiprtcLinkAddData", "module");
    subst("cuLinkAddData_v2", "hiprtcLinkAddData", "module");
    subst("cuLinkAddFile", "hiprtcLinkAddFile", "module");
    subst("cuLinkAddFile_v2", "hiprtcLinkAddFile", "module");
    subst("cuLinkComplete", "hiprtcLinkComplete", "module");
    subst("cuLinkCreate", "hiprtcLinkCreate", "module");
    subst("cuLinkCreate_v2", "hiprtcLinkCreate", "module");
    subst("cuLinkDestroy", "hiprtcLinkDestroy", "module");
    subst("cuModuleGetFunction", "hipModuleGetFunction", "module");
    subst("cuModuleGetGlobal", "hipModuleGetGlobal", "module");
    subst("cuModuleGetGlobal_v2", "hipModuleGetGlobal", "module");
    subst("cuModuleGetTexRef", "hipModuleGetTexRef", "module");
    subst("cuModuleLoad", "hipModuleLoad", "module");
    subst("cuModuleLoadData", "hipModuleLoadData", "module");
    subst("cuModuleLoadDataEx", "hipModuleLoadDataEx", "module");
    subst("cuModuleUnload", "hipModuleUnload", "module");
    subst("cuArray3DCreate", "hipArray3DCreate", "memory");
    subst("cuArray3DCreate_v2", "hipArray3DCreate", "memory");
    subst("cuArray3DGetDescriptor", "hipArray3DGetDescriptor", "memory");
    subst("cuArray3DGetDescriptor_v2", "hipArray3DGetDescriptor", "memory");
    subst("cuArrayCreate", "hipArrayCreate", "memory");
    subst("cuArrayCreate_v2", "hipArrayCreate", "memory");
    subst("cuArrayDestroy", "hipArrayDestroy", "memory");
    subst("cuArrayGetDescriptor", "hipArrayGetDescriptor", "memory");
    subst("cuArrayGetDescriptor_v2", "hipArrayGetDescriptor", "memory");
    subst("cuDeviceGetByPCIBusId", "hipDeviceGetByPCIBusId", "memory");
    subst("cuDeviceGetPCIBusId", "hipDeviceGetPCIBusId", "memory");
    subst("cuIpcCloseMemHandle", "hipIpcCloseMemHandle", "memory");
    subst("cuIpcGetEventHandle", "hipIpcGetEventHandle", "memory");
    subst("cuIpcGetMemHandle", "hipIpcGetMemHandle", "memory");
    subst("cuIpcOpenEventHandle", "hipIpcOpenEventHandle", "memory");
    subst("cuIpcOpenMemHandle", "hipIpcOpenMemHandle", "memory");
    subst("cuMemAlloc", "hipMalloc", "memory");
    subst("cuMemAllocHost", "hipMemAllocHost", "memory");
    subst("cuMemAllocHost_v2", "hipMemAllocHost", "memory");
    subst("cuMemAllocManaged", "hipMallocManaged", "memory");
    subst("cuMemAllocPitch", "hipMemAllocPitch", "memory");
    subst("cuMemAllocPitch_v2", "hipMemAllocPitch", "memory");
    subst("cuMemAlloc_v2", "hipMalloc", "memory");
    subst("cuMemFree", "hipFree", "memory");
    subst("cuMemFreeHost", "hipHostFree", "memory");
    subst("cuMemFree_v2", "hipFree", "memory");
    subst("cuMemGetAddressRange", "hipMemGetAddressRange", "memory");
    subst("cuMemGetAddressRange_v2", "hipMemGetAddressRange", "memory");
    subst("cuMemGetInfo", "hipMemGetInfo", "memory");
    subst("cuMemGetInfo_v2", "hipMemGetInfo", "memory");
    subst("cuMemHostAlloc", "hipHostAlloc", "memory");
    subst("cuMemHostGetDevicePointer", "hipHostGetDevicePointer", "memory");
    subst("cuMemHostGetDevicePointer_v2", "hipHostGetDevicePointer", "memory");
    subst("cuMemHostGetFlags", "hipHostGetFlags", "memory");
    subst("cuMemHostRegister", "hipHostRegister", "memory");
    subst("cuMemHostRegister_v2", "hipHostRegister", "memory");
    subst("cuMemHostUnregister", "hipHostUnregister", "memory");
    subst("cuMemcpy2D", "hipMemcpyParam2D", "memory");
    subst("cuMemcpy2DAsync", "hipMemcpyParam2DAsync", "memory");
    subst("cuMemcpy2DAsync_v2", "hipMemcpyParam2DAsync", "memory");
    subst("cuMemcpy2DUnaligned", "hipDrvMemcpy2DUnaligned", "memory");
    subst("cuMemcpy2DUnaligned_v2", "hipDrvMemcpy2DUnaligned", "memory");
    subst("cuMemcpy2D_v2", "hipMemcpyParam2D", "memory");
    subst("cuMemcpy3D", "hipDrvMemcpy3D", "memory");
    subst("cuMemcpy3DAsync", "hipDrvMemcpy3DAsync", "memory");
    subst("cuMemcpy3DAsync_v2", "hipDrvMemcpy3DAsync", "memory");
    subst("cuMemcpy3D_v2", "hipDrvMemcpy3D", "memory");
    subst("cuMemcpyAtoA", "hipMemcpyAtoA", "memory");
    subst("cuMemcpyAtoA_v2", "hipMemcpyAtoA", "memory");
    subst("cuMemcpyAtoD", "hipMemcpyAtoD", "memory");
    subst("cuMemcpyAtoD_v2", "hipMemcpyAtoD", "memory");
    subst("cuMemcpyAtoH", "hipMemcpyAtoH", "memory");
    subst("cuMemcpyAtoHAsync", "hipMemcpyAtoHAsync", "memory");
    subst("cuMemcpyAtoHAsync_v2", "hipMemcpyAtoHAsync", "memory");
    subst("cuMemcpyAtoH_v2", "hipMemcpyAtoH", "memory");
    subst("cuMemcpyDtoA", "hipMemcpyDtoA", "memory");
    subst("cuMemcpyDtoA_v2", "hipMemcpyDtoA", "memory");
    subst("cuMemcpyDtoD", "hipMemcpyDtoD", "memory");
    subst("cuMemcpyDtoDAsync", "hipMemcpyDtoDAsync", "memory");
    subst("cuMemcpyDtoDAsync_v2", "hipMemcpyDtoDAsync", "memory");
    subst("cuMemcpyDtoD_v2", "hipMemcpyDtoD", "memory");
    subst("cuMemcpyDtoH", "hipMemcpyDtoH", "memory");
    subst("cuMemcpyDtoHAsync", "hipMemcpyDtoHAsync", "memory");
    subst("cuMemcpyDtoHAsync_v2", "hipMemcpyDtoHAsync", "memory");
    subst("cuMemcpyDtoH_v2", "hipMemcpyDtoH", "memory");
    subst("cuMemcpyHtoA", "hipMemcpyHtoA", "memory");
    subst("cuMemcpyHtoAAsync", "hipMemcpyHtoAAsync", "memory");
    subst("cuMemcpyHtoAAsync_v2", "hipMemcpyHtoAAsync", "memory");
    subst("cuMemcpyHtoA_v2", "hipMemcpyHtoA", "memory");
    subst("cuMemcpyHtoD", "hipMemcpyHtoD", "memory");
    subst("cuMemcpyHtoDAsync", "hipMemcpyHtoDAsync", "memory");
    subst("cuMemcpyHtoDAsync_v2", "hipMemcpyHtoDAsync", "memory");
    subst("cuMemcpyHtoD_v2", "hipMemcpyHtoD", "memory");
    subst("cuMemsetD16", "hipMemsetD16", "memory");
    subst("cuMemsetD16Async", "hipMemsetD16Async", "memory");
    subst("cuMemsetD16_v2", "hipMemsetD16", "memory");
    subst("cuMemsetD32", "hipMemsetD32", "memory");
    subst("cuMemsetD32Async", "hipMemsetD32Async", "memory");
    subst("cuMemsetD32_v2", "hipMemsetD32", "memory");
    subst("cuMemsetD8", "hipMemsetD8", "memory");
    subst("cuMemsetD8Async", "hipMemsetD8Async", "memory");
    subst("cuMemsetD8_v2", "hipMemsetD8", "memory");
    subst("cuMipmappedArrayCreate", "hipMipmappedArrayCreate", "memory");
    subst("cuMipmappedArrayDestroy", "hipMipmappedArrayDestroy", "memory");
    subst("cuMipmappedArrayGetLevel", "hipMipmappedArrayGetLevel", "memory");
    subst("cudaArrayGetInfo", "hipArrayGetInfo", "memory");
    subst("cudaFree", "hipFree", "memory");
    subst("cudaFreeArray", "hipFreeArray", "memory");
    subst("cudaFreeAsync", "hipFreeAsync", "memory");
    subst("cudaFreeHost", "hipHostFree", "memory");
    subst("cudaFreeMipmappedArray", "hipFreeMipmappedArray", "memory");
    subst("cudaGetMipmappedArrayLevel", "hipGetMipmappedArrayLevel", "memory");
    subst("cudaGetSymbolAddress", "hipGetSymbolAddress", "memory");
    subst("cudaGetSymbolSize", "hipGetSymbolSize", "memory");
    subst("cudaHostAlloc", "hipHostAlloc", "memory");
    subst("cudaHostGetDevicePointer", "hipHostGetDevicePointer", "memory");
    subst("cudaHostGetFlags", "hipHostGetFlags", "memory");
    subst("cudaHostRegister", "hipHostRegister", "memory");
    subst("cudaHostUnregister", "hipHostUnregister", "memory");
    subst("cudaMalloc", "hipMalloc", "memory");
    subst("cudaMalloc3D", "hipMalloc3D", "memory");
    subst("cudaMalloc3DArray", "hipMalloc3DArray", "memory");
    subst("cudaMallocArray", "hipMallocArray", "memory");
    subst("cudaMallocAsync", "hipMallocAsync", "memory");
    subst("cudaMallocFromPoolAsync", "hipMallocFromPoolAsync", "memory");
    subst("cudaMallocHost", "hipHostMalloc", "memory");
    subst("cudaMallocManaged", "hipMallocManaged", "memory");
    subst("cudaMallocMipmappedArray", "hipMallocMipmappedArray", "memory");
    subst("cudaMallocPitch", "hipMallocPitch", "memory");
    subst("cudaMemAdvise", "hipMemAdvise", "memory");
    subst("cudaMemGetInfo", "hipMemGetInfo", "memory");
    subst("cudaMemPoolCreate", "hipMemPoolCreate", "memory");
    subst("cudaMemPoolDestroy", "hipMemPoolDestroy", "memory");
    subst("cudaMemPoolExportPointer", "hipMemPoolExportPointer", "memory");
    subst("cudaMemPoolExportToShareableHandle", "hipMemPoolExportToShareableHandle", "memory");
    subst("cudaMemPoolGetAccess", "hipMemPoolGetAccess", "memory");
    subst("cudaMemPoolGetAttribute", "hipMemPoolGetAttribute", "memory");
    subst("cudaMemPoolImportFromShareableHandle", "hipMemPoolImportFromShareableHandle", "memory");
    subst("cudaMemPoolImportPointer", "hipMemPoolImportPointer", "memory");
    subst("cudaMemPoolSetAccess", "hipMemPoolSetAccess", "memory");
    subst("cudaMemPoolSetAttribute", "hipMemPoolSetAttribute", "memory");
    subst("cudaMemPoolTrimTo", "hipMemPoolTrimTo", "memory");
    subst("cudaMemPrefetchAsync", "hipMemPrefetchAsync", "memory");
    subst("cudaMemRangeGetAttribute", "hipMemRangeGetAttribute", "memory");
    subst("cudaMemRangeGetAttributes", "hipMemRangeGetAttributes", "memory");
    subst("cudaMemcpy", "hipMemcpy", "memory");
    subst("cudaMemcpy2D", "hipMemcpy2D", "memory");
    subst("cudaMemcpy2DArrayToArray", "hipMemcpy2DArrayToArray", "memory");
    subst("cudaMemcpy2DAsync", "hipMemcpy2DAsync", "memory");
    subst("cudaMemcpy2DFromArray", "hipMemcpy2DFromArray", "memory");
    subst("cudaMemcpy2DFromArrayAsync", "hipMemcpy2DFromArrayAsync", "memory");
    subst("cudaMemcpy2DToArray", "hipMemcpy2DToArray", "memory");
    subst("cudaMemcpy2DToArrayAsync", "hipMemcpy2DToArrayAsync", "memory");
    subst("cudaMemcpy3D", "hipMemcpy3D", "memory");
    subst("cudaMemcpy3DAsync", "hipMemcpy3DAsync", "memory");
    subst("cudaMemcpyAsync", "hipMemcpyAsync", "memory");
    subst("cudaMemcpyFromArray", "hipMemcpyFromArray", "memory");
    subst("cudaMemcpyFromSymbol", "hipMemcpyFromSymbol", "memory");
    subst("cudaMemcpyFromSymbolAsync", "hipMemcpyFromSymbolAsync", "memory");
    subst("cudaMemcpyPeer", "hipMemcpyPeer", "memory");
    subst("cudaMemcpyPeerAsync", "hipMemcpyPeerAsync", "memory");
    subst("cudaMemcpyToArray", "hipMemcpyToArray", "memory");
    subst("cudaMemcpyToSymbol", "hipMemcpyToSymbol", "memory");
    subst("cudaMemcpyToSymbolAsync", "hipMemcpyToSymbolAsync", "memory");
    subst("cudaMemset", "hipMemset", "memory");
    subst("cudaMemset2D", "hipMemset2D", "memory");
    subst("cudaMemset2DAsync", "hipMemset2DAsync", "memory");
    subst("cudaMemset3D", "hipMemset3D", "memory");
    subst("cudaMemset3DAsync", "hipMemset3DAsync", "memory");
    subst("cudaMemsetAsync", "hipMemsetAsync", "memory");
    subst("make_cudaExtent", "make_hipExtent", "memory");
    subst("make_cudaPitchedPtr", "make_hipPitchedPtr", "memory");
    subst("make_cudaPos", "make_hipPos", "memory");
    subst("cuMemAddressFree", "hipMemAddressFree", "virtual_memory");
    subst("cuMemAddressReserve", "hipMemAddressReserve", "virtual_memory");
    subst("cuMemCreate", "hipMemCreate", "virtual_memory");
    subst("cuMemExportToShareableHandle", "hipMemExportToShareableHandle", "virtual_memory");
    subst("cuMemGetAccess", "hipMemGetAccess", "virtual_memory");
    subst("cuMemGetAllocationGranularity", "hipMemGetAllocationGranularity", "virtual_memory");
    subst("cuMemGetAllocationPropertiesFromHandle", "hipMemGetAllocationPropertiesFromHandle", "virtual_memory");
    subst("cuMemImportFromShareableHandle", "hipMemImportFromShareableHandle", "virtual_memory");
    subst("cuMemMap", "hipMemMap", "virtual_memory");
    subst("cuMemMapArrayAsync", "hipMemMapArrayAsync", "virtual_memory");
    subst("cuMemRelease", "hipMemRelease", "virtual_memory");
    subst("cuMemRetainAllocationHandle", "hipMemRetainAllocationHandle", "virtual_memory");
    subst("cuMemSetAccess", "hipMemSetAccess", "virtual_memory");
    subst("cuMemUnmap", "hipMemUnmap", "virtual_memory");
    subst("cuMemAllocAsync", "hipMallocAsync", "ordered_memory");
    subst("cuMemAllocFromPoolAsync", "hipMallocFromPoolAsync", "ordered_memory");
    subst("cuMemFreeAsync", "hipFreeAsync", "ordered_memory");
    subst("cuMemPoolCreate", "hipMemPoolCreate", "ordered_memory");
    subst("cuMemPoolDestroy", "hipMemPoolDestroy", "ordered_memory");
    subst("cuMemPoolExportPointer", "hipMemPoolExportPointer", "ordered_memory");
    subst("cuMemPoolExportToShareableHandle", "hipMemPoolExportToShareableHandle", "ordered_memory");
    subst("cuMemPoolGetAccess", "hipMemPoolGetAccess", "ordered_memory");
    subst("cuMemPoolGetAttribute", "hipMemPoolGetAttribute", "ordered_memory");
    subst("cuMemPoolImportFromShareableHandle", "hipMemPoolImportFromShareableHandle", "ordered_memory");
    subst("cuMemPoolImportPointer", "hipMemPoolImportPointer", "ordered_memory");
    subst("cuMemPoolSetAccess", "hipMemPoolSetAccess", "ordered_memory");
    subst("cuMemPoolSetAttribute", "hipMemPoolSetAttribute", "ordered_memory");
    subst("cuMemPoolTrimTo", "hipMemPoolTrimTo", "ordered_memory");
    subst("cuMemAdvise", "hipMemAdvise", "unified");
    subst("cuMemPrefetchAsync", "hipMemPrefetchAsync", "unified");
    subst("cuMemRangeGetAttribute", "hipMemRangeGetAttribute", "unified");
    subst("cuMemRangeGetAttributes", "hipMemRangeGetAttributes", "unified");
    subst("cuPointerGetAttribute", "hipPointerGetAttribute", "unified");
    subst("cuPointerGetAttributes", "hipDrvPointerGetAttributes", "unified");
    subst("cuPointerSetAttribute", "hipPointerSetAttribute", "unified");
    subst("cudaPointerGetAttributes", "hipPointerGetAttributes", "unified");
    subst("cuStreamAddCallback", "hipStreamAddCallback", "stream");
    subst("cuStreamAttachMemAsync", "hipStreamAttachMemAsync", "stream");
    subst("cuStreamBeginCapture", "hipStreamBeginCapture", "stream");
    subst("cuStreamBeginCaptureToGraph", "hipStreamBeginCaptureToGraph", "stream");
    subst("cuStreamBeginCapture_v2", "hipStreamBeginCapture", "stream");
    subst("cuStreamCreate", "hipStreamCreateWithFlags", "stream");
    subst("cuStreamCreateWithPriority", "hipStreamCreateWithPriority", "stream");
    subst("cuStreamDestroy", "hipStreamDestroy", "stream");
    subst("cuStreamDestroy_v2", "hipStreamDestroy", "stream");
    subst("cuStreamEndCapture", "hipStreamEndCapture", "stream");
    subst("cuStreamGetCaptureInfo", "hipStreamGetCaptureInfo", "stream");
    subst("cuStreamGetCaptureInfo_v2", "hipStreamGetCaptureInfo_v2", "stream");
    subst("cuStreamGetFlags", "hipStreamGetFlags", "stream");
    subst("cuStreamGetPriority", "hipStreamGetPriority", "stream");
    subst("cuStreamIsCapturing", "hipStreamIsCapturing", "stream");
    subst("cuStreamQuery", "hipStreamQuery", "stream");
    subst("cuStreamSynchronize", "hipStreamSynchronize", "stream");
    subst("cuStreamUpdateCaptureDependencies", "hipStreamUpdateCaptureDependencies", "stream");
    subst("cuStreamWaitEvent", "hipStreamWaitEvent", "stream");
    subst("cuThreadExchangeStreamCaptureMode", "hipThreadExchangeStreamCaptureMode", "stream");
    subst("cudaStreamAddCallback", "hipStreamAddCallback", "stream");
    subst("cudaStreamAttachMemAsync", "hipStreamAttachMemAsync", "stream");
    subst("cudaStreamBeginCapture", "hipStreamBeginCapture", "stream");
    subst("cudaStreamBeginCaptureToGraph", "hipStreamBeginCaptureToGraph", "stream");
    subst("cudaStreamCreate", "hipStreamCreate", "stream");
    subst("cudaStreamCreateWithFlags", "hipStreamCreateWithFlags", "stream");
    subst("cudaStreamCreateWithPriority", "hipStreamCreateWithPriority", "stream");
    subst("cudaStreamDestroy", "hipStreamDestroy", "stream");
    subst("cudaStreamEndCapture", "hipStreamEndCapture", "stream");
    subst("cudaStreamGetCaptureInfo", "hipStreamGetCaptureInfo", "stream");
    subst("cudaStreamGetFlags", "hipStreamGetFlags", "stream");
    subst("cudaStreamGetPriority", "hipStreamGetPriority", "stream");
    subst("cudaStreamIsCapturing", "hipStreamIsCapturing", "stream");
    subst("cudaStreamQuery", "hipStreamQuery", "stream");
    subst("cudaStreamSynchronize", "hipStreamSynchronize", "stream");
    subst("cudaStreamUpdateCaptureDependencies", "hipStreamUpdateCaptureDependencies", "stream");
    subst("cudaStreamWaitEvent", "hipStreamWaitEvent", "stream");
    subst("cudaThreadExchangeStreamCaptureMode", "hipThreadExchangeStreamCaptureMode", "stream");
    subst("cuEventCreate", "hipEventCreateWithFlags", "event");
    subst("cuEventDestroy", "hipEventDestroy", "event");
    subst("cuEventDestroy_v2", "hipEventDestroy", "event");
    subst("cuEventElapsedTime", "hipEventElapsedTime", "event");
    subst("cuEventQuery", "hipEventQuery", "event");
    subst("cuEventRecord", "hipEventRecord", "event");
    subst("cuEventSynchronize", "hipEventSynchronize", "event");
    subst("cudaEventCreate", "hipEventCreate", "event");
    subst("cudaEventCreateWithFlags", "hipEventCreateWithFlags", "event");
    subst("cudaEventDestroy", "hipEventDestroy", "event");
    subst("cudaEventElapsedTime", "hipEventElapsedTime", "event");
    subst("cudaEventQuery", "hipEventQuery", "event");
    subst("cudaEventRecord", "hipEventRecord", "event");
    subst("cudaEventSynchronize", "hipEventSynchronize", "event");
    subst("cuDestroyExternalMemory", "hipDestroyExternalMemory", "external_resource");
    subst("cuDestroyExternalSemaphore", "hipDestroyExternalSemaphore", "external_resource");
    subst("cuExternalMemoryGetMappedBuffer", "hipExternalMemoryGetMappedBuffer", "external_resource");
    subst("cuImportExternalMemory", "hipImportExternalMemory", "external_resource");
    subst("cuImportExternalSemaphore", "hipImportExternalSemaphore", "external_resource");
    subst("cuSignalExternalSemaphoresAsync", "hipSignalExternalSemaphoresAsync", "external_resource");
    subst("cuWaitExternalSemaphoresAsync", "hipWaitExternalSemaphoresAsync", "external_resource");
    subst("cudaDestroyExternalMemory", "hipDestroyExternalMemory", "external_resource");
    subst("cudaDestroyExternalSemaphore", "hipDestroyExternalSemaphore", "external_resource");
    subst("cudaExternalMemoryGetMappedBuffer", "hipExternalMemoryGetMappedBuffer", "external_resource");
    subst("cudaImportExternalMemory", "hipImportExternalMemory", "external_resource");
    subst("cudaImportExternalSemaphore", "hipImportExternalSemaphore", "external_resource");
    subst("cudaSignalExternalSemaphoresAsync", "hipSignalExternalSemaphoresAsync", "external_resource");
    subst("cudaWaitExternalSemaphoresAsync", "hipWaitExternalSemaphoresAsync", "external_resource");
    subst("cuStreamWaitValue32", "hipStreamWaitValue32", "stream_memory");
    subst("cuStreamWaitValue32_v2", "hipStreamWaitValue32", "stream_memory");
    subst("cuStreamWaitValue64", "hipStreamWaitValue64", "stream_memory");
    subst("cuStreamWaitValue64_v2", "hipStreamWaitValue64", "stream_memory");
    subst("cuStreamWriteValue32", "hipStreamWriteValue32", "stream_memory");
    subst("cuStreamWriteValue32_v2", "hipStreamWriteValue32", "stream_memory");
    subst("cuStreamWriteValue64", "hipStreamWriteValue64", "stream_memory");
    subst("cuStreamWriteValue64_v2", "hipStreamWriteValue64", "stream_memory");
    subst("cuFuncGetAttribute", "hipFuncGetAttribute", "execution");
    subst("cuLaunchCooperativeKernel", "hipModuleLaunchCooperativeKernel", "execution");
    subst("cuLaunchCooperativeKernelMultiDevice", "hipModuleLaunchCooperativeKernelMultiDevice", "execution");
    subst("cuLaunchHostFunc", "hipLaunchHostFunc", "execution");
    subst("cuLaunchKernel", "hipModuleLaunchKernel", "execution");
    subst("cudaConfigureCall", "hipConfigureCall", "execution");
    subst("cudaFuncGetAttributes", "hipFuncGetAttributes", "execution");
    subst("cudaFuncSetAttribute", "hipFuncSetAttribute", "execution");
    subst("cudaFuncSetCacheConfig", "hipFuncSetCacheConfig", "execution");
    subst("cudaFuncSetSharedMemConfig", "hipFuncSetSharedMemConfig", "execution");
    subst("cudaLaunch", "hipLaunchByPtr", "execution");
    subst("cudaLaunchCooperativeKernel", "hipLaunchCooperativeKernel", "execution");
    subst("cudaLaunchCooperativeKernelMultiDevice", "hipLaunchCooperativeKernelMultiDevice", "execution");
    subst("cudaLaunchHostFunc", "hipLaunchHostFunc", "execution");
    subst("cudaLaunchKernel", "hipLaunchKernel", "execution");
    subst("cudaSetupArgument", "hipSetupArgument", "execution");
    subst("cuDeviceGetGraphMemAttribute", "hipDeviceGetGraphMemAttribute", "graph");
    subst("cuDeviceGraphMemTrim", "hipDeviceGraphMemTrim", "graph");
    subst("cuDeviceSetGraphMemAttribute", "hipDeviceSetGraphMemAttribute", "graph");
    subst("cuGraphAddChildGraphNode", "hipGraphAddChildGraphNode", "graph");
    subst("cuGraphAddDependencies", "hipGraphAddDependencies", "graph");
    subst("cuGraphAddEmptyNode", "hipGraphAddEmptyNode", "graph");
    subst("cuGraphAddEventRecordNode", "hipGraphAddEventRecordNode", "graph");
    subst("cuGraphAddEventWaitNode", "hipGraphAddEventWaitNode", "graph");
    subst("cuGraphAddExternalSemaphoresSignalNode", "hipGraphAddExternalSemaphoresSignalNode", "graph");
    subst("cuGraphAddExternalSemaphoresWaitNode", "hipGraphAddExternalSemaphoresWaitNode", "graph");
    subst("cuGraphAddHostNode", "hipGraphAddHostNode", "graph");
    subst("cuGraphAddKernelNode", "hipGraphAddKernelNode", "graph");
    subst("cuGraphAddMemAllocNode", "hipGraphAddMemAllocNode", "graph");
    subst("cuGraphAddMemFreeNode", "hipDrvGraphAddMemFreeNode", "graph");
    subst("cuGraphAddMemcpyNode", "hipDrvGraphAddMemcpyNode", "graph");
    subst("cuGraphAddMemsetNode", "hipDrvGraphAddMemsetNode", "graph");
    subst("cuGraphAddNode", "hipGraphAddNode", "graph");
    subst("cuGraphChildGraphNodeGetGraph", "hipGraphChildGraphNodeGetGraph", "graph");
    subst("cuGraphClone", "hipGraphClone", "graph");
    subst("cuGraphCreate", "hipGraphCreate", "graph");
    subst("cuGraphDebugDotPrint", "hipGraphDebugDotPrint", "graph");
    subst("cuGraphDestroy", "hipGraphDestroy", "graph");
    subst("cuGraphDestroyNode", "hipGraphDestroyNode", "graph");
    subst("cuGraphEventRecordNodeGetEvent", "hipGraphEventRecordNodeGetEvent", "graph");
    subst("cuGraphEventRecordNodeSetEvent", "hipGraphEventRecordNodeSetEvent", "graph");
    subst("cuGraphEventWaitNodeGetEvent", "hipGraphEventWaitNodeGetEvent", "graph");
    subst("cuGraphEventWaitNodeSetEvent", "hipGraphEventWaitNodeSetEvent", "graph");
    subst("cuGraphExecChildGraphNodeSetParams", "hipGraphExecChildGraphNodeSetParams", "graph");
    subst("cuGraphExecDestroy", "hipGraphExecDestroy", "graph");
    subst("cuGraphExecEventRecordNodeSetEvent", "hipGraphExecEventRecordNodeSetEvent", "graph");
    subst("cuGraphExecEventWaitNodeSetEvent", "hipGraphExecEventWaitNodeSetEvent", "graph");
    subst("cuGraphExecExternalSemaphoresSignalNodeSetParams", "hipGraphExecExternalSemaphoresSignalNodeSetParams", "graph");
    subst("cuGraphExecExternalSemaphoresWaitNodeSetParams", "hipGraphExecExternalSemaphoresWaitNodeSetParams", "graph");
    subst("cuGraphExecGetFlags", "hipGraphExecGetFlags", "graph");
    subst("cuGraphExecHostNodeSetParams", "hipGraphExecHostNodeSetParams", "graph");
    subst("cuGraphExecKernelNodeSetParams", "hipGraphExecKernelNodeSetParams", "graph");
    subst("cuGraphExecMemcpyNodeSetParams", "hipDrvGraphExecMemcpyNodeSetParams", "graph");
    subst("cuGraphExecMemsetNodeSetParams", "hipDrvGraphExecMemsetNodeSetParams", "graph");
    subst("cuGraphExecNodeSetParams", "hipGraphExecNodeSetParams", "graph");
    subst("cuGraphExecUpdate", "hipGraphExecUpdate", "graph");
    subst("cuGraphExternalSemaphoresSignalNodeGetParams", "hipGraphExternalSemaphoresSignalNodeGetParams", "graph");
    subst("cuGraphExternalSemaphoresSignalNodeSetParams", "hipGraphExternalSemaphoresSignalNodeSetParams", "graph");
    subst("cuGraphExternalSemaphoresWaitNodeGetParams", "hipGraphExternalSemaphoresWaitNodeGetParams", "graph");
    subst("cuGraphExternalSemaphoresWaitNodeSetParams", "hipGraphExternalSemaphoresWaitNodeSetParams", "graph");
    subst("cuGraphGetEdges", "hipGraphGetEdges", "graph");
    subst("cuGraphGetNodes", "hipGraphGetNodes", "graph");
    subst("cuGraphGetRootNodes", "hipGraphGetRootNodes", "graph");
    subst("cuGraphHostNodeGetParams", "hipGraphHostNodeGetParams", "graph");
    subst("cuGraphHostNodeSetParams", "hipGraphHostNodeSetParams", "graph");
    subst("cuGraphInstantiate", "hipGraphInstantiate", "graph");
    subst("cuGraphInstantiateWithFlags", "hipGraphInstantiateWithFlags", "graph");
    subst("cuGraphInstantiateWithParams", "hipGraphInstantiateWithParams", "graph");
    subst("cuGraphInstantiate_v2", "hipGraphInstantiate", "graph");
    subst("cuGraphKernelNodeCopyAttributes", "hipGraphKernelNodeCopyAttributes", "graph");
    subst("cuGraphKernelNodeGetAttribute", "hipGraphKernelNodeGetAttribute", "graph");
    subst("cuGraphKernelNodeGetParams", "hipGraphKernelNodeGetParams", "graph");
    subst("cuGraphKernelNodeSetAttribute", "hipGraphKernelNodeSetAttribute", "graph");
    subst("cuGraphKernelNodeSetParams", "hipGraphKernelNodeSetParams", "graph");
    subst("cuGraphLaunch", "hipGraphLaunch", "graph");
    subst("cuGraphMemAllocNodeGetParams", "hipGraphMemAllocNodeGetParams", "graph");
    subst("cuGraphMemFreeNodeGetParams", "hipGraphMemFreeNodeGetParams", "graph");
    subst("cuGraphMemcpyNodeGetParams", "hipDrvGraphMemcpyNodeGetParams", "graph");
    subst("cuGraphMemcpyNodeSetParams", "hipDrvGraphMemcpyNodeSetParams", "graph");
    subst("cuGraphMemsetNodeGetParams", "hipGraphMemsetNodeGetParams", "graph");
    subst("cuGraphMemsetNodeSetParams", "hipGraphMemsetNodeSetParams", "graph");
    subst("cuGraphNodeFindInClone", "hipGraphNodeFindInClone", "graph");
    subst("cuGraphNodeGetDependencies", "hipGraphNodeGetDependencies", "graph");
    subst("cuGraphNodeGetDependentNodes", "hipGraphNodeGetDependentNodes", "graph");
    subst("cuGraphNodeGetEnabled", "hipGraphNodeGetEnabled", "graph");
    subst("cuGraphNodeGetType", "hipGraphNodeGetType", "graph");
    subst("cuGraphNodeSetEnabled", "hipGraphNodeSetEnabled", "graph");
    subst("cuGraphNodeSetParams", "hipGraphNodeSetParams", "graph");
    subst("cuGraphReleaseUserObject", "hipGraphReleaseUserObject", "graph");
    subst("cuGraphRemoveDependencies", "hipGraphRemoveDependencies", "graph");
    subst("cuGraphRetainUserObject", "hipGraphRetainUserObject", "graph");
    subst("cuGraphUpload", "hipGraphUpload", "graph");
    subst("cuUserObjectCreate", "hipUserObjectCreate", "graph");
    subst("cuUserObjectRelease", "hipUserObjectRelease", "graph");
    subst("cuUserObjectRetain", "hipUserObjectRetain", "graph");
    subst("cudaDeviceGetGraphMemAttribute", "hipDeviceGetGraphMemAttribute", "graph");
    subst("cudaDeviceGraphMemTrim", "hipDeviceGraphMemTrim", "graph");
    subst("cudaDeviceSetGraphMemAttribute", "hipDeviceSetGraphMemAttribute", "graph");
    subst("cudaGraphAddChildGraphNode", "hipGraphAddChildGraphNode", "graph");
    subst("cudaGraphAddDependencies", "hipGraphAddDependencies", "graph");
    subst("cudaGraphAddEmptyNode", "hipGraphAddEmptyNode", "graph");
    subst("cudaGraphAddEventRecordNode", "hipGraphAddEventRecordNode", "graph");
    subst("cudaGraphAddEventWaitNode", "hipGraphAddEventWaitNode", "graph");
    subst("cudaGraphAddExternalSemaphoresSignalNode", "hipGraphAddExternalSemaphoresSignalNode", "graph");
    subst("cudaGraphAddExternalSemaphoresWaitNode", "hipGraphAddExternalSemaphoresWaitNode", "graph");
    subst("cudaGraphAddHostNode", "hipGraphAddHostNode", "graph");
    subst("cudaGraphAddKernelNode", "hipGraphAddKernelNode", "graph");
    subst("cudaGraphAddMemAllocNode", "hipGraphAddMemAllocNode", "graph");
    subst("cudaGraphAddMemFreeNode", "hipGraphAddMemFreeNode", "graph");
    subst("cudaGraphAddMemcpyNode", "hipGraphAddMemcpyNode", "graph");
    subst("cudaGraphAddMemcpyNode1D", "hipGraphAddMemcpyNode1D", "graph");
    subst("cudaGraphAddMemcpyNodeFromSymbol", "hipGraphAddMemcpyNodeFromSymbol", "graph");
    subst("cudaGraphAddMemcpyNodeToSymbol", "hipGraphAddMemcpyNodeToSymbol", "graph");
    subst("cudaGraphAddMemsetNode", "hipGraphAddMemsetNode", "graph");
    subst("cudaGraphAddNode", "hipGraphAddNode", "graph");
    subst("cudaGraphChildGraphNodeGetGraph", "hipGraphChildGraphNodeGetGraph", "graph");
    subst("cudaGraphClone", "hipGraphClone", "graph");
    subst("cudaGraphCreate", "hipGraphCreate", "graph");
    subst("cudaGraphDebugDotPrint", "hipGraphDebugDotPrint", "graph");
    subst("cudaGraphDestroy", "hipGraphDestroy", "graph");
    subst("cudaGraphDestroyNode", "hipGraphDestroyNode", "graph");
    subst("cudaGraphEventRecordNodeGetEvent", "hipGraphEventRecordNodeGetEvent", "graph");
    subst("cudaGraphEventRecordNodeSetEvent", "hipGraphEventRecordNodeSetEvent", "graph");
    subst("cudaGraphEventWaitNodeGetEvent", "hipGraphEventWaitNodeGetEvent", "graph");
    subst("cudaGraphEventWaitNodeSetEvent", "hipGraphEventWaitNodeSetEvent", "graph");
    subst("cudaGraphExecChildGraphNodeSetParams", "hipGraphExecChildGraphNodeSetParams", "graph");
    subst("cudaGraphExecDestroy", "hipGraphExecDestroy", "graph");
    subst("cudaGraphExecEventRecordNodeSetEvent", "hipGraphExecEventRecordNodeSetEvent", "graph");
    subst("cudaGraphExecEventWaitNodeSetEvent", "hipGraphExecEventWaitNodeSetEvent", "graph");
    subst("cudaGraphExecExternalSemaphoresSignalNodeSetParams", "hipGraphExecExternalSemaphoresSignalNodeSetParams", "graph");
    subst("cudaGraphExecExternalSemaphoresWaitNodeSetParams", "hipGraphExecExternalSemaphoresWaitNodeSetParams", "graph");
    subst("cudaGraphExecGetFlags", "hipGraphExecGetFlags", "graph");
    subst("cudaGraphExecHostNodeSetParams", "hipGraphExecHostNodeSetParams", "graph");
    subst("cudaGraphExecKernelNodeSetParams", "hipGraphExecKernelNodeSetParams", "graph");
    subst("cudaGraphExecMemcpyNodeSetParams", "hipGraphExecMemcpyNodeSetParams", "graph");
    subst("cudaGraphExecMemcpyNodeSetParams1D", "hipGraphExecMemcpyNodeSetParams1D", "graph");
    subst("cudaGraphExecMemcpyNodeSetParamsFromSymbol", "hipGraphExecMemcpyNodeSetParamsFromSymbol", "graph");
    subst("cudaGraphExecMemcpyNodeSetParamsToSymbol", "hipGraphExecMemcpyNodeSetParamsToSymbol", "graph");
    subst("cudaGraphExecMemsetNodeSetParams", "hipGraphExecMemsetNodeSetParams", "graph");
    subst("cudaGraphExecNodeSetParams", "hipGraphExecNodeSetParams", "graph");
    subst("cudaGraphExecUpdate", "hipGraphExecUpdate", "graph");
    subst("cudaGraphExternalSemaphoresSignalNodeGetParams", "hipGraphExternalSemaphoresSignalNodeGetParams", "graph");
    subst("cudaGraphExternalSemaphoresSignalNodeSetParams", "hipGraphExternalSemaphoresSignalNodeSetParams", "graph");
    subst("cudaGraphExternalSemaphoresWaitNodeGetParams", "hipGraphExternalSemaphoresWaitNodeGetParams", "graph");
    subst("cudaGraphExternalSemaphoresWaitNodeSetParams", "hipGraphExternalSemaphoresWaitNodeSetParams", "graph");
    subst("cudaGraphGetEdges", "hipGraphGetEdges", "graph");
    subst("cudaGraphGetNodes", "hipGraphGetNodes", "graph");
    subst("cudaGraphGetRootNodes", "hipGraphGetRootNodes", "graph");
    subst("cudaGraphHostNodeGetParams", "hipGraphHostNodeGetParams", "graph");
    subst("cudaGraphHostNodeSetParams", "hipGraphHostNodeSetParams", "graph");
    subst("cudaGraphInstantiate", "hipGraphInstantiate", "graph");
    subst("cudaGraphInstantiateWithFlags", "hipGraphInstantiateWithFlags", "graph");
    subst("cudaGraphInstantiateWithParams", "hipGraphInstantiateWithParams", "graph");
    subst("cudaGraphKernelNodeCopyAttributes", "hipGraphKernelNodeCopyAttributes", "graph");
    subst("cudaGraphKernelNodeGetAttribute", "hipGraphKernelNodeGetAttribute", "graph");
    subst("cudaGraphKernelNodeGetParams", "hipGraphKernelNodeGetParams", "graph");
    subst("cudaGraphKernelNodeSetAttribute", "hipGraphKernelNodeSetAttribute", "graph");
    subst("cudaGraphKernelNodeSetParams", "hipGraphKernelNodeSetParams", "graph");
    subst("cudaGraphLaunch", "hipGraphLaunch", "graph");
    subst("cudaGraphMemAllocNodeGetParams", "hipGraphMemAllocNodeGetParams", "graph");
    subst("cudaGraphMemFreeNodeGetParams", "hipGraphMemFreeNodeGetParams", "graph");
    subst("cudaGraphMemcpyNodeGetParams", "hipGraphMemcpyNodeGetParams", "graph");
    subst("cudaGraphMemcpyNodeSetParams", "hipGraphMemcpyNodeSetParams", "graph");
    subst("cudaGraphMemcpyNodeSetParams1D", "hipGraphMemcpyNodeSetParams1D", "graph");
    subst("cudaGraphMemcpyNodeSetParamsFromSymbol", "hipGraphMemcpyNodeSetParamsFromSymbol", "graph");
    subst("cudaGraphMemcpyNodeSetParamsToSymbol", "hipGraphMemcpyNodeSetParamsToSymbol", "graph");
    subst("cudaGraphMemsetNodeGetParams", "hipGraphMemsetNodeGetParams", "graph");
    subst("cudaGraphMemsetNodeSetParams", "hipGraphMemsetNodeSetParams", "graph");
    subst("cudaGraphNodeFindInClone", "hipGraphNodeFindInClone", "graph");
    subst("cudaGraphNodeGetDependencies", "hipGraphNodeGetDependencies", "graph");
    subst("cudaGraphNodeGetDependentNodes", "hipGraphNodeGetDependentNodes", "graph");
    subst("cudaGraphNodeGetEnabled", "hipGraphNodeGetEnabled", "graph");
    subst("cudaGraphNodeGetType", "hipGraphNodeGetType", "graph");
    subst("cudaGraphNodeSetEnabled", "hipGraphNodeSetEnabled", "graph");
    subst("cudaGraphNodeSetParams", "hipGraphNodeSetParams", "graph");
    subst("cudaGraphReleaseUserObject", "hipGraphReleaseUserObject", "graph");
    subst("cudaGraphRemoveDependencies", "hipGraphRemoveDependencies", "graph");
    subst("cudaGraphRetainUserObject", "hipGraphRetainUserObject", "graph");
    subst("cudaGraphUpload", "hipGraphUpload", "graph");
    subst("cudaUserObjectCreate", "hipUserObjectCreate", "graph");
    subst("cudaUserObjectRelease", "hipUserObjectRelease", "graph");
    subst("cudaUserObjectRetain", "hipUserObjectRetain", "graph");
    subst("cuOccupancyMaxActiveBlocksPerMultiprocessor", "hipModuleOccupancyMaxActiveBlocksPerMultiprocessor", "occupancy");
    subst("cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags", "hipModuleOccupancyMaxActiveBlocksPerMultiprocessorWithFlags", "occupancy");
    subst("cuOccupancyMaxPotentialBlockSize", "hipModuleOccupancyMaxPotentialBlockSize", "occupancy");
    subst("cuOccupancyMaxPotentialBlockSizeWithFlags", "hipModuleOccupancyMaxPotentialBlockSizeWithFlags", "occupancy");
    subst("cudaOccupancyMaxActiveBlocksPerMultiprocessor", "hipOccupancyMaxActiveBlocksPerMultiprocessor", "occupancy");
    subst("cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags", "hipOccupancyMaxActiveBlocksPerMultiprocessorWithFlags", "occupancy");
    subst("cudaOccupancyMaxPotentialBlockSize", "hipOccupancyMaxPotentialBlockSize", "occupancy");
    subst("cudaOccupancyMaxPotentialBlockSizeVariableSMem", "hipOccupancyMaxPotentialBlockSizeVariableSMem", "occupancy");
    subst("cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags", "hipOccupancyMaxPotentialBlockSizeVariableSMemWithFlags", "occupancy");
    subst("cudaOccupancyMaxPotentialBlockSizeWithFlags", "hipOccupancyMaxPotentialBlockSizeWithFlags", "occupancy");
    subst("cuTexObjectCreate", "hipTexObjectCreate", "texture");
    subst("cuTexObjectDestroy", "hipTexObjectDestroy", "texture");
    subst("cuTexObjectGetResourceDesc", "hipTexObjectGetResourceDesc", "texture");
    subst("cuTexObjectGetResourceViewDesc", "hipTexObjectGetResourceViewDesc", "texture");
    subst("cuTexObjectGetTextureDesc", "hipTexObjectGetTextureDesc", "texture");
    subst("cuTexRefGetAddress", "hipTexRefGetAddress", "texture");
    subst("cuTexRefGetAddressMode", "hipTexRefGetAddressMode", "texture");
    subst("cuTexRefGetAddress_v2", "hipTexRefGetAddress", "texture");
    subst("cuTexRefGetArray", "hipTexRefGetArray", "texture");
    subst("cuTexRefGetBorderColor", "hipTexRefGetBorderColor", "texture");
    subst("cuTexRefGetFilterMode", "hipTexRefGetFilterMode", "texture");
    subst("cuTexRefGetFlags", "hipTexRefGetFlags", "texture");
    subst("cuTexRefGetFormat", "hipTexRefGetFormat", "texture");
    subst("cuTexRefGetMaxAnisotropy", "hipTexRefGetMaxAnisotropy", "texture");
    subst("cuTexRefGetMipmapFilterMode", "hipTexRefGetMipmapFilterMode", "texture");
    subst("cuTexRefGetMipmapLevelBias", "hipTexRefGetMipmapLevelBias", "texture");
    subst("cuTexRefGetMipmapLevelClamp", "hipTexRefGetMipmapLevelClamp", "texture");
    subst("cuTexRefGetMipmappedArray", "hipTexRefGetMipMappedArray", "texture");
    subst("cuTexRefSetAddress", "hipTexRefSetAddress", "texture");
    subst("cuTexRefSetAddress2D", "hipTexRefSetAddress2D", "texture");
    subst("cuTexRefSetAddress2D_v2", "hipTexRefSetAddress2D", "texture");
    subst("cuTexRefSetAddress2D_v3", "hipTexRefSetAddress2D", "texture");
    subst("cuTexRefSetAddressMode", "hipTexRefSetAddressMode", "texture");
    subst("cuTexRefSetAddress_v2", "hipTexRefSetAddress", "texture");
    subst("cuTexRefSetArray", "hipTexRefSetArray", "texture");
    subst("cuTexRefSetBorderColor", "hipTexRefSetBorderColor", "texture");
    subst("cuTexRefSetFilterMode", "hipTexRefSetFilterMode", "texture");
    subst("cuTexRefSetFlags", "hipTexRefSetFlags", "texture");
    subst("cuTexRefSetFormat", "hipTexRefSetFormat", "texture");
    subst("cuTexRefSetMaxAnisotropy", "hipTexRefSetMaxAnisotropy", "texture");
    subst("cuTexRefSetMipmapFilterMode", "hipTexRefSetMipmapFilterMode", "texture");
    subst("cuTexRefSetMipmapLevelBias", "hipTexRefSetMipmapLevelBias", "texture");
    subst("cuTexRefSetMipmapLevelClamp", "hipTexRefSetMipmapLevelClamp", "texture");
    subst("cuTexRefSetMipmappedArray", "hipTexRefSetMipmappedArray", "texture");
    subst("cudaBindTexture", "hipBindTexture", "texture");
    subst("cudaBindTexture2D", "hipBindTexture2D", "texture");
    subst("cudaBindTextureToArray", "hipBindTextureToArray", "texture");
    subst("cudaBindTextureToMipmappedArray", "hipBindTextureToMipmappedArray", "texture");
    subst("cudaCreateChannelDesc", "hipCreateChannelDesc", "texture");
    subst("cudaCreateTextureObject", "hipCreateTextureObject", "texture");
    subst("cudaDestroyTextureObject", "hipDestroyTextureObject", "texture");
    subst("cudaGetChannelDesc", "hipGetChannelDesc", "texture");
    subst("cudaGetTextureAlignmentOffset", "hipGetTextureAlignmentOffset", "texture");
    subst("cudaGetTextureObjectResourceDesc", "hipGetTextureObjectResourceDesc", "texture");
    subst("cudaGetTextureObjectResourceViewDesc", "hipGetTextureObjectResourceViewDesc", "texture");
    subst("cudaGetTextureObjectTextureDesc", "hipGetTextureObjectTextureDesc", "texture");
    subst("cudaGetTextureReference", "hipGetTextureReference", "texture");
    subst("cudaUnbindTexture", "hipUnbindTexture", "texture");
    subst("cudaCreateSurfaceObject", "hipCreateSurfaceObject", "surface");
    subst("cudaDestroySurfaceObject", "hipDestroySurfaceObject", "surface");
    subst("cuCtxDisablePeerAccess", "hipCtxDisablePeerAccess", "peer");
    subst("cuCtxEnablePeerAccess", "hipCtxEnablePeerAccess", "peer");
    subst("cuDeviceCanAccessPeer", "hipDeviceCanAccessPeer", "peer");
    subst("cuDeviceGetP2PAttribute", "hipDeviceGetP2PAttribute", "peer");
    subst("cudaDeviceCanAccessPeer", "hipDeviceCanAccessPeer", "peer");
    subst("cudaDeviceDisablePeerAccess", "hipDeviceDisablePeerAccess", "peer");
    subst("cudaDeviceEnablePeerAccess", "hipDeviceEnablePeerAccess", "peer");
    subst("cuGraphicsMapResources", "hipGraphicsMapResources", "graphics");
    subst("cuGraphicsResourceGetMappedPointer", "hipGraphicsResourceGetMappedPointer", "graphics");
    subst("cuGraphicsResourceGetMappedPointer_v2", "hipGraphicsResourceGetMappedPointer", "graphics");
    subst("cuGraphicsSubResourceGetMappedArray", "hipGraphicsSubResourceGetMappedArray", "graphics");
    subst("cuGraphicsUnmapResources", "hipGraphicsUnmapResources", "graphics");
    subst("cuGraphicsUnregisterResource", "hipGraphicsUnregisterResource", "graphics");
    subst("cudaGraphicsMapResources", "hipGraphicsMapResources", "graphics");
    subst("cudaGraphicsResourceGetMappedPointer", "hipGraphicsResourceGetMappedPointer", "graphics");
    subst("cudaGraphicsSubResourceGetMappedArray", "hipGraphicsSubResourceGetMappedArray", "graphics");
    subst("cudaGraphicsUnmapResources", "hipGraphicsUnmapResources", "graphics");
    subst("cudaGraphicsUnregisterResource", "hipGraphicsUnregisterResource", "graphics");
    subst("cuGetProcAddress", "hipGetProcAddress", "driver_entry_point");
    subst("cudaGetDriverEntryPoint", "hipGetProcAddress", "driver_entry_point");
    subst("cudaGetFuncBySymbol", "hipGetFuncBySymbol", "driver_interact");
    subst("cuProfilerStart", "hipProfilerStart", "profiler");
    subst("cuProfilerStop", "hipProfilerStop", "profiler");
    subst("cudaProfilerStart", "hipProfilerStart", "profiler");
    subst("cudaProfilerStop", "hipProfilerStop", "profiler");
    subst("cuGLGetDevices", "hipGLGetDevices", "openGL");
    subst("cuGraphicsGLRegisterBuffer", "hipGraphicsGLRegisterBuffer", "openGL");
    subst("cuGraphicsGLRegisterImage", "hipGraphicsGLRegisterImage", "openGL");
    subst("cudaGLGetDevices", "hipGLGetDevices", "openGL");
    subst("cudaGraphicsGLRegisterBuffer", "hipGraphicsGLRegisterBuffer", "openGL");
    subst("cudaGraphicsGLRegisterImage", "hipGraphicsGLRegisterImage", "openGL");
    subst("cudaThreadExit", "hipDeviceReset", "thread");
    subst("cudaThreadGetCacheConfig", "hipDeviceGetCacheConfig", "thread");
    subst("cudaThreadSetCacheConfig", "hipDeviceSetCacheConfig", "thread");
    subst("cudaThreadSynchronize", "hipDeviceSynchronize", "thread");
    subst("cuCabs", "hipCabs", "complex");
    subst("cuCabsf", "hipCabsf", "complex");
    subst("cuCadd", "hipCadd", "complex");
    subst("cuCaddf", "hipCaddf", "complex");
    subst("cuCdiv", "hipCdiv", "complex");
    subst("cuCdivf", "hipCdivf", "complex");
    subst("cuCfma", "hipCfma", "complex");
    subst("cuCfmaf", "hipCfmaf", "complex");
    subst("cuCimag", "hipCimag", "complex");
    subst("cuCimagf", "hipCimagf", "complex");
    subst("cuCmul", "hipCmul", "complex");
    subst("cuCmulf", "hipCmulf", "complex");
    subst("cuComplexDoubleToFloat", "hipComplexDoubleToFloat", "complex");
    subst("cuComplexFloatToDouble", "hipComplexFloatToDouble", "complex");
    subst("cuConj", "hipConj", "complex");
    subst("cuConjf", "hipConjf", "complex");
    subst("cuCreal", "hipCreal", "complex");
    subst("cuCrealf", "hipCrealf", "complex");
    subst("cuCsub", "hipCsub", "complex");
    subst("cuCsubf", "hipCsubf", "complex");
    subst("make_cuComplex", "make_hipComplex", "complex");
    subst("make_cuDoubleComplex", "make_hipDoubleComplex", "complex");
    subst("make_cuFloatComplex", "make_hipFloatComplex", "complex");
    subst("cublasAxpyEx", "hipblasAxpyEx_v2", "library");
    subst("cublasAxpyEx_64", "hipblasAxpyEx_v2_64", "library");
    subst("cublasCaxpy", "hipblasCaxpy_v2", "library");
    subst("cublasCaxpy_64", "hipblasCaxpy_v2_64", "library");
    subst("cublasCaxpy_v2", "hipblasCaxpy_v2", "library");
    subst("cublasCaxpy_v2_64", "hipblasCaxpy_v2_64", "library");
    subst("cublasCcopy", "hipblasCcopy_v2", "library");
    subst("cublasCcopy_64", "hipblasCcopy_v2_64", "library");
    subst("cublasCcopy_v2", "hipblasCcopy_v2", "library");
    subst("cublasCcopy_v2_64", "hipblasCcopy_v2_64", "library");
    subst("cublasCdgmm", "hipblasCdgmm_v2", "library");
    subst("cublasCdgmm_64", "hipblasCdgmm_v2_64", "library");
    subst("cublasCdotc", "hipblasCdotc_v2", "library");
    subst("cublasCdotc_64", "hipblasCdotc_v2_64", "library");
    subst("cublasCdotc_v2", "hipblasCdotc_v2", "library");
    subst("cublasCdotc_v2_64", "hipblasCdotc_v2_64", "library");
    subst("cublasCdotu", "hipblasCdotu_v2", "library");
    subst("cublasCdotu_64", "hipblasCdotu_v2_64", "library");
    subst("cublasCdotu_v2", "hipblasCdotu_v2", "library");
    subst("cublasCdotu_v2_64", "hipblasCdotu_v2_64", "library");
    subst("cublasCgbmv", "hipblasCgbmv_v2", "library");
    subst("cublasCgbmv_64", "hipblasCgbmv_v2_64", "library");
    subst("cublasCgbmv_v2", "hipblasCgbmv_v2", "library");
    subst("cublasCgbmv_v2_64", "hipblasCgbmv_v2_64", "library");
    subst("cublasCgeam", "hipblasCgeam_v2", "library");
    subst("cublasCgeam_64", "hipblasCgeam_v2_64", "library");
    subst("cublasCgelsBatched", "hipblasCgelsBatched_v2", "library");
    subst("cublasCgemm", "hipblasCgemm_v2", "library");
    subst("cublasCgemmBatched", "hipblasCgemmBatched_v2", "library");
    subst("cublasCgemmBatched_64", "hipblasCgemmBatched_v2_64", "library");
    subst("cublasCgemmStridedBatched", "hipblasCgemmStridedBatched_v2", "library");
    subst("cublasCgemmStridedBatched_64", "hipblasCgemmStridedBatched_v2_64", "library");
    subst("cublasCgemm_64", "hipblasCgemm_v2_64", "library");
    subst("cublasCgemm_v2", "hipblasCgemm_v2", "library");
    subst("cublasCgemm_v2_64", "hipblasCgemm_v2_64", "library");
    subst("cublasCgemv", "hipblasCgemv_v2", "library");
    subst("cublasCgemvBatched", "hipblasCgemvBatched_v2", "library");
    subst("cublasCgemvBatched_64", "hipblasCgemvBatched_v2_64", "library");
    subst("cublasCgemvStridedBatched", "hipblasCgemvStridedBatched_v2", "library");
    subst("cublasCgemvStridedBatched_64", "hipblasCgemvStridedBatched_v2_64", "library");
    subst("cublasCgemv_64", "hipblasCgemv_v2_64", "library");
    subst("cublasCgemv_v2", "hipblasCgemv_v2", "library");
    subst("cublasCgemv_v2_64", "hipblasCgemv_v2_64", "library");
    subst("cublasCgeqrfBatched", "hipblasCgeqrfBatched_v2", "library");
    subst("cublasCgerc", "hipblasCgerc_v2", "library");
    subst("cublasCgerc_64", "hipblasCgerc_v2_64", "library");
    subst("cublasCgerc_v2", "hipblasCgerc_v2", "library");
    subst("cublasCgerc_v2_64", "hipblasCgerc_v2_64", "library");
    subst("cublasCgeru", "hipblasCgeru_v2", "library");
    subst("cublasCgeru_64", "hipblasCgeru_v2_64", "library");
    subst("cublasCgeru_v2", "hipblasCgeru_v2", "library");
    subst("cublasCgeru_v2_64", "hipblasCgeru_v2_64", "library");
    subst("cublasCgetrfBatched", "hipblasCgetrfBatched_v2", "library");
    subst("cublasCgetriBatched", "hipblasCgetriBatched_v2", "library");
    subst("cublasCgetrsBatched", "hipblasCgetrsBatched_v2", "library");
    subst("cublasChbmv", "hipblasChbmv_v2", "library");
    subst("cublasChbmv_64", "hipblasChbmv_v2_64", "library");
    subst("cublasChbmv_v2", "hipblasChbmv_v2", "library");
    subst("cublasChbmv_v2_64", "hipblasChbmv_v2_64", "library");
    subst("cublasChemm", "hipblasChemm_v2", "library");
    subst("cublasChemm_64", "hipblasChemm_v2_64", "library");
    subst("cublasChemm_v2", "hipblasChemm_v2", "library");
    subst("cublasChemm_v2_64", "hipblasChemm_v2_64", "library");
    subst("cublasChemv", "hipblasChemv_v2", "library");
    subst("cublasChemv_64", "hipblasChemv_v2_64", "library");
    subst("cublasChemv_v2", "hipblasChemv_v2", "library");
    subst("cublasChemv_v2_64", "hipblasChemv_v2_64", "library");
    subst("cublasCher", "hipblasCher_v2", "library");
    subst("cublasCher2", "hipblasCher2_v2", "library");
    subst("cublasCher2_64", "hipblasCher2_v2_64", "library");
    subst("cublasCher2_v2", "hipblasCher2_v2", "library");
    subst("cublasCher2_v2_64", "hipblasCher2_v2_64", "library");
    subst("cublasCher2k", "hipblasCher2k_v2", "library");
    subst("cublasCher2k_64", "hipblasCher2k_v2_64", "library");
    subst("cublasCher2k_v2", "hipblasCher2k_v2", "library");
    subst("cublasCher2k_v2_64", "hipblasCher2k_v2_64", "library");
    subst("cublasCher_64", "hipblasCher_v2_64", "library");
    subst("cublasCher_v2", "hipblasCher_v2", "library");
    subst("cublasCher_v2_64", "hipblasCher_v2_64", "library");
    subst("cublasCherk", "hipblasCherk_v2", "library");
    subst("cublasCherk_64", "hipblasCherk_v2_64", "library");
    subst("cublasCherk_v2", "hipblasCherk_v2", "library");
    subst("cublasCherk_v2_64", "hipblasCherk_v2_64", "library");
    subst("cublasCherkx", "hipblasCherkx_v2", "library");
    subst("cublasCherkx_64", "hipblasCherkx_v2_64", "library");
    subst("cublasChpmv", "hipblasChpmv_v2", "library");
    subst("cublasChpmv_64", "hipblasChpmv_v2_64", "library");
    subst("cublasChpmv_v2", "hipblasChpmv_v2", "library");
    subst("cublasChpmv_v2_64", "hipblasChpmv_v2_64", "library");
    subst("cublasChpr", "hipblasChpr_v2", "library");
    subst("cublasChpr2", "hipblasChpr2_v2", "library");
    subst("cublasChpr2_64", "hipblasChpr2_v2_64", "library");
    subst("cublasChpr2_v2", "hipblasChpr2_v2", "library");
    subst("cublasChpr2_v2_64", "hipblasChpr2_v2_64", "library");
    subst("cublasChpr_64", "hipblasChpr_v2_64", "library");
    subst("cublasChpr_v2", "hipblasChpr_v2", "library");
    subst("cublasChpr_v2_64", "hipblasChpr_v2_64", "library");
    subst("cublasCreate", "hipblasCreate", "library");
    subst("cublasCreate_v2", "hipblasCreate", "library");
    subst("cublasCrot", "hipblasCrot_v2", "library");
    subst("cublasCrot_64", "hipblasCrot_v2_64", "library");
    subst("cublasCrot_v2", "hipblasCrot_v2", "library");
    subst("cublasCrot_v2_64", "hipblasCrot_v2_64", "library");
    subst("cublasCrotg", "hipblasCrotg_v2", "library");
    subst("cublasCrotg_v2", "hipblasCrotg_v2", "library");
    subst("cublasCscal", "hipblasCscal_v2", "library");
    subst("cublasCscal_64", "hipblasCscal_v2_64", "library");
    subst("cublasCscal_v2", "hipblasCscal_v2", "library");
    subst("cublasCscal_v2_64", "hipblasCscal_v2_64", "library");
    subst("cublasCsrot", "hipblasCsrot_v2", "library");
    subst("cublasCsrot_64", "hipblasCsrot_v2_64", "library");
    subst("cublasCsrot_v2", "hipblasCsrot_v2", "library");
    subst("cublasCsrot_v2_64", "hipblasCsrot_v2_64", "library");
    subst("cublasCsscal", "hipblasCsscal_v2", "library");
    subst("cublasCsscal_64", "hipblasCsscal_v2_64", "library");
    subst("cublasCsscal_v2", "hipblasCsscal_v2", "library");
    subst("cublasCsscal_v2_64", "hipblasCsscal_v2_64", "library");
    subst("cublasCswap", "hipblasCswap_v2", "library");
    subst("cublasCswap_64", "hipblasCswap_v2_64", "library");
    subst("cublasCswap_v2", "hipblasCswap_v2", "library");
    subst("cublasCswap_v2_64", "hipblasCswap_v2_64", "library");
    subst("cublasCsymm", "hipblasCsymm_v2", "library");
    subst("cublasCsymm_64", "hipblasCsymm_v2_64", "library");
    subst("cublasCsymm_v2", "hipblasCsymm_v2", "library");
    subst("cublasCsymm_v2_64", "hipblasCsymm_v2_64", "library");
    subst("cublasCsymv", "hipblasCsymv_v2", "library");
    subst("cublasCsymv_64", "hipblasCsymv_v2_64", "library");
    subst("cublasCsymv_v2", "hipblasCsymv_v2", "library");
    subst("cublasCsymv_v2_64", "hipblasCsymv_v2_64", "library");
    subst("cublasCsyr", "hipblasCsyr_v2", "library");
    subst("cublasCsyr2", "hipblasCsyr2_v2", "library");
    subst("cublasCsyr2_64", "hipblasCsyr2_v2_64", "library");
    subst("cublasCsyr2_v2", "hipblasCsyr2_v2", "library");
    subst("cublasCsyr2_v2_64", "hipblasCsyr2_v2_64", "library");
    subst("cublasCsyr2k", "hipblasCsyr2k_v2", "library");
    subst("cublasCsyr2k_64", "hipblasCsyr2k_v2_64", "library");
    subst("cublasCsyr2k_v2", "hipblasCsyr2k_v2", "library");
    subst("cublasCsyr2k_v2_64", "hipblasCsyr2k_v2_64", "library");
    subst("cublasCsyr_64", "hipblasCsyr_v2_64", "library");
    subst("cublasCsyr_v2", "hipblasCsyr_v2", "library");
    subst("cublasCsyr_v2_64", "hipblasCsyr_v2_64", "library");
    subst("cublasCsyrk", "hipblasCsyrk_v2", "library");
    subst("cublasCsyrk_64", "hipblasCsyrk_v2_64", "library");
    subst("cublasCsyrk_v2", "hipblasCsyrk_v2", "library");
    subst("cublasCsyrk_v2_64", "hipblasCsyrk_v2_64", "library");
    subst("cublasCsyrkx", "hipblasCsyrkx_v2", "library");
    subst("cublasCsyrkx_64", "hipblasCsyrkx_v2_64", "library");
    subst("cublasCtbmv", "hipblasCtbmv_v2", "library");
    subst("cublasCtbmv_64", "hipblasCtbmv_v2_64", "library");
    subst("cublasCtbmv_v2", "hipblasCtbmv_v2", "library");
    subst("cublasCtbmv_v2_64", "hipblasCtbmv_v2_64", "library");
    subst("cublasCtbsv", "hipblasCtbsv_v2", "library");
    subst("cublasCtbsv_64", "hipblasCtbsv_v2_64", "library");
    subst("cublasCtbsv_v2", "hipblasCtbsv_v2", "library");
    subst("cublasCtbsv_v2_64", "hipblasCtbsv_v2_64", "library");
    subst("cublasCtpmv", "hipblasCtpmv_v2", "library");
    subst("cublasCtpmv_64", "hipblasCtpmv_v2_64", "library");
    subst("cublasCtpmv_v2", "hipblasCtpmv_v2", "library");
    subst("cublasCtpmv_v2_64", "hipblasCtpmv_v2_64", "library");
    subst("cublasCtpsv", "hipblasCtpsv_v2", "library");
    subst("cublasCtpsv_64", "hipblasCtpsv_v2_64", "library");
    subst("cublasCtpsv_v2", "hipblasCtpsv_v2", "library");
    subst("cublasCtpsv_v2_64", "hipblasCtpsv_v2_64", "library");
    subst("cublasCtrmm", "hipblasCtrmm_v2", "library");
    subst("cublasCtrmm_64", "hipblasCtrmm_v2_64", "library");
    subst("cublasCtrmm_v2", "hipblasCtrmm_v2", "library");
    subst("cublasCtrmm_v2_64", "hipblasCtrmm_v2_64", "library");
    subst("cublasCtrmv", "hipblasCtrmv_v2", "library");
    subst("cublasCtrmv_64", "hipblasCtrmv_v2_64", "library");
    subst("cublasCtrmv_v2", "hipblasCtrmv_v2", "library");
    subst("cublasCtrmv_v2_64", "hipblasCtrmv_v2_64", "library");
    subst("cublasCtrsm", "hipblasCtrsm_v2", "library");
    subst("cublasCtrsmBatched", "hipblasCtrsmBatched_v2", "library");
    subst("cublasCtrsmBatched_64", "hipblasCtrsmBatched_v2_64", "library");
    subst("cublasCtrsm_64", "hipblasCtrsm_v2_64", "library");
    subst("cublasCtrsm_v2", "hipblasCtrsm_v2", "library");
    subst("cublasCtrsm_v2_64", "hipblasCtrsm_v2_64", "library");
    subst("cublasCtrsv", "hipblasCtrsv_v2", "library");
    subst("cublasCtrsv_64", "hipblasCtrsv_v2_64", "library");
    subst("cublasCtrsv_v2", "hipblasCtrsv_v2", "library");
    subst("cublasCtrsv_v2_64", "hipblasCtrsv_v2_64", "library");
    subst("cublasDasum", "hipblasDasum", "library");
    subst("cublasDasum_64", "hipblasDasum_64", "library");
    subst("cublasDasum_v2", "hipblasDasum", "library");
    subst("cublasDasum_v2_64", "hipblasDasum_64", "library");
    subst("cublasDaxpy", "hipblasDaxpy", "library");
    subst("cublasDaxpy_64", "hipblasDaxpy_64", "library");
    subst("cublasDaxpy_v2", "hipblasDaxpy", "library");
    subst("cublasDaxpy_v2_64", "hipblasDaxpy_64", "library");
    subst("cublasDcopy", "hipblasDcopy", "library");
    subst("cublasDcopy_64", "hipblasDcopy_64", "library");
    subst("cublasDcopy_v2", "hipblasDcopy", "library");
    subst("cublasDcopy_v2_64", "hipblasDcopy_64", "library");
    subst("cublasDdgmm", "hipblasDdgmm", "library");
    subst("cublasDdgmm_64", "hipblasDdgmm_64", "library");
    subst("cublasDdot", "hipblasDdot", "library");
    subst("cublasDdot_64", "hipblasDdot_64", "library");
    subst("cublasDdot_v2", "hipblasDdot", "library");
    subst("cublasDdot_v2_64", "hipblasDdot_64", "library");
    subst("cublasDestroy", "hipblasDestroy", "library");
    subst("cublasDestroy_v2", "hipblasDestroy", "library");
    subst("cublasDgbmv", "hipblasDgbmv", "library");
    subst("cublasDgbmv_64", "hipblasDgbmv_64", "library");
    subst("cublasDgbmv_v2", "hipblasDgbmv", "library");
    subst("cublasDgbmv_v2_64", "hipblasDgbmv_64", "library");
    subst("cublasDgeam", "hipblasDgeam", "library");
    subst("cublasDgeam_64", "hipblasDgeam_64", "library");
    subst("cublasDgelsBatched", "hipblasDgelsBatched", "library");
    subst("cublasDgemm", "hipblasDgemm", "library");
    subst("cublasDgemmBatched", "hipblasDgemmBatched", "library");
    subst("cublasDgemmBatched_64", "hipblasDgemmBatched_64", "library");
    subst("cublasDgemmStridedBatched", "hipblasDgemmStridedBatched", "library");
    subst("cublasDgemmStridedBatched_64", "hipblasDgemmStridedBatched_64", "library");
    subst("cublasDgemm_64", "hipblasDgemm_64", "library");
    subst("cublasDgemm_v2", "hipblasDgemm", "library");
    subst("cublasDgemm_v2_64", "hipblasDgemm_64", "library");
    subst("cublasDgemv", "hipblasDgemv", "library");
    subst("cublasDgemvBatched", "hipblasDgemvBatched", "library");
    subst("cublasDgemvBatched_64", "hipblasDgemvBatched_64", "library");
    subst("cublasDgemvStridedBatched", "hipblasDgemvStridedBatched", "library");
    subst("cublasDgemvStridedBatched_64", "hipblasDgemvStridedBatched_64", "library");
    subst("cublasDgemv_64", "hipblasDgemv_64", "library");
    subst("cublasDgemv_v2", "hipblasDgemv", "library");
    subst("cublasDgemv_v2_64", "hipblasDgemv_64", "library");
    subst("cublasDgeqrfBatched", "hipblasDgeqrfBatched", "library");
    subst("cublasDger", "hipblasDger", "library");
    subst("cublasDger_64", "hipblasDger_64", "library");
    subst("cublasDger_v2", "hipblasDger", "library");
    subst("cublasDger_v2_64", "hipblasDger_64", "library");
    subst("cublasDgetrfBatched", "hipblasDgetrfBatched", "library");
    subst("cublasDgetriBatched", "hipblasDgetriBatched", "library");
    subst("cublasDgetrsBatched", "hipblasDgetrsBatched", "library");
    subst("cublasDnrm2", "hipblasDnrm2", "library");
    subst("cublasDnrm2_64", "hipblasDnrm2_64", "library");
    subst("cublasDnrm2_v2", "hipblasDnrm2", "library");
    subst("cublasDnrm2_v2_64", "hipblasDnrm2_64", "library");
    subst("cublasDotEx", "hipblasDotEx_v2", "library");
    subst("cublasDotEx_64", "hipblasDotEx_v2_64", "library");
    subst("cublasDotcEx", "hipblasDotcEx_v2", "library");
    subst("cublasDotcEx_64", "hipblasDotcEx_v2_64", "library");
    subst("cublasDrot", "hipblasDrot", "library");
    subst("cublasDrot_64", "hipblasDrot_64", "library");
    subst("cublasDrot_v2", "hipblasDrot", "library");
    subst("cublasDrot_v2_64", "hipblasDrot_64", "library");
    subst("cublasDrotg", "hipblasDrotg", "library");
    subst("cublasDrotg_v2", "hipblasDrotg", "library");
    subst("cublasDrotm", "hipblasDrotm", "library");
    subst("cublasDrotm_64", "hipblasDrotm_64", "library");
    subst("cublasDrotm_v2", "hipblasDrotm", "library");
    subst("cublasDrotm_v2_64", "hipblasDrotm_64", "library");
    subst("cublasDrotmg", "hipblasDrotmg", "library");
    subst("cublasDrotmg_v2", "hipblasDrotmg", "library");
    subst("cublasDsbmv", "hipblasDsbmv", "library");
    subst("cublasDsbmv_64", "hipblasDsbmv_64", "library");
    subst("cublasDsbmv_v2", "hipblasDsbmv", "library");
    subst("cublasDsbmv_v2_64", "hipblasDsbmv_64", "library");
    subst("cublasDscal", "hipblasDscal", "library");
    subst("cublasDscal_64", "hipblasDscal_64", "library");
    subst("cublasDscal_v2", "hipblasDscal", "library");
    subst("cublasDscal_v2_64", "hipblasDscal_64", "library");
    subst("cublasDspmv", "hipblasDspmv", "library");
    subst("cublasDspmv_64", "hipblasDspmv_64", "library");
    subst("cublasDspmv_v2", "hipblasDspmv", "library");
    subst("cublasDspmv_v2_64", "hipblasDspmv_64", "library");
    subst("cublasDspr", "hipblasDspr", "library");
    subst("cublasDspr2", "hipblasDspr2", "library");
    subst("cublasDspr2_64", "hipblasDspr2_64", "library");
    subst("cublasDspr2_v2", "hipblasDspr2", "library");
    subst("cublasDspr2_v2_64", "hipblasDspr2_64", "library");
    subst("cublasDspr_64", "hipblasDspr_64", "library");
    subst("cublasDspr_v2", "hipblasDspr", "library");
    subst("cublasDspr_v2_64", "hipblasDspr_64", "library");
    subst("cublasDswap", "hipblasDswap", "library");
    subst("cublasDswap_64", "hipblasDswap_64", "library");
    subst("cublasDswap_v2", "hipblasDswap", "library");
    subst("cublasDswap_v2_64", "hipblasDswap_64", "library");
    subst("cublasDsymm", "hipblasDsymm", "library");
    subst("cublasDsymm_64", "hipblasDsymm_64", "library");
    subst("cublasDsymm_v2", "hipblasDsymm", "library");
    subst("cublasDsymm_v2_64", "hipblasDsymm_64", "library");
    subst("cublasDsymv", "hipblasDsymv", "library");
    subst("cublasDsymv_64", "hipblasDsymv_64", "library");
    subst("cublasDsymv_v2", "hipblasDsymv", "library");
    subst("cublasDsymv_v2_64", "hipblasDsymv_64", "library");
    subst("cublasDsyr", "hipblasDsyr", "library");
    subst("cublasDsyr2", "hipblasDsyr2", "library");
    subst("cublasDsyr2_64", "hipblasDsyr2_64", "library");
    subst("cublasDsyr2_v2", "hipblasDsyr2", "library");
    subst("cublasDsyr2_v2_64", "hipblasDsyr2_64", "library");
    subst("cublasDsyr2k", "hipblasDsyr2k", "library");
    subst("cublasDsyr2k_64", "hipblasDsyr2k_64", "library");
    subst("cublasDsyr2k_v2", "hipblasDsyr2k", "library");
    subst("cublasDsyr2k_v2_64", "hipblasDsyr2k_64", "library");
    subst("cublasDsyr_64", "hipblasDsyr_64", "library");
    subst("cublasDsyr_v2", "hipblasDsyr", "library");
    subst("cublasDsyr_v2_64", "hipblasDsyr_64", "library");
    subst("cublasDsyrk", "hipblasDsyrk", "library");
    subst("cublasDsyrk_64", "hipblasDsyrk_64", "library");
    subst("cublasDsyrk_v2", "hipblasDsyrk", "library");
    subst("cublasDsyrk_v2_64", "hipblasDsyrk_64", "library");
    subst("cublasDsyrkx", "hipblasDsyrkx", "library");
    subst("cublasDsyrkx_64", "hipblasDsyrkx_64", "library");
    subst("cublasDtbmv", "hipblasDtbmv", "library");
    subst("cublasDtbmv_64", "hipblasDtbmv_64", "library");
    subst("cublasDtbmv_v2", "hipblasDtbmv", "library");
    subst("cublasDtbmv_v2_64", "hipblasDtbmv_64", "library");
    subst("cublasDtbsv", "hipblasDtbsv", "library");
    subst("cublasDtbsv_64", "hipblasDtbsv_64", "library");
    subst("cublasDtbsv_v2", "hipblasDtbsv", "library");
    subst("cublasDtbsv_v2_64", "hipblasDtbsv_64", "library");
    subst("cublasDtpmv", "hipblasDtpmv", "library");
    subst("cublasDtpmv_64", "hipblasDtpmv_64", "library");
    subst("cublasDtpmv_v2", "hipblasDtpmv", "library");
    subst("cublasDtpmv_v2_64", "hipblasDtpmv_64", "library");
    subst("cublasDtpsv", "hipblasDtpsv", "library");
    subst("cublasDtpsv_64", "hipblasDtpsv_64", "library");
    subst("cublasDtpsv_v2", "hipblasDtpsv", "library");
    subst("cublasDtpsv_v2_64", "hipblasDtpsv_64", "library");
    subst("cublasDtrmm", "hipblasDtrmm", "library");
    subst("cublasDtrmm_64", "hipblasDtrmm_64", "library");
    subst("cublasDtrmm_v2", "hipblasDtrmm", "library");
    subst("cublasDtrmm_v2_64", "hipblasDtrmm_64", "library");
    subst("cublasDtrmv", "hipblasDtrmv", "library");
    subst("cublasDtrmv_64", "hipblasDtrmv_64", "library");
    subst("cublasDtrmv_v2", "hipblasDtrmv", "library");
    subst("cublasDtrmv_v2_64", "hipblasDtrmv_64", "library");
    subst("cublasDtrsm", "hipblasDtrsm", "library");
    subst("cublasDtrsmBatched", "hipblasDtrsmBatched", "library");
    subst("cublasDtrsmBatched_64", "hipblasDtrsmBatched_64", "library");
    subst("cublasDtrsm_64", "hipblasDtrsm_64", "library");
    subst("cublasDtrsm_v2", "hipblasDtrsm", "library");
    subst("cublasDtrsm_v2_64", "hipblasDtrsm_64", "library");
    subst("cublasDtrsv", "hipblasDtrsv", "library");
    subst("cublasDtrsv_64", "hipblasDtrsv_64", "library");
    subst("cublasDtrsv_v2", "hipblasDtrsv", "library");
    subst("cublasDtrsv_v2_64", "hipblasDtrsv_64", "library");
    subst("cublasDzasum", "hipblasDzasum_v2", "library");
    subst("cublasDzasum_64", "hipblasDzasum_v2_64", "library");
    subst("cublasDzasum_v2", "hipblasDzasum_v2", "library");
    subst("cublasDzasum_v2_64", "hipblasDzasum_v2_64", "library");
    subst("cublasDznrm2", "hipblasDznrm2_v2", "library");
    subst("cublasDznrm2_64", "hipblasDznrm2_v2_64", "library");
    subst("cublasDznrm2_v2", "hipblasDznrm2_v2", "library");
    subst("cublasDznrm2_v2_64", "hipblasDznrm2_v2_64", "library");
    subst("cublasGemmBatchedEx", "hipblasGemmBatchedEx_v2", "library");
    subst("cublasGemmBatchedEx_64", "hipblasGemmBatchedEx_v2_64", "library");
    subst("cublasGemmEx", "hipblasGemmEx_v2", "library");
    subst("cublasGemmEx_64", "hipblasGemmEx_v2_64", "library");
    subst("cublasGemmStridedBatchedEx", "hipblasGemmStridedBatchedEx_v2", "library");
    subst("cublasGemmStridedBatchedEx_64", "hipblasGemmStridedBatchedEx_v2_64", "library");
    subst("cublasGetAtomicsMode", "hipblasGetAtomicsMode", "library");
    subst("cublasGetMathMode", "hipblasGetMathMode", "library");
    subst("cublasGetMatrix", "hipblasGetMatrix", "library");
    subst("cublasGetMatrixAsync", "hipblasGetMatrixAsync", "library");
    subst("cublasGetPointerMode", "hipblasGetPointerMode", "library");
    subst("cublasGetPointerMode_v2", "hipblasGetPointerMode", "library");
    subst("cublasGetStream", "hipblasGetStream", "library");
    subst("cublasGetStream_v2", "hipblasGetStream", "library");
    subst("cublasGetVector", "hipblasGetVector", "library");
    subst("cublasGetVectorAsync", "hipblasGetVectorAsync", "library");
    subst("cublasHgemm", "hipblasHgemm", "library");
    subst("cublasHgemmBatched", "hipblasHgemmBatched", "library");
    subst("cublasHgemmBatched_64", "hipblasHgemmBatched_64", "library");
    subst("cublasHgemmStridedBatched", "hipblasHgemmStridedBatched", "library");
    subst("cublasHgemmStridedBatched_64", "hipblasHgemmStridedBatched_64", "library");
    subst("cublasHgemm_64", "hipblasHgemm_64", "library");
    subst("cublasIcamax", "hipblasIcamax_v2", "library");
    subst("cublasIcamax_64", "hipblasIcamax_v2_64", "library");
    subst("cublasIcamax_v2", "hipblasIcamax_v2", "library");
    subst("cublasIcamax_v2_64", "hipblasIcamax_v2_64", "library");
    subst("cublasIcamin", "hipblasIcamin_v2", "library");
    subst("cublasIcamin_64", "hipblasIcamin_v2_64", "library");
    subst("cublasIcamin_v2", "hipblasIcamin_v2", "library");
    subst("cublasIcamin_v2_64", "hipblasIcamin_v2_64", "library");
    subst("cublasIdamax", "hipblasIdamax", "library");
    subst("cublasIdamax_64", "hipblasIdamax_64", "library");
    subst("cublasIdamax_v2", "hipblasIdamax", "library");
    subst("cublasIdamax_v2_64", "hipblasIdamax_64", "library");
    subst("cublasIdamin", "hipblasIdamin", "library");
    subst("cublasIdamin_64", "hipblasIdamin_64", "library");
    subst("cublasIdamin_v2", "hipblasIdamin", "library");
    subst("cublasIdamin_v2_64", "hipblasIdamin_64", "library");
    subst("cublasIsamax", "hipblasIsamax", "library");
    subst("cublasIsamax_64", "hipblasIsamax_64", "library");
    subst("cublasIsamax_v2", "hipblasIsamax", "library");
    subst("cublasIsamax_v2_64", "hipblasIsamax_64", "library");
    subst("cublasIsamin", "hipblasIsamin", "library");
    subst("cublasIsamin_64", "hipblasIsamin_64", "library");
    subst("cublasIsamin_v2", "hipblasIsamin", "library");
    subst("cublasIsamin_v2_64", "hipblasIsamin_64", "library");
    subst("cublasIzamax", "hipblasIzamax_v2", "library");
    subst("cublasIzamax_64", "hipblasIzamax_v2_64", "library");
    subst("cublasIzamax_v2", "hipblasIzamax_v2", "library");
    subst("cublasIzamax_v2_64", "hipblasIzamax_v2_64", "library");
    subst("cublasIzamin", "hipblasIzamin_v2", "library");
    subst("cublasIzamin_64", "hipblasIzamin_v2_64", "library");
    subst("cublasIzamin_v2", "hipblasIzamin_v2", "library");
    subst("cublasIzamin_v2_64", "hipblasIzamin_v2_64", "library");
    subst("cublasLtCreate", "hipblasLtCreate", "library");
    subst("cublasLtDestroy", "hipblasLtDestroy", "library");
    subst("cublasLtMatmul", "hipblasLtMatmul", "library");
    subst("cublasLtMatmulAlgoGetHeuristic", "hipblasLtMatmulAlgoGetHeuristic", "library");
    subst("cublasLtMatmulDescCreate", "hipblasLtMatmulDescCreate", "library");
    subst("cublasLtMatmulDescDestroy", "hipblasLtMatmulDescDestroy", "library");
    subst("cublasLtMatmulDescGetAttribute", "hipblasLtMatmulDescGetAttribute", "library");
    subst("cublasLtMatmulDescSetAttribute", "hipblasLtMatmulDescSetAttribute", "library");
    subst("cublasLtMatmulPreferenceCreate", "hipblasLtMatmulPreferenceCreate", "library");
    subst("cublasLtMatmulPreferenceDestroy", "hipblasLtMatmulPreferenceDestroy", "library");
    subst("cublasLtMatmulPreferenceGetAttribute", "hipblasLtMatmulPreferenceGetAttribute", "library");
    subst("cublasLtMatmulPreferenceSetAttribute", "hipblasLtMatmulPreferenceSetAttribute", "library");
    subst("cublasLtMatrixLayoutCreate", "hipblasLtMatrixLayoutCreate", "library");
    subst("cublasLtMatrixLayoutDestroy", "hipblasLtMatrixLayoutDestroy", "library");
    subst("cublasLtMatrixLayoutGetAttribute", "hipblasLtMatrixLayoutGetAttribute", "library");
    subst("cublasLtMatrixLayoutSetAttribute", "hipblasLtMatrixLayoutSetAttribute", "library");
    subst("cublasLtMatrixTransform", "hipblasLtMatrixTransform", "library");
    subst("cublasLtMatrixTransformDescCreate", "hipblasLtMatrixTransformDescCreate", "library");
    subst("cublasLtMatrixTransformDescDestroy", "hipblasLtMatrixTransformDescDestroy", "library");
    subst("cublasLtMatrixTransformDescGetAttribute", "hipblasLtMatrixTransformDescGetAttribute", "library");
    subst("cublasLtMatrixTransformDescSetAttribute", "hipblasLtMatrixTransformDescSetAttribute", "library");
    subst("cublasNrm2Ex", "hipblasNrm2Ex_v2", "library");
    subst("cublasNrm2Ex_64", "hipblasNrm2Ex_v2_64", "library");
    subst("cublasRotEx", "hipblasRotEx_v2", "library");
    subst("cublasRotEx_64", "hipblasRotEx_v2_64", "library");
    subst("cublasSasum", "hipblasSasum", "library");
    subst("cublasSasum_64", "hipblasSasum_64", "library");
    subst("cublasSasum_v2", "hipblasSasum", "library");
    subst("cublasSasum_v2_64", "hipblasSasum_64", "library");
    subst("cublasSaxpy", "hipblasSaxpy", "library");
    subst("cublasSaxpy_64", "hipblasSaxpy_64", "library");
    subst("cublasSaxpy_v2", "hipblasSaxpy", "library");
    subst("cublasSaxpy_v2_64", "hipblasSaxpy_64", "library");
    subst("cublasScalEx", "hipblasScalEx_v2", "library");
    subst("cublasScalEx_64", "hipblasScalEx_v2_64", "library");
    subst("cublasScasum", "hipblasScasum_v2", "library");
    subst("cublasScasum_64", "hipblasScasum_v2_64", "library");
    subst("cublasScasum_v2", "hipblasScasum_v2", "library");
    subst("cublasScasum_v2_64", "hipblasScasum_v2_64", "library");
    subst("cublasScnrm2", "hipblasScnrm2_v2", "library");
    subst("cublasScnrm2_64", "hipblasScnrm2_v2_64", "library");
    subst("cublasScnrm2_v2", "hipblasScnrm2_v2", "library");
    subst("cublasScnrm2_v2_64", "hipblasScnrm2_v2_64", "library");
    subst("cublasScopy", "hipblasScopy", "library");
    subst("cublasScopy_64", "hipblasScopy_64", "library");
    subst("cublasScopy_v2", "hipblasScopy", "library");
    subst("cublasScopy_v2_64", "hipblasScopy_64", "library");
    subst("cublasSdgmm", "hipblasSdgmm", "library");
    subst("cublasSdgmm_64", "hipblasSdgmm_64", "library");
    subst("cublasSdot", "hipblasSdot", "library");
    subst("cublasSdot_64", "hipblasSdot_64", "library");
    subst("cublasSdot_v2", "hipblasSdot", "library");
    subst("cublasSdot_v2_64", "hipblasSdot_64", "library");
    subst("cublasSetAtomicsMode", "hipblasSetAtomicsMode", "library");
    subst("cublasSetMathMode", "hipblasSetMathMode", "library");
    subst("cublasSetMatrix", "hipblasSetMatrix", "library");
    subst("cublasSetMatrixAsync", "hipblasSetMatrixAsync", "library");
    subst("cublasSetPointerMode", "hipblasSetPointerMode", "library");
    subst("cublasSetPointerMode_v2", "hipblasSetPointerMode", "library");
    subst("cublasSetStream", "hipblasSetStream", "library");
    subst("cublasSetStream_v2", "hipblasSetStream", "library");
    subst("cublasSetVector", "hipblasSetVector", "library");
    subst("cublasSetVectorAsync", "hipblasSetVectorAsync", "library");
    subst("cublasSgbmv", "hipblasSgbmv", "library");
    subst("cublasSgbmv_64", "hipblasSgbmv_64", "library");
    subst("cublasSgbmv_v2", "hipblasSgbmv", "library");
    subst("cublasSgbmv_v2_64", "hipblasSgbmv_64", "library");
    subst("cublasSgeam", "hipblasSgeam", "library");
    subst("cublasSgeam_64", "hipblasSgeam_64", "library");
    subst("cublasSgelsBatched", "hipblasSgelsBatched", "library");
    subst("cublasSgemm", "hipblasSgemm", "library");
    subst("cublasSgemmBatched", "hipblasSgemmBatched", "library");
    subst("cublasSgemmBatched_64", "hipblasSgemmBatched_64", "library");
    subst("cublasSgemmStridedBatched", "hipblasSgemmStridedBatched", "library");
    subst("cublasSgemmStridedBatched_64", "hipblasSgemmStridedBatched_64", "library");
    subst("cublasSgemm_64", "hipblasSgemm_64", "library");
    subst("cublasSgemm_v2", "hipblasSgemm", "library");
    subst("cublasSgemm_v2_64", "hipblasSgemm_64", "library");
    subst("cublasSgemv", "hipblasSgemv", "library");
    subst("cublasSgemvBatched", "hipblasSgemvBatched", "library");
    subst("cublasSgemvBatched_64", "hipblasSgemvBatched_64", "library");
    subst("cublasSgemvStridedBatched", "hipblasSgemvStridedBatched", "library");
    subst("cublasSgemvStridedBatched_64", "hipblasSgemvStridedBatched_64", "library");
    subst("cublasSgemv_64", "hipblasSgemv_64", "library");
    subst("cublasSgemv_v2", "hipblasSgemv", "library");
    subst("cublasSgemv_v2_64", "hipblasSgemv_64", "library");
    subst("cublasSgeqrfBatched", "hipblasSgeqrfBatched", "library");
    subst("cublasSger", "hipblasSger", "library");
    subst("cublasSger_64", "hipblasSger_64", "library");
    subst("cublasSger_v2", "hipblasSger", "library");
    subst("cublasSger_v2_64", "hipblasSger_64", "library");
    subst("cublasSgetrfBatched", "hipblasSgetrfBatched", "library");
    subst("cublasSgetriBatched", "hipblasSgetriBatched", "library");
    subst("cublasSgetrsBatched", "hipblasSgetrsBatched", "library");
    subst("cublasSnrm2", "hipblasSnrm2", "library");
    subst("cublasSnrm2_64", "hipblasSnrm2_64", "library");
    subst("cublasSnrm2_v2", "hipblasSnrm2", "library");
    subst("cublasSnrm2_v2_64", "hipblasSnrm2_64", "library");
    subst("cublasSrot", "hipblasSrot", "library");
    subst("cublasSrot_64", "hipblasSrot_64", "library");
    subst("cublasSrot_v2", "hipblasSrot", "library");
    subst("cublasSrot_v2_64", "hipblasSrot_64", "library");
    subst("cublasSrotg", "hipblasSrotg", "library");
    subst("cublasSrotg_v2", "hipblasSrotg", "library");
    subst("cublasSrotm", "hipblasSrotm", "library");
    subst("cublasSrotm_64", "hipblasSrotm_64", "library");
    subst("cublasSrotm_v2", "hipblasSrotm", "library");
    subst("cublasSrotm_v2_64", "hipblasSrotm_64", "library");
    subst("cublasSrotmg", "hipblasSrotmg", "library");
    subst("cublasSrotmg_v2", "hipblasSrotmg", "library");
    subst("cublasSsbmv", "hipblasSsbmv", "library");
    subst("cublasSsbmv_64", "hipblasSsbmv_64", "library");
    subst("cublasSsbmv_v2", "hipblasSsbmv", "library");
    subst("cublasSsbmv_v2_64", "hipblasSsbmv_64", "library");
    subst("cublasSscal", "hipblasSscal", "library");
    subst("cublasSscal_64", "hipblasSscal_64", "library");
    subst("cublasSscal_v2", "hipblasSscal", "library");
    subst("cublasSscal_v2_64", "hipblasSscal_64", "library");
    subst("cublasSspmv", "hipblasSspmv", "library");
    subst("cublasSspmv_64", "hipblasSspmv_64", "library");
    subst("cublasSspmv_v2", "hipblasSspmv", "library");
    subst("cublasSspmv_v2_64", "hipblasSspmv_64", "library");
    subst("cublasSspr", "hipblasSspr", "library");
    subst("cublasSspr2", "hipblasSspr2", "library");
    subst("cublasSspr2_64", "hipblasSspr2_64", "library");
    subst("cublasSspr2_v2", "hipblasSspr2", "library");
    subst("cublasSspr2_v2_64", "hipblasSspr2_64", "library");
    subst("cublasSspr_64", "hipblasSspr_64", "library");
    subst("cublasSspr_v2", "hipblasSspr", "library");
    subst("cublasSspr_v2_64", "hipblasSspr_64", "library");
    subst("cublasSswap", "hipblasSswap", "library");
    subst("cublasSswap_64", "hipblasSswap_64", "library");
    subst("cublasSswap_v2", "hipblasSswap", "library");
    subst("cublasSswap_v2_64", "hipblasSswap_64", "library");
    subst("cublasSsymm", "hipblasSsymm", "library");
    subst("cublasSsymm_64", "hipblasSsymm_64", "library");
    subst("cublasSsymm_v2", "hipblasSsymm", "library");
    subst("cublasSsymm_v2_64", "hipblasSsymm_64", "library");
    subst("cublasSsymv", "hipblasSsymv", "library");
    subst("cublasSsymv_64", "hipblasSsymv_64", "library");
    subst("cublasSsymv_v2", "hipblasSsymv", "library");
    subst("cublasSsymv_v2_64", "hipblasSsymv_64", "library");
    subst("cublasSsyr", "hipblasSsyr", "library");
    subst("cublasSsyr2", "hipblasSsyr2", "library");
    subst("cublasSsyr2_64", "hipblasSsyr2_64", "library");
    subst("cublasSsyr2_v2", "hipblasSsyr2", "library");
    subst("cublasSsyr2_v2_64", "hipblasSsyr2_64", "library");
    subst("cublasSsyr2k", "hipblasSsyr2k", "library");
    subst("cublasSsyr2k_64", "hipblasSsyr2k_64", "library");
    subst("cublasSsyr2k_v2", "hipblasSsyr2k", "library");
    subst("cublasSsyr2k_v2_64", "hipblasSsyr2k_64", "library");
    subst("cublasSsyr_64", "hipblasSsyr_64", "library");
    subst("cublasSsyr_v2", "hipblasSsyr", "library");
    subst("cublasSsyr_v2_64", "hipblasSsyr_64", "library");
    subst("cublasSsyrk", "hipblasSsyrk", "library");
    subst("cublasSsyrk_64", "hipblasSsyrk_64", "library");
    subst("cublasSsyrk_v2", "hipblasSsyrk", "library");
    subst("cublasSsyrk_v2_64", "hipblasSsyrk_64", "library");
    subst("cublasSsyrkx", "hipblasSsyrkx", "library");
    subst("cublasSsyrkx_64", "hipblasSsyrkx_64", "library");
    subst("cublasStbmv", "hipblasStbmv", "library");
    subst("cublasStbmv_64", "hipblasStbmv_64", "library");
    subst("cublasStbmv_v2", "hipblasStbmv", "library");
    subst("cublasStbmv_v2_64", "hipblasStbmv_64", "library");
    subst("cublasStbsv", "hipblasStbsv", "library");
    subst("cublasStbsv_64", "hipblasStbsv_64", "library");
    subst("cublasStbsv_v2", "hipblasStbsv", "library");
    subst("cublasStbsv_v2_64", "hipblasStbsv_64", "library");
    subst("cublasStpmv", "hipblasStpmv", "library");
    subst("cublasStpmv_64", "hipblasStpmv_64", "library");
    subst("cublasStpmv_v2", "hipblasStpmv", "library");
    subst("cublasStpmv_v2_64", "hipblasStpmv_64", "library");
    subst("cublasStpsv", "hipblasStpsv", "library");
    subst("cublasStpsv_64", "hipblasStpsv_64", "library");
    subst("cublasStpsv_v2", "hipblasStpsv", "library");
    subst("cublasStpsv_v2_64", "hipblasStpsv_64", "library");
    subst("cublasStrmm", "hipblasStrmm", "library");
    subst("cublasStrmm_64", "hipblasStrmm_64", "library");
    subst("cublasStrmm_v2", "hipblasStrmm", "library");
    subst("cublasStrmm_v2_64", "hipblasStrmm_64", "library");
    subst("cublasStrmv", "hipblasStrmv", "library");
    subst("cublasStrmv_64", "hipblasStrmv_64", "library");
    subst("cublasStrmv_v2", "hipblasStrmv", "library");
    subst("cublasStrmv_v2_64", "hipblasStrmv_64", "library");
    subst("cublasStrsm", "hipblasStrsm", "library");
    subst("cublasStrsmBatched", "hipblasStrsmBatched", "library");
    subst("cublasStrsmBatched_64", "hipblasStrsmBatched_64", "library");
    subst("cublasStrsm_64", "hipblasStrsm_64", "library");
    subst("cublasStrsm_v2", "hipblasStrsm", "library");
    subst("cublasStrsm_v2_64", "hipblasStrsm_64", "library");
    subst("cublasStrsv", "hipblasStrsv", "library");
    subst("cublasStrsv_64", "hipblasStrsv_64", "library");
    subst("cublasStrsv_v2", "hipblasStrsv", "library");
    subst("cublasStrsv_v2_64", "hipblasStrsv_64", "library");
    subst("cublasZaxpy", "hipblasZaxpy_v2", "library");
    subst("cublasZaxpy_64", "hipblasZaxpy_v2_64", "library");
    subst("cublasZaxpy_v2", "hipblasZaxpy_v2", "library");
    subst("cublasZaxpy_v2_64", "hipblasZaxpy_v2_64", "library");
    subst("cublasZcopy", "hipblasZcopy_v2", "library");
    subst("cublasZcopy_64", "hipblasZcopy_v2_64", "library");
    subst("cublasZcopy_v2", "hipblasZcopy_v2", "library");
    subst("cublasZcopy_v2_64", "hipblasZcopy_v2_64", "library");
    subst("cublasZdgmm", "hipblasZdgmm_v2", "library");
    subst("cublasZdgmm_64", "hipblasZdgmm_v2_64", "library");
    subst("cublasZdotc", "hipblasZdotc_v2", "library");
    subst("cublasZdotc_64", "hipblasZdotc_v2_64", "library");
    subst("cublasZdotc_v2", "hipblasZdotc_v2", "library");
    subst("cublasZdotc_v2_64", "hipblasZdotc_v2_64", "library");
    subst("cublasZdotu", "hipblasZdotu_v2", "library");
    subst("cublasZdotu_64", "hipblasZdotu_v2_64", "library");
    subst("cublasZdotu_v2", "hipblasZdotu_v2", "library");
    subst("cublasZdotu_v2_64", "hipblasZdotu_v2_64", "library");
    subst("cublasZdrot", "hipblasZdrot_v2", "library");
    subst("cublasZdrot_64", "hipblasZdrot_v2_64", "library");
    subst("cublasZdrot_v2", "hipblasZdrot_v2", "library");
    subst("cublasZdrot_v2_64", "hipblasZdrot_v2_64", "library");
    subst("cublasZdscal", "hipblasZdscal_v2", "library");
    subst("cublasZdscal_64", "hipblasZdscal_v2_64", "library");
    subst("cublasZdscal_v2", "hipblasZdscal_v2", "library");
    subst("cublasZdscal_v2_64", "hipblasZdscal_v2_64", "library");
    subst("cublasZgbmv", "hipblasZgbmv_v2", "library");
    subst("cublasZgbmv_64", "hipblasZgbmv_v2_64", "library");
    subst("cublasZgbmv_v2", "hipblasZgbmv_v2", "library");
    subst("cublasZgbmv_v2_64", "hipblasZgbmv_v2_64", "library");
    subst("cublasZgeam", "hipblasZgeam_v2", "library");
    subst("cublasZgeam_64", "hipblasZgeam_v2_64", "library");
    subst("cublasZgelsBatched", "hipblasZgelsBatched_v2", "library");
    subst("cublasZgemm", "hipblasZgemm_v2", "library");
    subst("cublasZgemmBatched", "hipblasZgemmBatched_v2", "library");
    subst("cublasZgemmBatched_64", "hipblasZgemmBatched_v2_64", "library");
    subst("cublasZgemmStridedBatched", "hipblasZgemmStridedBatched_v2", "library");
    subst("cublasZgemmStridedBatched_64", "hipblasZgemmStridedBatched_v2_64", "library");
    subst("cublasZgemm_64", "hipblasZgemm_v2_64", "library");
    subst("cublasZgemm_v2", "hipblasZgemm_v2", "library");
    subst("cublasZgemm_v2_64", "hipblasZgemm_v2_64", "library");
    subst("cublasZgemv", "hipblasZgemv_v2", "library");
    subst("cublasZgemvBatched", "hipblasZgemvBatched_v2", "library");
    subst("cublasZgemvBatched_64", "hipblasZgemvBatched_v2_64", "library");
    subst("cublasZgemvStridedBatched", "hipblasZgemvStridedBatched_v2", "library");
    subst("cublasZgemvStridedBatched_64", "hipblasZgemvStridedBatched_v2_64", "library");
    subst("cublasZgemv_64", "hipblasZgemv_v2_64", "library");
    subst("cublasZgemv_v2", "hipblasZgemv_v2", "library");
    subst("cublasZgemv_v2_64", "hipblasZgemv_v2_64", "library");
    subst("cublasZgeqrfBatched", "hipblasZgeqrfBatched_v2", "library");
    subst("cublasZgerc", "hipblasZgerc_v2", "library");
    subst("cublasZgerc_64", "hipblasZgerc_v2_64", "library");
    subst("cublasZgerc_v2", "hipblasZgerc_v2", "library");
    subst("cublasZgerc_v2_64", "hipblasZgerc_v2_64", "library");
    subst("cublasZgeru", "hipblasZgeru_v2", "library");
    subst("cublasZgeru_64", "hipblasZgeru_v2_64", "library");
    subst("cublasZgeru_v2", "hipblasZgeru_v2", "library");
    subst("cublasZgeru_v2_64", "hipblasZgeru_v2_64", "library");
    subst("cublasZgetrfBatched", "hipblasZgetrfBatched_v2", "library");
    subst("cublasZgetriBatched", "hipblasZgetriBatched_v2", "library");
    subst("cublasZgetrsBatched", "hipblasZgetrsBatched_v2", "library");
    subst("cublasZhbmv", "hipblasZhbmv_v2", "library");
    subst("cublasZhbmv_64", "hipblasZhbmv_v2_64", "library");
    subst("cublasZhbmv_v2", "hipblasZhbmv_v2", "library");
    subst("cublasZhbmv_v2_64", "hipblasZhbmv_v2_64", "library");
    subst("cublasZhemm", "hipblasZhemm_v2", "library");
    subst("cublasZhemm_64", "hipblasZhemm_v2_64", "library");
    subst("cublasZhemm_v2", "hipblasZhemm_v2", "library");
    subst("cublasZhemm_v2_64", "hipblasZhemm_v2_64", "library");
    subst("cublasZhemv", "hipblasZhemv_v2", "library");
    subst("cublasZhemv_64", "hipblasZhemv_v2_64", "library");
    subst("cublasZhemv_v2", "hipblasZhemv_v2", "library");
    subst("cublasZhemv_v2_64", "hipblasZhemv_v2_64", "library");
    subst("cublasZher", "hipblasZher_v2", "library");
    subst("cublasZher2", "hipblasZher2_v2", "library");
    subst("cublasZher2_64", "hipblasZher2_v2_64", "library");
    subst("cublasZher2_v2", "hipblasZher2_v2", "library");
    subst("cublasZher2_v2_64", "hipblasZher2_v2_64", "library");
    subst("cublasZher2k", "hipblasZher2k_v2", "library");
    subst("cublasZher2k_64", "hipblasZher2k_v2_64", "library");
    subst("cublasZher2k_v2", "hipblasZher2k_v2", "library");
    subst("cublasZher2k_v2_64", "hipblasZher2k_v2_64", "library");
    subst("cublasZher_64", "hipblasZher_v2_64", "library");
    subst("cublasZher_v2", "hipblasZher_v2", "library");
    subst("cublasZher_v2_64", "hipblasZher_v2_64", "library");
    subst("cublasZherk", "hipblasZherk_v2", "library");
    subst("cublasZherk_64", "hipblasZherk_v2_64", "library");
    subst("cublasZherk_v2", "hipblasZherk_v2", "library");
    subst("cublasZherk_v2_64", "hipblasZherk_v2_64", "library");
    subst("cublasZherkx", "hipblasZherkx_v2", "library");
    subst("cublasZherkx_64", "hipblasZherkx_v2_64", "library");
    subst("cublasZhpmv", "hipblasZhpmv_v2", "library");
    subst("cublasZhpmv_64", "hipblasZhpmv_v2_64", "library");
    subst("cublasZhpmv_v2", "hipblasZhpmv_v2", "library");
    subst("cublasZhpmv_v2_64", "hipblasZhpmv_v2_64", "library");
    subst("cublasZhpr", "hipblasZhpr_v2", "library");
    subst("cublasZhpr2", "hipblasZhpr2_v2", "library");
    subst("cublasZhpr2_64", "hipblasZhpr2_v2_64", "library");
    subst("cublasZhpr2_v2", "hipblasZhpr2_v2", "library");
    subst("cublasZhpr2_v2_64", "hipblasZhpr2_v2_64", "library");
    subst("cublasZhpr_64", "hipblasZhpr_v2_64", "library");
    subst("cublasZhpr_v2", "hipblasZhpr_v2", "library");
    subst("cublasZhpr_v2_64", "hipblasZhpr_v2_64", "library");
    subst("cublasZrot", "hipblasZrot_v2", "library");
    subst("cublasZrot_64", "hipblasZrot_v2_64", "library");
    subst("cublasZrot_v2", "hipblasZrot_v2", "library");
    subst("cublasZrot_v2_64", "hipblasZrot_v2_64", "library");
    subst("cublasZrotg", "hipblasZrotg_v2", "library");
    subst("cublasZrotg_v2", "hipblasZrotg_v2", "library");
    subst("cublasZscal", "hipblasZscal_v2", "library");
    subst("cublasZscal_64", "hipblasZscal_v2_64", "library");
    subst("cublasZscal_v2", "hipblasZscal_v2", "library");
    subst("cublasZscal_v2_64", "hipblasZscal_v2_64", "library");
    subst("cublasZswap", "hipblasZswap_v2", "library");
    subst("cublasZswap_64", "hipblasZswap_v2_64", "library");
    subst("cublasZswap_v2", "hipblasZswap_v2", "library");
    subst("cublasZswap_v2_64", "hipblasZswap_v2_64", "library");
    subst("cublasZsymm", "hipblasZsymm_v2", "library");
    subst("cublasZsymm_64", "hipblasZsymm_v2_64", "library");
    subst("cublasZsymm_v2", "hipblasZsymm_v2", "library");
    subst("cublasZsymm_v2_64", "hipblasZsymm_v2_64", "library");
    subst("cublasZsymv", "hipblasZsymv_v2", "library");
    subst("cublasZsymv_64", "hipblasZsymv_v2_64", "library");
    subst("cublasZsymv_v2", "hipblasZsymv_v2", "library");
    subst("cublasZsymv_v2_64", "hipblasZsymv_v2_64", "library");
    subst("cublasZsyr", "hipblasZsyr_v2", "library");
    subst("cublasZsyr2", "hipblasZsyr2_v2", "library");
    subst("cublasZsyr2_64", "hipblasZsyr2_v2_64", "library");
    subst("cublasZsyr2_v2", "hipblasZsyr2_v2", "library");
    subst("cublasZsyr2_v2_64", "hipblasZsyr2_v2_64", "library");
    subst("cublasZsyr2k", "hipblasZsyr2k_v2", "library");
    subst("cublasZsyr2k_64", "hipblasZsyr2k_v2_64", "library");
    subst("cublasZsyr2k_v2", "hipblasZsyr2k_v2", "library");
    subst("cublasZsyr2k_v2_64", "hipblasZsyr2k_v2_64", "library");
    subst("cublasZsyr_64", "hipblasZsyr_v2_64", "library");
    subst("cublasZsyr_v2", "hipblasZsyr_v2", "library");
    subst("cublasZsyr_v2_64", "hipblasZsyr_v2_64", "library");
    subst("cublasZsyrk", "hipblasZsyrk_v2", "library");
    subst("cublasZsyrk_64", "hipblasZsyrk_v2_64", "library");
    subst("cublasZsyrk_v2", "hipblasZsyrk_v2", "library");
    subst("cublasZsyrk_v2_64", "hipblasZsyrk_v2_64", "library");
    subst("cublasZsyrkx", "hipblasZsyrkx_v2", "library");
    subst("cublasZsyrkx_64", "hipblasZsyrkx_v2_64", "library");
    subst("cublasZtbmv", "hipblasZtbmv_v2", "library");
    subst("cublasZtbmv_64", "hipblasZtbmv_v2_64", "library");
    subst("cublasZtbmv_v2", "hipblasZtbmv_v2", "library");
    subst("cublasZtbmv_v2_64", "hipblasZtbmv_v2_64", "library");
    subst("cublasZtbsv", "hipblasZtbsv_v2", "library");
    subst("cublasZtbsv_64", "hipblasZtbsv_v2_64", "library");
    subst("cublasZtbsv_v2", "hipblasZtbsv_v2", "library");
    subst("cublasZtbsv_v2_64", "hipblasZtbsv_v2_64", "library");
    subst("cublasZtpmv", "hipblasZtpmv_v2", "library");
    subst("cublasZtpmv_64", "hipblasZtpmv_v2_64", "library");
    subst("cublasZtpmv_v2", "hipblasZtpmv_v2", "library");
    subst("cublasZtpmv_v2_64", "hipblasZtpmv_v2_64", "library");
    subst("cublasZtpsv", "hipblasZtpsv_v2", "library");
    subst("cublasZtpsv_64", "hipblasZtpsv_v2_64", "library");
    subst("cublasZtpsv_v2", "hipblasZtpsv_v2", "library");
    subst("cublasZtpsv_v2_64", "hipblasZtpsv_v2_64", "library");
    subst("cublasZtrmm", "hipblasZtrmm_v2", "library");
    subst("cublasZtrmm_64", "hipblasZtrmm_v2_64", "library");
    subst("cublasZtrmm_v2", "hipblasZtrmm_v2", "library");
    subst("cublasZtrmm_v2_64", "hipblasZtrmm_v2_64", "library");
    subst("cublasZtrmv", "hipblasZtrmv_v2", "library");
    subst("cublasZtrmv_64", "hipblasZtrmv_v2_64", "library");
    subst("cublasZtrmv_v2", "hipblasZtrmv_v2", "library");
    subst("cublasZtrmv_v2_64", "hipblasZtrmv_v2_64", "library");
    subst("cublasZtrsm", "hipblasZtrsm_v2", "library");
    subst("cublasZtrsmBatched", "hipblasZtrsmBatched_v2", "library");
    subst("cublasZtrsmBatched_64", "hipblasZtrsmBatched_v2_64", "library");
    subst("cublasZtrsm_64", "hipblasZtrsm_v2_64", "library");
    subst("cublasZtrsm_v2", "hipblasZtrsm_v2", "library");
    subst("cublasZtrsm_v2_64", "hipblasZtrsm_v2_64", "library");
    subst("cublasZtrsv", "hipblasZtrsv_v2", "library");
    subst("cublasZtrsv_64", "hipblasZtrsv_v2_64", "library");
    subst("cublasZtrsv_v2", "hipblasZtrsv_v2", "library");
    subst("cublasZtrsv_v2_64", "hipblasZtrsv_v2_64", "library");
    subst("cuda_stream", "hip_stream", "library");
    subst("cudnnActivationBackward", "hipdnnActivationBackward", "library");
    subst("cudnnActivationForward", "hipdnnActivationForward", "library");
    subst("cudnnAddTensor", "hipdnnAddTensor", "library");
    subst("cudnnBatchNormalizationBackward", "hipdnnBatchNormalizationBackward", "library");
    subst("cudnnBatchNormalizationForwardInference", "hipdnnBatchNormalizationForwardInference", "library");
    subst("cudnnBatchNormalizationForwardTraining", "hipdnnBatchNormalizationForwardTraining", "library");
    subst("cudnnConvolutionBackwardBias", "hipdnnConvolutionBackwardBias", "library");
    subst("cudnnConvolutionBackwardData", "hipdnnConvolutionBackwardData", "library");
    subst("cudnnConvolutionBackwardFilter", "hipdnnConvolutionBackwardFilter", "library");
    subst("cudnnConvolutionForward", "hipdnnConvolutionForward", "library");
    subst("cudnnCreate", "hipdnnCreate", "library");
    subst("cudnnCreateActivationDescriptor", "hipdnnCreateActivationDescriptor", "library");
    subst("cudnnCreateConvolutionDescriptor", "hipdnnCreateConvolutionDescriptor", "library");
    subst("cudnnCreateDropoutDescriptor", "hipdnnCreateDropoutDescriptor", "library");
    subst("cudnnCreateFilterDescriptor", "hipdnnCreateFilterDescriptor", "library");
    subst("cudnnCreateLRNDescriptor", "hipdnnCreateLRNDescriptor", "library");
    subst("cudnnCreateOpTensorDescriptor", "hipdnnCreateOpTensorDescriptor", "library");
    subst("cudnnCreatePersistentRNNPlan", "hipdnnCreatePersistentRNNPlan", "library");
    subst("cudnnCreatePoolingDescriptor", "hipdnnCreatePoolingDescriptor", "library");
    subst("cudnnCreateRNNDescriptor", "hipdnnCreateRNNDescriptor", "library");
    subst("cudnnCreateReduceTensorDescriptor", "hipdnnCreateReduceTensorDescriptor", "library");
    subst("cudnnCreateTensorDescriptor", "hipdnnCreateTensorDescriptor", "library");
    subst("cudnnDeriveBNTensorDescriptor", "hipdnnDeriveBNTensorDescriptor", "library");
    subst("cudnnDestroy", "hipdnnDestroy", "library");
    subst("cudnnDestroyActivationDescriptor", "hipdnnDestroyActivationDescriptor", "library");
    subst("cudnnDestroyConvolutionDescriptor", "hipdnnDestroyConvolutionDescriptor", "library");
    subst("cudnnDestroyDropoutDescriptor", "hipdnnDestroyDropoutDescriptor", "library");
    subst("cudnnDestroyFilterDescriptor", "hipdnnDestroyFilterDescriptor", "library");
    subst("cudnnDestroyLRNDescriptor", "hipdnnDestroyLRNDescriptor", "library");
    subst("cudnnDestroyOpTensorDescriptor", "hipdnnDestroyOpTensorDescriptor", "library");
    subst("cudnnDestroyPersistentRNNPlan", "hipdnnDestroyPersistentRNNPlan", "library");
    subst("cudnnDestroyPoolingDescriptor", "hipdnnDestroyPoolingDescriptor", "library");
    subst("cudnnDestroyRNNDescriptor", "hipdnnDestroyRNNDescriptor", "library");
    subst("cudnnDestroyReduceTensorDescriptor", "hipdnnDestroyReduceTensorDescriptor", "library");
    subst("cudnnDestroyTensorDescriptor", "hipdnnDestroyTensorDescriptor", "library");
    subst("cudnnDropoutGetStatesSize", "hipdnnDropoutGetStatesSize", "library");
    subst("cudnnFindConvolutionBackwardDataAlgorithm", "hipdnnFindConvolutionBackwardDataAlgorithm", "library");
    subst("cudnnFindConvolutionBackwardDataAlgorithmEx", "hipdnnFindConvolutionBackwardDataAlgorithmEx", "library");
    subst("cudnnFindConvolutionBackwardFilterAlgorithm", "hipdnnFindConvolutionBackwardFilterAlgorithm", "library");
    subst("cudnnFindConvolutionBackwardFilterAlgorithmEx", "hipdnnFindConvolutionBackwardFilterAlgorithmEx", "library");
    subst("cudnnFindConvolutionForwardAlgorithm", "hipdnnFindConvolutionForwardAlgorithm", "library");
    subst("cudnnFindConvolutionForwardAlgorithmEx", "hipdnnFindConvolutionForwardAlgorithmEx", "library");
    subst("cudnnGetActivationDescriptor", "hipdnnGetActivationDescriptor", "library");
    subst("cudnnGetConvolution2dDescriptor", "hipdnnGetConvolution2dDescriptor", "library");
    subst("cudnnGetConvolution2dForwardOutputDim", "hipdnnGetConvolution2dForwardOutputDim", "library");
    subst("cudnnGetConvolutionBackwardDataAlgorithm", "hipdnnGetConvolutionBackwardDataAlgorithm", "library");
    subst("cudnnGetConvolutionBackwardDataWorkspaceSize", "hipdnnGetConvolutionBackwardDataWorkspaceSize", "library");
    subst("cudnnGetConvolutionBackwardFilterAlgorithm", "hipdnnGetConvolutionBackwardFilterAlgorithm", "library");
    subst("cudnnGetConvolutionBackwardFilterWorkspaceSize", "hipdnnGetConvolutionBackwardFilterWorkspaceSize", "library");
    subst("cudnnGetConvolutionForwardAlgorithm", "hipdnnGetConvolutionForwardAlgorithm", "library");
    subst("cudnnGetConvolutionForwardWorkspaceSize", "hipdnnGetConvolutionForwardWorkspaceSize", "library");
    subst("cudnnGetErrorString", "hipdnnGetErrorString", "library");
    subst("cudnnGetFilter4dDescriptor", "hipdnnGetFilter4dDescriptor", "library");
    subst("cudnnGetFilterNdDescriptor", "hipdnnGetFilterNdDescriptor", "library");
    subst("cudnnGetLRNDescriptor", "hipdnnGetLRNDescriptor", "library");
    subst("cudnnGetOpTensorDescriptor", "hipdnnGetOpTensorDescriptor", "library");
    subst("cudnnGetPooling2dDescriptor", "hipdnnGetPooling2dDescriptor", "library");
    subst("cudnnGetPooling2dForwardOutputDim", "hipdnnGetPooling2dForwardOutputDim", "library");
    subst("cudnnGetRNNDescriptor", "hipdnnGetRNNDescriptor", "library");
    subst("cudnnGetRNNLinLayerBiasParams", "hipdnnGetRNNLinLayerBiasParams", "library");
    subst("cudnnGetRNNLinLayerMatrixParams", "hipdnnGetRNNLinLayerMatrixParams", "library");
    subst("cudnnGetRNNParamsSize", "hipdnnGetRNNParamsSize", "library");
    subst("cudnnGetRNNTrainingReserveSize", "hipdnnGetRNNTrainingReserveSize", "library");
    subst("cudnnGetRNNWorkspaceSize", "hipdnnGetRNNWorkspaceSize", "library");
    subst("cudnnGetReduceTensorDescriptor", "hipdnnGetReduceTensorDescriptor", "library");
    subst("cudnnGetReductionWorkspaceSize", "hipdnnGetReductionWorkspaceSize", "library");
    subst("cudnnGetStream", "hipdnnGetStream", "library");
    subst("cudnnGetTensor4dDescriptor", "hipdnnGetTensor4dDescriptor", "library");
    subst("cudnnGetTensorNdDescriptor", "hipdnnGetTensorNdDescriptor", "library");
    subst("cudnnGetVersion", "hipdnnGetVersion", "library");
    subst("cudnnLRNCrossChannelBackward", "hipdnnLRNCrossChannelBackward", "library");
    subst("cudnnLRNCrossChannelForward", "hipdnnLRNCrossChannelForward", "library");
    subst("cudnnOpTensor", "hipdnnOpTensor", "library");
    subst("cudnnPoolingBackward", "hipdnnPoolingBackward", "library");
    subst("cudnnPoolingForward", "hipdnnPoolingForward", "library");
    subst("cudnnRNNBackwardData", "hipdnnRNNBackwardData", "library");
    subst("cudnnRNNBackwardWeights", "hipdnnRNNBackwardWeights", "library");
    subst("cudnnRNNForwardInference", "hipdnnRNNForwardInference", "library");
    subst("cudnnRNNForwardTraining", "hipdnnRNNForwardTraining", "library");
    subst("cudnnReduceTensor", "hipdnnReduceTensor", "library");
    subst("cudnnScaleTensor", "hipdnnScaleTensor", "library");
    subst("cudnnSetActivationDescriptor", "hipdnnSetActivationDescriptor", "library");
    subst("cudnnSetConvolution2dDescriptor", "hipdnnSetConvolution2dDescriptor", "library");
    subst("cudnnSetConvolutionGroupCount", "hipdnnSetConvolutionGroupCount", "library");
    subst("cudnnSetConvolutionMathType", "hipdnnSetConvolutionMathType", "library");
    subst("cudnnSetConvolutionNdDescriptor", "hipdnnSetConvolutionNdDescriptor", "library");
    subst("cudnnSetDropoutDescriptor", "hipdnnSetDropoutDescriptor", "library");
    subst("cudnnSetFilter4dDescriptor", "hipdnnSetFilter4dDescriptor", "library");
    subst("cudnnSetFilterNdDescriptor", "hipdnnSetFilterNdDescriptor", "library");
    subst("cudnnSetLRNDescriptor", "hipdnnSetLRNDescriptor", "library");
    subst("cudnnSetOpTensorDescriptor", "hipdnnSetOpTensorDescriptor", "library");
    subst("cudnnSetPersistentRNNPlan", "hipdnnSetPersistentRNNPlan", "library");
    subst("cudnnSetPooling2dDescriptor", "hipdnnSetPooling2dDescriptor", "library");
    subst("cudnnSetPoolingNdDescriptor", "hipdnnSetPoolingNdDescriptor", "library");
    subst("cudnnSetRNNDescriptor", "hipdnnSetRNNDescriptor", "library");
    subst("cudnnSetRNNDescriptor_v5", "hipdnnSetRNNDescriptor_v5", "library");
    subst("cudnnSetRNNDescriptor_v6", "hipdnnSetRNNDescriptor_v6", "library");
    subst("cudnnSetReduceTensorDescriptor", "hipdnnSetReduceTensorDescriptor", "library");
    subst("cudnnSetStream", "hipdnnSetStream", "library");
    subst("cudnnSetTensor", "hipdnnSetTensor", "library");
    subst("cudnnSetTensor4dDescriptor", "hipdnnSetTensor4dDescriptor", "library");
    subst("cudnnSetTensor4dDescriptorEx", "hipdnnSetTensor4dDescriptorEx", "library");
    subst("cudnnSetTensorNdDescriptor", "hipdnnSetTensorNdDescriptor", "library");
    subst("cudnnSoftmaxBackward", "hipdnnSoftmaxBackward", "library");
    subst("cudnnSoftmaxForward", "hipdnnSoftmaxForward", "library");
    subst("cufftCallbackLoadC", "hipfftCallbackLoadC", "library");
    subst("cufftCallbackLoadD", "hipfftCallbackLoadD", "library");
    subst("cufftCallbackLoadR", "hipfftCallbackLoadR", "library");
    subst("cufftCallbackLoadZ", "hipfftCallbackLoadZ", "library");
    subst("cufftCallbackStoreC", "hipfftCallbackStoreC", "library");
    subst("cufftCallbackStoreD", "hipfftCallbackStoreD", "library");
    subst("cufftCallbackStoreR", "hipfftCallbackStoreR", "library");
    subst("cufftCallbackStoreZ", "hipfftCallbackStoreZ", "library");
    subst("cufftCreate", "hipfftCreate", "library");
    subst("cufftDestroy", "hipfftDestroy", "library");
    subst("cufftEstimate1d", "hipfftEstimate1d", "library");
    subst("cufftEstimate2d", "hipfftEstimate2d", "library");
    subst("cufftEstimate3d", "hipfftEstimate3d", "library");
    subst("cufftEstimateMany", "hipfftEstimateMany", "library");
    subst("cufftExecC2C", "hipfftExecC2C", "library");
    subst("cufftExecC2R", "hipfftExecC2R", "library");
    subst("cufftExecD2Z", "hipfftExecD2Z", "library");
    subst("cufftExecR2C", "hipfftExecR2C", "library");
    subst("cufftExecZ2D", "hipfftExecZ2D", "library");
    subst("cufftExecZ2Z", "hipfftExecZ2Z", "library");
    subst("cufftGetProperty", "hipfftGetProperty", "library");
    subst("cufftGetSize", "hipfftGetSize", "library");
    subst("cufftGetSize1d", "hipfftGetSize1d", "library");
    subst("cufftGetSize2d", "hipfftGetSize2d", "library");
    subst("cufftGetSize3d", "hipfftGetSize3d", "library");
    subst("cufftGetSizeMany", "hipfftGetSizeMany", "library");
    subst("cufftGetSizeMany64", "hipfftGetSizeMany64", "library");
    subst("cufftGetVersion", "hipfftGetVersion", "library");
    subst("cufftMakePlan1d", "hipfftMakePlan1d", "library");
    subst("cufftMakePlan2d", "hipfftMakePlan2d", "library");
    subst("cufftMakePlan3d", "hipfftMakePlan3d", "library");
    subst("cufftMakePlanMany", "hipfftMakePlanMany", "library");
    subst("cufftMakePlanMany64", "hipfftMakePlanMany64", "library");
    subst("cufftPlan1d", "hipfftPlan1d", "library");
    subst("cufftPlan2d", "hipfftPlan2d", "library");
    subst("cufftPlan3d", "hipfftPlan3d", "library");
    subst("cufftPlanMany", "hipfftPlanMany", "library");
    subst("cufftSetAutoAllocation", "hipfftSetAutoAllocation", "library");
    subst("cufftSetStream", "hipfftSetStream", "library");
    subst("cufftSetWorkArea", "hipfftSetWorkArea", "library");
    subst("cufftXtClearCallback", "hipfftXtClearCallback", "library");
    subst("cufftXtSetCallback", "hipfftXtSetCallback", "library");
    subst("cufftXtSetCallbackSharedSize", "hipfftXtSetCallbackSharedSize", "library");
    subst("curandCreateGenerator", "hiprandCreateGenerator", "library");
    subst("curandCreateGeneratorHost", "hiprandCreateGeneratorHost", "library");
    subst("curandCreatePoissonDistribution", "hiprandCreatePoissonDistribution", "library");
    subst("curandDestroyDistribution", "hiprandDestroyDistribution", "library");
    subst("curandDestroyGenerator", "hiprandDestroyGenerator", "library");
    subst("curandGenerate", "hiprandGenerate", "library");
    subst("curandGenerateLogNormal", "hiprandGenerateLogNormal", "library");
    subst("curandGenerateLogNormalDouble", "hiprandGenerateLogNormalDouble", "library");
    subst("curandGenerateLongLong", "hiprandGenerateLongLong", "library");
    subst("curandGenerateNormal", "hiprandGenerateNormal", "library");
    subst("curandGenerateNormalDouble", "hiprandGenerateNormalDouble", "library");
    subst("curandGeneratePoisson", "hiprandGeneratePoisson", "library");
    subst("curandGenerateSeeds", "hiprandGenerateSeeds", "library");
    subst("curandGenerateUniform", "hiprandGenerateUniform", "library");
    subst("curandGenerateUniformDouble", "hiprandGenerateUniformDouble", "library");
    subst("curandGetDirectionVectors32", "hiprandGetDirectionVectors32", "library");
    subst("curandGetDirectionVectors64", "hiprandGetDirectionVectors64", "library");
    subst("curandGetScrambleConstants32", "hiprandGetScrambleConstants32", "library");
    subst("curandGetScrambleConstants64", "hiprandGetScrambleConstants64", "library");
    subst("curandGetVersion", "hiprandGetVersion", "library");
    subst("curandMakeMTGP32Constants", "hiprandMakeMTGP32Constants", "library");
    subst("curandMakeMTGP32KernelState", "hiprandMakeMTGP32KernelState", "library");
    subst("curandSetGeneratorOffset", "hiprandSetGeneratorOffset", "library");
    subst("curandSetGeneratorOrdering", "hiprandSetGeneratorOrdering", "library");
    subst("curandSetPseudoRandomGeneratorSeed", "hiprandSetPseudoRandomGeneratorSeed", "library");
    subst("curandSetQuasiRandomGeneratorDimensions", "hiprandSetQuasiRandomGeneratorDimensions", "library");
    subst("curandSetStream", "hiprandSetStream", "library");
    subst("cusolverDnCCgels", "hipsolverDnCCgels", "library");
    subst("cusolverDnCCgels_bufferSize", "hipsolverDnCCgels_bufferSize", "library");
    subst("cusolverDnCCgesv", "hipsolverDnCCgesv", "library");
    subst("cusolverDnCCgesv_bufferSize", "hipsolverDnCCgesv_bufferSize", "library");
    subst("cusolverDnCgebrd", "hipsolverDnCgebrd", "library");
    subst("cusolverDnCgebrd_bufferSize", "hipsolverDnCgebrd_bufferSize", "library");
    subst("cusolverDnCgeqrf", "hipsolverDnCgeqrf", "library");
    subst("cusolverDnCgeqrf_bufferSize", "hipsolverDnCgeqrf_bufferSize", "library");
    subst("cusolverDnCgesvd", "hipsolverDnCgesvd", "library");
    subst("cusolverDnCgesvd_bufferSize", "hipsolverDnCgesvd_bufferSize", "library");
    subst("cusolverDnCgesvdaStridedBatched", "hipsolverDnCgesvdaStridedBatched", "library");
    subst("cusolverDnCgesvdaStridedBatched_bufferSize", "hipsolverDnCgesvdaStridedBatched_bufferSize", "library");
    subst("cusolverDnCgesvdj", "hipsolverDnCgesvdj", "library");
    subst("cusolverDnCgesvdjBatched", "hipsolverDnCgesvdjBatched", "library");
    subst("cusolverDnCgesvdjBatched_bufferSize", "hipsolverDnCgesvdjBatched_bufferSize", "library");
    subst("cusolverDnCgesvdj_bufferSize", "hipsolverDnCgesvdj_bufferSize", "library");
    subst("cusolverDnCgetrf", "hipsolverDnCgetrf", "library");
    subst("cusolverDnCgetrf_bufferSize", "hipsolverDnCgetrf_bufferSize", "library");
    subst("cusolverDnCgetrs", "hipsolverDnCgetrs", "library");
    subst("cusolverDnCheevd", "hipsolverDnCheevd", "library");
    subst("cusolverDnCheevd_bufferSize", "hipsolverDnCheevd_bufferSize", "library");
    subst("cusolverDnCheevdx", "hipsolverDnCheevdx", "library");
    subst("cusolverDnCheevdx_bufferSize", "hipsolverDnCheevdx_bufferSize", "library");
    subst("cusolverDnCheevj", "hipsolverDnCheevj", "library");
    subst("cusolverDnCheevjBatched", "hipsolverDnCheevjBatched", "library");
    subst("cusolverDnCheevjBatched_bufferSize", "hipsolverDnCheevjBatched_bufferSize", "library");
    subst("cusolverDnCheevj_bufferSize", "hipsolverDnCheevj_bufferSize", "library");
    subst("cusolverDnChegvd", "hipsolverDnChegvd", "library");
    subst("cusolverDnChegvd_bufferSize", "hipsolverDnChegvd_bufferSize", "library");
    subst("cusolverDnChegvdx", "hipsolverDnChegvdx", "library");
    subst("cusolverDnChegvdx_bufferSize", "hipsolverDnChegvdx_bufferSize", "library");
    subst("cusolverDnChegvj", "hipsolverDnChegvj", "library");
    subst("cusolverDnChegvj_bufferSize", "hipsolverDnChegvj_bufferSize", "library");
    subst("cusolverDnChetrd", "hipsolverDnChetrd", "library");
    subst("cusolverDnChetrd_bufferSize", "hipsolverDnChetrd_bufferSize", "library");
    subst("cusolverDnCpotrf", "hipsolverDnCpotrf", "library");
    subst("cusolverDnCpotrfBatched", "hipsolverDnCpotrfBatched", "library");
    subst("cusolverDnCpotrf_bufferSize", "hipsolverDnCpotrf_bufferSize", "library");
    subst("cusolverDnCpotri", "hipsolverDnCpotri", "library");
    subst("cusolverDnCpotri_bufferSize", "hipsolverDnCpotri_bufferSize", "library");
    subst("cusolverDnCpotrs", "hipsolverDnCpotrs", "library");
    subst("cusolverDnCpotrsBatched", "hipsolverDnCpotrsBatched", "library");
    subst("cusolverDnCreate", "hipsolverDnCreate", "library");
    subst("cusolverDnCreateGesvdjInfo", "hipsolverDnCreateGesvdjInfo", "library");
    subst("cusolverDnCreateParams", "hipsolverDnCreateParams", "library");
    subst("cusolverDnCreateSyevjInfo", "hipsolverDnCreateSyevjInfo", "library");
    subst("cusolverDnCsytrf", "hipsolverDnCsytrf", "library");
    subst("cusolverDnCsytrf_bufferSize", "hipsolverDnCsytrf_bufferSize", "library");
    subst("cusolverDnCungbr", "hipsolverDnCungbr", "library");
    subst("cusolverDnCungbr_bufferSize", "hipsolverDnCungbr_bufferSize", "library");
    subst("cusolverDnCungqr", "hipsolverDnCungqr", "library");
    subst("cusolverDnCungqr_bufferSize", "hipsolverDnCungqr_bufferSize", "library");
    subst("cusolverDnCungtr", "hipsolverDnCungtr", "library");
    subst("cusolverDnCungtr_bufferSize", "hipsolverDnCungtr_bufferSize", "library");
    subst("cusolverDnCunmqr", "hipsolverDnCunmqr", "library");
    subst("cusolverDnCunmqr_bufferSize", "hipsolverDnCunmqr_bufferSize", "library");
    subst("cusolverDnCunmtr", "hipsolverDnCunmtr", "library");
    subst("cusolverDnCunmtr_bufferSize", "hipsolverDnCunmtr_bufferSize", "library");
    subst("cusolverDnDDgels", "hipsolverDnDDgels", "library");
    subst("cusolverDnDDgels_bufferSize", "hipsolverDnDDgels_bufferSize", "library");
    subst("cusolverDnDDgesv", "hipsolverDnDDgesv", "library");
    subst("cusolverDnDDgesv_bufferSize", "hipsolverDnDDgesv_bufferSize", "library");
    subst("cusolverDnDestroy", "hipsolverDnDestroy", "library");
    subst("cusolverDnDestroyGesvdjInfo", "hipsolverDnDestroyGesvdjInfo", "library");
    subst("cusolverDnDestroyParams", "hipsolverDnDestroyParams", "library");
    subst("cusolverDnDestroySyevjInfo", "hipsolverDnDestroySyevjInfo", "library");
    subst("cusolverDnDgebrd", "hipsolverDnDgebrd", "library");
    subst("cusolverDnDgebrd_bufferSize", "hipsolverDnDgebrd_bufferSize", "library");
    subst("cusolverDnDgeqrf", "hipsolverDnDgeqrf", "library");
    subst("cusolverDnDgeqrf_bufferSize", "hipsolverDnDgeqrf_bufferSize", "library");
    subst("cusolverDnDgesvd", "hipsolverDnDgesvd", "library");
    subst("cusolverDnDgesvd_bufferSize", "hipsolverDnDgesvd_bufferSize", "library");
    subst("cusolverDnDgesvdaStridedBatched", "hipsolverDnDgesvdaStridedBatched", "library");
    subst("cusolverDnDgesvdaStridedBatched_bufferSize", "hipsolverDnDgesvdaStridedBatched_bufferSize", "library");
    subst("cusolverDnDgesvdj", "hipsolverDnDgesvdj", "library");
    subst("cusolverDnDgesvdjBatched", "hipsolverDnDgesvdjBatched", "library");
    subst("cusolverDnDgesvdjBatched_bufferSize", "hipsolverDnDgesvdjBatched_bufferSize", "library");
    subst("cusolverDnDgesvdj_bufferSize", "hipsolverDnDgesvdj_bufferSize", "library");
    subst("cusolverDnDgetrf", "hipsolverDnDgetrf", "library");
    subst("cusolverDnDgetrf_bufferSize", "hipsolverDnDgetrf_bufferSize", "library");
    subst("cusolverDnDgetrs", "hipsolverDnDgetrs", "library");
    subst("cusolverDnDorgbr", "hipsolverDnDorgbr", "library");
    subst("cusolverDnDorgbr_bufferSize", "hipsolverDnDorgbr_bufferSize", "library");
    subst("cusolverDnDorgqr", "hipsolverDnDorgqr", "library");
    subst("cusolverDnDorgqr_bufferSize", "hipsolverDnDorgqr_bufferSize", "library");
    subst("cusolverDnDorgtr", "hipsolverDnDorgtr", "library");
    subst("cusolverDnDorgtr_bufferSize", "hipsolverDnDorgtr_bufferSize", "library");
    subst("cusolverDnDormqr", "hipsolverDnDormqr", "library");
    subst("cusolverDnDormqr_bufferSize", "hipsolverDnDormqr_bufferSize", "library");
    subst("cusolverDnDormtr", "hipsolverDnDormtr", "library");
    subst("cusolverDnDormtr_bufferSize", "hipsolverDnDormtr_bufferSize", "library");
    subst("cusolverDnDpotrf", "hipsolverDnDpotrf", "library");
    subst("cusolverDnDpotrfBatched", "hipsolverDnDpotrfBatched", "library");
    subst("cusolverDnDpotrf_bufferSize", "hipsolverDnDpotrf_bufferSize", "library");
    subst("cusolverDnDpotri", "hipsolverDnDpotri", "library");
    subst("cusolverDnDpotri_bufferSize", "hipsolverDnDpotri_bufferSize", "library");
    subst("cusolverDnDpotrs", "hipsolverDnDpotrs", "library");
    subst("cusolverDnDpotrsBatched", "hipsolverDnDpotrsBatched", "library");
    subst("cusolverDnDsyevd", "hipsolverDnDsyevd", "library");
    subst("cusolverDnDsyevd_bufferSize", "hipsolverDnDsyevd_bufferSize", "library");
    subst("cusolverDnDsyevdx", "hipsolverDnDsyevdx", "library");
    subst("cusolverDnDsyevdx_bufferSize", "hipsolverDnDsyevdx_bufferSize", "library");
    subst("cusolverDnDsyevj", "hipsolverDnDsyevj", "library");
    subst("cusolverDnDsyevjBatched", "hipsolverDnDsyevjBatched", "library");
    subst("cusolverDnDsyevjBatched_bufferSize", "hipsolverDnDsyevjBatched_bufferSize", "library");
    subst("cusolverDnDsyevj_bufferSize", "hipsolverDnDsyevj_bufferSize", "library");
    subst("cusolverDnDsygvd", "hipsolverDnDsygvd", "library");
    subst("cusolverDnDsygvd_bufferSize", "hipsolverDnDsygvd_bufferSize", "library");
    subst("cusolverDnDsygvdx", "hipsolverDnDsygvdx", "library");
    subst("cusolverDnDsygvdx_bufferSize", "hipsolverDnDsygvdx_bufferSize", "library");
    subst("cusolverDnDsygvj", "hipsolverDnDsygvj", "library");
    subst("cusolverDnDsygvj_bufferSize", "hipsolverDnDsygvj_bufferSize", "library");
    subst("cusolverDnDsytrd", "hipsolverDnDsytrd", "library");
    subst("cusolverDnDsytrd_bufferSize", "hipsolverDnDsytrd_bufferSize", "library");
    subst("cusolverDnDsytrf", "hipsolverDnDsytrf", "library");
    subst("cusolverDnDsytrf_bufferSize", "hipsolverDnDsytrf_bufferSize", "library");
    subst("cusolverDnGetDeterministicMode", "hipsolverDnGetDeterministicMode", "library");
    subst("cusolverDnGetStream", "hipsolverGetStream", "library");
    subst("cusolverDnSSgels", "hipsolverDnSSgels", "library");
    subst("cusolverDnSSgels_bufferSize", "hipsolverDnSSgels_bufferSize", "library");
    subst("cusolverDnSSgesv", "hipsolverDnSSgesv", "library");
    subst("cusolverDnSSgesv_bufferSize", "hipsolverDnSSgesv_bufferSize", "library");
    subst("cusolverDnSetAdvOptions", "hipsolverDnSetAdvOptions", "library");
    subst("cusolverDnSetDeterministicMode", "hipsolverDnSetDeterministicMode", "library");
    subst("cusolverDnSetStream", "hipsolverSetStream", "library");
    subst("cusolverDnSgebrd", "hipsolverDnSgebrd", "library");
    subst("cusolverDnSgebrd_bufferSize", "hipsolverDnSgebrd_bufferSize", "library");
    subst("cusolverDnSgeqrf", "hipsolverDnSgeqrf", "library");
    subst("cusolverDnSgeqrf_bufferSize", "hipsolverDnSgeqrf_bufferSize", "library");
    subst("cusolverDnSgesvd", "hipsolverDnSgesvd", "library");
    subst("cusolverDnSgesvd_bufferSize", "hipsolverDnSgesvd_bufferSize", "library");
    subst("cusolverDnSgesvdaStridedBatched", "hipsolverDnSgesvdaStridedBatched", "library");
    subst("cusolverDnSgesvdaStridedBatched_bufferSize", "hipsolverDnSgesvdaStridedBatched_bufferSize", "library");
    subst("cusolverDnSgesvdj", "hipsolverDnSgesvdj", "library");
    subst("cusolverDnSgesvdjBatched", "hipsolverDnSgesvdjBatched", "library");
    subst("cusolverDnSgesvdjBatched_bufferSize", "hipsolverDnSgesvdjBatched_bufferSize", "library");
    subst("cusolverDnSgesvdj_bufferSize", "hipsolverDnSgesvdj_bufferSize", "library");
    subst("cusolverDnSgetrf", "hipsolverDnSgetrf", "library");
    subst("cusolverDnSgetrf_bufferSize", "hipsolverDnSgetrf_bufferSize", "library");
    subst("cusolverDnSgetrs", "hipsolverDnSgetrs", "library");
    subst("cusolverDnSorgbr", "hipsolverDnSorgbr", "library");
    subst("cusolverDnSorgbr_bufferSize", "hipsolverDnSorgbr_bufferSize", "library");
    subst("cusolverDnSorgqr", "hipsolverDnSorgqr", "library");
    subst("cusolverDnSorgqr_bufferSize", "hipsolverDnSorgqr_bufferSize", "library");
    subst("cusolverDnSorgtr", "hipsolverDnSorgtr", "library");
    subst("cusolverDnSorgtr_bufferSize", "hipsolverDnSorgtr_bufferSize", "library");
    subst("cusolverDnSormqr", "hipsolverDnSormqr", "library");
    subst("cusolverDnSormqr_bufferSize", "hipsolverDnSormqr_bufferSize", "library");
    subst("cusolverDnSormtr", "hipsolverDnSormtr", "library");
    subst("cusolverDnSormtr_bufferSize", "hipsolverDnSormtr_bufferSize", "library");
    subst("cusolverDnSpotrf", "hipsolverDnSpotrf", "library");
    subst("cusolverDnSpotrfBatched", "hipsolverDnSpotrfBatched", "library");
    subst("cusolverDnSpotrf_bufferSize", "hipsolverDnSpotrf_bufferSize", "library");
    subst("cusolverDnSpotri", "hipsolverDnSpotri", "library");
    subst("cusolverDnSpotri_bufferSize", "hipsolverDnSpotri_bufferSize", "library");
    subst("cusolverDnSpotrs", "hipsolverDnSpotrs", "library");
    subst("cusolverDnSpotrsBatched", "hipsolverDnSpotrsBatched", "library");
    subst("cusolverDnSsyevd", "hipsolverDnSsyevd", "library");
    subst("cusolverDnSsyevd_bufferSize", "hipsolverDnSsyevd_bufferSize", "library");
    subst("cusolverDnSsyevdx", "hipsolverDnSsyevdx", "library");
    subst("cusolverDnSsyevdx_bufferSize", "hipsolverDnSsyevdx_bufferSize", "library");
    subst("cusolverDnSsyevj", "hipsolverDnSsyevj", "library");
    subst("cusolverDnSsyevjBatched", "hipsolverDnSsyevjBatched", "library");
    subst("cusolverDnSsyevjBatched_bufferSize", "hipsolverDnSsyevjBatched_bufferSize", "library");
    subst("cusolverDnSsyevj_bufferSize", "hipsolverDnSsyevj_bufferSize", "library");
    subst("cusolverDnSsygvd", "hipsolverDnSsygvd", "library");
    subst("cusolverDnSsygvd_bufferSize", "hipsolverDnSsygvd_bufferSize", "library");
    subst("cusolverDnSsygvdx", "hipsolverDnSsygvdx", "library");
    subst("cusolverDnSsygvdx_bufferSize", "hipsolverDnSsygvdx_bufferSize", "library");
    subst("cusolverDnSsygvj", "hipsolverDnSsygvj", "library");
    subst("cusolverDnSsygvj_bufferSize", "hipsolverDnSsygvj_bufferSize", "library");
    subst("cusolverDnSsytrd", "hipsolverDnSsytrd", "library");
    subst("cusolverDnSsytrd_bufferSize", "hipsolverDnSsytrd_bufferSize", "library");
    subst("cusolverDnSsytrf", "hipsolverDnSsytrf", "library");
    subst("cusolverDnSsytrf_bufferSize", "hipsolverDnSsytrf_bufferSize", "library");
    subst("cusolverDnXgeqrf", "hipsolverDnXgeqrf", "library");
    subst("cusolverDnXgeqrf_bufferSize", "hipsolverDnXgeqrf_bufferSize", "library");
    subst("cusolverDnXgesvdjGetResidual", "hipsolverDnXgesvdjGetResidual", "library");
    subst("cusolverDnXgesvdjGetSweeps", "hipsolverDnXgesvdjGetSweeps", "library");
    subst("cusolverDnXgesvdjSetMaxSweeps", "hipsolverDnXgesvdjSetMaxSweeps", "library");
    subst("cusolverDnXgesvdjSetSortEig", "hipsolverDnXgesvdjSetSortEig", "library");
    subst("cusolverDnXgesvdjSetTolerance", "hipsolverDnXgesvdjSetTolerance", "library");
    subst("cusolverDnXgetrf", "hipsolverDnXgetrf", "library");
    subst("cusolverDnXgetrf_bufferSize", "hipsolverDnXgetrf_bufferSize", "library");
    subst("cusolverDnXgetrs", "hipsolverDnXgetrs", "library");
    subst("cusolverDnXpotrf", "hipsolverDnXpotrf", "library");
    subst("cusolverDnXpotrf_bufferSize", "hipsolverDnXpotrf_bufferSize", "library");
    subst("cusolverDnXpotrs", "hipsolverDnXpotrs", "library");
    subst("cusolverDnXsyevjGetResidual", "hipsolverDnXsyevjGetResidual", "library");
    subst("cusolverDnXsyevjGetSweeps", "hipsolverDnXsyevjGetSweeps", "library");
    subst("cusolverDnXsyevjSetMaxSweeps", "hipsolverDnXsyevjSetMaxSweeps", "library");
    subst("cusolverDnXsyevjSetSortEig", "hipsolverDnXsyevjSetSortEig", "library");
    subst("cusolverDnXsyevjSetTolerance", "hipsolverDnXsyevjSetTolerance", "library");
    subst("cusolverDnZZgels", "hipsolverDnZZgels", "library");
    subst("cusolverDnZZgels_bufferSize", "hipsolverDnZZgels_bufferSize", "library");
    subst("cusolverDnZZgesv", "hipsolverDnZZgesv", "library");
    subst("cusolverDnZZgesv_bufferSize", "hipsolverDnZZgesv_bufferSize", "library");
    subst("cusolverDnZgebrd", "hipsolverDnZgebrd", "library");
    subst("cusolverDnZgebrd_bufferSize", "hipsolverDnZgebrd_bufferSize", "library");
    subst("cusolverDnZgeqrf", "hipsolverDnZgeqrf", "library");
    subst("cusolverDnZgeqrf_bufferSize", "hipsolverDnZgeqrf_bufferSize", "library");
    subst("cusolverDnZgesvd", "hipsolverDnZgesvd", "library");
    subst("cusolverDnZgesvd_bufferSize", "hipsolverDnZgesvd_bufferSize", "library");
    subst("cusolverDnZgesvdaStridedBatched", "hipsolverDnZgesvdaStridedBatched", "library");
    subst("cusolverDnZgesvdaStridedBatched_bufferSize", "hipsolverDnZgesvdaStridedBatched_bufferSize", "library");
    subst("cusolverDnZgesvdj", "hipsolverDnZgesvdj", "library");
    subst("cusolverDnZgesvdjBatched", "hipsolverDnZgesvdjBatched", "library");
    subst("cusolverDnZgesvdjBatched_bufferSize", "hipsolverDnZgesvdjBatched_bufferSize", "library");
    subst("cusolverDnZgesvdj_bufferSize", "hipsolverDnZgesvdj_bufferSize", "library");
    subst("cusolverDnZgetrf", "hipsolverDnZgetrf", "library");
    subst("cusolverDnZgetrf_bufferSize", "hipsolverDnZgetrf_bufferSize", "library");
    subst("cusolverDnZgetrs", "hipsolverDnZgetrs", "library");
    subst("cusolverDnZheevd", "hipsolverDnZheevd", "library");
    subst("cusolverDnZheevd_bufferSize", "hipsolverDnZheevd_bufferSize", "library");
    subst("cusolverDnZheevdx", "hipsolverDnZheevdx", "library");
    subst("cusolverDnZheevdx_bufferSize", "hipsolverDnZheevdx_bufferSize", "library");
    subst("cusolverDnZheevj", "hipsolverDnZheevj", "library");
    subst("cusolverDnZheevjBatched", "hipsolverDnZheevjBatched", "library");
    subst("cusolverDnZheevjBatched_bufferSize", "hipsolverDnZheevjBatched_bufferSize", "library");
    subst("cusolverDnZheevj_bufferSize", "hipsolverDnZheevj_bufferSize", "library");
    subst("cusolverDnZhegvd", "hipsolverDnZhegvd", "library");
    subst("cusolverDnZhegvd_bufferSize", "hipsolverDnZhegvd_bufferSize", "library");
    subst("cusolverDnZhegvdx", "hipsolverDnZhegvdx", "library");
    subst("cusolverDnZhegvdx_bufferSize", "hipsolverDnZhegvdx_bufferSize", "library");
    subst("cusolverDnZhegvj", "hipsolverDnZhegvj", "library");
    subst("cusolverDnZhegvj_bufferSize", "hipsolverDnZhegvj_bufferSize", "library");
    subst("cusolverDnZhetrd", "hipsolverDnZhetrd", "library");
    subst("cusolverDnZhetrd_bufferSize", "hipsolverDnZhetrd_bufferSize", "library");
    subst("cusolverDnZpotrf", "hipsolverDnZpotrf", "library");
    subst("cusolverDnZpotrfBatched", "hipsolverDnZpotrfBatched", "library");
    subst("cusolverDnZpotrf_bufferSize", "hipsolverDnZpotrf_bufferSize", "library");
    subst("cusolverDnZpotri", "hipsolverDnZpotri", "library");
    subst("cusolverDnZpotri_bufferSize", "hipsolverDnZpotri_bufferSize", "library");
    subst("cusolverDnZpotrs", "hipsolverDnZpotrs", "library");
    subst("cusolverDnZpotrsBatched", "hipsolverDnZpotrsBatched", "library");
    subst("cusolverDnZsytrf", "hipsolverDnZsytrf", "library");
    subst("cusolverDnZsytrf_bufferSize", "hipsolverDnZsytrf_bufferSize", "library");
    subst("cusolverDnZungbr", "hipsolverDnZungbr", "library");
    subst("cusolverDnZungbr_bufferSize", "hipsolverDnZungbr_bufferSize", "library");
    subst("cusolverDnZungqr", "hipsolverDnZungqr", "library");
    subst("cusolverDnZungqr_bufferSize", "hipsolverDnZungqr_bufferSize", "library");
    subst("cusolverDnZungtr", "hipsolverDnZungtr", "library");
    subst("cusolverDnZungtr_bufferSize", "hipsolverDnZungtr_bufferSize", "library");
    subst("cusolverDnZunmqr", "hipsolverDnZunmqr", "library");
    subst("cusolverDnZunmqr_bufferSize", "hipsolverDnZunmqr_bufferSize", "library");
    subst("cusolverDnZunmtr", "hipsolverDnZunmtr", "library");
    subst("cusolverDnZunmtr_bufferSize", "hipsolverDnZunmtr_bufferSize", "library");
    subst("cusolverRfAccessBundledFactorsDevice", "hipsolverRfAccessBundledFactorsDevice", "library");
    subst("cusolverRfAnalyze", "hipsolverRfAnalyze", "library");
    subst("cusolverRfBatchAnalyze", "hipsolverRfBatchAnalyze", "library");
    subst("cusolverRfBatchRefactor", "hipsolverRfBatchRefactor", "library");
    subst("cusolverRfBatchResetValues", "hipsolverRfBatchResetValues", "library");
    subst("cusolverRfBatchSetupHost", "hipsolverRfBatchSetupHost", "library");
    subst("cusolverRfBatchSolve", "hipsolverRfBatchSolve", "library");
    subst("cusolverRfBatchZeroPivot", "hipsolverRfBatchZeroPivot", "library");
    subst("cusolverRfCreate", "hipsolverRfCreate", "library");
    subst("cusolverRfDestroy", "hipsolverRfDestroy", "library");
    subst("cusolverRfExtractBundledFactorsHost", "hipsolverRfExtractBundledFactorsHost", "library");
    subst("cusolverRfExtractSplitFactorsHost", "hipsolverRfExtractSplitFactorsHost", "library");
    subst("cusolverRfGetMatrixFormat", "hipsolverRfGetMatrixFormat", "library");
    subst("cusolverRfGetNumericBoostReport", "hipsolverRfGetNumericBoostReport", "library");
    subst("cusolverRfGetNumericProperties", "hipsolverRfGetNumericProperties", "library");
    subst("cusolverRfGetResetValuesFastMode", "hipsolverRfGetResetValuesFastMode", "library");
    subst("cusolverRfRefactor", "hipsolverRfRefactor", "library");
    subst("cusolverRfResetValues", "hipsolverRfResetValues", "library");
    subst("cusolverRfSetAlgs", "hipsolverRfSetAlgs", "library");
    subst("cusolverRfSetMatrixFormat", "hipsolverRfSetMatrixFormat", "library");
    subst("cusolverRfSetNumericProperties", "hipsolverRfSetNumericProperties", "library");
    subst("cusolverRfSetResetValuesFastMode", "hipsolverRfSetResetValuesFastMode", "library");
    subst("cusolverRfSetupDevice", "hipsolverRfSetupDevice", "library");
    subst("cusolverRfSetupHost", "hipsolverRfSetupHost", "library");
    subst("cusolverRfSolve", "hipsolverRfSolve", "library");
    subst("cusolverSpCreate", "hipsolverSpCreate", "library");
    subst("cusolverSpDcsrlsvchol", "hipsolverSpDcsrlsvchol", "library");
    subst("cusolverSpDcsrlsvcholHost", "hipsolverSpDcsrlsvcholHost", "library");
    subst("cusolverSpDestroy", "hipsolverSpDestroy", "library");
    subst("cusolverSpScsrlsvchol", "hipsolverSpScsrlsvchol", "library");
    subst("cusolverSpScsrlsvcholHost", "hipsolverSpScsrlsvcholHost", "library");
    subst("cusolverSpSetStream", "hipsolverSpSetStream", "library");
    subst("cusparseAxpby", "hipsparseAxpby", "library");
    subst("cusparseBlockedEllGet", "hipsparseBlockedEllGet", "library");
    subst("cusparseCaxpyi", "hipsparseCaxpyi", "library");
    subst("cusparseCbsr2csr", "hipsparseCbsr2csr", "library");
    subst("cusparseCbsric02", "hipsparseCbsric02", "library");
    subst("cusparseCbsric02_analysis", "hipsparseCbsric02_analysis", "library");
    subst("cusparseCbsric02_bufferSize", "hipsparseCbsric02_bufferSize", "library");
    subst("cusparseCbsrilu02", "hipsparseCbsrilu02", "library");
    subst("cusparseCbsrilu02_analysis", "hipsparseCbsrilu02_analysis", "library");
    subst("cusparseCbsrilu02_bufferSize", "hipsparseCbsrilu02_bufferSize", "library");
    subst("cusparseCbsrilu02_numericBoost", "hipsparseCbsrilu02_numericBoost", "library");
    subst("cusparseCbsrmm", "hipsparseCbsrmm", "library");
    subst("cusparseCbsrmv", "hipsparseCbsrmv", "library");
    subst("cusparseCbsrsm2_analysis", "hipsparseCbsrsm2_analysis", "library");
    subst("cusparseCbsrsm2_bufferSize", "hipsparseCbsrsm2_bufferSize", "library");
    subst("cusparseCbsrsm2_solve", "hipsparseCbsrsm2_solve", "library");
    subst("cusparseCbsrsv2_analysis", "hipsparseCbsrsv2_analysis", "library");
    subst("cusparseCbsrsv2_bufferSize", "hipsparseCbsrsv2_bufferSize", "library");
    subst("cusparseCbsrsv2_bufferSizeExt", "hipsparseCbsrsv2_bufferSizeExt", "library");
    subst("cusparseCbsrsv2_solve", "hipsparseCbsrsv2_solve", "library");
    subst("cusparseCbsrxmv", "hipsparseCbsrxmv", "library");
    subst("cusparseCcsc2dense", "hipsparseCcsc2dense", "library");
    subst("cusparseCcsr2bsr", "hipsparseCcsr2bsr", "library");
    subst("cusparseCcsr2csc", "hipsparseCcsr2csc", "library");
    subst("cusparseCcsr2csr_compress", "hipsparseCcsr2csr_compress", "library");
    subst("cusparseCcsr2csru", "hipsparseCcsr2csru", "library");
    subst("cusparseCcsr2dense", "hipsparseCcsr2dense", "library");
    subst("cusparseCcsr2gebsr", "hipsparseCcsr2gebsr", "library");
    subst("cusparseCcsr2gebsr_bufferSize", "hipsparseCcsr2gebsr_bufferSize", "library");
    subst("cusparseCcsr2hyb", "hipsparseCcsr2hyb", "library");
    subst("cusparseCcsrcolor", "hipsparseCcsrcolor", "library");
    subst("cusparseCcsrgeam", "hipsparseCcsrgeam", "library");
    subst("cusparseCcsrgeam2", "hipsparseCcsrgeam2", "library");
    subst("cusparseCcsrgeam2_bufferSizeExt", "hipsparseCcsrgeam2_bufferSizeExt", "library");
    subst("cusparseCcsrgemm", "hipsparseCcsrgemm", "library");
    subst("cusparseCcsrgemm2", "hipsparseCcsrgemm2", "library");
    subst("cusparseCcsrgemm2_bufferSizeExt", "hipsparseCcsrgemm2_bufferSizeExt", "library");
    subst("cusparseCcsric02", "hipsparseCcsric02", "library");
    subst("cusparseCcsric02_analysis", "hipsparseCcsric02_analysis", "library");
    subst("cusparseCcsric02_bufferSize", "hipsparseCcsric02_bufferSize", "library");
    subst("cusparseCcsric02_bufferSizeExt", "hipsparseCcsric02_bufferSizeExt", "library");
    subst("cusparseCcsrilu02", "hipsparseCcsrilu02", "library");
    subst("cusparseCcsrilu02_analysis", "hipsparseCcsrilu02_analysis", "library");
    subst("cusparseCcsrilu02_bufferSize", "hipsparseCcsrilu02_bufferSize", "library");
    subst("cusparseCcsrilu02_bufferSizeExt", "hipsparseCcsrilu02_bufferSizeExt", "library");
    subst("cusparseCcsrilu02_numericBoost", "hipsparseCcsrilu02_numericBoost", "library");
    subst("cusparseCcsrmm", "hipsparseCcsrmm", "library");
    subst("cusparseCcsrmm2", "hipsparseCcsrmm2", "library");
    subst("cusparseCcsrmv", "hipsparseCcsrmv", "library");
    subst("cusparseCcsrsm2_analysis", "hipsparseCcsrsm2_analysis", "library");
    subst("cusparseCcsrsm2_bufferSizeExt", "hipsparseCcsrsm2_bufferSizeExt", "library");
    subst("cusparseCcsrsm2_solve", "hipsparseCcsrsm2_solve", "library");
    subst("cusparseCcsrsv2_analysis", "hipsparseCcsrsv2_analysis", "library");
    subst("cusparseCcsrsv2_bufferSize", "hipsparseCcsrsv2_bufferSize", "library");
    subst("cusparseCcsrsv2_bufferSizeExt", "hipsparseCcsrsv2_bufferSizeExt", "library");
    subst("cusparseCcsrsv2_solve", "hipsparseCcsrsv2_solve", "library");
    subst("cusparseCcsru2csr", "hipsparseCcsru2csr", "library");
    subst("cusparseCcsru2csr_bufferSizeExt", "hipsparseCcsru2csr_bufferSizeExt", "library");
    subst("cusparseCdense2csc", "hipsparseCdense2csc", "library");
    subst("cusparseCdense2csr", "hipsparseCdense2csr", "library");
    subst("cusparseCdotci", "hipsparseCdotci", "library");
    subst("cusparseCdoti", "hipsparseCdoti", "library");
    subst("cusparseCgebsr2csr", "hipsparseCgebsr2csr", "library");
    subst("cusparseCgebsr2gebsc", "hipsparseCgebsr2gebsc", "library");
    subst("cusparseCgebsr2gebsc_bufferSize", "hipsparseCgebsr2gebsc_bufferSize", "library");
    subst("cusparseCgebsr2gebsr", "hipsparseCgebsr2gebsr", "library");
    subst("cusparseCgebsr2gebsr_bufferSize", "hipsparseCgebsr2gebsr_bufferSize", "library");
    subst("cusparseCgemmi", "hipsparseCgemmi", "library");
    subst("cusparseCgemvi", "hipsparseCgemvi", "library");
    subst("cusparseCgemvi_bufferSize", "hipsparseCgemvi_bufferSize", "library");
    subst("cusparseCgpsvInterleavedBatch", "hipsparseCgpsvInterleavedBatch", "library");
    subst("cusparseCgpsvInterleavedBatch_bufferSizeExt", "hipsparseCgpsvInterleavedBatch_bufferSizeExt", "library");
    subst("cusparseCgthr", "hipsparseCgthr", "library");
    subst("cusparseCgthrz", "hipsparseCgthrz", "library");
    subst("cusparseCgtsv2", "hipsparseCgtsv2", "library");
    subst("cusparseCgtsv2StridedBatch", "hipsparseCgtsv2StridedBatch", "library");
    subst("cusparseCgtsv2StridedBatch_bufferSizeExt", "hipsparseCgtsv2StridedBatch_bufferSizeExt", "library");
    subst("cusparseCgtsv2_bufferSizeExt", "hipsparseCgtsv2_bufferSizeExt", "library");
    subst("cusparseCgtsv2_nopivot", "hipsparseCgtsv2_nopivot", "library");
    subst("cusparseCgtsv2_nopivot_bufferSizeExt", "hipsparseCgtsv2_nopivot_bufferSizeExt", "library");
    subst("cusparseCgtsvInterleavedBatch", "hipsparseCgtsvInterleavedBatch", "library");
    subst("cusparseCgtsvInterleavedBatch_bufferSizeExt", "hipsparseCgtsvInterleavedBatch_bufferSizeExt", "library");
    subst("cusparseChyb2csr", "hipsparseChyb2csr", "library");
    subst("cusparseChybmv", "hipsparseChybmv", "library");
    subst("cusparseCnnz", "hipsparseCnnz", "library");
    subst("cusparseCnnz_compress", "hipsparseCnnz_compress", "library");
    subst("cusparseConstBlockedEllGet", "hipsparseConstBlockedEllGet", "library");
    subst("cusparseConstCooGet", "hipsparseConstCooGet", "library");
    subst("cusparseConstCscGet", "hipsparseConstCscGet", "library");
    subst("cusparseConstCsrGet", "hipsparseConstCsrGet", "library");
    subst("cusparseConstDnMatGet", "hipsparseConstDnMatGet", "library");
    subst("cusparseConstDnMatGetValues", "hipsparseConstDnMatGetValues", "library");
    subst("cusparseConstDnVecGet", "hipsparseConstDnVecGet", "library");
    subst("cusparseConstDnVecGetValues", "hipsparseConstDnVecGetValues", "library");
    subst("cusparseConstSpMatGetValues", "hipsparseConstSpMatGetValues", "library");
    subst("cusparseConstSpVecGet", "hipsparseConstSpVecGet", "library");
    subst("cusparseConstSpVecGetValues", "hipsparseConstSpVecGetValues", "library");
    subst("cusparseCooAoSGet", "hipsparseCooAoSGet", "library");
    subst("cusparseCooGet", "hipsparseCooGet", "library");
    subst("cusparseCooSetPointers", "hipsparseCooSetPointers", "library");
    subst("cusparseCooSetStridedBatch", "hipsparseCooSetStridedBatch", "library");
    subst("cusparseCopyMatDescr", "hipsparseCopyMatDescr", "library");
    subst("cusparseCreate", "hipsparseCreate", "library");
    subst("cusparseCreateBlockedEll", "hipsparseCreateBlockedEll", "library");
    subst("cusparseCreateBsric02Info", "hipsparseCreateBsric02Info", "library");
    subst("cusparseCreateBsrilu02Info", "hipsparseCreateBsrilu02Info", "library");
    subst("cusparseCreateBsrsm2Info", "hipsparseCreateBsrsm2Info", "library");
    subst("cusparseCreateBsrsv2Info", "hipsparseCreateBsrsv2Info", "library");
    subst("cusparseCreateColorInfo", "hipsparseCreateColorInfo", "library");
    subst("cusparseCreateConstBlockedEll", "hipsparseCreateConstBlockedEll", "library");
    subst("cusparseCreateConstCoo", "hipsparseCreateConstCoo", "library");
    subst("cusparseCreateConstCsc", "hipsparseCreateConstCsc", "library");
    subst("cusparseCreateConstCsr", "hipsparseCreateConstCsr", "library");
    subst("cusparseCreateConstDnMat", "hipsparseCreateConstDnMat", "library");
    subst("cusparseCreateConstDnVec", "hipsparseCreateConstDnVec", "library");
    subst("cusparseCreateConstSpVec", "hipsparseCreateConstSpVec", "library");
    subst("cusparseCreateCoo", "hipsparseCreateCoo", "library");
    subst("cusparseCreateCooAoS", "hipsparseCreateCooAoS", "library");
    subst("cusparseCreateCsc", "hipsparseCreateCsc", "library");
    subst("cusparseCreateCsr", "hipsparseCreateCsr", "library");
    subst("cusparseCreateCsrgemm2Info", "hipsparseCreateCsrgemm2Info", "library");
    subst("cusparseCreateCsric02Info", "hipsparseCreateCsric02Info", "library");
    subst("cusparseCreateCsrilu02Info", "hipsparseCreateCsrilu02Info", "library");
    subst("cusparseCreateCsrsm2Info", "hipsparseCreateCsrsm2Info", "library");
    subst("cusparseCreateCsrsv2Info", "hipsparseCreateCsrsv2Info", "library");
    subst("cusparseCreateCsru2csrInfo", "hipsparseCreateCsru2csrInfo", "library");
    subst("cusparseCreateDnMat", "hipsparseCreateDnMat", "library");
    subst("cusparseCreateDnVec", "hipsparseCreateDnVec", "library");
    subst("cusparseCreateHybMat", "hipsparseCreateHybMat", "library");
    subst("cusparseCreateIdentityPermutation", "hipsparseCreateIdentityPermutation", "library");
    subst("cusparseCreateMatDescr", "hipsparseCreateMatDescr", "library");
    subst("cusparseCreatePruneInfo", "hipsparseCreatePruneInfo", "library");
    subst("cusparseCreateSpVec", "hipsparseCreateSpVec", "library");
    subst("cusparseCscGet", "hipsparseCscGet", "library");
    subst("cusparseCscSetPointers", "hipsparseCscSetPointers", "library");
    subst("cusparseCsctr", "hipsparseCsctr", "library");
    subst("cusparseCsr2cscEx2", "hipsparseCsr2cscEx2", "library");
    subst("cusparseCsr2cscEx2_bufferSize", "hipsparseCsr2cscEx2_bufferSize", "library");
    subst("cusparseCsrGet", "hipsparseCsrGet", "library");
    subst("cusparseCsrSetPointers", "hipsparseCsrSetPointers", "library");
    subst("cusparseCsrSetStridedBatch", "hipsparseCsrSetStridedBatch", "library");
    subst("cusparseDaxpyi", "hipsparseDaxpyi", "library");
    subst("cusparseDbsr2csr", "hipsparseDbsr2csr", "library");
    subst("cusparseDbsric02", "hipsparseDbsric02", "library");
    subst("cusparseDbsric02_analysis", "hipsparseDbsric02_analysis", "library");
    subst("cusparseDbsric02_bufferSize", "hipsparseDbsric02_bufferSize", "library");
    subst("cusparseDbsrilu02", "hipsparseDbsrilu02", "library");
    subst("cusparseDbsrilu02_analysis", "hipsparseDbsrilu02_analysis", "library");
    subst("cusparseDbsrilu02_bufferSize", "hipsparseDbsrilu02_bufferSize", "library");
    subst("cusparseDbsrilu02_numericBoost", "hipsparseDbsrilu02_numericBoost", "library");
    subst("cusparseDbsrmm", "hipsparseDbsrmm", "library");
    subst("cusparseDbsrmv", "hipsparseDbsrmv", "library");
    subst("cusparseDbsrsm2_analysis", "hipsparseDbsrsm2_analysis", "library");
    subst("cusparseDbsrsm2_bufferSize", "hipsparseDbsrsm2_bufferSize", "library");
    subst("cusparseDbsrsm2_solve", "hipsparseDbsrsm2_solve", "library");
    subst("cusparseDbsrsv2_analysis", "hipsparseDbsrsv2_analysis", "library");
    subst("cusparseDbsrsv2_bufferSize", "hipsparseDbsrsv2_bufferSize", "library");
    subst("cusparseDbsrsv2_bufferSizeExt", "hipsparseDbsrsv2_bufferSizeExt", "library");
    subst("cusparseDbsrsv2_solve", "hipsparseDbsrsv2_solve", "library");
    subst("cusparseDbsrxmv", "hipsparseDbsrxmv", "library");
    subst("cusparseDcsc2dense", "hipsparseDcsc2dense", "library");
    subst("cusparseDcsr2bsr", "hipsparseDcsr2bsr", "library");
    subst("cusparseDcsr2csc", "hipsparseDcsr2csc", "library");
    subst("cusparseDcsr2csr_compress", "hipsparseDcsr2csr_compress", "library");
    subst("cusparseDcsr2csru", "hipsparseDcsr2csru", "library");
    subst("cusparseDcsr2dense", "hipsparseDcsr2dense", "library");
    subst("cusparseDcsr2gebsr", "hipsparseDcsr2gebsr", "library");
    subst("cusparseDcsr2gebsr_bufferSize", "hipsparseDcsr2gebsr_bufferSize", "library");
    subst("cusparseDcsr2hyb", "hipsparseDcsr2hyb", "library");
    subst("cusparseDcsrcolor", "hipsparseDcsrcolor", "library");
    subst("cusparseDcsrgeam", "hipsparseDcsrgeam", "library");
    subst("cusparseDcsrgeam2", "hipsparseDcsrgeam2", "library");
    subst("cusparseDcsrgeam2_bufferSizeExt", "hipsparseDcsrgeam2_bufferSizeExt", "library");
    subst("cusparseDcsrgemm", "hipsparseDcsrgemm", "library");
    subst("cusparseDcsrgemm2", "hipsparseDcsrgemm2", "library");
    subst("cusparseDcsrgemm2_bufferSizeExt", "hipsparseDcsrgemm2_bufferSizeExt", "library");
    subst("cusparseDcsric02", "hipsparseDcsric02", "library");
    subst("cusparseDcsric02_analysis", "hipsparseDcsric02_analysis", "library");
    subst("cusparseDcsric02_bufferSize", "hipsparseDcsric02_bufferSize", "library");
    subst("cusparseDcsric02_bufferSizeExt", "hipsparseDcsric02_bufferSizeExt", "library");
    subst("cusparseDcsrilu02", "hipsparseDcsrilu02", "library");
    subst("cusparseDcsrilu02_analysis", "hipsparseDcsrilu02_analysis", "library");
    subst("cusparseDcsrilu02_bufferSize", "hipsparseDcsrilu02_bufferSize", "library");
    subst("cusparseDcsrilu02_bufferSizeExt", "hipsparseDcsrilu02_bufferSizeExt", "library");
    subst("cusparseDcsrilu02_numericBoost", "hipsparseDcsrilu02_numericBoost", "library");
    subst("cusparseDcsrmm", "hipsparseDcsrmm", "library");
    subst("cusparseDcsrmm2", "hipsparseDcsrmm2", "library");
    subst("cusparseDcsrmv", "hipsparseDcsrmv", "library");
    subst("cusparseDcsrsm2_analysis", "hipsparseDcsrsm2_analysis", "library");
    subst("cusparseDcsrsm2_bufferSizeExt", "hipsparseDcsrsm2_bufferSizeExt", "library");
    subst("cusparseDcsrsm2_solve", "hipsparseDcsrsm2_solve", "library");
    subst("cusparseDcsrsv2_analysis", "hipsparseDcsrsv2_analysis", "library");
    subst("cusparseDcsrsv2_bufferSize", "hipsparseDcsrsv2_bufferSize", "library");
    subst("cusparseDcsrsv2_bufferSizeExt", "hipsparseDcsrsv2_bufferSizeExt", "library");
    subst("cusparseDcsrsv2_solve", "hipsparseDcsrsv2_solve", "library");
    subst("cusparseDcsru2csr", "hipsparseDcsru2csr", "library");
    subst("cusparseDcsru2csr_bufferSizeExt", "hipsparseDcsru2csr_bufferSizeExt", "library");
    subst("cusparseDdense2csc", "hipsparseDdense2csc", "library");
    subst("cusparseDdense2csr", "hipsparseDdense2csr", "library");
    subst("cusparseDdoti", "hipsparseDdoti", "library");
    subst("cusparseDenseToSparse_analysis", "hipsparseDenseToSparse_analysis", "library");
    subst("cusparseDenseToSparse_bufferSize", "hipsparseDenseToSparse_bufferSize", "library");
    subst("cusparseDenseToSparse_convert", "hipsparseDenseToSparse_convert", "library");
    subst("cusparseDestroy", "hipsparseDestroy", "library");
    subst("cusparseDestroyBsric02Info", "hipsparseDestroyBsric02Info", "library");
    subst("cusparseDestroyBsrilu02Info", "hipsparseDestroyBsrilu02Info", "library");
    subst("cusparseDestroyBsrsm2Info", "hipsparseDestroyBsrsm2Info", "library");
    subst("cusparseDestroyBsrsv2Info", "hipsparseDestroyBsrsv2Info", "library");
    subst("cusparseDestroyColorInfo", "hipsparseDestroyColorInfo", "library");
    subst("cusparseDestroyCsrgemm2Info", "hipsparseDestroyCsrgemm2Info", "library");
    subst("cusparseDestroyCsric02Info", "hipsparseDestroyCsric02Info", "library");
    subst("cusparseDestroyCsrilu02Info", "hipsparseDestroyCsrilu02Info", "library");
    subst("cusparseDestroyCsrsm2Info", "hipsparseDestroyCsrsm2Info", "library");
    subst("cusparseDestroyCsrsv2Info", "hipsparseDestroyCsrsv2Info", "library");
    subst("cusparseDestroyCsru2csrInfo", "hipsparseDestroyCsru2csrInfo", "library");
    subst("cusparseDestroyDnMat", "hipsparseDestroyDnMat", "library");
    subst("cusparseDestroyDnVec", "hipsparseDestroyDnVec", "library");
    subst("cusparseDestroyHybMat", "hipsparseDestroyHybMat", "library");
    subst("cusparseDestroyMatDescr", "hipsparseDestroyMatDescr", "library");
    subst("cusparseDestroyPruneInfo", "hipsparseDestroyPruneInfo", "library");
    subst("cusparseDestroySpMat", "hipsparseDestroySpMat", "library");
    subst("cusparseDestroySpVec", "hipsparseDestroySpVec", "library");
    subst("cusparseDgebsr2csr", "hipsparseDgebsr2csr", "library");
    subst("cusparseDgebsr2gebsc", "hipsparseDgebsr2gebsc", "library");
    subst("cusparseDgebsr2gebsc_bufferSize", "hipsparseDgebsr2gebsc_bufferSize", "library");
    subst("cusparseDgebsr2gebsr", "hipsparseDgebsr2gebsr", "library");
    subst("cusparseDgebsr2gebsr_bufferSize", "hipsparseDgebsr2gebsr_bufferSize", "library");
    subst("cusparseDgemmi", "hipsparseDgemmi", "library");
    subst("cusparseDgemvi", "hipsparseDgemvi", "library");
    subst("cusparseDgemvi_bufferSize", "hipsparseDgemvi_bufferSize", "library");
    subst("cusparseDgpsvInterleavedBatch", "hipsparseDgpsvInterleavedBatch", "library");
    subst("cusparseDgpsvInterleavedBatch_bufferSizeExt", "hipsparseDgpsvInterleavedBatch_bufferSizeExt", "library");
    subst("cusparseDgthr", "hipsparseDgthr", "library");
    subst("cusparseDgthrz", "hipsparseDgthrz", "library");
    subst("cusparseDgtsv2", "hipsparseDgtsv2", "library");
    subst("cusparseDgtsv2StridedBatch", "hipsparseDgtsv2StridedBatch", "library");
    subst("cusparseDgtsv2StridedBatch_bufferSizeExt", "hipsparseDgtsv2StridedBatch_bufferSizeExt", "library");
    subst("cusparseDgtsv2_bufferSizeExt", "hipsparseDgtsv2_bufferSizeExt", "library");
    subst("cusparseDgtsv2_nopivot", "hipsparseDgtsv2_nopivot", "library");
    subst("cusparseDgtsv2_nopivot_bufferSizeExt", "hipsparseDgtsv2_nopivot_bufferSizeExt", "library");
    subst("cusparseDgtsvInterleavedBatch", "hipsparseDgtsvInterleavedBatch", "library");
    subst("cusparseDgtsvInterleavedBatch_bufferSizeExt", "hipsparseDgtsvInterleavedBatch_bufferSizeExt", "library");
    subst("cusparseDhyb2csr", "hipsparseDhyb2csr", "library");
    subst("cusparseDhybmv", "hipsparseDhybmv", "library");
    subst("cusparseDnMatGet", "hipsparseDnMatGet", "library");
    subst("cusparseDnMatGetStridedBatch", "hipsparseDnMatGetStridedBatch", "library");
    subst("cusparseDnMatGetValues", "hipsparseDnMatGetValues", "library");
    subst("cusparseDnMatSetStridedBatch", "hipsparseDnMatSetStridedBatch", "library");
    subst("cusparseDnMatSetValues", "hipsparseDnMatSetValues", "library");
    subst("cusparseDnVecGet", "hipsparseDnVecGet", "library");
    subst("cusparseDnVecGetValues", "hipsparseDnVecGetValues", "library");
    subst("cusparseDnVecSetValues", "hipsparseDnVecSetValues", "library");
    subst("cusparseDnnz", "hipsparseDnnz", "library");
    subst("cusparseDnnz_compress", "hipsparseDnnz_compress", "library");
    subst("cusparseDpruneCsr2csr", "hipsparseDpruneCsr2csr", "library");
    subst("cusparseDpruneCsr2csrByPercentage", "hipsparseDpruneCsr2csrByPercentage", "library");
    subst("cusparseDpruneCsr2csrByPercentage_bufferSizeExt", "hipsparseDpruneCsr2csrByPercentage_bufferSizeExt", "library");
    subst("cusparseDpruneCsr2csrNnz", "hipsparseDpruneCsr2csrNnz", "library");
    subst("cusparseDpruneCsr2csrNnzByPercentage", "hipsparseDpruneCsr2csrNnzByPercentage", "library");
    subst("cusparseDpruneCsr2csr_bufferSizeExt", "hipsparseDpruneCsr2csr_bufferSizeExt", "library");
    subst("cusparseDpruneDense2csr", "hipsparseDpruneDense2csr", "library");
    subst("cusparseDpruneDense2csrByPercentage", "hipsparseDpruneDense2csrByPercentage", "library");
    subst("cusparseDpruneDense2csrByPercentage_bufferSizeExt", "hipsparseDpruneDense2csrByPercentage_bufferSizeExt", "library");
    subst("cusparseDpruneDense2csrNnz", "hipsparseDpruneDense2csrNnz", "library");
    subst("cusparseDpruneDense2csrNnzByPercentage", "hipsparseDpruneDense2csrNnzByPercentage", "library");
    subst("cusparseDpruneDense2csr_bufferSizeExt", "hipsparseDpruneDense2csr_bufferSizeExt", "library");
    subst("cusparseDroti", "hipsparseDroti", "library");
    subst("cusparseDsctr", "hipsparseDsctr", "library");
    subst("cusparseGather", "hipsparseGather", "library");
    subst("cusparseGetErrorName", "hipsparseGetErrorName", "library");
    subst("cusparseGetErrorString", "hipsparseGetErrorString", "library");
    subst("cusparseGetMatDiagType", "hipsparseGetMatDiagType", "library");
    subst("cusparseGetMatFillMode", "hipsparseGetMatFillMode", "library");
    subst("cusparseGetMatIndexBase", "hipsparseGetMatIndexBase", "library");
    subst("cusparseGetMatType", "hipsparseGetMatType", "library");
    subst("cusparseGetPointerMode", "hipsparseGetPointerMode", "library");
    subst("cusparseGetStream", "hipsparseGetStream", "library");
    subst("cusparseGetVersion", "hipsparseGetVersion", "library");
    subst("cusparseRot", "hipsparseRot", "library");
    subst("cusparseSDDMM", "hipsparseSDDMM", "library");
    subst("cusparseSDDMM_bufferSize", "hipsparseSDDMM_bufferSize", "library");
    subst("cusparseSDDMM_preprocess", "hipsparseSDDMM_preprocess", "library");
    subst("cusparseSaxpyi", "hipsparseSaxpyi", "library");
    subst("cusparseSbsr2csr", "hipsparseSbsr2csr", "library");
    subst("cusparseSbsric02", "hipsparseSbsric02", "library");
    subst("cusparseSbsric02_analysis", "hipsparseSbsric02_analysis", "library");
    subst("cusparseSbsric02_bufferSize", "hipsparseSbsric02_bufferSize", "library");
    subst("cusparseSbsrilu02", "hipsparseSbsrilu02", "library");
    subst("cusparseSbsrilu02_analysis", "hipsparseSbsrilu02_analysis", "library");
    subst("cusparseSbsrilu02_bufferSize", "hipsparseSbsrilu02_bufferSize", "library");
    subst("cusparseSbsrilu02_numericBoost", "hipsparseSbsrilu02_numericBoost", "library");
    subst("cusparseSbsrmm", "hipsparseSbsrmm", "library");
    subst("cusparseSbsrmv", "hipsparseSbsrmv", "library");
    subst("cusparseSbsrsm2_analysis", "hipsparseSbsrsm2_analysis", "library");
    subst("cusparseSbsrsm2_bufferSize", "hipsparseSbsrsm2_bufferSize", "library");
    subst("cusparseSbsrsm2_solve", "hipsparseSbsrsm2_solve", "library");
    subst("cusparseSbsrsv2_analysis", "hipsparseSbsrsv2_analysis", "library");
    subst("cusparseSbsrsv2_bufferSize", "hipsparseSbsrsv2_bufferSize", "library");
    subst("cusparseSbsrsv2_bufferSizeExt", "hipsparseSbsrsv2_bufferSizeExt", "library");
    subst("cusparseSbsrsv2_solve", "hipsparseSbsrsv2_solve", "library");
    subst("cusparseSbsrxmv", "hipsparseSbsrxmv", "library");
    subst("cusparseScatter", "hipsparseScatter", "library");
    subst("cusparseScsc2dense", "hipsparseScsc2dense", "library");
    subst("cusparseScsr2bsr", "hipsparseScsr2bsr", "library");
    subst("cusparseScsr2csc", "hipsparseScsr2csc", "library");
    subst("cusparseScsr2csr_compress", "hipsparseScsr2csr_compress", "library");
    subst("cusparseScsr2csru", "hipsparseScsr2csru", "library");
    subst("cusparseScsr2dense", "hipsparseScsr2dense", "library");
    subst("cusparseScsr2gebsr", "hipsparseScsr2gebsr", "library");
    subst("cusparseScsr2gebsr_bufferSize", "hipsparseScsr2gebsr_bufferSize", "library");
    subst("cusparseScsr2hyb", "hipsparseScsr2hyb", "library");
    subst("cusparseScsrcolor", "hipsparseScsrcolor", "library");
    subst("cusparseScsrgeam", "hipsparseScsrgeam", "library");
    subst("cusparseScsrgeam2", "hipsparseScsrgeam2", "library");
    subst("cusparseScsrgeam2_bufferSizeExt", "hipsparseScsrgeam2_bufferSizeExt", "library");
    subst("cusparseScsrgemm", "hipsparseScsrgemm", "library");
    subst("cusparseScsrgemm2", "hipsparseScsrgemm2", "library");
    subst("cusparseScsrgemm2_bufferSizeExt", "hipsparseScsrgemm2_bufferSizeExt", "library");
    subst("cusparseScsric02", "hipsparseScsric02", "library");
    subst("cusparseScsric02_analysis", "hipsparseScsric02_analysis", "library");
    subst("cusparseScsric02_bufferSize", "hipsparseScsric02_bufferSize", "library");
    subst("cusparseScsric02_bufferSizeExt", "hipsparseScsric02_bufferSizeExt", "library");
    subst("cusparseScsrilu02", "hipsparseScsrilu02", "library");
    subst("cusparseScsrilu02_analysis", "hipsparseScsrilu02_analysis", "library");
    subst("cusparseScsrilu02_bufferSize", "hipsparseScsrilu02_bufferSize", "library");
    subst("cusparseScsrilu02_bufferSizeExt", "hipsparseScsrilu02_bufferSizeExt", "library");
    subst("cusparseScsrilu02_numericBoost", "hipsparseScsrilu02_numericBoost", "library");
    subst("cusparseScsrmm", "hipsparseScsrmm", "library");
    subst("cusparseScsrmm2", "hipsparseScsrmm2", "library");
    subst("cusparseScsrmv", "hipsparseScsrmv", "library");
    subst("cusparseScsrsm2_analysis", "hipsparseScsrsm2_analysis", "library");
    subst("cusparseScsrsm2_bufferSizeExt", "hipsparseScsrsm2_bufferSizeExt", "library");
    subst("cusparseScsrsm2_solve", "hipsparseScsrsm2_solve", "library");
    subst("cusparseScsrsv2_analysis", "hipsparseScsrsv2_analysis", "library");
    subst("cusparseScsrsv2_bufferSize", "hipsparseScsrsv2_bufferSize", "library");
    subst("cusparseScsrsv2_bufferSizeExt", "hipsparseScsrsv2_bufferSizeExt", "library");
    subst("cusparseScsrsv2_solve", "hipsparseScsrsv2_solve", "library");
    subst("cusparseScsru2csr", "hipsparseScsru2csr", "library");
    subst("cusparseScsru2csr_bufferSizeExt", "hipsparseScsru2csr_bufferSizeExt", "library");
    subst("cusparseSdense2csc", "hipsparseSdense2csc", "library");
    subst("cusparseSdense2csr", "hipsparseSdense2csr", "library");
    subst("cusparseSdoti", "hipsparseSdoti", "library");
    subst("cusparseSetMatDiagType", "hipsparseSetMatDiagType", "library");
    subst("cusparseSetMatFillMode", "hipsparseSetMatFillMode", "library");
    subst("cusparseSetMatIndexBase", "hipsparseSetMatIndexBase", "library");
    subst("cusparseSetMatType", "hipsparseSetMatType", "library");
    subst("cusparseSetPointerMode", "hipsparseSetPointerMode", "library");
    subst("cusparseSetStream", "hipsparseSetStream", "library");
    subst("cusparseSgebsr2csr", "hipsparseSgebsr2csr", "library");
    subst("cusparseSgebsr2gebsc", "hipsparseSgebsr2gebsc", "library");
    subst("cusparseSgebsr2gebsc_bufferSize", "hipsparseSgebsr2gebsc_bufferSize", "library");
    subst("cusparseSgebsr2gebsr", "hipsparseSgebsr2gebsr", "library");
    subst("cusparseSgebsr2gebsr_bufferSize", "hipsparseSgebsr2gebsr_bufferSize", "library");
    subst("cusparseSgemmi", "hipsparseSgemmi", "library");
    subst("cusparseSgemvi", "hipsparseSgemvi", "library");
    subst("cusparseSgemvi_bufferSize", "hipsparseSgemvi_bufferSize", "library");
    subst("cusparseSgpsvInterleavedBatch", "hipsparseSgpsvInterleavedBatch", "library");
    subst("cusparseSgpsvInterleavedBatch_bufferSizeExt", "hipsparseSgpsvInterleavedBatch_bufferSizeExt", "library");
    subst("cusparseSgthr", "hipsparseSgthr", "library");
    subst("cusparseSgthrz", "hipsparseSgthrz", "library");
    subst("cusparseSgtsv2", "hipsparseSgtsv2", "library");
    subst("cusparseSgtsv2StridedBatch", "hipsparseSgtsv2StridedBatch", "library");
    subst("cusparseSgtsv2StridedBatch_bufferSizeExt", "hipsparseSgtsv2StridedBatch_bufferSizeExt", "library");
    subst("cusparseSgtsv2_bufferSizeExt", "hipsparseSgtsv2_bufferSizeExt", "library");
    subst("cusparseSgtsv2_nopivot", "hipsparseSgtsv2_nopivot", "library");
    subst("cusparseSgtsv2_nopivot_bufferSizeExt", "hipsparseSgtsv2_nopivot_bufferSizeExt", "library");
    subst("cusparseSgtsvInterleavedBatch", "hipsparseSgtsvInterleavedBatch", "library");
    subst("cusparseSgtsvInterleavedBatch_bufferSizeExt", "hipsparseSgtsvInterleavedBatch_bufferSizeExt", "library");
    subst("cusparseShyb2csr", "hipsparseShyb2csr", "library");
    subst("cusparseShybmv", "hipsparseShybmv", "library");
    subst("cusparseSnnz", "hipsparseSnnz", "library");
    subst("cusparseSnnz_compress", "hipsparseSnnz_compress", "library");
    subst("cusparseSpGEMM_compute", "hipsparseSpGEMM_compute", "library");
    subst("cusparseSpGEMM_copy", "hipsparseSpGEMM_copy", "library");
    subst("cusparseSpGEMM_createDescr", "hipsparseSpGEMM_createDescr", "library");
    subst("cusparseSpGEMM_destroyDescr", "hipsparseSpGEMM_destroyDescr", "library");
    subst("cusparseSpGEMM_workEstimation", "hipsparseSpGEMM_workEstimation", "library");
    subst("cusparseSpGEMMreuse_compute", "hipsparseSpGEMMreuse_compute", "library");
    subst("cusparseSpGEMMreuse_copy", "hipsparseSpGEMMreuse_copy", "library");
    subst("cusparseSpGEMMreuse_nnz", "hipsparseSpGEMMreuse_nnz", "library");
    subst("cusparseSpGEMMreuse_workEstimation", "hipsparseSpGEMMreuse_workEstimation", "library");
    subst("cusparseSpMM", "hipsparseSpMM", "library");
    subst("cusparseSpMM_bufferSize", "hipsparseSpMM_bufferSize", "library");
    subst("cusparseSpMM_preprocess", "hipsparseSpMM_preprocess", "library");
    subst("cusparseSpMV", "hipsparseSpMV", "library");
    subst("cusparseSpMV_bufferSize", "hipsparseSpMV_bufferSize", "library");
    subst("cusparseSpMV_preprocess", "hipsparseSpMV_preprocess", "library");
    subst("cusparseSpMatGetAttribute", "hipsparseSpMatGetAttribute", "library");
    subst("cusparseSpMatGetFormat", "hipsparseSpMatGetFormat", "library");
    subst("cusparseSpMatGetIndexBase", "hipsparseSpMatGetIndexBase", "library");
    subst("cusparseSpMatGetSize", "hipsparseSpMatGetSize", "library");
    subst("cusparseSpMatGetStridedBatch", "hipsparseSpMatGetStridedBatch", "library");
    subst("cusparseSpMatGetValues", "hipsparseSpMatGetValues", "library");
    subst("cusparseSpMatSetAttribute", "hipsparseSpMatSetAttribute", "library");
    subst("cusparseSpMatSetStridedBatch", "hipsparseSpMatSetStridedBatch", "library");
    subst("cusparseSpMatSetValues", "hipsparseSpMatSetValues", "library");
    subst("cusparseSpSM_analysis", "hipsparseSpSM_analysis", "library");
    subst("cusparseSpSM_bufferSize", "hipsparseSpSM_bufferSize", "library");
    subst("cusparseSpSM_createDescr", "hipsparseSpSM_createDescr", "library");
    subst("cusparseSpSM_destroyDescr", "hipsparseSpSM_destroyDescr", "library");
    subst("cusparseSpSM_solve", "hipsparseSpSM_solve", "library");
    subst("cusparseSpSV_analysis", "hipsparseSpSV_analysis", "library");
    subst("cusparseSpSV_bufferSize", "hipsparseSpSV_bufferSize", "library");
    subst("cusparseSpSV_createDescr", "hipsparseSpSV_createDescr", "library");
    subst("cusparseSpSV_destroyDescr", "hipsparseSpSV_destroyDescr", "library");
    subst("cusparseSpSV_solve", "hipsparseSpSV_solve", "library");
    subst("cusparseSpVV", "hipsparseSpVV", "library");
    subst("cusparseSpVV_bufferSize", "hipsparseSpVV_bufferSize", "library");
    subst("cusparseSpVecGet", "hipsparseSpVecGet", "library");
    subst("cusparseSpVecGetIndexBase", "hipsparseSpVecGetIndexBase", "library");
    subst("cusparseSpVecGetValues", "hipsparseSpVecGetValues", "library");
    subst("cusparseSpVecSetValues", "hipsparseSpVecSetValues", "library");
    subst("cusparseSparseToDense", "hipsparseSparseToDense", "library");
    subst("cusparseSparseToDense_bufferSize", "hipsparseSparseToDense_bufferSize", "library");
    subst("cusparseSpruneCsr2csr", "hipsparseSpruneCsr2csr", "library");
    subst("cusparseSpruneCsr2csrByPercentage", "hipsparseSpruneCsr2csrByPercentage", "library");
    subst("cusparseSpruneCsr2csrByPercentage_bufferSizeExt", "hipsparseSpruneCsr2csrByPercentage_bufferSizeExt", "library");
    subst("cusparseSpruneCsr2csrNnz", "hipsparseSpruneCsr2csrNnz", "library");
    subst("cusparseSpruneCsr2csrNnzByPercentage", "hipsparseSpruneCsr2csrNnzByPercentage", "library");
    subst("cusparseSpruneCsr2csr_bufferSizeExt", "hipsparseSpruneCsr2csr_bufferSizeExt", "library");
    subst("cusparseSpruneDense2csr", "hipsparseSpruneDense2csr", "library");
    subst("cusparseSpruneDense2csrByPercentage", "hipsparseSpruneDense2csrByPercentage", "library");
    subst("cusparseSpruneDense2csrByPercentage_bufferSizeExt", "hipsparseSpruneDense2csrByPercentage_bufferSizeExt", "library");
    subst("cusparseSpruneDense2csrNnz", "hipsparseSpruneDense2csrNnz", "library");
    subst("cusparseSpruneDense2csrNnzByPercentage", "hipsparseSpruneDense2csrNnzByPercentage", "library");
    subst("cusparseSpruneDense2csr_bufferSizeExt", "hipsparseSpruneDense2csr_bufferSizeExt", "library");
    subst("cusparseSroti", "hipsparseSroti", "library");
    subst("cusparseSsctr", "hipsparseSsctr", "library");
    subst("cusparseXbsric02_zeroPivot", "hipsparseXbsric02_zeroPivot", "library");
    subst("cusparseXbsrilu02_zeroPivot", "hipsparseXbsrilu02_zeroPivot", "library");
    subst("cusparseXbsrsm2_zeroPivot", "hipsparseXbsrsm2_zeroPivot", "library");
    subst("cusparseXbsrsv2_zeroPivot", "hipsparseXbsrsv2_zeroPivot", "library");
    subst("cusparseXcoo2csr", "hipsparseXcoo2csr", "library");
    subst("cusparseXcoosortByColumn", "hipsparseXcoosortByColumn", "library");
    subst("cusparseXcoosortByRow", "hipsparseXcoosortByRow", "library");
    subst("cusparseXcoosort_bufferSizeExt", "hipsparseXcoosort_bufferSizeExt", "library");
    subst("cusparseXcscsort", "hipsparseXcscsort", "library");
    subst("cusparseXcscsort_bufferSizeExt", "hipsparseXcscsort_bufferSizeExt", "library");
    subst("cusparseXcsr2bsrNnz", "hipsparseXcsr2bsrNnz", "library");
    subst("cusparseXcsr2coo", "hipsparseXcsr2coo", "library");
    subst("cusparseXcsr2gebsrNnz", "hipsparseXcsr2gebsrNnz", "library");
    subst("cusparseXcsrgeam2Nnz", "hipsparseXcsrgeam2Nnz", "library");
    subst("cusparseXcsrgeamNnz", "hipsparseXcsrgeamNnz", "library");
    subst("cusparseXcsrgemm2Nnz", "hipsparseXcsrgemm2Nnz", "library");
    subst("cusparseXcsrgemmNnz", "hipsparseXcsrgemmNnz", "library");
    subst("cusparseXcsric02_zeroPivot", "hipsparseXcsric02_zeroPivot", "library");
    subst("cusparseXcsrilu02_zeroPivot", "hipsparseXcsrilu02_zeroPivot", "library");
    subst("cusparseXcsrsm2_zeroPivot", "hipsparseXcsrsm2_zeroPivot", "library");
    subst("cusparseXcsrsort", "hipsparseXcsrsort", "library");
    subst("cusparseXcsrsort_bufferSizeExt", "hipsparseXcsrsort_bufferSizeExt", "library");
    subst("cusparseXcsrsv2_zeroPivot", "hipsparseXcsrsv2_zeroPivot", "library");
    subst("cusparseXgebsr2gebsrNnz", "hipsparseXgebsr2gebsrNnz", "library");
    subst("cusparseZaxpyi", "hipsparseZaxpyi", "library");
    subst("cusparseZbsr2csr", "hipsparseZbsr2csr", "library");
    subst("cusparseZbsric02", "hipsparseZbsric02", "library");
    subst("cusparseZbsric02_analysis", "hipsparseZbsric02_analysis", "library");
    subst("cusparseZbsric02_bufferSize", "hipsparseZbsric02_bufferSize", "library");
    subst("cusparseZbsrilu02", "hipsparseZbsrilu02", "library");
    subst("cusparseZbsrilu02_analysis", "hipsparseZbsrilu02_analysis", "library");
    subst("cusparseZbsrilu02_bufferSize", "hipsparseZbsrilu02_bufferSize", "library");
    subst("cusparseZbsrilu02_numericBoost", "hipsparseZbsrilu02_numericBoost", "library");
    subst("cusparseZbsrmm", "hipsparseZbsrmm", "library");
    subst("cusparseZbsrmv", "hipsparseZbsrmv", "library");
    subst("cusparseZbsrsm2_analysis", "hipsparseZbsrsm2_analysis", "library");
    subst("cusparseZbsrsm2_bufferSize", "hipsparseZbsrsm2_bufferSize", "library");
    subst("cusparseZbsrsm2_solve", "hipsparseZbsrsm2_solve", "library");
    subst("cusparseZbsrsv2_analysis", "hipsparseZbsrsv2_analysis", "library");
    subst("cusparseZbsrsv2_bufferSize", "hipsparseZbsrsv2_bufferSize", "library");
    subst("cusparseZbsrsv2_bufferSizeExt", "hipsparseZbsrsv2_bufferSizeExt", "library");
    subst("cusparseZbsrsv2_solve", "hipsparseZbsrsv2_solve", "library");
    subst("cusparseZbsrxmv", "hipsparseZbsrxmv", "library");
    subst("cusparseZcsc2dense", "hipsparseZcsc2dense", "library");
    subst("cusparseZcsr2bsr", "hipsparseZcsr2bsr", "library");
    subst("cusparseZcsr2csc", "hipsparseZcsr2csc", "library");
    subst("cusparseZcsr2csr_compress", "hipsparseZcsr2csr_compress", "library");
    subst("cusparseZcsr2csru", "hipsparseZcsr2csru", "library");
    subst("cusparseZcsr2dense", "hipsparseZcsr2dense", "library");
    subst("cusparseZcsr2gebsr", "hipsparseZcsr2gebsr", "library");
    subst("cusparseZcsr2gebsr_bufferSize", "hipsparseZcsr2gebsr_bufferSize", "library");
    subst("cusparseZcsr2hyb", "hipsparseZcsr2hyb", "library");
    subst("cusparseZcsrcolor", "hipsparseZcsrcolor", "library");
    subst("cusparseZcsrgeam", "hipsparseZcsrgeam", "library");
    subst("cusparseZcsrgeam2", "hipsparseZcsrgeam2", "library");
    subst("cusparseZcsrgeam2_bufferSizeExt", "hipsparseZcsrgeam2_bufferSizeExt", "library");
    subst("cusparseZcsrgemm", "hipsparseZcsrgemm", "library");
    subst("cusparseZcsrgemm2", "hipsparseZcsrgemm2", "library");
    subst("cusparseZcsrgemm2_bufferSizeExt", "hipsparseZcsrgemm2_bufferSizeExt", "library");
    subst("cusparseZcsric02", "hipsparseZcsric02", "library");
    subst("cusparseZcsric02_analysis", "hipsparseZcsric02_analysis", "library");
    subst("cusparseZcsric02_bufferSize", "hipsparseZcsric02_bufferSize", "library");
    subst("cusparseZcsric02_bufferSizeExt", "hipsparseZcsric02_bufferSizeExt", "library");
    subst("cusparseZcsrilu02", "hipsparseZcsrilu02", "library");
    subst("cusparseZcsrilu02_analysis", "hipsparseZcsrilu02_analysis", "library");
    subst("cusparseZcsrilu02_bufferSize", "hipsparseZcsrilu02_bufferSize", "library");
    subst("cusparseZcsrilu02_bufferSizeExt", "hipsparseZcsrilu02_bufferSizeExt", "library");
    subst("cusparseZcsrilu02_numericBoost", "hipsparseZcsrilu02_numericBoost", "library");
    subst("cusparseZcsrmm", "hipsparseZcsrmm", "library");
    subst("cusparseZcsrmm2", "hipsparseZcsrmm2", "library");
    subst("cusparseZcsrmv", "hipsparseZcsrmv", "library");
    subst("cusparseZcsrsm2_analysis", "hipsparseZcsrsm2_analysis", "library");
    subst("cusparseZcsrsm2_bufferSizeExt", "hipsparseZcsrsm2_bufferSizeExt", "library");
    subst("cusparseZcsrsm2_solve", "hipsparseZcsrsm2_solve", "library");
    subst("cusparseZcsrsv2_analysis", "hipsparseZcsrsv2_analysis", "library");
    subst("cusparseZcsrsv2_bufferSize", "hipsparseZcsrsv2_bufferSize", "library");
    subst("cusparseZcsrsv2_bufferSizeExt", "hipsparseZcsrsv2_bufferSizeExt", "library");
    subst("cusparseZcsrsv2_solve", "hipsparseZcsrsv2_solve", "library");
    subst("cusparseZcsru2csr", "hipsparseZcsru2csr", "library");
    subst("cusparseZcsru2csr_bufferSizeExt", "hipsparseZcsru2csr_bufferSizeExt", "library");
    subst("cusparseZdense2csc", "hipsparseZdense2csc", "library");
    subst("cusparseZdense2csr", "hipsparseZdense2csr", "library");
    subst("cusparseZdotci", "hipsparseZdotci", "library");
    subst("cusparseZdoti", "hipsparseZdoti", "library");
    subst("cusparseZgebsr2csr", "hipsparseZgebsr2csr", "library");
    subst("cusparseZgebsr2gebsc", "hipsparseZgebsr2gebsc", "library");
    subst("cusparseZgebsr2gebsc_bufferSize", "hipsparseZgebsr2gebsc_bufferSize", "library");
    subst("cusparseZgebsr2gebsr", "hipsparseZgebsr2gebsr", "library");
    subst("cusparseZgebsr2gebsr_bufferSize", "hipsparseZgebsr2gebsr_bufferSize", "library");
    subst("cusparseZgemmi", "hipsparseZgemmi", "library");
    subst("cusparseZgemvi", "hipsparseZgemvi", "library");
    subst("cusparseZgemvi_bufferSize", "hipsparseZgemvi_bufferSize", "library");
    subst("cusparseZgpsvInterleavedBatch", "hipsparseZgpsvInterleavedBatch", "library");
    subst("cusparseZgpsvInterleavedBatch_bufferSizeExt", "hipsparseZgpsvInterleavedBatch_bufferSizeExt", "library");
    subst("cusparseZgthr", "hipsparseZgthr", "library");
    subst("cusparseZgthrz", "hipsparseZgthrz", "library");
    subst("cusparseZgtsv2", "hipsparseZgtsv2", "library");
    subst("cusparseZgtsv2StridedBatch", "hipsparseZgtsv2StridedBatch", "library");
    subst("cusparseZgtsv2StridedBatch_bufferSizeExt", "hipsparseZgtsv2StridedBatch_bufferSizeExt", "library");
    subst("cusparseZgtsv2_bufferSizeExt", "hipsparseZgtsv2_bufferSizeExt", "library");
    subst("cusparseZgtsv2_nopivot", "hipsparseZgtsv2_nopivot", "library");
    subst("cusparseZgtsv2_nopivot_bufferSizeExt", "hipsparseZgtsv2_nopivot_bufferSizeExt", "library");
    subst("cusparseZgtsvInterleavedBatch", "hipsparseZgtsvInterleavedBatch", "library");
    subst("cusparseZgtsvInterleavedBatch_bufferSizeExt", "hipsparseZgtsvInterleavedBatch_bufferSizeExt", "library");
    subst("cusparseZhyb2csr", "hipsparseZhyb2csr", "library");
    subst("cusparseZhybmv", "hipsparseZhybmv", "library");
    subst("cusparseZnnz", "hipsparseZnnz", "library");
    subst("cusparseZnnz_compress", "hipsparseZnnz_compress", "library");
    subst("cusparseZsctr", "hipsparseZsctr", "library");
    subst("cutensorContract", "hiptensorContraction", "library");
    subst("cutensorContraction", "hiptensorContraction", "library");
    subst("cutensorCreate", "hiptensorCreate", "library");
    subst("cutensorDestroy", "hiptensorDestroy", "library");
    subst("cutensorGetCudartVersion", "hiptensorGetHiprtVersion", "library");
    subst("cutensorGetErrorString", "hiptensorGetErrorString", "library");
    subst("cutensorInitTensorDescriptor", "hiptensorInitTensorDescriptor", "library");
    subst("cutensorLoggerForceDisable", "hiptensorLoggerForceDisable", "library");
    subst("cutensorLoggerOpenFile", "hiptensorLoggerOpenFile", "library");
    subst("cutensorLoggerSetCallback", "hiptensorLoggerSetCallback", "library");
    subst("cutensorLoggerSetFile", "hiptensorLoggerSetFile", "library");
    subst("cutensorLoggerSetLevel", "hiptensorLoggerSetLevel", "library");
    subst("cutensorLoggerSetMask", "hiptensorLoggerSetMask", "library");
    subst("cutensorPermutation", "hiptensorPermutation", "library");
    subst("cutensorReduction", "hiptensorReduction", "library");
    subst("nvrtcAddNameExpression", "hiprtcAddNameExpression", "library");
    subst("nvrtcCompileProgram", "hiprtcCompileProgram", "library");
    subst("nvrtcCreateProgram", "hiprtcCreateProgram", "library");
    subst("nvrtcDestroyProgram", "hiprtcDestroyProgram", "library");
    subst("nvrtcGetCUBIN", "hiprtcGetBitcode", "library");
    subst("nvrtcGetCUBINSize", "hiprtcGetBitcodeSize", "library");
    subst("nvrtcGetErrorString", "hiprtcGetErrorString", "library");
    subst("nvrtcGetLoweredName", "hiprtcGetLoweredName", "library");
    subst("nvrtcGetPTX", "hiprtcGetCode", "library");
    subst("nvrtcGetPTXSize", "hiprtcGetCodeSize", "library");
    subst("nvrtcGetProgramLog", "hiprtcGetProgramLog", "library");
    subst("nvrtcGetProgramLogSize", "hiprtcGetProgramLogSize", "library");
    subst("nvrtcVersion", "hiprtcVersion", "library");
    subst("curand", "hiprand", "device_library");
    subst("curand_discrete", "hiprand_discrete", "device_library");
    subst("curand_discrete4", "hiprand_discrete4", "device_library");
    subst("curand_init", "hiprand_init", "device_library");
    subst("curand_log_normal", "hiprand_log_normal", "device_library");
    subst("curand_log_normal2", "hiprand_log_normal2", "device_library");
    subst("curand_log_normal2_double", "hiprand_log_normal2_double", "device_library");
    subst("curand_log_normal4", "hiprand_log_normal4", "device_library");
    subst("curand_log_normal4_double", "hiprand_log_normal4_double", "device_library");
    subst("curand_log_normal_double", "hiprand_log_normal_double", "device_library");
    subst("curand_normal", "hiprand_normal", "device_library");
    subst("curand_normal2", "hiprand_normal2", "device_library");
    subst("curand_normal2_double", "hiprand_normal2_double", "device_library");
    subst("curand_normal4", "hiprand_normal4", "device_library");
    subst("curand_normal4_double", "hiprand_normal4_double", "device_library");
    subst("curand_normal_double", "hiprand_normal_double", "device_library");
    subst("curand_poisson", "hiprand_poisson", "device_library");
    subst("curand_poisson4", "hiprand_poisson4", "device_library");
    subst("curand_uniform", "hiprand_uniform", "device_library");
    subst("curand_uniform2_double", "hiprand_uniform2_double", "device_library");
    subst("curand_uniform4", "hiprand_uniform4", "device_library");
    subst("curand_uniform4_double", "hiprand_uniform4_double", "device_library");
    subst("curand_uniform_double", "hiprand_uniform_double", "device_library");
    subst("__activemask", "__activemask", "device_function");
    subst("__all", "__all", "device_function");
    subst("__all_sync", "__all_sync", "device_function");
    subst("__any", "__any", "device_function");
    subst("__any_sync", "__any_sync", "device_function");
    subst("__assert_fail", "__assert_fail", "device_function");
    subst("__assertfail", "__assertfail", "device_function");
    subst("__ballot", "__ballot", "device_function");
    subst("__ballot_sync", "__ballot_sync", "device_function");
    subst("__bfloat1622float2", "__bfloat1622float2", "device_function");
    subst("__bfloat162bfloat162", "__bfloat162bfloat162", "device_function");
    subst("__bfloat162float", "__bfloat162float", "device_function");
    subst("__bfloat16_as_short", "__bfloat16_as_short", "device_function");
    subst("__bfloat16_as_ushort", "__bfloat16_as_ushort", "device_function");
    subst("__brev", "__brev", "device_function");
    subst("__brevll", "__brevll", "device_function");
    subst("__byte_perm", "__byte_perm", "device_function");
    subst("__clz", "__clz", "device_function");
    subst("__clzll", "__clzll", "device_function");
    subst("__cosf", "__cosf", "device_function");
    subst("__dadd_rn", "__dadd_rn", "device_function");
    subst("__ddiv_rn", "__ddiv_rn", "device_function");
    subst("__dmul_rn", "__dmul_rn", "device_function");
    subst("__double2bfloat16", "__double2bfloat16", "device_function");
    subst("__double2float_rd", "__double2float_rd", "device_function");
    subst("__double2float_rn", "__double2float_rn", "device_function");
    subst("__double2float_ru", "__double2float_ru", "device_function");
    subst("__double2float_rz", "__double2float_rz", "device_function");
    subst("__double2hiint", "__double2hiint", "device_function");
    subst("__double2int_rd", "__double2int_rd", "device_function");
    subst("__double2int_rn", "__double2int_rn", "device_function");
    subst("__double2int_ru", "__double2int_ru", "device_function");
    subst("__double2int_rz", "__double2int_rz", "device_function");
    subst("__double2ll_rd", "__double2ll_rd", "device_function");
    subst("__double2ll_rn", "__double2ll_rn", "device_function");
    subst("__double2ll_ru", "__double2ll_ru", "device_function");
    subst("__double2ll_rz", "__double2ll_rz", "device_function");
    subst("__double2loint", "__double2loint", "device_function");
    subst("__double2uint_rd", "__double2uint_rd", "device_function");
    subst("__double2uint_rn", "__double2uint_rn", "device_function");
    subst("__double2uint_ru", "__double2uint_ru", "device_function");
    subst("__double2uint_rz", "__double2uint_rz", "device_function");
    subst("__double2ull_rd", "__double2ull_rd", "device_function");
    subst("__double2ull_rn", "__double2ull_rn", "device_function");
    subst("__double2ull_ru", "__double2ull_ru", "device_function");
    subst("__double2ull_rz", "__double2ull_rz", "device_function");
    subst("__double_as_longlong", "__double_as_longlong", "device_function");
    subst("__drcp_rn", "__drcp_rn", "device_function");
    subst("__dsqrt_rn", "__dsqrt_rn", "device_function");
    subst("__dsub_rn", "__dsub_rn", "device_function");
    subst("__exp10f", "__exp10f", "device_function");
    subst("__expf", "__expf", "device_function");
    subst("__fadd_rn", "__fadd_rn", "device_function");
    subst("__fdiv_rn", "__fdiv_rn", "device_function");
    subst("__fdividef", "__fdividef", "device_function");
    subst("__ffs", "__ffs", "device_function");
    subst("__ffsll", "__ffsll", "device_function");
    subst("__float22bfloat162_rn", "__float22bfloat162_rn", "device_function");
    subst("__float22half2_rn", "__float22half2_rn", "device_function");
    subst("__float2bfloat16", "__float2bfloat16", "device_function");
    subst("__float2half", "__float2half", "device_function");
    subst("__float2half2_rn", "__float2half2_rn", "device_function");
    subst("__float2half_rd", "__float2half_rd", "device_function");
    subst("__float2half_rn", "__float2half_rn", "device_function");
    subst("__float2half_ru", "__float2half_ru", "device_function");
    subst("__float2half_rz", "__float2half_rz", "device_function");
    subst("__float2int_rd", "__float2int_rd", "device_function");
    subst("__float2int_rn", "__float2int_rn", "device_function");
    subst("__float2int_ru", "__float2int_ru", "device_function");
    subst("__float2int_rz", "__float2int_rz", "device_function");
    subst("__float2ll_rd", "__float2ll_rd", "device_function");
    subst("__float2ll_rn", "__float2ll_rn", "device_function");
    subst("__float2ll_ru", "__float2ll_ru", "device_function");
    subst("__float2ll_rz", "__float2ll_rz", "device_function");
    subst("__float2uint_rd", "__float2uint_rd", "device_function");
    subst("__float2uint_rn", "__float2uint_rn", "device_function");
    subst("__float2uint_ru", "__float2uint_ru", "device_function");
    subst("__float2uint_rz", "__float2uint_rz", "device_function");
    subst("__float2ull_rd", "__float2ull_rd", "device_function");
    subst("__float2ull_rn", "__float2ull_rn", "device_function");
    subst("__float2ull_ru", "__float2ull_ru", "device_function");
    subst("__float2ull_rz", "__float2ull_rz", "device_function");
    subst("__float_as_int", "__float_as_int", "device_function");
    subst("__float_as_uint", "__float_as_uint", "device_function");
    subst("__floats2half2_rn", "__floats2half2_rn", "device_function");
    subst("__fma_rn", "__fma_rn", "device_function");
    subst("__fmaf_rn", "__fmaf_rn", "device_function");
    subst("__fmul_rn", "__fmul_rn", "device_function");
    subst("__frcp_rn", "__frcp_rn", "device_function");
    subst("__frsqrt_rn", "__frsqrt_rn", "device_function");
    subst("__fsqrt_rn", "__fsqrt_rn", "device_function");
    subst("__fsub_rn", "__fsub_rn", "device_function");
    subst("__funnelshift_l", "__funnelshift_l", "device_function");
    subst("__funnelshift_lc", "__funnelshift_lc", "device_function");
    subst("__funnelshift_r", "__funnelshift_r", "device_function");
    subst("__funnelshift_rc", "__funnelshift_rc", "device_function");
    subst("__h2div", "__h2div", "device_function");
    subst("__habs", "__habs", "device_function");
    subst("__habs2", "__habs2", "device_function");
    subst("__hadd", "__hadd", "device_function");
    subst("__hadd2", "__hadd2", "device_function");
    subst("__hadd2_sat", "__hadd2_sat", "device_function");
    subst("__hadd_sat", "__hadd_sat", "device_function");
    subst("__half22float2", "__half22float2", "device_function");
    subst("__half2float", "__half2float", "device_function");
    subst("__half2half2", "__half2half2", "device_function");
    subst("__half2int_rd", "__half2int_rd", "device_function");
    subst("__half2int_rn", "__half2int_rn", "device_function");
    subst("__half2int_ru", "__half2int_ru", "device_function");
    subst("__half2int_rz", "__half2int_rz", "device_function");
    subst("__half2ll_rd", "__half2ll_rd", "device_function");
    subst("__half2ll_rn", "__half2ll_rn", "device_function");
    subst("__half2ll_ru", "__half2ll_ru", "device_function");
    subst("__half2ll_rz", "__half2ll_rz", "device_function");
    subst("__half2short_rd", "__half2short_rd", "device_function");
    subst("__half2short_rn", "__half2short_rn", "device_function");
    subst("__half2short_ru", "__half2short_ru", "device_function");
    subst("__half2short_rz", "__half2short_rz", "device_function");
    subst("__half2uint_rd", "__half2uint_rd", "device_function");
    subst("__half2uint_rn", "__half2uint_rn", "device_function");
    subst("__half2uint_ru", "__half2uint_ru", "device_function");
    subst("__half2uint_rz", "__half2uint_rz", "device_function");
    subst("__half2ull_rd", "__half2ull_rd", "device_function");
    subst("__half2ull_rn", "__half2ull_rn", "device_function");
    subst("__half2ull_ru", "__half2ull_ru", "device_function");
    subst("__half2ull_rz", "__half2ull_rz", "device_function");
    subst("__half2ushort_rd", "__half2ushort_rd", "device_function");
    subst("__half2ushort_rn", "__half2ushort_rn", "device_function");
    subst("__half2ushort_ru", "__half2ushort_ru", "device_function");
    subst("__half2ushort_rz", "__half2ushort_rz", "device_function");
    subst("__half_as_short", "__half_as_short", "device_function");
    subst("__half_as_ushort", "__half_as_ushort", "device_function");
    subst("__halves2bfloat162", "__halves2bfloat162", "device_function");
    subst("__halves2half2", "__halves2half2", "device_function");
    subst("__hbeq2", "__hbeq2", "device_function");
    subst("__hbequ2", "__hbequ2", "device_function");
    subst("__hbge2", "__hbge2", "device_function");
    subst("__hbgeu2", "__hbgeu2", "device_function");
    subst("__hbgt2", "__hbgt2", "device_function");
    subst("__hbgtu2", "__hbgtu2", "device_function");
    subst("__hble2", "__hble2", "device_function");
    subst("__hbleu2", "__hbleu2", "device_function");
    subst("__hblt2", "__hblt2", "device_function");
    subst("__hbltu2", "__hbltu2", "device_function");
    subst("__hbne2", "__hbne2", "device_function");
    subst("__hbneu2", "__hbneu2", "device_function");
    subst("__hdiv", "__hdiv", "device_function");
    subst("__heq", "__heq", "device_function");
    subst("__heq2", "__heq2", "device_function");
    subst("__hequ", "__hequ", "device_function");
    subst("__hequ2", "__hequ2", "device_function");
    subst("__hfma", "__hfma", "device_function");
    subst("__hfma2", "__hfma2", "device_function");
    subst("__hfma2_sat", "__hfma2_sat", "device_function");
    subst("__hfma_sat", "__hfma_sat", "device_function");
    subst("__hge", "__hge", "device_function");
    subst("__hge2", "__hge2", "device_function");
    subst("__hgeu", "__hgeu", "device_function");
    subst("__hgeu2", "__hgeu2", "device_function");
    subst("__hgt", "__hgt", "device_function");
    subst("__hgt2", "__hgt2", "device_function");
    subst("__hgtu", "__hgtu", "device_function");
    subst("__hgtu2", "__hgtu2", "device_function");
    subst("__high2bfloat16", "__high2bfloat16", "device_function");
    subst("__high2bfloat162", "__high2bfloat162", "device_function");
    subst("__high2float", "__high2float", "device_function");
    subst("__high2half", "__high2half", "device_function");
    subst("__high2half2", "__high2half2", "device_function");
    subst("__highs2bfloat162", "__highs2bfloat162", "device_function");
    subst("__highs2half2", "__highs2half2", "device_function");
    subst("__hiloint2double", "__hiloint2double", "device_function");
    subst("__hisinf", "__hisinf", "device_function");
    subst("__hisnan", "__hisnan", "device_function");
    subst("__hisnan2", "__hisnan2", "device_function");
    subst("__hle", "__hle", "device_function");
    subst("__hle2", "__hle2", "device_function");
    subst("__hleu", "__hleu", "device_function");
    subst("__hleu2", "__hleu2", "device_function");
    subst("__hlt", "__hlt", "device_function");
    subst("__hlt2", "__hlt2", "device_function");
    subst("__hltu", "__hltu", "device_function");
    subst("__hltu2", "__hltu2", "device_function");
    subst("__hmax", "__hmax", "device_function");
    subst("__hmax2", "__hmax2", "device_function");
    subst("__hmax_nan", "__hmax_nan", "device_function");
    subst("__hmin", "__hmin", "device_function");
    subst("__hmin2", "__hmin2", "device_function");
    subst("__hmin_nan", "__hmin_nan", "device_function");
    subst("__hmul", "__hmul", "device_function");
    subst("__hmul2", "__hmul2", "device_function");
    subst("__hmul2_sat", "__hmul2_sat", "device_function");
    subst("__hmul_sat", "__hmul_sat", "device_function");
    subst("__hne", "__hne", "device_function");
    subst("__hne2", "__hne2", "device_function");
    subst("__hneg", "__hneg", "device_function");
    subst("__hneg2", "__hneg2", "device_function");
    subst("__hneu", "__hneu", "device_function");
    subst("__hneu2", "__hneu2", "device_function");
    subst("__hsub", "__hsub", "device_function");
    subst("__hsub2", "__hsub2", "device_function");
    subst("__hsub2_sat", "__hsub2_sat", "device_function");
    subst("__hsub_sat", "__hsub_sat", "device_function");
    subst("__int2double_rn", "__int2double_rn", "device_function");
    subst("__int2float_rd", "__int2float_rd", "device_function");
    subst("__int2float_rn", "__int2float_rn", "device_function");
    subst("__int2float_ru", "__int2float_ru", "device_function");
    subst("__int2float_rz", "__int2float_rz", "device_function");
    subst("__int2half_rd", "__int2half_rd", "device_function");
    subst("__int2half_rn", "__int2half_rn", "device_function");
    subst("__int2half_ru", "__int2half_ru", "device_function");
    subst("__int2half_rz", "__int2half_rz", "device_function");
    subst("__int_as_float", "__int_as_float", "device_function");
    subst("__ldca", "__ldca", "device_function");
    subst("__ldcg", "__ldcg", "device_function");
    subst("__ldcs", "__ldcs", "device_function");
    subst("__ldg", "__ldg", "device_function");
    subst("__ll2double_rd", "__ll2double_rd", "device_function");
    subst("__ll2double_rn", "__ll2double_rn", "device_function");
    subst("__ll2double_ru", "__ll2double_ru", "device_function");
    subst("__ll2double_rz", "__ll2double_rz", "device_function");
    subst("__ll2float_rd", "__ll2float_rd", "device_function");
    subst("__ll2float_rn", "__ll2float_rn", "device_function");
    subst("__ll2float_ru", "__ll2float_ru", "device_function");
    subst("__ll2float_rz", "__ll2float_rz", "device_function");
    subst("__ll2half_rd", "__ll2half_rd", "device_function");
    subst("__ll2half_rn", "__ll2half_rn", "device_function");
    subst("__ll2half_ru", "__ll2half_ru", "device_function");
    subst("__ll2half_rz", "__ll2half_rz", "device_function");
    subst("__log10f", "__log10f", "device_function");
    subst("__log2f", "__log2f", "device_function");
    subst("__logf", "__logf", "device_function");
    subst("__longlong_as_double", "__longlong_as_double", "device_function");
    subst("__low2bfloat16", "__low2bfloat16", "device_function");
    subst("__low2bfloat162", "__low2bfloat162", "device_function");
    subst("__low2float", "__low2float", "device_function");
    subst("__low2half", "__low2half", "device_function");
    subst("__low2half2", "__low2half2", "device_function");
    subst("__lowhigh2highlow", "__lowhigh2highlow", "device_function");
    subst("__lows2bfloat162", "__lows2bfloat162", "device_function");
    subst("__lows2half2", "__lows2half2", "device_function");
    subst("__match_all_sync", "__match_all_sync", "device_function");
    subst("__match_any_sync", "__match_any_sync", "device_function");
    subst("__mul24", "__mul24", "device_function");
    subst("__mul64hi", "__mul64hi", "device_function");
    subst("__mulhi", "__mulhi", "device_function");
    subst("__nv_cvt_bfloat16raw2_to_fp8x2", "__hip_cvt_bfloat16raw2_to_fp8x2", "device_function");
    subst("__nv_cvt_bfloat16raw_to_fp8", "__hip_cvt_bfloat16raw_to_fp8", "device_function");
    subst("__nv_cvt_double2_to_fp8x2", "__hip_cvt_double2_to_fp8x2", "device_function");
    subst("__nv_cvt_double_to_fp8", "__hip_cvt_double_to_fp8", "device_function");
    subst("__nv_cvt_float2_to_fp8x2", "__hip_cvt_float2_to_fp8x2", "device_function");
    subst("__nv_cvt_float_to_fp8", "__hip_cvt_float_to_fp8", "device_function");
    subst("__nv_cvt_fp8_to_halfraw", "__hip_cvt_fp8_to_halfraw", "device_function");
    subst("__nv_cvt_fp8x2_to_halfraw2", "__hip_cvt_fp8x2_to_halfraw2", "device_function");
    subst("__nv_cvt_halfraw2_to_fp8x2", "__hip_cvt_halfraw2_to_fp8x2", "device_function");
    subst("__nv_cvt_halfraw_to_fp8", "__hip_cvt_halfraw_to_fp8", "device_function");
    subst("__popc", "__popc", "device_function");
    subst("__popcll", "__popcll", "device_function");
    subst("__powf", "__powf", "device_function");
    subst("__rhadd", "__rhadd", "device_function");
    subst("__sad", "__sad", "device_function");
    subst("__saturatef", "__saturatef", "device_function");
    subst("__shfl", "__shfl", "device_function");
    subst("__shfl_down", "__shfl_down", "device_function");
    subst("__shfl_down_sync", "__shfl_down_sync", "device_function");
    subst("__shfl_sync", "__shfl_sync", "device_function");
    subst("__shfl_up", "__shfl_up", "device_function");
    subst("__shfl_up_sync", "__shfl_up_sync", "device_function");
    subst("__shfl_xor", "__shfl_xor", "device_function");
    subst("__shfl_xor_sync", "__shfl_xor_sync", "device_function");
    subst("__short2half_rd", "__short2half_rd", "device_function");
    subst("__short2half_rn", "__short2half_rn", "device_function");
    subst("__short2half_ru", "__short2half_ru", "device_function");
    subst("__short2half_rz", "__short2half_rz", "device_function");
    subst("__short_as_bfloat16", "__short_as_bfloat16", "device_function");
    subst("__short_as_half", "__short_as_half", "device_function");
    subst("__sincosf", "__sincosf", "device_function");
    subst("__sinf", "__sinf", "device_function");
    subst("__syncthreads", "__syncthreads", "device_function");
    subst("__syncthreads_and", "__syncthreads_and", "device_function");
    subst("__syncthreads_count", "__syncthreads_count", "device_function");
    subst("__syncthreads_or", "__syncthreads_or", "device_function");
    subst("__tanf", "__tanf", "device_function");
    subst("__threadfence", "__threadfence", "device_function");
    subst("__threadfence_block", "__threadfence_block", "device_function");
    subst("__threadfence_system", "__threadfence_system", "device_function");
    subst("__uhadd", "__uhadd", "device_function");
    subst("__uint2double_rn", "__uint2double_rn", "device_function");
    subst("__uint2float_rd", "__uint2float_rd", "device_function");
    subst("__uint2float_rn", "__uint2float_rn", "device_function");
    subst("__uint2float_ru", "__uint2float_ru", "device_function");
    subst("__uint2float_rz", "__uint2float_rz", "device_function");
    subst("__uint2half_rd", "__uint2half_rd", "device_function");
    subst("__uint2half_rn", "__uint2half_rn", "device_function");
    subst("__uint2half_ru", "__uint2half_ru", "device_function");
    subst("__uint2half_rz", "__uint2half_rz", "device_function");
    subst("__uint_as_float", "__uint_as_float", "device_function");
    subst("__ull2double_rd", "__ull2double_rd", "device_function");
    subst("__ull2double_rn", "__ull2double_rn", "device_function");
    subst("__ull2double_ru", "__ull2double_ru", "device_function");
    subst("__ull2double_rz", "__ull2double_rz", "device_function");
    subst("__ull2float_rd", "__ull2float_rd", "device_function");
    subst("__ull2float_rn", "__ull2float_rn", "device_function");
    subst("__ull2float_ru", "__ull2float_ru", "device_function");
    subst("__ull2float_rz", "__ull2float_rz", "device_function");
    subst("__ull2half_rd", "__ull2half_rd", "device_function");
    subst("__ull2half_rn", "__ull2half_rn", "device_function");
    subst("__ull2half_ru", "__ull2half_ru", "device_function");
    subst("__ull2half_rz", "__ull2half_rz", "device_function");
    subst("__umul24", "__umul24", "device_function");
    subst("__umul64hi", "__umul64hi", "device_function");
    subst("__umulhi", "__umulhi", "device_function");
    subst("__urhadd", "__urhadd", "device_function");
    subst("__usad", "__usad", "device_function");
    subst("__ushort2half_rd", "__ushort2half_rd", "device_function");
    subst("__ushort2half_rn", "__ushort2half_rn", "device_function");
    subst("__ushort2half_ru", "__ushort2half_ru", "device_function");
    subst("__ushort2half_rz", "__ushort2half_rz", "device_function");
    subst("__ushort_as_bfloat16", "__ushort_as_bfloat16", "device_function");
    subst("__ushort_as_half", "__ushort_as_half", "device_function");
    subst("abs", "abs", "device_function");
    subst("acos", "acos", "device_function");
    subst("acosf", "acosf", "device_function");
    subst("acosh", "acosh", "device_function");
    subst("acoshf", "acoshf", "device_function");
    subst("asin", "asin", "device_function");
    subst("asinf", "asinf", "device_function");
    subst("asinh", "asinh", "device_function");
    subst("asinhf", "asinhf", "device_function");
    subst("atan", "atan", "device_function");
    subst("atan2", "atan2", "device_function");
    subst("atan2f", "atan2f", "device_function");
    subst("atanf", "atanf", "device_function");
    subst("atanh", "atanh", "device_function");
    subst("atanhf", "atanhf", "device_function");
    subst("atomicAdd", "atomicAdd", "device_function");
    subst("atomicAdd_system", "atomicAdd_system", "device_function");
    subst("atomicAnd", "atomicAnd", "device_function");
    subst("atomicAnd_system", "atomicAnd_system", "device_function");
    subst("atomicCAS", "atomicCAS", "device_function");
    subst("atomicCAS_system", "atomicCAS_system", "device_function");
    subst("atomicDec", "atomicDec", "device_function");
    subst("atomicExch", "atomicExch", "device_function");
    subst("atomicExch_system", "atomicExch_system", "device_function");
    subst("atomicInc", "atomicInc", "device_function");
    subst("atomicMax", "atomicMax", "device_function");
    subst("atomicMax_system", "atomicMax_system", "device_function");
    subst("atomicMin", "atomicMin", "device_function");
    subst("atomicMin_system", "atomicMin_system", "device_function");
    subst("atomicOr", "atomicOr", "device_function");
    subst("atomicOr_system", "atomicOr_system", "device_function");
    subst("atomicSub", "atomicSub", "device_function");
    subst("atomicSub_system", "atomicSub_system", "device_function");
    subst("atomicXor", "atomicXor", "device_function");
    subst("atomicXor_system", "atomicXor_system", "device_function");
    subst("cbrt", "cbrt", "device_function");
    subst("cbrtf", "cbrtf", "device_function");
    subst("ceil", "ceil", "device_function");
    subst("ceilf", "ceilf", "device_function");
    subst("clock", "clock", "device_function");
    subst("clock64", "clock64", "device_function");
    subst("copysign", "copysign", "device_function");
    subst("copysignf", "copysignf", "device_function");
    subst("cos", "cos", "device_function");
    subst("cosf", "cosf", "device_function");
    subst("cosh", "cosh", "device_function");
    subst("coshf", "coshf", "device_function");
    subst("cospi", "cospi", "device_function");
    subst("cospif", "cospif", "device_function");
    subst("cyl_bessel_i0", "cyl_bessel_i0", "device_function");
    subst("cyl_bessel_i0f", "cyl_bessel_i0f", "device_function");
    subst("cyl_bessel_i1", "cyl_bessel_i1", "device_function");
    subst("cyl_bessel_i1f", "cyl_bessel_i1f", "device_function");
    subst("erf", "erf", "device_function");
    subst("erfc", "erfc", "device_function");
    subst("erfcf", "erfcf", "device_function");
    subst("erfcinv", "erfcinv", "device_function");
    subst("erfcinvf", "erfcinvf", "device_function");
    subst("erfcx", "erfcx", "device_function");
    subst("erfcxf", "erfcxf", "device_function");
    subst("erff", "erff", "device_function");
    subst("erfinv", "erfinv", "device_function");
    subst("erfinvf", "erfinvf", "device_function");
    subst("exp", "exp", "device_function");
    subst("exp10", "exp10", "device_function");
    subst("exp10f", "exp10f", "device_function");
    subst("exp2", "exp2", "device_function");
    subst("exp2f", "exp2f", "device_function");
    subst("expf", "expf", "device_function");
    subst("expm1", "expm1", "device_function");
    subst("expm1f", "expm1f", "device_function");
    subst("fabs", "fabs", "device_function");
    subst("fabsf", "fabsf", "device_function");
    subst("fdim", "fdim", "device_function");
    subst("fdimf", "fdimf", "device_function");
    subst("fdividef", "fdividef", "device_function");
    subst("floor", "floor", "device_function");
    subst("floorf", "floorf", "device_function");
    subst("fma", "fma", "device_function");
    subst("fmaf", "fmaf", "device_function");
    subst("fmax", "fmax", "device_function");
    subst("fmaxf", "fmaxf", "device_function");
    subst("fmin", "fmin", "device_function");
    subst("fminf", "fminf", "device_function");
    subst("fmod", "fmod", "device_function");
    subst("fmodf", "fmodf", "device_function");
    subst("frexp", "frexp", "device_function");
    subst("frexpf", "frexpf", "device_function");
    subst("h2ceil", "h2ceil", "device_function");
    subst("h2cos", "h2cos", "device_function");
    subst("h2exp", "h2exp", "device_function");
    subst("h2exp10", "h2exp10", "device_function");
    subst("h2exp2", "h2exp2", "device_function");
    subst("h2floor", "h2floor", "device_function");
    subst("h2log", "h2log", "device_function");
    subst("h2log10", "h2log10", "device_function");
    subst("h2log2", "h2log2", "device_function");
    subst("h2rcp", "h2rcp", "device_function");
    subst("h2rint", "h2rint", "device_function");
    subst("h2rsqrt", "h2rsqrt", "device_function");
    subst("h2sin", "h2sin", "device_function");
    subst("h2sqrt", "h2sqrt", "device_function");
    subst("h2trunc", "h2trunc", "device_function");
    subst("hceil", "hceil", "device_function");
    subst("hcos", "hcos", "device_function");
    subst("hexp", "hexp", "device_function");
    subst("hexp10", "hexp10", "device_function");
    subst("hexp2", "hexp2", "device_function");
    subst("hfloor", "hfloor", "device_function");
    subst("hlog", "hlog", "device_function");
    subst("hlog10", "hlog10", "device_function");
    subst("hlog2", "hlog2", "device_function");
    subst("hrcp", "hrcp", "device_function");
    subst("hrint", "hrint", "device_function");
    subst("hrsqrt", "hrsqrt", "device_function");
    subst("hsin", "hsin", "device_function");
    subst("hsqrt", "hsqrt", "device_function");
    subst("htrunc", "htrunc", "device_function");
    subst("hypot", "hypot", "device_function");
    subst("hypotf", "hypotf", "device_function");
    subst("ilogb", "ilogb", "device_function");
    subst("ilogbf", "ilogbf", "device_function");
    subst("isfinite", "isfinite", "device_function");
    subst("isinf", "isinf", "device_function");
    subst("isnan", "isnan", "device_function");
    subst("j0", "j0", "device_function");
    subst("j0f", "j0f", "device_function");
    subst("j1", "j1", "device_function");
    subst("j1f", "j1f", "device_function");
    subst("jn", "jn", "device_function");
    subst("jnf", "jnf", "device_function");
    subst("labs", "labs", "device_function");
    subst("ldexp", "ldexp", "device_function");
    subst("ldexpf", "ldexpf", "device_function");
    subst("lgamma", "lgamma", "device_function");
    subst("lgammaf", "lgammaf", "device_function");
    subst("llabs", "llabs", "device_function");
    subst("llrint", "llrint", "device_function");
    subst("llrintf", "llrintf", "device_function");
    subst("llround", "llround", "device_function");
    subst("llroundf", "llroundf", "device_function");
    subst("log", "log", "device_function");
    subst("log10", "log10", "device_function");
    subst("log10f", "log10f", "device_function");
    subst("log1p", "log1p", "device_function");
    subst("log1pf", "log1pf", "device_function");
    subst("log2", "log2", "device_function");
    subst("log2f", "log2f", "device_function");
    subst("logb", "logb", "device_function");
    subst("logbf", "logbf", "device_function");
    subst("logf", "logf", "device_function");
    subst("lrint", "lrint", "device_function");
    subst("lrintf", "lrintf", "device_function");
    subst("lround", "lround", "device_function");
    subst("lroundf", "lroundf", "device_function");
    subst("make_half2", "make_half2", "device_function");
    subst("max", "max", "device_function");
    subst("min", "min", "device_function");
    subst("modf", "modf", "device_function");
    subst("modff", "modff", "device_function");
    subst("nan", "nan", "device_function");
    subst("nanf", "nanf", "device_function");
    subst("nearbyint", "nearbyint", "device_function");
    subst("nearbyintf", "nearbyintf", "device_function");
    subst("nextafter", "nextafter", "device_function");
    subst("nextafterf", "nextafterf", "device_function");
    subst("norm", "norm", "device_function");
    subst("norm3d", "norm3d", "device_function");
    subst("norm3df", "norm3df", "device_function");
    subst("norm4d", "norm4d", "device_function");
    subst("norm4df", "norm4df", "device_function");
    subst("normcdf", "normcdf", "device_function");
    subst("normcdff", "normcdff", "device_function");
    subst("normcdfinv", "normcdfinv", "device_function");
    subst("normcdfinvf", "normcdfinvf", "device_function");
    subst("normf", "normf", "device_function");
    subst("pow", "pow", "device_function");
    subst("powf", "powf", "device_function");
    subst("rcbrt", "rcbrt", "device_function");
    subst("rcbrtf", "rcbrtf", "device_function");
    subst("remainder", "remainder", "device_function");
    subst("remainderf", "remainderf", "device_function");
    subst("remquo", "remquo", "device_function");
    subst("remquof", "remquof", "device_function");
    subst("rhypot", "rhypot", "device_function");
    subst("rhypotf", "rhypotf", "device_function");
    subst("rint", "rint", "device_function");
    subst("rintf", "rintf", "device_function");
    subst("rnorm", "rnorm", "device_function");
    subst("rnorm3d", "rnorm3d", "device_function");
    subst("rnorm3df", "rnorm3df", "device_function");
    subst("rnorm4d", "rnorm4d", "device_function");
    subst("rnorm4df", "rnorm4df", "device_function");
    subst("rnormf", "rnormf", "device_function");
    subst("round", "round", "device_function");
    subst("roundf", "roundf", "device_function");
    subst("rsqrt", "rsqrt", "device_function");
    subst("rsqrtf", "rsqrtf", "device_function");
    subst("scalbln", "scalbln", "device_function");
    subst("scalblnf", "scalblnf", "device_function");
    subst("scalbn", "scalbn", "device_function");
    subst("scalbnf", "scalbnf", "device_function");
    subst("signbit", "signbit", "device_function");
    subst("sin", "sin", "device_function");
    subst("sincos", "sincos", "device_function");
    subst("sincosf", "sincosf", "device_function");
    subst("sincospi", "sincospi", "device_function");
    subst("sincospif", "sincospif", "device_function");
    subst("sinf", "sinf", "device_function");
    subst("sinh", "sinh", "device_function");
    subst("sinhf", "sinhf", "device_function");
    subst("sinpi", "sinpi", "device_function");
    subst("sinpif", "sinpif", "device_function");
    subst("sqrt", "sqrt", "device_function");
    subst("sqrtf", "sqrtf", "device_function");
    subst("tan", "tan", "device_function");
    subst("tanf", "tanf", "device_function");
    subst("tanh", "tanh", "device_function");
    subst("tanhf", "tanhf", "device_function");
    subst("tgamma", "tgamma", "device_function");
    subst("tgammaf", "tgammaf", "device_function");
    subst("trunc", "trunc", "device_function");
    subst("truncf", "truncf", "device_function");
    subst("y0", "y0", "device_function");
    subst("y0f", "y0f", "device_function");
    subst("y1", "y1", "device_function");
    subst("y1f", "y1f", "device_function");
    subst("yn", "yn", "device_function");
    subst("ynf", "ynf", "device_function");
    subst("__half", "__half", "device_type");
    subst("__half2", "__half2", "device_type");
    subst("__half2_raw", "__half2_raw", "device_type");
    subst("__half_raw", "__half_raw", "device_type");
    subst("__nv_bfloat16", "__hip_bfloat16", "device_type");
    subst("__nv_bfloat162", "__hip_bfloat162", "device_type");
    subst("__nv_bfloat162_raw", "__hip_bfloat162_raw", "device_type");
    subst("__nv_bfloat16_raw", "__hip_bfloat16_raw", "device_type");
    subst("__nv_fp8_e4m3", "__hip_fp8_e4m3_fnuz", "device_type");
    subst("__nv_fp8_e5m2", "__hip_fp8_e5m2_fnuz", "device_type");
    subst("__nv_fp8_interpretation_t", "__hip_fp8_interpretation_t", "device_type");
    subst("__nv_fp8_storage_t", "__hip_fp8_storage_t", "device_type");
    subst("__nv_fp8x2_e4m3", "__hip_fp8x2_e4m3_fnuz", "device_type");
    subst("__nv_fp8x2_e5m2", "__hip_fp8x2_e5m2_fnuz", "device_type");
    subst("__nv_fp8x2_storage_t", "__hip_fp8x2_storage_t", "device_type");
    subst("__nv_fp8x4_e4m3", "__hip_fp8x4_e4m3_fnuz", "device_type");
    subst("__nv_fp8x4_storage_t", "__hip_fp8x4_storage_t", "device_type");
    subst("__nv_saturation_t", "__hip_saturation_t", "device_type");
    subst("nv_bfloat16", "hip_bfloat16", "device_type");
    subst("caffe2\/core\/common_cudnn.h", "caffe2\/core\/hip\/common_miopen.h", "include");
    subst("caffe2\/operators\/spatial_batch_norm_op.h", "caffe2\/operators\/hip\/spatial_batch_norm_op_miopen.hip", "include");
    subst("channel_descriptor.h", "hip\/channel_descriptor.h", "include");
    subst("cooperative_groups.h", "hip\/hip_cooperative_groups.h", "include");
    subst("cublasLt.h", "hipblaslt.h", "include");
    subst("cublas_api.h", "hipblas.h", "include");
    subst("cuda_fp16.h", "hip\/hip_fp16.h", "include");
    subst("cuda_fp8.h", "hip\/hip_fp8.h", "include");
    subst("cuda_profiler_api.h", "hip\/hip_runtime_api.h", "include");
    subst("cuda_runtime_api.h", "hip\/hip_runtime_api.h", "include");
    subst("cuda_texture_types.h", "hip\/hip_texture_types.h", "include");
    subst("cufftXt.h", "hipfft\/hipfftXt.h", "include");
    subst("curand_discrete.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_discrete2.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_globals.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_kernel.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_lognormal.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_mrg32k3a.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_mtgp32.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_mtgp32_host.h", "hiprand\/hiprand_mtgp32_host.h", "include");
    subst("curand_mtgp32_kernel.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_mtgp32dc_p_11213.h", "rocrand\/rocrand_mtgp32_11213.h", "include");
    subst("curand_normal.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_normal_static.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_philox4x32_x.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_poisson.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_precalc.h", "hiprand\/hiprand_kernel.h", "include");
    subst("curand_uniform.h", "hiprand\/hiprand_kernel.h", "include");
    subst("cutensorMg.h", "hiptensor.h", "include");
    subst("device_functions.h", "hip\/device_functions.h", "include");
    subst("device_launch_parameters.h", "", "include");
    subst("driver_types.h", "hip\/driver_types.h", "include");
    subst("library_types.h", "hip\/library_types.h", "include");
    subst("math_constants.h", "hip\/hip_math_constants.h", "include");
    subst("texture_fetch_functions.h", "", "include");
    subst("vector_types.h", "hip\/hip_vector_types.h", "include");
    subst("cuComplex.h", "hip\/hip_complex.h", "include_cuda_main_header");
    subst("cub\/cub.cuh", "hipcub\/hipcub.hpp", "include_cuda_main_header");
    subst("cublas.h", "hipblas.h", "include_cuda_main_header");
    subst("cuda.h", "hip\/hip_runtime.h", "include_cuda_main_header");
    subst("cuda_runtime.h", "hip\/hip_runtime.h", "include_cuda_main_header");
    subst("cudnn.h", "hipDNN.h", "include_cuda_main_header");
    subst("cufft.h", "hipfft\/hipfft.h", "include_cuda_main_header");
    subst("curand.h", "hiprand\/hiprand.h", "include_cuda_main_header");
    subst("cusolverDn.h", "hipsolver.h", "include_cuda_main_header");
    subst("cusolverMg.h", "hipsolver.h", "include_cuda_main_header");
    subst("cusolverRf.h", "hipsolver.h", "include_cuda_main_header");
    subst("cusolverSp.h", "hipsolver.h", "include_cuda_main_header");
    subst("cusolverSp_LOWLEVEL_PREVIEW.h", "hipsolver.h", "include_cuda_main_header");
    subst("cusolver_common.h", "hipsolver.h", "include_cuda_main_header");
    subst("cusparse.h", "hipsparse.h", "include_cuda_main_header");
    subst("cutensor.h", "hiptensor.h", "include_cuda_main_header");
    subst("nvrtc.h", "hip\/hiprtc.h", "include_cuda_main_header");
    subst("cublas_v2.h", "hipblas.h", "include_cuda_main_header_v2");
    subst("cusparse_v2.h", "hipsparse.h", "include_cuda_main_header_v2");
    subst("CUDAContext", "HIPContext", "type");
    subst("CUDA_ARRAY3D_DESCRIPTOR", "HIP_ARRAY3D_DESCRIPTOR", "type");
    subst("CUDA_ARRAY3D_DESCRIPTOR_st", "HIP_ARRAY3D_DESCRIPTOR", "type");
    subst("CUDA_ARRAY3D_DESCRIPTOR_v2", "HIP_ARRAY3D_DESCRIPTOR", "type");
    subst("CUDA_ARRAY_DESCRIPTOR", "HIP_ARRAY_DESCRIPTOR", "type");
    subst("CUDA_ARRAY_DESCRIPTOR_st", "HIP_ARRAY_DESCRIPTOR", "type");
    subst("CUDA_ARRAY_DESCRIPTOR_v1", "HIP_ARRAY_DESCRIPTOR", "type");
    subst("CUDA_ARRAY_DESCRIPTOR_v1_st", "HIP_ARRAY_DESCRIPTOR", "type");
    subst("CUDA_ARRAY_DESCRIPTOR_v2", "HIP_ARRAY_DESCRIPTOR", "type");
    subst("CUDA_CHILD_GRAPH_NODE_PARAMS", "hipChildGraphNodeParams", "type");
    subst("CUDA_CHILD_GRAPH_NODE_PARAMS_st", "hipChildGraphNodeParams", "type");
    subst("CUDA_EVENT_RECORD_NODE_PARAMS", "hipEventRecordNodeParams", "type");
    subst("CUDA_EVENT_RECORD_NODE_PARAMS_st", "hipEventRecordNodeParams", "type");
    subst("CUDA_EVENT_WAIT_NODE_PARAMS", "hipEventWaitNodeParams", "type");
    subst("CUDA_EVENT_WAIT_NODE_PARAMS_st", "hipEventWaitNodeParams", "type");
    subst("CUDA_EXTERNAL_MEMORY_BUFFER_DESC", "hipExternalMemoryBufferDesc", "type");
    subst("CUDA_EXTERNAL_MEMORY_BUFFER_DESC_st", "hipExternalMemoryBufferDesc_st", "type");
    subst("CUDA_EXTERNAL_MEMORY_BUFFER_DESC_v1", "hipExternalMemoryBufferDesc", "type");
    subst("CUDA_EXTERNAL_MEMORY_HANDLE_DESC", "hipExternalMemoryHandleDesc", "type");
    subst("CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st", "hipExternalMemoryHandleDesc_st", "type");
    subst("CUDA_EXTERNAL_MEMORY_HANDLE_DESC_v1", "hipExternalMemoryHandleDesc", "type");
    subst("CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC", "hipExternalSemaphoreHandleDesc", "type");
    subst("CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st", "hipExternalSemaphoreHandleDesc_st", "type");
    subst("CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_v1", "hipExternalSemaphoreHandleDesc", "type");
    subst("CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS", "hipExternalSemaphoreSignalParams", "type");
    subst("CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st", "hipExternalSemaphoreSignalParams_st", "type");
    subst("CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_v1", "hipExternalSemaphoreSignalParams", "type");
    subst("CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS", "hipExternalSemaphoreWaitParams", "type");
    subst("CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st", "hipExternalSemaphoreWaitParams_st", "type");
    subst("CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_v1", "hipExternalSemaphoreWaitParams", "type");
    subst("CUDA_EXT_SEM_SIGNAL_NODE_PARAMS", "hipExternalSemaphoreSignalNodeParams", "type");
    subst("CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_st", "hipExternalSemaphoreSignalNodeParams", "type");
    subst("CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v1", "hipExternalSemaphoreSignalNodeParams", "type");
    subst("CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v2", "hipExternalSemaphoreSignalNodeParams", "type");
    subst("CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v2_st", "hipExternalSemaphoreSignalNodeParams", "type");
    subst("CUDA_EXT_SEM_WAIT_NODE_PARAMS", "hipExternalSemaphoreWaitNodeParams", "type");
    subst("CUDA_EXT_SEM_WAIT_NODE_PARAMS_st", "hipExternalSemaphoreWaitNodeParams", "type");
    subst("CUDA_EXT_SEM_WAIT_NODE_PARAMS_v1", "hipExternalSemaphoreWaitNodeParams", "type");
    subst("CUDA_EXT_SEM_WAIT_NODE_PARAMS_v2", "hipExternalSemaphoreWaitNodeParams", "type");
    subst("CUDA_EXT_SEM_WAIT_NODE_PARAMS_v2_st", "hipExternalSemaphoreWaitNodeParams", "type");
    subst("CUDA_GRAPH_INSTANTIATE_PARAMS", "hipGraphInstantiateParams", "type");
    subst("CUDA_GRAPH_INSTANTIATE_PARAMS_st", "hipGraphInstantiateParams", "type");
    subst("CUDA_HOST_NODE_PARAMS", "hipHostNodeParams", "type");
    subst("CUDA_HOST_NODE_PARAMS_st", "hipHostNodeParams", "type");
    subst("CUDA_HOST_NODE_PARAMS_v1", "hipHostNodeParams", "type");
    subst("CUDA_KERNEL_NODE_PARAMS", "hipKernelNodeParams", "type");
    subst("CUDA_KERNEL_NODE_PARAMS_st", "hipKernelNodeParams", "type");
    subst("CUDA_KERNEL_NODE_PARAMS_v1", "hipKernelNodeParams", "type");
    subst("CUDA_LAUNCH_PARAMS", "hipFunctionLaunchParams", "type");
    subst("CUDA_LAUNCH_PARAMS_st", "hipFunctionLaunchParams_t", "type");
    subst("CUDA_LAUNCH_PARAMS_v1", "hipFunctionLaunchParams", "type");
    subst("CUDA_MEMCPY2D", "hip_Memcpy2D", "type");
    subst("CUDA_MEMCPY2D_st", "hip_Memcpy2D", "type");
    subst("CUDA_MEMCPY2D_v1", "hip_Memcpy2D", "type");
    subst("CUDA_MEMCPY2D_v1_st", "hip_Memcpy2D", "type");
    subst("CUDA_MEMCPY2D_v2", "hip_Memcpy2D", "type");
    subst("CUDA_MEMCPY3D", "HIP_MEMCPY3D", "type");
    subst("CUDA_MEMCPY3D_st", "HIP_MEMCPY3D", "type");
    subst("CUDA_MEMCPY3D_v1", "HIP_MEMCPY3D", "type");
    subst("CUDA_MEMCPY3D_v1_st", "HIP_MEMCPY3D", "type");
    subst("CUDA_MEMCPY3D_v2", "HIP_MEMCPY3D", "type");
    subst("CUDA_MEMCPY_NODE_PARAMS", "hipMemcpyNodeParams", "type");
    subst("CUDA_MEMCPY_NODE_PARAMS_st", "hipMemcpyNodeParams", "type");
    subst("CUDA_MEMSET_NODE_PARAMS", "HIP_MEMSET_NODE_PARAMS", "type");
    subst("CUDA_MEMSET_NODE_PARAMS_st", "HIP_MEMSET_NODE_PARAMS", "type");
    subst("CUDA_MEMSET_NODE_PARAMS_v1", "HIP_MEMSET_NODE_PARAMS", "type");
    subst("CUDA_MEM_ALLOC_NODE_PARAMS", "hipMemAllocNodeParams", "type");
    subst("CUDA_MEM_ALLOC_NODE_PARAMS_st", "hipMemAllocNodeParams", "type");
    subst("CUDA_MEM_ALLOC_NODE_PARAMS_v1", "hipMemAllocNodeParams", "type");
    subst("CUDA_MEM_ALLOC_NODE_PARAMS_v1_st", "hipMemAllocNodeParams", "type");
    subst("CUDA_MEM_FREE_NODE_PARAMS", "hipMemFreeNodeParams", "type");
    subst("CUDA_MEM_FREE_NODE_PARAMS_st", "hipMemFreeNodeParams", "type");
    subst("CUDA_RESOURCE_DESC", "HIP_RESOURCE_DESC", "type");
    subst("CUDA_RESOURCE_DESC_st", "HIP_RESOURCE_DESC_st", "type");
    subst("CUDA_RESOURCE_DESC_v1", "HIP_RESOURCE_DESC", "type");
    subst("CUDA_RESOURCE_VIEW_DESC", "HIP_RESOURCE_VIEW_DESC", "type");
    subst("CUDA_RESOURCE_VIEW_DESC_st", "HIP_RESOURCE_VIEW_DESC_st", "type");
    subst("CUDA_RESOURCE_VIEW_DESC_v1", "HIP_RESOURCE_VIEW_DESC", "type");
    subst("CUDA_TEXTURE_DESC", "HIP_TEXTURE_DESC", "type");
    subst("CUDA_TEXTURE_DESC_st", "HIP_TEXTURE_DESC_st", "type");
    subst("CUDA_TEXTURE_DESC_v1", "HIP_TEXTURE_DESC", "type");
    subst("CUGLDeviceList", "hipGLDeviceList", "type");
    subst("CUGLDeviceList_enum", "hipGLDeviceList", "type");
    subst("CUGPUDirectRDMAWritesOrdering", "hipGPUDirectRDMAWritesOrdering", "type");
    subst("CUGPUDirectRDMAWritesOrdering_enum", "hipGPUDirectRDMAWritesOrdering", "type");
    subst("CUaccessPolicyWindow", "hipAccessPolicyWindow", "type");
    subst("CUaccessPolicyWindow_st", "hipAccessPolicyWindow", "type");
    subst("CUaccessProperty", "hipAccessProperty", "type");
    subst("CUaccessProperty_enum", "hipAccessProperty", "type");
    subst("CUaddress_mode", "HIPaddress_mode", "type");
    subst("CUaddress_mode_enum", "HIPaddress_mode_enum", "type");
    subst("CUarray", "hipArray_t", "type");
    subst("CUarrayMapInfo", "hipArrayMapInfo", "type");
    subst("CUarrayMapInfo_st", "hipArrayMapInfo", "type");
    subst("CUarrayMapInfo_v1", "hipArrayMapInfo", "type");
    subst("CUarraySparseSubresourceType", "hipArraySparseSubresourceType", "type");
    subst("CUarraySparseSubresourceType_enum", "hipArraySparseSubresourceType", "type");
    subst("CUarray_format", "hipArray_Format", "type");
    subst("CUarray_format_enum", "hipArray_Format", "type");
    subst("CUarray_st", "hipArray", "type");
    subst("CUcomputemode", "hipComputeMode", "type");
    subst("CUcomputemode_enum", "hipComputeMode", "type");
    subst("CUcontext", "hipCtx_t", "type");
    subst("CUctx_st", "ihipCtx_t", "type");
    subst("CUdevice", "hipDevice_t", "type");
    subst("CUdevice_P2PAttribute", "hipDeviceP2PAttr", "type");
    subst("CUdevice_P2PAttribute_enum", "hipDeviceP2PAttr", "type");
    subst("CUdevice_attribute", "hipDeviceAttribute_t", "type");
    subst("CUdevice_attribute_enum", "hipDeviceAttribute_t", "type");
    subst("CUdevice_v1", "hipDevice_t", "type");
    subst("CUdeviceptr", "hipDeviceptr_t", "type");
    subst("CUdeviceptr_v1", "hipDeviceptr_t", "type");
    subst("CUdeviceptr_v2", "hipDeviceptr_t", "type");
    subst("CUdriverProcAddressQueryResult", "hipDriverProcAddressQueryResult", "type");
    subst("CUdriverProcAddressQueryResult_enum", "hipDriverProcAddressQueryResult", "type");
    subst("CUevent", "hipEvent_t", "type");
    subst("CUevent_st", "ihipEvent_t", "type");
    subst("CUexternalMemory", "hipExternalMemory_t", "type");
    subst("CUexternalMemoryHandleType", "hipExternalMemoryHandleType", "type");
    subst("CUexternalMemoryHandleType_enum", "hipExternalMemoryHandleType_enum", "type");
    subst("CUexternalSemaphore", "hipExternalSemaphore_t", "type");
    subst("CUexternalSemaphoreHandleType", "hipExternalSemaphoreHandleType", "type");
    subst("CUexternalSemaphoreHandleType_enum", "hipExternalSemaphoreHandleType_enum", "type");
    subst("CUfilter_mode", "HIPfilter_mode", "type");
    subst("CUfilter_mode_enum", "HIPfilter_mode_enum", "type");
    subst("CUflushGPUDirectRDMAWritesOptions", "hipFlushGPUDirectRDMAWritesOptions", "type");
    subst("CUflushGPUDirectRDMAWritesOptions_enum", "hipFlushGPUDirectRDMAWritesOptions", "type");
    subst("CUfunc_cache", "hipFuncCache_t", "type");
    subst("CUfunc_cache_enum", "hipFuncCache_t", "type");
    subst("CUfunc_st", "ihipModuleSymbol_t", "type");
    subst("CUfunction", "hipFunction_t", "type");
    subst("CUfunction_attribute", "hipFunction_attribute", "type");
    subst("CUfunction_attribute_enum", "hipFunction_attribute", "type");
    subst("CUgraph", "hipGraph_t", "type");
    subst("CUgraphDebugDot_flags", "hipGraphDebugDotFlags", "type");
    subst("CUgraphDebugDot_flags_enum", "hipGraphDebugDotFlags", "type");
    subst("CUgraphDependencyType", "hipGraphDependencyType", "type");
    subst("CUgraphDependencyType_enum", "hipGraphDependencyType", "type");
    subst("CUgraphEdgeData", "hipGraphEdgeData", "type");
    subst("CUgraphEdgeData_st", "hipGraphEdgeData", "type");
    subst("CUgraphExec", "hipGraphExec_t", "type");
    subst("CUgraphExecUpdateResult", "hipGraphExecUpdateResult", "type");
    subst("CUgraphExecUpdateResult_enum", "hipGraphExecUpdateResult", "type");
    subst("CUgraphExec_st", "hipGraphExec", "type");
    subst("CUgraphInstantiateResult", "hipGraphInstantiateResult", "type");
    subst("CUgraphInstantiateResult_enum", "hipGraphInstantiateResult", "type");
    subst("CUgraphInstantiate_flags", "hipGraphInstantiateFlags", "type");
    subst("CUgraphInstantiate_flags_enum", "hipGraphInstantiateFlags", "type");
    subst("CUgraphMem_attribute", "hipGraphMemAttributeType", "type");
    subst("CUgraphMem_attribute_enum", "hipGraphMemAttributeType", "type");
    subst("CUgraphNode", "hipGraphNode_t", "type");
    subst("CUgraphNodeParams", "hipGraphNodeParams", "type");
    subst("CUgraphNodeParams_st", "hipGraphNodeParams", "type");
    subst("CUgraphNodeType", "hipGraphNodeType", "type");
    subst("CUgraphNodeType_enum", "hipGraphNodeType", "type");
    subst("CUgraphNode_st", "hipGraphNode", "type");
    subst("CUgraph_st", "ihipGraph", "type");
    subst("CUgraphicsRegisterFlags", "hipGraphicsRegisterFlags", "type");
    subst("CUgraphicsRegisterFlags_enum", "hipGraphicsRegisterFlags", "type");
    subst("CUgraphicsResource", "hipGraphicsResource_t", "type");
    subst("CUgraphicsResource_st", "hipGraphicsResource", "type");
    subst("CUhostFn", "hipHostFn_t", "type");
    subst("CUipcEventHandle", "hipIpcEventHandle_t", "type");
    subst("CUipcEventHandle_st", "hipIpcEventHandle_st", "type");
    subst("CUipcEventHandle_v1", "hipIpcEventHandle_t", "type");
    subst("CUipcMemHandle", "hipIpcMemHandle_t", "type");
    subst("CUipcMemHandle_st", "hipIpcMemHandle_st", "type");
    subst("CUipcMemHandle_v1", "hipIpcMemHandle_t", "type");
    subst("CUjitInputType", "hiprtcJITInputType", "type");
    subst("CUjitInputType_enum", "hiprtcJITInputType", "type");
    subst("CUjit_option", "hipJitOption", "type");
    subst("CUjit_option_enum", "hipJitOption", "type");
    subst("CUkernelNodeAttrID", "hipKernelNodeAttrID", "type");
    subst("CUkernelNodeAttrID_enum", "hipKernelNodeAttrID", "type");
    subst("CUkernelNodeAttrValue", "hipKernelNodeAttrValue", "type");
    subst("CUkernelNodeAttrValue_union", "hipKernelNodeAttrValue", "type");
    subst("CUkernelNodeAttrValue_v1", "hipKernelNodeAttrValue", "type");
    subst("CUlaunchAttributeID", "hipLaunchAttributeID", "type");
    subst("CUlaunchAttributeID_enum", "hipLaunchAttributeID", "type");
    subst("CUlaunchAttributeValue", "hipLaunchAttributeValue", "type");
    subst("CUlaunchAttributeValue_union", "hipLaunchAttributeValue", "type");
    subst("CUlimit", "hipLimit_t", "type");
    subst("CUlimit_enum", "hipLimit_t", "type");
    subst("CUlinkState", "hiprtcLinkState", "type");
    subst("CUlinkState_st", "ihiprtcLinkState", "type");
    subst("CUmemAccessDesc", "hipMemAccessDesc", "type");
    subst("CUmemAccessDesc_st", "hipMemAccessDesc", "type");
    subst("CUmemAccessDesc_v1", "hipMemAccessDesc", "type");
    subst("CUmemAccess_flags", "hipMemAccessFlags", "type");
    subst("CUmemAccess_flags_enum", "hipMemAccessFlags", "type");
    subst("CUmemAllocationGranularity_flags", "hipMemAllocationGranularity_flags", "type");
    subst("CUmemAllocationGranularity_flags_enum", "hipMemAllocationGranularity_flags", "type");
    subst("CUmemAllocationHandleType", "hipMemAllocationHandleType", "type");
    subst("CUmemAllocationHandleType_enum", "hipMemAllocationHandleType", "type");
    subst("CUmemAllocationProp", "hipMemAllocationProp", "type");
    subst("CUmemAllocationProp_st", "hipMemAllocationProp", "type");
    subst("CUmemAllocationProp_v1", "hipMemAllocationProp", "type");
    subst("CUmemAllocationType", "hipMemAllocationType", "type");
    subst("CUmemAllocationType_enum", "hipMemAllocationType", "type");
    subst("CUmemGenericAllocationHandle", "hipMemGenericAllocationHandle_t", "type");
    subst("CUmemGenericAllocationHandle_v1", "hipMemGenericAllocationHandle_t", "type");
    subst("CUmemHandleType", "hipMemHandleType", "type");
    subst("CUmemHandleType_enum", "hipMemHandleType", "type");
    subst("CUmemLocation", "hipMemLocation", "type");
    subst("CUmemLocationType", "hipMemLocationType", "type");
    subst("CUmemLocationType_enum", "hipMemLocationType", "type");
    subst("CUmemLocation_st", "hipMemLocation", "type");
    subst("CUmemLocation_v1", "hipMemLocation", "type");
    subst("CUmemOperationType", "hipMemOperationType", "type");
    subst("CUmemOperationType_enum", "hipMemOperationType", "type");
    subst("CUmemPoolHandle_st", "ihipMemPoolHandle_t", "type");
    subst("CUmemPoolProps", "hipMemPoolProps", "type");
    subst("CUmemPoolProps_st", "hipMemPoolProps", "type");
    subst("CUmemPoolProps_v1", "hipMemPoolProps", "type");
    subst("CUmemPoolPtrExportData", "hipMemPoolPtrExportData", "type");
    subst("CUmemPoolPtrExportData_st", "hipMemPoolPtrExportData", "type");
    subst("CUmemPoolPtrExportData_v1", "hipMemPoolPtrExportData", "type");
    subst("CUmemPool_attribute", "hipMemPoolAttr", "type");
    subst("CUmemPool_attribute_enum", "hipMemPoolAttr", "type");
    subst("CUmem_advise", "hipMemoryAdvise", "type");
    subst("CUmem_advise_enum", "hipMemoryAdvise", "type");
    subst("CUmem_range_attribute", "hipMemRangeAttribute", "type");
    subst("CUmem_range_attribute_enum", "hipMemRangeAttribute", "type");
    subst("CUmemoryPool", "hipMemPool_t", "type");
    subst("CUmemorytype", "hipMemoryType", "type");
    subst("CUmemorytype_enum", "hipMemoryType", "type");
    subst("CUmipmappedArray", "hipMipmappedArray_t", "type");
    subst("CUmipmappedArray_st", "hipMipmappedArray", "type");
    subst("CUmod_st", "ihipModule_t", "type");
    subst("CUmodule", "hipModule_t", "type");
    subst("CUoccupancyB2DSize", "void*", "type");
    subst("CUpointer_attribute", "hipPointer_attribute", "type");
    subst("CUpointer_attribute_enum", "hipPointer_attribute", "type");
    subst("CUresourceViewFormat", "HIPresourceViewFormat", "type");
    subst("CUresourceViewFormat_enum", "HIPresourceViewFormat_enum", "type");
    subst("CUresourcetype", "HIPresourcetype", "type");
    subst("CUresourcetype_enum", "HIPresourcetype_enum", "type");
    subst("CUresult", "hipError_t", "type");
    subst("CUsharedconfig", "hipSharedMemConfig", "type");
    subst("CUsharedconfig_enum", "hipSharedMemConfig", "type");
    subst("CUstream", "hipStream_t", "type");
    subst("CUstreamCallback", "hipStreamCallback_t", "type");
    subst("CUstreamCaptureMode", "hipStreamCaptureMode", "type");
    subst("CUstreamCaptureMode_enum", "hipStreamCaptureMode", "type");
    subst("CUstreamCaptureStatus", "hipStreamCaptureStatus", "type");
    subst("CUstreamCaptureStatus_enum", "hipStreamCaptureStatus", "type");
    subst("CUstreamUpdateCaptureDependencies_flags", "hipStreamUpdateCaptureDependenciesFlags", "type");
    subst("CUstreamUpdateCaptureDependencies_flags_enum", "hipStreamUpdateCaptureDependenciesFlags", "type");
    subst("CUstream_st", "ihipStream_t", "type");
    subst("CUsurfObject", "hipSurfaceObject_t", "type");
    subst("CUsurfObject_v1", "hipSurfaceObject_t", "type");
    subst("CUtexObject", "hipTextureObject_t", "type");
    subst("CUtexObject_v1", "hipTextureObject_t", "type");
    subst("CUtexref", "hipTexRef", "type");
    subst("CUtexref_st", "textureReference", "type");
    subst("CUuserObject", "hipUserObject_t", "type");
    subst("CUuserObjectRetain_flags", "hipUserObjectRetainFlags", "type");
    subst("CUuserObjectRetain_flags_enum", "hipUserObjectRetainFlags", "type");
    subst("CUuserObject_flags", "hipUserObjectFlags", "type");
    subst("CUuserObject_flags_enum", "hipUserObjectFlags", "type");
    subst("CUuserObject_st", "hipUserObject", "type");
    subst("CUuuid", "hipUUID", "type");
    subst("CUuuid_st", "hipUUID_t", "type");
    subst("GLenum", "GLenum", "type");
    subst("GLuint", "GLuint", "type");
    subst("bsric02Info", "bsric02Info", "type");
    subst("bsric02Info_t", "bsric02Info_t", "type");
    subst("bsrilu02Info", "bsrilu02Info", "type");
    subst("bsrilu02Info_t", "bsrilu02Info_t", "type");
    subst("bsrsm2Info", "bsrsm2Info", "type");
    subst("bsrsm2Info_t", "bsrsm2Info_t", "type");
    subst("bsrsv2Info", "bsrsv2Info", "type");
    subst("bsrsv2Info_t", "bsrsv2Info_t", "type");
    subst("csrgemm2Info", "csrgemm2Info", "type");
    subst("csrgemm2Info_t", "csrgemm2Info_t", "type");
    subst("csric02Info", "csric02Info", "type");
    subst("csric02Info_t", "csric02Info_t", "type");
    subst("csrilu02Info", "csrilu02Info", "type");
    subst("csrilu02Info_t", "csrilu02Info_t", "type");
    subst("csrsm2Info_t", "csrsm2Info_t", "type");
    subst("csrsv2Info_t", "csrsv2Info_t", "type");
    subst("csru2csrInfo", "csru2csrInfo", "type");
    subst("csru2csrInfo_t", "csru2csrInfo_t", "type");
    subst("cuComplex", "hipComplex", "type");
    subst("cuDoubleComplex", "hipDoubleComplex", "type");
    subst("cuFloatComplex", "hipFloatComplex", "type");
    subst("cublasAtomicsMode_t", "hipblasAtomicsMode_t", "type");
    subst("cublasComputeType_t", "hipblasComputeType_t", "type");
    subst("cublasDataType_t", "hipDataType", "type");
    subst("cublasDiagType_t", "hipblasDiagType_t", "type");
    subst("cublasFillMode_t", "hipblasFillMode_t", "type");
    subst("cublasGemmAlgo_t", "hipblasGemmAlgo_t", "type");
    subst("cublasHandle_t", "hipblasHandle_t", "type");
    subst("cublasLtEpilogue_t", "hipblasLtEpilogue_t", "type");
    subst("cublasLtHandle_t", "hipblasLtHandle_t", "type");
    subst("cublasLtMatmulAlgo_t", "hipblasLtMatmulAlgo_t", "type");
    subst("cublasLtMatmulDescAttributes_t", "hipblasLtMatmulDescAttributes_t", "type");
    subst("cublasLtMatmulDescOpaque_t", "hipblasLtMatmulDescOpaque_t", "type");
    subst("cublasLtMatmulDesc_t", "hipblasLtMatmulDesc_t", "type");
    subst("cublasLtMatmulHeuristicResult_t", "hipblasLtMatmulHeuristicResult_t", "type");
    subst("cublasLtMatmulPreferenceAttributes_t", "hipblasLtMatmulPreferenceAttributes_t", "type");
    subst("cublasLtMatmulPreferenceOpaque_t", "hipblasLtMatmulPreferenceOpaque_t", "type");
    subst("cublasLtMatmulPreference_t", "hipblasLtMatmulPreference_t", "type");
    subst("cublasLtMatrixLayoutAttribute_t", "hipblasLtMatrixLayoutAttribute_t", "type");
    subst("cublasLtMatrixLayoutOpaque_t", "hipblasLtMatrixLayoutOpaque_t", "type");
    subst("cublasLtMatrixLayoutStruct", "hipblasLtMatrixLayoutOpaque_t", "type");
    subst("cublasLtMatrixLayout_t", "hipblasLtMatrixLayout_t", "type");
    subst("cublasLtMatrixTransformDescAttributes_t", "hipblasLtMatrixTransformDescAttributes_t", "type");
    subst("cublasLtMatrixTransformDescOpaque_t", "hipblasLtMatrixTransformDescOpaque_t", "type");
    subst("cublasLtMatrixTransformDesc_t", "hipblasLtMatrixTransformDesc_t", "type");
    subst("cublasLtPointerMode_t", "hipblasLtPointerMode_t", "type");
    subst("cublasMath_t", "hipblasMath_t", "type");
    subst("cublasOperation_t", "hipblasOperation_t", "type");
    subst("cublasPointerMode_t", "hipblasPointerMode_t", "type");
    subst("cublasSideMode_t", "hipblasSideMode_t", "type");
    subst("cublasStatus", "hipblasStatus_t", "type");
    subst("cublasStatus_t", "hipblasStatus_t", "type");
    subst("cudaAccessPolicyWindow", "hipAccessPolicyWindow", "type");
    subst("cudaAccessProperty", "hipAccessProperty", "type");
    subst("cudaArray", "hipArray", "type");
    subst("cudaArray_const_t", "hipArray_const_t", "type");
    subst("cudaArray_t", "hipArray_t", "type");
    subst("cudaChannelFormatDesc", "hipChannelFormatDesc", "type");
    subst("cudaChannelFormatKind", "hipChannelFormatKind", "type");
    subst("cudaChildGraphNodeParams", "hipChildGraphNodeParams", "type");
    subst("cudaComputeMode", "hipComputeMode", "type");
    subst("cudaDataType", "hipDataType", "type");
    subst("cudaDataType_t", "hipDataType", "type");
    subst("cudaDeviceAttr", "hipDeviceAttribute_t", "type");
    subst("cudaDeviceP2PAttr", "hipDeviceP2PAttr", "type");
    subst("cudaDeviceProp", "hipDeviceProp_t", "type");
    subst("cudaDriverEntryPointQueryResult", "hipDriverProcAddressQueryResult", "type");
    subst("cudaError", "hipError_t", "type");
    subst("cudaError_enum", "hipError_t", "type");
    subst("cudaError_t", "hipError_t", "type");
    subst("cudaEventRecordNodeParams", "hipEventRecordNodeParams", "type");
    subst("cudaEventWaitNodeParams", "hipEventWaitNodeParams", "type");
    subst("cudaEvent_t", "hipEvent_t", "type");
    subst("cudaExtent", "hipExtent", "type");
    subst("cudaExternalMemoryBufferDesc", "hipExternalMemoryBufferDesc", "type");
    subst("cudaExternalMemoryHandleDesc", "hipExternalMemoryHandleDesc", "type");
    subst("cudaExternalMemoryHandleType", "hipExternalMemoryHandleType", "type");
    subst("cudaExternalMemory_t", "hipExternalMemory_t", "type");
    subst("cudaExternalSemaphoreHandleDesc", "hipExternalSemaphoreHandleDesc", "type");
    subst("cudaExternalSemaphoreHandleType", "hipExternalSemaphoreHandleType", "type");
    subst("cudaExternalSemaphoreSignalNodeParams", "hipExternalSemaphoreSignalNodeParams", "type");
    subst("cudaExternalSemaphoreSignalNodeParamsV2", "hipExternalSemaphoreSignalNodeParams", "type");
    subst("cudaExternalSemaphoreSignalParams", "hipExternalSemaphoreSignalParams", "type");
    subst("cudaExternalSemaphoreSignalParams_v1", "hipExternalSemaphoreSignalParams", "type");
    subst("cudaExternalSemaphoreWaitNodeParams", "hipExternalSemaphoreWaitNodeParams", "type");
    subst("cudaExternalSemaphoreWaitNodeParamsV2", "hipExternalSemaphoreWaitNodeParams", "type");
    subst("cudaExternalSemaphoreWaitParams", "hipExternalSemaphoreWaitParams", "type");
    subst("cudaExternalSemaphoreWaitParams_v1", "hipExternalSemaphoreWaitParams", "type");
    subst("cudaExternalSemaphore_t", "hipExternalSemaphore_t", "type");
    subst("cudaFlushGPUDirectRDMAWritesOptions", "hipFlushGPUDirectRDMAWritesOptions", "type");
    subst("cudaFuncAttribute", "hipFuncAttribute", "type");
    subst("cudaFuncAttributes", "hipFuncAttributes", "type");
    subst("cudaFuncCache", "hipFuncCache_t", "type");
    subst("cudaFunction_t", "hipFunction_t", "type");
    subst("cudaGLDeviceList", "hipGLDeviceList", "type");
    subst("cudaGPUDirectRDMAWritesOrdering", "hipGPUDirectRDMAWritesOrdering", "type");
    subst("cudaGraphDebugDotFlags", "hipGraphDebugDotFlags", "type");
    subst("cudaGraphDependencyType", "hipGraphDependencyType", "type");
    subst("cudaGraphDependencyType_enum", "hipGraphDependencyType", "type");
    subst("cudaGraphEdgeData", "hipGraphEdgeData", "type");
    subst("cudaGraphEdgeData_st", "hipGraphEdgeData", "type");
    subst("cudaGraphExecUpdateResult", "hipGraphExecUpdateResult", "type");
    subst("cudaGraphExec_t", "hipGraphExec_t", "type");
    subst("cudaGraphInstantiateFlags", "hipGraphInstantiateFlags", "type");
    subst("cudaGraphInstantiateParams", "hipGraphInstantiateParams", "type");
    subst("cudaGraphInstantiateParams_st", "hipGraphInstantiateParams", "type");
    subst("cudaGraphInstantiateResult", "hipGraphInstantiateResult", "type");
    subst("cudaGraphMemAttributeType", "hipGraphMemAttributeType", "type");
    subst("cudaGraphNodeParams", "hipGraphNodeParams", "type");
    subst("cudaGraphNodeType", "hipGraphNodeType", "type");
    subst("cudaGraphNode_t", "hipGraphNode_t", "type");
    subst("cudaGraph_t", "hipGraph_t", "type");
    subst("cudaGraphicsRegisterFlags", "hipGraphicsRegisterFlags", "type");
    subst("cudaGraphicsResource", "hipGraphicsResource", "type");
    subst("cudaGraphicsResource_t", "hipGraphicsResource_t", "type");
    subst("cudaHostFn_t", "hipHostFn_t", "type");
    subst("cudaHostNodeParams", "hipHostNodeParams", "type");
    subst("cudaIpcEventHandle_st", "hipIpcEventHandle_st", "type");
    subst("cudaIpcEventHandle_t", "hipIpcEventHandle_t", "type");
    subst("cudaIpcMemHandle_st", "hipIpcMemHandle_st", "type");
    subst("cudaIpcMemHandle_t", "hipIpcMemHandle_t", "type");
    subst("cudaKernelNodeAttrID", "hipKernelNodeAttrID", "type");
    subst("cudaKernelNodeAttrValue", "hipKernelNodeAttrValue", "type");
    subst("cudaKernelNodeParams", "hipKernelNodeParams", "type");
    subst("cudaLaunchAttributeID", "hipLaunchAttributeID", "type");
    subst("cudaLaunchAttributeValue", "hipLaunchAttributeValue", "type");
    subst("cudaLaunchParams", "hipLaunchParams", "type");
    subst("cudaLimit", "hipLimit_t", "type");
    subst("cudaMemAccessDesc", "hipMemAccessDesc", "type");
    subst("cudaMemAccessFlags", "hipMemAccessFlags", "type");
    subst("cudaMemAllocNodeParams", "hipMemAllocNodeParams", "type");
    subst("cudaMemAllocationHandleType", "hipMemAllocationHandleType", "type");
    subst("cudaMemAllocationType", "hipMemAllocationType", "type");
    subst("cudaMemFreeNodeParams", "hipMemFreeNodeParams", "type");
    subst("cudaMemLocation", "hipMemLocation", "type");
    subst("cudaMemLocationType", "hipMemLocationType", "type");
    subst("cudaMemPoolAttr", "hipMemPoolAttr", "type");
    subst("cudaMemPoolProps", "hipMemPoolProps", "type");
    subst("cudaMemPoolPtrExportData", "hipMemPoolPtrExportData", "type");
    subst("cudaMemPool_t", "hipMemPool_t", "type");
    subst("cudaMemRangeAttribute", "hipMemRangeAttribute", "type");
    subst("cudaMemcpy3DParms", "hipMemcpy3DParms", "type");
    subst("cudaMemcpyKind", "hipMemcpyKind", "type");
    subst("cudaMemcpyNodeParams", "hipMemcpyNodeParams", "type");
    subst("cudaMemoryAdvise", "hipMemoryAdvise", "type");
    subst("cudaMemoryType", "hipMemoryType", "type");
    subst("cudaMemsetParams", "hipMemsetParams", "type");
    subst("cudaMipmappedArray", "hipMipmappedArray", "type");
    subst("cudaMipmappedArray_const_t", "hipMipmappedArray_const_t", "type");
    subst("cudaMipmappedArray_t", "hipMipmappedArray_t", "type");
    subst("cudaPitchedPtr", "hipPitchedPtr", "type");
    subst("cudaPointerAttributes", "hipPointerAttribute_t", "type");
    subst("cudaPos", "hipPos", "type");
    subst("cudaResourceDesc", "hipResourceDesc", "type");
    subst("cudaResourceType", "hipResourceType", "type");
    subst("cudaResourceViewDesc", "hipResourceViewDesc", "type");
    subst("cudaResourceViewFormat", "hipResourceViewFormat", "type");
    subst("cudaSharedMemConfig", "hipSharedMemConfig", "type");
    subst("cudaStreamCallback_t", "hipStreamCallback_t", "type");
    subst("cudaStreamCaptureMode", "hipStreamCaptureMode", "type");
    subst("cudaStreamCaptureStatus", "hipStreamCaptureStatus", "type");
    subst("cudaStreamUpdateCaptureDependenciesFlags", "hipStreamUpdateCaptureDependenciesFlags", "type");
    subst("cudaStream_t", "hipStream_t", "type");
    subst("cudaSurfaceBoundaryMode", "hipSurfaceBoundaryMode", "type");
    subst("cudaSurfaceObject_t", "hipSurfaceObject_t", "type");
    subst("cudaTextureAddressMode", "hipTextureAddressMode", "type");
    subst("cudaTextureDesc", "hipTextureDesc", "type");
    subst("cudaTextureFilterMode", "hipTextureFilterMode", "type");
    subst("cudaTextureObject_t", "hipTextureObject_t", "type");
    subst("cudaTextureReadMode", "hipTextureReadMode", "type");
    subst("cudaUUID_t", "hipUUID", "type");
    subst("cudaUserObjectFlags", "hipUserObjectFlags", "type");
    subst("cudaUserObjectRetainFlags", "hipUserObjectRetainFlags", "type");
    subst("cudaUserObject_t", "hipUserObject_t", "type");
    subst("cudnnActivationDescriptor_t", "hipdnnActivationDescriptor_t", "type");
    subst("cudnnActivationMode_t", "hipdnnActivationMode_t", "type");
    subst("cudnnBatchNormMode_t", "hipdnnBatchNormMode_t", "type");
    subst("cudnnConvolutionBwdDataAlgoPerfStruct", "hipdnnConvolutionBwdDataAlgoPerf_t", "type");
    subst("cudnnConvolutionBwdDataAlgoPerf_t", "hipdnnConvolutionBwdDataAlgoPerf_t", "type");
    subst("cudnnConvolutionBwdDataAlgo_t", "hipdnnConvolutionBwdDataAlgo_t", "type");
    subst("cudnnConvolutionBwdDataPreference_t", "hipdnnConvolutionBwdDataPreference_t", "type");
    subst("cudnnConvolutionBwdFilterAlgoPerfStruct", "hipdnnConvolutionBwdFilterAlgoPerf_t", "type");
    subst("cudnnConvolutionBwdFilterAlgoPerf_t", "hipdnnConvolutionBwdFilterAlgoPerf_t", "type");
    subst("cudnnConvolutionBwdFilterAlgo_t", "hipdnnConvolutionBwdFilterAlgo_t", "type");
    subst("cudnnConvolutionBwdFilterPreference_t", "hipdnnConvolutionBwdFilterPreference_t", "type");
    subst("cudnnConvolutionDescriptor_t", "hipdnnConvolutionDescriptor_t", "type");
    subst("cudnnConvolutionFwdAlgoPerfStruct", "hipdnnConvolutionFwdAlgoPerf_t", "type");
    subst("cudnnConvolutionFwdAlgoPerf_t", "hipdnnConvolutionFwdAlgoPerf_t", "type");
    subst("cudnnConvolutionFwdAlgo_t", "hipdnnConvolutionFwdAlgo_t", "type");
    subst("cudnnConvolutionFwdPreference_t", "hipdnnConvolutionFwdPreference_t", "type");
    subst("cudnnConvolutionMode_t", "hipdnnConvolutionMode_t", "type");
    subst("cudnnDataType_t", "hipdnnDataType_t", "type");
    subst("cudnnDirectionMode_t", "hipdnnDirectionMode_t", "type");
    subst("cudnnDropoutDescriptor_t", "hipdnnDropoutDescriptor_t", "type");
    subst("cudnnFilterDescriptor_t", "hipdnnFilterDescriptor_t", "type");
    subst("cudnnHandle_t", "hipdnnHandle_t", "type");
    subst("cudnnIndicesType_t", "hipdnnIndicesType_t", "type");
    subst("cudnnLRNDescriptor_t", "hipdnnLRNDescriptor_t", "type");
    subst("cudnnLRNMode_t", "hipdnnLRNMode_t", "type");
    subst("cudnnMathType_t", "hipdnnMathType_t", "type");
    subst("cudnnNanPropagation_t", "hipdnnNanPropagation_t", "type");
    subst("cudnnOpTensorDescriptor_t", "hipdnnOpTensorDescriptor_t", "type");
    subst("cudnnOpTensorOp_t", "hipdnnOpTensorOp_t", "type");
    subst("cudnnPersistentRNNPlan_t", "hipdnnPersistentRNNPlan_t", "type");
    subst("cudnnPoolingDescriptor_t", "hipdnnPoolingDescriptor_t", "type");
    subst("cudnnPoolingMode_t", "hipdnnPoolingMode_t", "type");
    subst("cudnnRNNAlgo_t", "hipdnnRNNAlgo_t", "type");
    subst("cudnnRNNBiasMode_t", "hipdnnRNNBiasMode_t", "type");
    subst("cudnnRNNDescriptor_t", "hipdnnRNNDescriptor_t", "type");
    subst("cudnnRNNInputMode_t", "hipdnnRNNInputMode_t", "type");
    subst("cudnnRNNMode_t", "hipdnnRNNMode_t", "type");
    subst("cudnnReduceTensorDescriptor_t", "hipdnnReduceTensorDescriptor_t", "type");
    subst("cudnnReduceTensorIndices_t", "hipdnnReduceTensorIndices_t", "type");
    subst("cudnnReduceTensorOp_t", "hipdnnReduceTensorOp_t", "type");
    subst("cudnnSoftmaxAlgorithm_t", "hipdnnSoftmaxAlgorithm_t", "type");
    subst("cudnnSoftmaxMode_t", "hipdnnSoftmaxMode_t", "type");
    subst("cudnnStatus_t", "hipdnnStatus_t", "type");
    subst("cudnnTensorDescriptor_t", "hipdnnTensorDescriptor_t", "type");
    subst("cudnnTensorFormat_t", "hipdnnTensorFormat_t", "type");
    subst("cufftComplex", "hipfftComplex", "type");
    subst("cufftDoubleComplex", "hipfftDoubleComplex", "type");
    subst("cufftDoubleReal", "hipfftDoubleReal", "type");
    subst("cufftHandle", "hipfftHandle", "type");
    subst("cufftReal", "hipfftReal", "type");
    subst("cufftResult", "hipfftResult", "type");
    subst("cufftResult_t", "hipfftResult_t", "type");
    subst("cufftType", "hipfftType", "type");
    subst("cufftType_t", "hipfftType_t", "type");
    subst("cufftXtCallbackType", "hipfftXtCallbackType", "type");
    subst("cufftXtCallbackType_t", "hipfftXtCallbackType_t", "type");
    subst("curandDirectionVectorSet", "hiprandDirectionVectorSet_t", "type");
    subst("curandDirectionVectorSet_t", "hiprandDirectionVectorSet_t", "type");
    subst("curandDirectionVectors32_t", "hiprandDirectionVectors32_t", "type");
    subst("curandDirectionVectors64_t", "hiprandDirectionVectors64_t", "type");
    subst("curandDiscreteDistribution_st", "hiprandDiscreteDistribution_st", "type");
    subst("curandDiscreteDistribution_t", "hiprandDiscreteDistribution_t", "type");
    subst("curandGenerator_st", "hiprandGenerator_st", "type");
    subst("curandGenerator_t", "hiprandGenerator_t", "type");
    subst("curandOrdering", "hiprandOrdering", "type");
    subst("curandOrdering_t", "hiprandOrdering_t", "type");
    subst("curandRngType", "hiprandRngType_t", "type");
    subst("curandRngType_t", "hiprandRngType_t", "type");
    subst("curandState", "hiprandState", "type");
    subst("curandStateMRG32k3a", "hiprandStateMRG32k3a", "type");
    subst("curandStateMRG32k3a_t", "hiprandStateMRG32k3a_t", "type");
    subst("curandStateMtgp32", "hiprandStateMtgp32", "type");
    subst("curandStateMtgp32_t", "hiprandStateMtgp32_t", "type");
    subst("curandStatePhilox4_32_10", "hiprandStatePhilox4_32_10", "type");
    subst("curandStatePhilox4_32_10_t", "hiprandStatePhilox4_32_10_t", "type");
    subst("curandStateScrambledSobol32", "hiprandStateScrambledSobol32", "type");
    subst("curandStateScrambledSobol32_t", "hiprandStateScrambledSobol32_t", "type");
    subst("curandStateScrambledSobol64", "hiprandStateScrambledSobol64", "type");
    subst("curandStateScrambledSobol64_t", "hiprandStateScrambledSobol64_t", "type");
    subst("curandStateSobol32", "hiprandStateSobol32", "type");
    subst("curandStateSobol32_t", "hiprandStateSobol32_t", "type");
    subst("curandStateSobol64", "hiprandStateSobol64", "type");
    subst("curandStateSobol64_t", "hiprandStateSobol64_t", "type");
    subst("curandStateXORWOW", "hiprandStateXORWOW", "type");
    subst("curandStateXORWOW_t", "hiprandStateXORWOW_t", "type");
    subst("curandState_t", "hiprandState_t", "type");
    subst("curandStatus", "hiprandStatus", "type");
    subst("curandStatus_t", "hiprandStatus_t", "type");
    subst("cusolverAlgMode_t", "hipsolverAlgMode_t", "type");
    subst("cusolverDeterministicMode_t", "hipsolverDeterministicMode_t", "type");
    subst("cusolverDnFunction_t", "hipsolverDnFunction_t", "type");
    subst("cusolverDnHandle_t", "hipsolverHandle_t", "type");
    subst("cusolverDnParams_t", "hipsolverDnParams_t", "type");
    subst("cusolverEigMode_t", "hipsolverEigMode_t", "type");
    subst("cusolverEigRange_t", "hipsolverEigRange_t", "type");
    subst("cusolverEigType_t", "hipsolverEigType_t", "type");
    subst("cusolverRfFactorization_t", "hipsolverRfFactorization_t", "type");
    subst("cusolverRfHandle_t", "hipsolverRfHandle_t", "type");
    subst("cusolverRfMatrixFormat_t", "hipsolverRfMatrixFormat_t", "type");
    subst("cusolverRfNumericBoostReport_t", "hipsolverRfNumericBoostReport_t", "type");
    subst("cusolverRfResetValuesFastMode_t", "hipsolverRfResetValuesFastMode_t", "type");
    subst("cusolverRfTriangularSolve_t", "hipsolverRfTriangularSolve_t", "type");
    subst("cusolverRfUnitDiagonal_t", "hipsolverRfUnitDiagonal_t", "type");
    subst("cusolverSpHandle_t", "hipsolverSpHandle_t", "type");
    subst("cusolverStatus_t", "hipsolverStatus_t", "type");
    subst("cusparseAction_t", "hipsparseAction_t", "type");
    subst("cusparseColorInfo_t", "hipsparseColorInfo_t", "type");
    subst("cusparseConstDnMatDescr_t", "hipsparseConstDnMatDescr_t", "type");
    subst("cusparseConstDnVecDescr_t", "hipsparseConstDnVecDescr_t", "type");
    subst("cusparseConstSpMatDescr_t", "hipsparseConstSpMatDescr_t", "type");
    subst("cusparseConstSpVecDescr_t", "hipsparseConstSpVecDescr_t", "type");
    subst("cusparseCsr2CscAlg_t", "hipsparseCsr2CscAlg_t", "type");
    subst("cusparseDenseToSparseAlg_t", "hipsparseDenseToSparseAlg_t", "type");
    subst("cusparseDiagType_t", "hipsparseDiagType_t", "type");
    subst("cusparseDirection_t", "hipsparseDirection_t", "type");
    subst("cusparseDnMatDescr_t", "hipsparseDnMatDescr_t", "type");
    subst("cusparseDnVecDescr_t", "hipsparseDnVecDescr_t", "type");
    subst("cusparseFillMode_t", "hipsparseFillMode_t", "type");
    subst("cusparseFormat_t", "hipsparseFormat_t", "type");
    subst("cusparseHandle_t", "hipsparseHandle_t", "type");
    subst("cusparseHybMat_t", "hipsparseHybMat_t", "type");
    subst("cusparseHybPartition_t", "hipsparseHybPartition_t", "type");
    subst("cusparseIndexBase_t", "hipsparseIndexBase_t", "type");
    subst("cusparseIndexType_t", "hipsparseIndexType_t", "type");
    subst("cusparseMatDescr_t", "hipsparseMatDescr_t", "type");
    subst("cusparseMatrixType_t", "hipsparseMatrixType_t", "type");
    subst("cusparseOperation_t", "hipsparseOperation_t", "type");
    subst("cusparseOrder_t", "hipsparseOrder_t", "type");
    subst("cusparsePointerMode_t", "hipsparsePointerMode_t", "type");
    subst("cusparseSDDMMAlg_t", "hipsparseSDDMMAlg_t", "type");
    subst("cusparseSolvePolicy_t", "hipsparseSolvePolicy_t", "type");
    subst("cusparseSpGEMMAlg_t", "hipsparseSpGEMMAlg_t", "type");
    subst("cusparseSpGEMMDescr", "hipsparseSpGEMMDescr", "type");
    subst("cusparseSpGEMMDescr_t", "hipsparseSpGEMMDescr_t", "type");
    subst("cusparseSpMMAlg_t", "hipsparseSpMMAlg_t", "type");
    subst("cusparseSpMVAlg_t", "hipsparseSpMVAlg_t", "type");
    subst("cusparseSpMatAttribute_t", "hipsparseSpMatAttribute_t", "type");
    subst("cusparseSpMatDescr_t", "hipsparseSpMatDescr_t", "type");
    subst("cusparseSpSMAlg_t", "hipsparseSpSMAlg_t", "type");
    subst("cusparseSpSMDescr", "hipsparseSpSMDescr", "type");
    subst("cusparseSpSMDescr_t", "hipsparseSpSMDescr_t", "type");
    subst("cusparseSpSVAlg_t", "hipsparseSpSVAlg_t", "type");
    subst("cusparseSpSVDescr", "hipsparseSpSVDescr", "type");
    subst("cusparseSpSVDescr_t", "hipsparseSpSVDescr_t", "type");
    subst("cusparseSpVecDescr_t", "hipsparseSpVecDescr_t", "type");
    subst("cusparseSparseToDenseAlg_t", "hipsparseSparseToDenseAlg_t", "type");
    subst("cusparseStatus_t", "hipsparseStatus_t", "type");
    subst("cutensorAlgo_t", "hiptensorAlgo_t", "type");
    subst("cutensorComputeType_t", "hiptensorComputeType_t", "type");
    subst("cutensorContractionPlan_t", "hiptensorContractionPlan_t", "type");
    subst("cutensorDataType_t", "hiptensorComputeType_t", "type");
    subst("cutensorHandle_t", "hiptensorHandle_t", "type");
    subst("cutensorLoggerCallback_t", "hiptensorLoggerCallback_t", "type");
    subst("cutensorOperator_t", "hiptensorOperator_t", "type");
    subst("cutensorPlan_t", "hiptensorContractionPlan_t", "type");
    subst("cutensorStatus_t", "hiptensorStatus_t", "type");
    subst("cutensorTensorDescriptor_t", "hiptensorTensorDescriptor_t", "type");
    subst("cutensorWorksizePreference_t", "hiptensorWorksizePreference_t", "type");
    subst("gesvdjInfo_t", "hipsolverGesvdjInfo_t", "type");
    subst("nvrtcProgram", "hiprtcProgram", "type");
    subst("nvrtcResult", "hiprtcResult", "type");
    subst("pruneInfo", "pruneInfo", "type");
    subst("pruneInfo_t", "pruneInfo_t", "type");
    subst("surfaceReference", "surfaceReference", "type");
    subst("syevjInfo_t", "hipsolverSyevjInfo_t", "type");
    subst("texture", "texture", "type");
    subst("textureReference", "textureReference", "type");
    subst("CUBLASLT_EPILOGUE_BGRADA", "HIPBLASLT_EPILOGUE_BGRADA", "numeric_literal");
    subst("CUBLASLT_EPILOGUE_BGRADB", "HIPBLASLT_EPILOGUE_BGRADB", "numeric_literal");
    subst("CUBLASLT_EPILOGUE_BIAS", "HIPBLASLT_EPILOGUE_BIAS", "numeric_literal");
    subst("CUBLASLT_EPILOGUE_DEFAULT", "HIPBLASLT_EPILOGUE_DEFAULT", "numeric_literal");
    subst("CUBLASLT_EPILOGUE_DGELU", "HIPBLASLT_EPILOGUE_DGELU", "numeric_literal");
    subst("CUBLASLT_EPILOGUE_DGELU_BGRAD", "HIPBLASLT_EPILOGUE_DGELU_BGRAD", "numeric_literal");
    subst("CUBLASLT_EPILOGUE_GELU", "HIPBLASLT_EPILOGUE_GELU", "numeric_literal");
    subst("CUBLASLT_EPILOGUE_GELU_AUX", "HIPBLASLT_EPILOGUE_GELU_AUX", "numeric_literal");
    subst("CUBLASLT_EPILOGUE_GELU_AUX_BIAS", "HIPBLASLT_EPILOGUE_GELU_AUX_BIAS", "numeric_literal");
    subst("CUBLASLT_EPILOGUE_GELU_BIAS", "HIPBLASLT_EPILOGUE_GELU_BIAS", "numeric_literal");
    subst("CUBLASLT_EPILOGUE_RELU", "HIPBLASLT_EPILOGUE_RELU", "numeric_literal");
    subst("CUBLASLT_EPILOGUE_RELU_BIAS", "HIPBLASLT_EPILOGUE_RELU_BIAS", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_AMAX_D_POINTER", "HIPBLASLT_MATMUL_DESC_AMAX_D_POINTER", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_A_SCALE_POINTER", "HIPBLASLT_MATMUL_DESC_A_SCALE_POINTER", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_BIAS_DATA_TYPE", "HIPBLASLT_MATMUL_DESC_BIAS_DATA_TYPE", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_BIAS_POINTER", "HIPBLASLT_MATMUL_DESC_BIAS_POINTER", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_B_SCALE_POINTER", "HIPBLASLT_MATMUL_DESC_B_SCALE_POINTER", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_C_SCALE_POINTER", "HIPBLASLT_MATMUL_DESC_C_SCALE_POINTER", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_D_SCALE_POINTER", "HIPBLASLT_MATMUL_DESC_D_SCALE_POINTER", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_EPILOGUE", "HIPBLASLT_MATMUL_DESC_EPILOGUE", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_BATCH_STRIDE", "HIPBLASLT_MATMUL_DESC_EPILOGUE_AUX_BATCH_STRIDE", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_LD", "HIPBLASLT_MATMUL_DESC_EPILOGUE_AUX_LD", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_POINTER", "HIPBLASLT_MATMUL_DESC_EPILOGUE_AUX_POINTER", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_SCALE_POINTER", "HIPBLASLT_MATMUL_DESC_EPILOGUE_AUX_SCALE_POINTER", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_POINTER_MODE", "HIPBLASLT_MATMUL_DESC_POINTER_MODE", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_TRANSA", "HIPBLASLT_MATMUL_DESC_TRANSA", "numeric_literal");
    subst("CUBLASLT_MATMUL_DESC_TRANSB", "HIPBLASLT_MATMUL_DESC_TRANSB", "numeric_literal");
    subst("CUBLASLT_MATMUL_PREF_MAX_WORKSPACE_BYTES", "HIPBLASLT_MATMUL_PREF_MAX_WORKSPACE_BYTES", "numeric_literal");
    subst("CUBLASLT_MATMUL_PREF_SEARCH_MODE", "HIPBLASLT_MATMUL_PREF_SEARCH_MODE", "numeric_literal");
    subst("CUBLASLT_MATRIX_LAYOUT_BATCH_COUNT", "HIPBLASLT_MATRIX_LAYOUT_BATCH_COUNT", "numeric_literal");
    subst("CUBLASLT_MATRIX_LAYOUT_COLS", "HIPBLASLT_MATRIX_LAYOUT_COLS", "numeric_literal");
    subst("CUBLASLT_MATRIX_LAYOUT_LD", "HIPBLASLT_MATRIX_LAYOUT_LD", "numeric_literal");
    subst("CUBLASLT_MATRIX_LAYOUT_ORDER", "HIPBLASLT_MATRIX_LAYOUT_ORDER", "numeric_literal");
    subst("CUBLASLT_MATRIX_LAYOUT_ROWS", "HIPBLASLT_MATRIX_LAYOUT_ROWS", "numeric_literal");
    subst("CUBLASLT_MATRIX_LAYOUT_STRIDED_BATCH_OFFSET", "HIPBLASLT_MATRIX_LAYOUT_STRIDED_BATCH_OFFSET", "numeric_literal");
    subst("CUBLASLT_MATRIX_LAYOUT_TYPE", "HIPBLASLT_MATRIX_LAYOUT_TYPE", "numeric_literal");
    subst("CUBLASLT_MATRIX_TRANSFORM_DESC_POINTER_MODE", "HIPBLASLT_MATRIX_TRANSFORM_DESC_POINTER_MODE", "numeric_literal");
    subst("CUBLASLT_MATRIX_TRANSFORM_DESC_SCALE_TYPE", "HIPBLASLT_MATRIX_TRANSFORM_DESC_SCALE_TYPE", "numeric_literal");
    subst("CUBLASLT_MATRIX_TRANSFORM_DESC_TRANSA", "HIPBLASLT_MATRIX_TRANSFORM_DESC_TRANSA", "numeric_literal");
    subst("CUBLASLT_MATRIX_TRANSFORM_DESC_TRANSB", "HIPBLASLT_MATRIX_TRANSFORM_DESC_TRANSB", "numeric_literal");
    subst("CUBLASLT_ORDER_COL", "HIPBLASLT_ORDER_COL", "numeric_literal");
    subst("CUBLASLT_ORDER_ROW", "HIPBLASLT_ORDER_ROW", "numeric_literal");
    subst("CUBLASLT_POINTER_MODE_ALPHA_DEVICE_VECTOR_BETA_HOST", "HIPBLASLT_POINTER_MODE_ALPHA_DEVICE_VECTOR_BETA_HOST", "numeric_literal");
    subst("CUBLASLT_POINTER_MODE_DEVICE", "HIPBLASLT_POINTER_MODE_DEVICE", "numeric_literal");
    subst("CUBLASLT_POINTER_MODE_HOST", "HIPBLASLT_POINTER_MODE_HOST", "numeric_literal");
    subst("CUBLAS_ATOMICS_ALLOWED", "HIPBLAS_ATOMICS_ALLOWED", "numeric_literal");
    subst("CUBLAS_ATOMICS_NOT_ALLOWED", "HIPBLAS_ATOMICS_NOT_ALLOWED", "numeric_literal");
    subst("CUBLAS_COMPUTE_16F", "HIPBLAS_COMPUTE_16F", "numeric_literal");
    subst("CUBLAS_COMPUTE_16F_PEDANTIC", "HIPBLAS_COMPUTE_16F_PEDANTIC", "numeric_literal");
    subst("CUBLAS_COMPUTE_32F", "HIPBLAS_COMPUTE_32F", "numeric_literal");
    subst("CUBLAS_COMPUTE_32F_FAST_16BF", "HIPBLAS_COMPUTE_32F_FAST_16BF", "numeric_literal");
    subst("CUBLAS_COMPUTE_32F_FAST_16F", "HIPBLAS_COMPUTE_32F_FAST_16F", "numeric_literal");
    subst("CUBLAS_COMPUTE_32F_FAST_TF32", "HIPBLAS_COMPUTE_32F_FAST_TF32", "numeric_literal");
    subst("CUBLAS_COMPUTE_32F_PEDANTIC", "HIPBLAS_COMPUTE_32F_PEDANTIC", "numeric_literal");
    subst("CUBLAS_COMPUTE_32I", "HIPBLAS_COMPUTE_32I", "numeric_literal");
    subst("CUBLAS_COMPUTE_32I_PEDANTIC", "HIPBLAS_COMPUTE_32I_PEDANTIC", "numeric_literal");
    subst("CUBLAS_COMPUTE_64F", "HIPBLAS_COMPUTE_64F", "numeric_literal");
    subst("CUBLAS_COMPUTE_64F_PEDANTIC", "HIPBLAS_COMPUTE_64F_PEDANTIC", "numeric_literal");
    subst("CUBLAS_DEFAULT_MATH", "HIPBLAS_DEFAULT_MATH", "numeric_literal");
    subst("CUBLAS_DIAG_NON_UNIT", "HIPBLAS_DIAG_NON_UNIT", "numeric_literal");
    subst("CUBLAS_DIAG_UNIT", "HIPBLAS_DIAG_UNIT", "numeric_literal");
    subst("CUBLAS_FILL_MODE_FULL", "HIPBLAS_FILL_MODE_FULL", "numeric_literal");
    subst("CUBLAS_FILL_MODE_LOWER", "HIPBLAS_FILL_MODE_LOWER", "numeric_literal");
    subst("CUBLAS_FILL_MODE_UPPER", "HIPBLAS_FILL_MODE_UPPER", "numeric_literal");
    subst("CUBLAS_GEMM_DEFAULT", "HIPBLAS_GEMM_DEFAULT", "numeric_literal");
    subst("CUBLAS_GEMM_DFALT", "HIPBLAS_GEMM_DEFAULT", "numeric_literal");
    subst("CUBLAS_MATH_DISALLOW_REDUCED_PRECISION_REDUCTION", "HIPBLAS_MATH_DISALLOW_REDUCED_PRECISION_REDUCTION", "numeric_literal");
    subst("CUBLAS_OP_C", "HIPBLAS_OP_C", "numeric_literal");
    subst("CUBLAS_OP_HERMITAN", "HIPBLAS_OP_C", "numeric_literal");
    subst("CUBLAS_OP_N", "HIPBLAS_OP_N", "numeric_literal");
    subst("CUBLAS_OP_T", "HIPBLAS_OP_T", "numeric_literal");
    subst("CUBLAS_PEDANTIC_MATH", "HIPBLAS_PEDANTIC_MATH", "numeric_literal");
    subst("CUBLAS_POINTER_MODE_DEVICE", "HIPBLAS_POINTER_MODE_DEVICE", "numeric_literal");
    subst("CUBLAS_POINTER_MODE_HOST", "HIPBLAS_POINTER_MODE_HOST", "numeric_literal");
    subst("CUBLAS_SIDE_LEFT", "HIPBLAS_SIDE_LEFT", "numeric_literal");
    subst("CUBLAS_SIDE_RIGHT", "HIPBLAS_SIDE_RIGHT", "numeric_literal");
    subst("CUBLAS_STATUS_ALLOC_FAILED", "HIPBLAS_STATUS_ALLOC_FAILED", "numeric_literal");
    subst("CUBLAS_STATUS_ARCH_MISMATCH", "HIPBLAS_STATUS_ARCH_MISMATCH", "numeric_literal");
    subst("CUBLAS_STATUS_EXECUTION_FAILED", "HIPBLAS_STATUS_EXECUTION_FAILED", "numeric_literal");
    subst("CUBLAS_STATUS_INTERNAL_ERROR", "HIPBLAS_STATUS_INTERNAL_ERROR", "numeric_literal");
    subst("CUBLAS_STATUS_INVALID_VALUE", "HIPBLAS_STATUS_INVALID_VALUE", "numeric_literal");
    subst("CUBLAS_STATUS_LICENSE_ERROR", "HIPBLAS_STATUS_UNKNOWN", "numeric_literal");
    subst("CUBLAS_STATUS_MAPPING_ERROR", "HIPBLAS_STATUS_MAPPING_ERROR", "numeric_literal");
    subst("CUBLAS_STATUS_NOT_INITIALIZED", "HIPBLAS_STATUS_NOT_INITIALIZED", "numeric_literal");
    subst("CUBLAS_STATUS_NOT_SUPPORTED", "HIPBLAS_STATUS_NOT_SUPPORTED", "numeric_literal");
    subst("CUBLAS_STATUS_SUCCESS", "HIPBLAS_STATUS_SUCCESS", "numeric_literal");
    subst("CUBLAS_TENSOR_OP_MATH", "HIPBLAS_TENSOR_OP_MATH", "numeric_literal");
    subst("CUBLAS_TF32_TENSOR_OP_MATH", "HIPBLAS_TF32_TENSOR_OP_MATH", "numeric_literal");
    subst("CUDA_C_16BF", "HIP_C_16BF", "numeric_literal");
    subst("CUDA_C_16F", "HIP_C_16F", "numeric_literal");
    subst("CUDA_C_32F", "HIP_C_32F", "numeric_literal");
    subst("CUDA_C_32I", "HIP_C_32I", "numeric_literal");
    subst("CUDA_C_32U", "HIP_C_32U", "numeric_literal");
    subst("CUDA_C_64F", "HIP_C_64F", "numeric_literal");
    subst("CUDA_C_8I", "HIP_C_8I", "numeric_literal");
    subst("CUDA_C_8U", "HIP_C_8U", "numeric_literal");
    subst("CUDA_ERROR_ALREADY_ACQUIRED", "hipErrorAlreadyAcquired", "numeric_literal");
    subst("CUDA_ERROR_ALREADY_MAPPED", "hipErrorAlreadyMapped", "numeric_literal");
    subst("CUDA_ERROR_ARRAY_IS_MAPPED", "hipErrorArrayIsMapped", "numeric_literal");
    subst("CUDA_ERROR_ASSERT", "hipErrorAssert", "numeric_literal");
    subst("CUDA_ERROR_CAPTURED_EVENT", "hipErrorCapturedEvent", "numeric_literal");
    subst("CUDA_ERROR_CONTEXT_ALREADY_CURRENT", "hipErrorContextAlreadyCurrent", "numeric_literal");
    subst("CUDA_ERROR_CONTEXT_ALREADY_IN_USE", "hipErrorContextAlreadyInUse", "numeric_literal");
    subst("CUDA_ERROR_CONTEXT_IS_DESTROYED", "hipErrorContextIsDestroyed", "numeric_literal");
    subst("CUDA_ERROR_COOPERATIVE_LAUNCH_TOO_LARGE", "hipErrorCooperativeLaunchTooLarge", "numeric_literal");
    subst("CUDA_ERROR_DEINITIALIZED", "hipErrorDeinitialized", "numeric_literal");
    subst("CUDA_ERROR_ECC_UNCORRECTABLE", "hipErrorECCNotCorrectable", "numeric_literal");
    subst("CUDA_ERROR_FILE_NOT_FOUND", "hipErrorFileNotFound", "numeric_literal");
    subst("CUDA_ERROR_GRAPH_EXEC_UPDATE_FAILURE", "hipErrorGraphExecUpdateFailure", "numeric_literal");
    subst("CUDA_ERROR_HOST_MEMORY_ALREADY_REGISTERED", "hipErrorHostMemoryAlreadyRegistered", "numeric_literal");
    subst("CUDA_ERROR_HOST_MEMORY_NOT_REGISTERED", "hipErrorHostMemoryNotRegistered", "numeric_literal");
    subst("CUDA_ERROR_ILLEGAL_ADDRESS", "hipErrorIllegalAddress", "numeric_literal");
    subst("CUDA_ERROR_ILLEGAL_STATE", "hipErrorIllegalState", "numeric_literal");
    subst("CUDA_ERROR_INVALID_CONTEXT", "hipErrorInvalidContext", "numeric_literal");
    subst("CUDA_ERROR_INVALID_DEVICE", "hipErrorInvalidDevice", "numeric_literal");
    subst("CUDA_ERROR_INVALID_GRAPHICS_CONTEXT", "hipErrorInvalidGraphicsContext", "numeric_literal");
    subst("CUDA_ERROR_INVALID_HANDLE", "hipErrorInvalidHandle", "numeric_literal");
    subst("CUDA_ERROR_INVALID_IMAGE", "hipErrorInvalidImage", "numeric_literal");
    subst("CUDA_ERROR_INVALID_PTX", "hipErrorInvalidKernelFile", "numeric_literal");
    subst("CUDA_ERROR_INVALID_SOURCE", "hipErrorInvalidSource", "numeric_literal");
    subst("CUDA_ERROR_INVALID_VALUE", "hipErrorInvalidValue", "numeric_literal");
    subst("CUDA_ERROR_LAUNCH_FAILED", "hipErrorLaunchFailure", "numeric_literal");
    subst("CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES", "hipErrorLaunchOutOfResources", "numeric_literal");
    subst("CUDA_ERROR_LAUNCH_TIMEOUT", "hipErrorLaunchTimeOut", "numeric_literal");
    subst("CUDA_ERROR_MAP_FAILED", "hipErrorMapFailed", "numeric_literal");
    subst("CUDA_ERROR_NOT_FOUND", "hipErrorNotFound", "numeric_literal");
    subst("CUDA_ERROR_NOT_INITIALIZED", "hipErrorNotInitialized", "numeric_literal");
    subst("CUDA_ERROR_NOT_MAPPED", "hipErrorNotMapped", "numeric_literal");
    subst("CUDA_ERROR_NOT_MAPPED_AS_ARRAY", "hipErrorNotMappedAsArray", "numeric_literal");
    subst("CUDA_ERROR_NOT_MAPPED_AS_POINTER", "hipErrorNotMappedAsPointer", "numeric_literal");
    subst("CUDA_ERROR_NOT_READY", "hipErrorNotReady", "numeric_literal");
    subst("CUDA_ERROR_NOT_SUPPORTED", "hipErrorNotSupported", "numeric_literal");
    subst("CUDA_ERROR_NO_BINARY_FOR_GPU", "hipErrorNoBinaryForGpu", "numeric_literal");
    subst("CUDA_ERROR_NO_DEVICE", "hipErrorNoDevice", "numeric_literal");
    subst("CUDA_ERROR_OPERATING_SYSTEM", "hipErrorOperatingSystem", "numeric_literal");
    subst("CUDA_ERROR_OUT_OF_MEMORY", "hipErrorOutOfMemory", "numeric_literal");
    subst("CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED", "hipErrorPeerAccessAlreadyEnabled", "numeric_literal");
    subst("CUDA_ERROR_PEER_ACCESS_NOT_ENABLED", "hipErrorPeerAccessNotEnabled", "numeric_literal");
    subst("CUDA_ERROR_PEER_ACCESS_UNSUPPORTED", "hipErrorPeerAccessUnsupported", "numeric_literal");
    subst("CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE", "hipErrorSetOnActiveProcess", "numeric_literal");
    subst("CUDA_ERROR_PROFILER_ALREADY_STARTED", "hipErrorProfilerAlreadyStarted", "numeric_literal");
    subst("CUDA_ERROR_PROFILER_ALREADY_STOPPED", "hipErrorProfilerAlreadyStopped", "numeric_literal");
    subst("CUDA_ERROR_PROFILER_DISABLED", "hipErrorProfilerDisabled", "numeric_literal");
    subst("CUDA_ERROR_PROFILER_NOT_INITIALIZED", "hipErrorProfilerNotInitialized", "numeric_literal");
    subst("CUDA_ERROR_SHARED_OBJECT_INIT_FAILED", "hipErrorSharedObjectInitFailed", "numeric_literal");
    subst("CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND", "hipErrorSharedObjectSymbolNotFound", "numeric_literal");
    subst("CUDA_ERROR_STREAM_CAPTURE_IMPLICIT", "hipErrorStreamCaptureImplicit", "numeric_literal");
    subst("CUDA_ERROR_STREAM_CAPTURE_INVALIDATED", "hipErrorStreamCaptureInvalidated", "numeric_literal");
    subst("CUDA_ERROR_STREAM_CAPTURE_ISOLATION", "hipErrorStreamCaptureIsolation", "numeric_literal");
    subst("CUDA_ERROR_STREAM_CAPTURE_MERGE", "hipErrorStreamCaptureMerge", "numeric_literal");
    subst("CUDA_ERROR_STREAM_CAPTURE_UNJOINED", "hipErrorStreamCaptureUnjoined", "numeric_literal");
    subst("CUDA_ERROR_STREAM_CAPTURE_UNMATCHED", "hipErrorStreamCaptureUnmatched", "numeric_literal");
    subst("CUDA_ERROR_STREAM_CAPTURE_UNSUPPORTED", "hipErrorStreamCaptureUnsupported", "numeric_literal");
    subst("CUDA_ERROR_STREAM_CAPTURE_WRONG_THREAD", "hipErrorStreamCaptureWrongThread", "numeric_literal");
    subst("CUDA_ERROR_UNKNOWN", "hipErrorUnknown", "numeric_literal");
    subst("CUDA_ERROR_UNMAP_FAILED", "hipErrorUnmapFailed", "numeric_literal");
    subst("CUDA_ERROR_UNSUPPORTED_LIMIT", "hipErrorUnsupportedLimit", "numeric_literal");
    subst("CUDA_GRAPH_INSTANTIATE_ERROR", "hipGraphInstantiateError", "numeric_literal");
    subst("CUDA_GRAPH_INSTANTIATE_FLAG_AUTO_FREE_ON_LAUNCH", "hipGraphInstantiateFlagAutoFreeOnLaunch", "numeric_literal");
    subst("CUDA_GRAPH_INSTANTIATE_FLAG_DEVICE_LAUNCH", "hipGraphInstantiateFlagDeviceLaunch", "numeric_literal");
    subst("CUDA_GRAPH_INSTANTIATE_FLAG_UPLOAD", "hipGraphInstantiateFlagUpload", "numeric_literal");
    subst("CUDA_GRAPH_INSTANTIATE_FLAG_USE_NODE_PRIORITY", "hipGraphInstantiateFlagUseNodePriority", "numeric_literal");
    subst("CUDA_GRAPH_INSTANTIATE_INVALID_STRUCTURE", "hipGraphInstantiateInvalidStructure", "numeric_literal");
    subst("CUDA_GRAPH_INSTANTIATE_MULTIPLE_CTXS_NOT_SUPPORTED", "hipGraphInstantiateMultipleDevicesNotSupported", "numeric_literal");
    subst("CUDA_GRAPH_INSTANTIATE_NODE_OPERATION_NOT_SUPPORTED", "hipGraphInstantiateNodeOperationNotSupported", "numeric_literal");
    subst("CUDA_GRAPH_INSTANTIATE_SUCCESS", "hipGraphInstantiateSuccess", "numeric_literal");
    subst("CUDA_R_16BF", "HIP_R_16BF", "numeric_literal");
    subst("CUDA_R_16F", "HIP_R_16F", "numeric_literal");
    subst("CUDA_R_32F", "HIP_R_32F", "numeric_literal");
    subst("CUDA_R_32I", "HIP_R_32I", "numeric_literal");
    subst("CUDA_R_32U", "HIP_R_32U", "numeric_literal");
    subst("CUDA_R_64F", "HIP_R_64F", "numeric_literal");
    subst("CUDA_R_8I", "HIP_R_8I", "numeric_literal");
    subst("CUDA_R_8U", "HIP_R_8U", "numeric_literal");
    subst("CUDA_SUCCESS", "hipSuccess", "numeric_literal");
    subst("CUDNN_16BIT_INDICES", "HIPDNN_16BIT_INDICES", "numeric_literal");
    subst("CUDNN_32BIT_INDICES", "HIPDNN_32BIT_INDICES", "numeric_literal");
    subst("CUDNN_64BIT_INDICES", "HIPDNN_64BIT_INDICES", "numeric_literal");
    subst("CUDNN_8BIT_INDICES", "HIPDNN_8BIT_INDICES", "numeric_literal");
    subst("CUDNN_ACTIVATION_CLIPPED_RELU", "HIPDNN_ACTIVATION_CLIPPED_RELU", "numeric_literal");
    subst("CUDNN_ACTIVATION_ELU", "HIPDNN_ACTIVATION_ELU", "numeric_literal");
    subst("CUDNN_ACTIVATION_IDENTITY", "HIPDNN_ACTIVATION_PATHTRU", "numeric_literal");
    subst("CUDNN_ACTIVATION_RELU", "HIPDNN_ACTIVATION_RELU", "numeric_literal");
    subst("CUDNN_ACTIVATION_SIGMOID", "HIPDNN_ACTIVATION_SIGMOID", "numeric_literal");
    subst("CUDNN_ACTIVATION_SWISH", "HIPDNN_ACTIVATION_SWISH", "numeric_literal");
    subst("CUDNN_ACTIVATION_TANH", "HIPDNN_ACTIVATION_TANH", "numeric_literal");
    subst("CUDNN_BATCHNORM_PER_ACTIVATION", "HIPDNN_BATCHNORM_PER_ACTIVATION", "numeric_literal");
    subst("CUDNN_BATCHNORM_SPATIAL", "HIPDNN_BATCHNORM_SPATIAL", "numeric_literal");
    subst("CUDNN_BATCHNORM_SPATIAL_PERSISTENT", "HIPDNN_BATCHNORM_SPATIAL_PERSISTENT", "numeric_literal");
    subst("CUDNN_BIDIRECTIONAL", "HIPDNN_BIDIRECTIONAL", "numeric_literal");
    subst("CUDNN_BN_MIN_EPSILON", "HIPDNN_BN_MIN_EPSILON", "numeric_literal");
    subst("CUDNN_CONVOLUTION", "HIPDNN_CONVOLUTION", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_0", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_0", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_1", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_1", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_COUNT", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_TRANSPOSE_GEMM", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_FFT", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_FFT", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_FFT_TILING", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_FFT_TILING", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_WINOGRAD", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_WINOGRAD", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_WINOGRAD_NONFUSED", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_WINOGRAD_NONFUSED", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_NO_WORKSPACE", "HIPDNN_CONVOLUTION_BWD_DATA_NO_WORKSPACE", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_PREFER_FASTEST", "HIPDNN_CONVOLUTION_BWD_DATA_PREFER_FASTEST", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_SPECIFY_WORKSPACE_LIMIT", "HIPDNN_CONVOLUTION_BWD_DATA_SPECIFY_WORKSPACE_LIMIT", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_0", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_0", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_1", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_1", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_3", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_3", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_COUNT", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_COUNT", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT_TILING", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT_TILING", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD_NONFUSED", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD_NONFUSED", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_FILTER_NO_WORKSPACE", "HIPDNN_CONVOLUTION_BWD_FILTER_NO_WORKSPACE", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_FILTER_PREFER_FASTEST", "HIPDNN_CONVOLUTION_BWD_FILTER_PREFER_FASTEST", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_FILTER_SPECIFY_WORKSPACE_LIMIT", "HIPDNN_CONVOLUTION_BWD_FILTER_SPECIFY_WORKSPACE_LIMIT", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_COUNT", "HIPDNN_CONVOLUTION_FWD_ALGO_COUNT", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_DIRECT", "HIPDNN_CONVOLUTION_FWD_ALGO_DIRECT", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_FFT", "HIPDNN_CONVOLUTION_FWD_ALGO_FFT", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_FFT_TILING", "HIPDNN_CONVOLUTION_FWD_ALGO_FFT_TILING", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_GEMM", "HIPDNN_CONVOLUTION_FWD_ALGO_GEMM", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_GEMM", "HIPDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_GEMM", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_PRECOMP_GEMM", "HIPDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_PRECOMP_GEMM", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_WINOGRAD", "HIPDNN_CONVOLUTION_FWD_ALGO_WINOGRAD", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_ALGO_WINOGRAD_NONFUSED", "HIPDNN_CONVOLUTION_FWD_ALGO_WINOGRAD_NONFUSED", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_NO_WORKSPACE", "HIPDNN_CONVOLUTION_FWD_NO_WORKSPACE", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_PREFER_FASTEST", "HIPDNN_CONVOLUTION_FWD_PREFER_FASTEST", "numeric_literal");
    subst("CUDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT", "HIPDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT", "numeric_literal");
    subst("CUDNN_CROSS_CORRELATION", "HIPDNN_CROSS_CORRELATION", "numeric_literal");
    subst("CUDNN_DATA_DOUBLE", "HIPDNN_DATA_DOUBLE", "numeric_literal");
    subst("CUDNN_DATA_FLOAT", "HIPDNN_DATA_FLOAT", "numeric_literal");
    subst("CUDNN_DATA_HALF", "HIPDNN_DATA_HALF", "numeric_literal");
    subst("CUDNN_DATA_INT32", "HIPDNN_DATA_INT32", "numeric_literal");
    subst("CUDNN_DATA_INT8", "HIPDNN_DATA_INT8", "numeric_literal");
    subst("CUDNN_DATA_INT8x4", "HIPDNN_DATA_INT8x4", "numeric_literal");
    subst("CUDNN_DEFAULT_MATH", "HIPDNN_DEFAULT_MATH", "numeric_literal");
    subst("CUDNN_GRU", "HIPDNN_GRU", "numeric_literal");
    subst("CUDNN_LINEAR_INPUT", "HIPDNN_LINEAR_INPUT", "numeric_literal");
    subst("CUDNN_LRN_CROSS_CHANNEL_DIM1", "HIPDNN_LRN_CROSS_CHANNEL", "numeric_literal");
    subst("CUDNN_LSTM", "HIPDNN_LSTM", "numeric_literal");
    subst("CUDNN_NOT_PROPAGATE_NAN", "HIPDNN_NOT_PROPAGATE_NAN", "numeric_literal");
    subst("CUDNN_OP_TENSOR_ADD", "HIPDNN_OP_TENSOR_ADD", "numeric_literal");
    subst("CUDNN_OP_TENSOR_MAX", "HIPDNN_OP_TENSOR_MAX", "numeric_literal");
    subst("CUDNN_OP_TENSOR_MIN", "HIPDNN_OP_TENSOR_MIN", "numeric_literal");
    subst("CUDNN_OP_TENSOR_MUL", "HIPDNN_OP_TENSOR_MUL", "numeric_literal");
    subst("CUDNN_OP_TENSOR_SQRT", "HIPDNN_OP_TENSOR_SQRT", "numeric_literal");
    subst("CUDNN_POOLING_AVERAGE_COUNT_EXCLUDE_PADDING", "HIPDNN_POOLING_AVERAGE_COUNT_EXCLUDE_PADDING", "numeric_literal");
    subst("CUDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING", "HIPDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING", "numeric_literal");
    subst("CUDNN_POOLING_MAX", "HIPDNN_POOLING_MAX", "numeric_literal");
    subst("CUDNN_POOLING_MAX_DETERMINISTIC", "HIPDNN_POOLING_MAX_DETERMINISTIC", "numeric_literal");
    subst("CUDNN_PROPAGATE_NAN", "HIPDNN_PROPAGATE_NAN", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_ADD", "HIPDNN_REDUCE_TENSOR_ADD", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_AMAX", "HIPDNN_REDUCE_TENSOR_AMAX", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_AVG", "HIPDNN_REDUCE_TENSOR_AVG", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_FLATTENED_INDICES", "HIPDNN_REDUCE_TENSOR_FLATTENED_INDICES", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_MAX", "HIPDNN_REDUCE_TENSOR_MAX", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_MIN", "HIPDNN_REDUCE_TENSOR_MIN", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_MUL", "HIPDNN_REDUCE_TENSOR_MUL", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_MUL_NO_ZEROS", "HIPDNN_REDUCE_TENSOR_MUL_NO_ZEROS", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_NORM1", "HIPDNN_REDUCE_TENSOR_NORM1", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_NORM2", "HIPDNN_REDUCE_TENSOR_NORM2", "numeric_literal");
    subst("CUDNN_REDUCE_TENSOR_NO_INDICES", "HIPDNN_REDUCE_TENSOR_NO_INDICES", "numeric_literal");
    subst("CUDNN_RNN_ALGO_PERSIST_DYNAMIC", "HIPDNN_RNN_ALGO_PERSIST_DYNAMIC", "numeric_literal");
    subst("CUDNN_RNN_ALGO_PERSIST_STATIC", "HIPDNN_RNN_ALGO_PERSIST_STATIC", "numeric_literal");
    subst("CUDNN_RNN_ALGO_PERSIST_STATIC_SMALL_H", "HIPDNN_RNN_ALGO_PERSIST_STATIC_SMALL_H", "numeric_literal");
    subst("CUDNN_RNN_ALGO_STANDARD", "HIPDNN_RNN_ALGO_STANDARD", "numeric_literal");
    subst("CUDNN_RNN_DOUBLE_BIAS", "HIPDNN_RNN_WITH_BIAS", "numeric_literal");
    subst("CUDNN_RNN_NO_BIAS", "HIPDNN_RNN_NO_BIAS", "numeric_literal");
    subst("CUDNN_RNN_RELU", "HIPDNN_RNN_RELU", "numeric_literal");
    subst("CUDNN_RNN_SINGLE_INP_BIAS", "HIPDNN_RNN_WITH_BIAS", "numeric_literal");
    subst("CUDNN_RNN_SINGLE_REC_BIAS", "HIPDNN_RNN_WITH_BIAS", "numeric_literal");
    subst("CUDNN_RNN_TANH", "HIPDNN_RNN_TANH", "numeric_literal");
    subst("CUDNN_SKIP_INPUT", "HIPDNN_SKIP_INPUT", "numeric_literal");
    subst("CUDNN_SOFTMAX_ACCURATE", "HIPDNN_SOFTMAX_ACCURATE", "numeric_literal");
    subst("CUDNN_SOFTMAX_FAST", "HIPDNN_SOFTMAX_FAST", "numeric_literal");
    subst("CUDNN_SOFTMAX_LOG", "HIPDNN_SOFTMAX_LOG", "numeric_literal");
    subst("CUDNN_SOFTMAX_MODE_CHANNEL", "HIPDNN_SOFTMAX_MODE_CHANNEL", "numeric_literal");
    subst("CUDNN_SOFTMAX_MODE_INSTANCE", "HIPDNN_SOFTMAX_MODE_INSTANCE", "numeric_literal");
    subst("CUDNN_STATUS_ALLOC_FAILED", "HIPDNN_STATUS_ALLOC_FAILED", "numeric_literal");
    subst("CUDNN_STATUS_ARCH_MISMATCH", "HIPDNN_STATUS_ARCH_MISMATCH", "numeric_literal");
    subst("CUDNN_STATUS_BAD_PARAM", "HIPDNN_STATUS_BAD_PARAM", "numeric_literal");
    subst("CUDNN_STATUS_EXECUTION_FAILED", "HIPDNN_STATUS_EXECUTION_FAILED", "numeric_literal");
    subst("CUDNN_STATUS_INTERNAL_ERROR", "HIPDNN_STATUS_INTERNAL_ERROR", "numeric_literal");
    subst("CUDNN_STATUS_INVALID_VALUE", "HIPDNN_STATUS_INVALID_VALUE", "numeric_literal");
    subst("CUDNN_STATUS_LICENSE_ERROR", "HIPDNN_STATUS_LICENSE_ERROR", "numeric_literal");
    subst("CUDNN_STATUS_MAPPING_ERROR", "HIPDNN_STATUS_MAPPING_ERROR", "numeric_literal");
    subst("CUDNN_STATUS_NOT_INITIALIZED", "HIPDNN_STATUS_NOT_INITIALIZED", "numeric_literal");
    subst("CUDNN_STATUS_NOT_SUPPORTED", "HIPDNN_STATUS_NOT_SUPPORTED", "numeric_literal");
    subst("CUDNN_STATUS_RUNTIME_PREREQUISITE_MISSING", "HIPDNN_STATUS_RUNTIME_PREREQUISITE_MISSING", "numeric_literal");
    subst("CUDNN_STATUS_SUCCESS", "HIPDNN_STATUS_SUCCESS", "numeric_literal");
    subst("CUDNN_TENSOR_NCHW", "HIPDNN_TENSOR_NCHW", "numeric_literal");
    subst("CUDNN_TENSOR_NCHW_VECT_C", "HIPDNN_TENSOR_NCHW_VECT_C", "numeric_literal");
    subst("CUDNN_TENSOR_NHWC", "HIPDNN_TENSOR_NHWC", "numeric_literal");
    subst("CUDNN_TENSOR_OP_MATH", "HIPDNN_TENSOR_OP_MATH", "numeric_literal");
    subst("CUDNN_UNIDIRECTIONAL", "HIPDNN_UNIDIRECTIONAL", "numeric_literal");
    subst("CUFFT_ALLOC_FAILED", "HIPFFT_ALLOC_FAILED", "numeric_literal");
    subst("CUFFT_C2C", "HIPFFT_C2C", "numeric_literal");
    subst("CUFFT_C2R", "HIPFFT_C2R", "numeric_literal");
    subst("CUFFT_CB_LD_COMPLEX", "HIPFFT_CB_LD_COMPLEX", "numeric_literal");
    subst("CUFFT_CB_LD_COMPLEX_DOUBLE", "HIPFFT_CB_LD_COMPLEX_DOUBLE", "numeric_literal");
    subst("CUFFT_CB_LD_REAL", "HIPFFT_CB_LD_REAL", "numeric_literal");
    subst("CUFFT_CB_LD_REAL_DOUBLE", "HIPFFT_CB_LD_REAL_DOUBLE", "numeric_literal");
    subst("CUFFT_CB_ST_COMPLEX", "HIPFFT_CB_ST_COMPLEX", "numeric_literal");
    subst("CUFFT_CB_ST_COMPLEX_DOUBLE", "HIPFFT_CB_ST_COMPLEX_DOUBLE", "numeric_literal");
    subst("CUFFT_CB_ST_REAL", "HIPFFT_CB_ST_REAL", "numeric_literal");
    subst("CUFFT_CB_ST_REAL_DOUBLE", "HIPFFT_CB_ST_REAL_DOUBLE", "numeric_literal");
    subst("CUFFT_CB_UNDEFINED", "HIPFFT_CB_UNDEFINED", "numeric_literal");
    subst("CUFFT_D2Z", "HIPFFT_D2Z", "numeric_literal");
    subst("CUFFT_EXEC_FAILED", "HIPFFT_EXEC_FAILED", "numeric_literal");
    subst("CUFFT_FORWARD", "HIPFFT_FORWARD", "numeric_literal");
    subst("CUFFT_INCOMPLETE_PARAMETER_LIST", "HIPFFT_INCOMPLETE_PARAMETER_LIST", "numeric_literal");
    subst("CUFFT_INTERNAL_ERROR", "HIPFFT_INTERNAL_ERROR", "numeric_literal");
    subst("CUFFT_INVALID_DEVICE", "HIPFFT_INVALID_DEVICE", "numeric_literal");
    subst("CUFFT_INVALID_PLAN", "HIPFFT_INVALID_PLAN", "numeric_literal");
    subst("CUFFT_INVALID_SIZE", "HIPFFT_INVALID_SIZE", "numeric_literal");
    subst("CUFFT_INVALID_TYPE", "HIPFFT_INVALID_TYPE", "numeric_literal");
    subst("CUFFT_INVALID_VALUE", "HIPFFT_INVALID_VALUE", "numeric_literal");
    subst("CUFFT_INVERSE", "HIPFFT_BACKWARD", "numeric_literal");
    subst("CUFFT_NOT_IMPLEMENTED", "HIPFFT_NOT_IMPLEMENTED", "numeric_literal");
    subst("CUFFT_NOT_SUPPORTED", "HIPFFT_NOT_SUPPORTED", "numeric_literal");
    subst("CUFFT_NO_WORKSPACE", "HIPFFT_NO_WORKSPACE", "numeric_literal");
    subst("CUFFT_PARSE_ERROR", "HIPFFT_PARSE_ERROR", "numeric_literal");
    subst("CUFFT_R2C", "HIPFFT_R2C", "numeric_literal");
    subst("CUFFT_SETUP_FAILED", "HIPFFT_SETUP_FAILED", "numeric_literal");
    subst("CUFFT_SUCCESS", "HIPFFT_SUCCESS", "numeric_literal");
    subst("CUFFT_UNALIGNED_DATA", "HIPFFT_UNALIGNED_DATA", "numeric_literal");
    subst("CUFFT_Z2D", "HIPFFT_Z2D", "numeric_literal");
    subst("CUFFT_Z2Z", "HIPFFT_Z2Z", "numeric_literal");
    subst("CURAND_DIRECTION_VECTORS_32_JOEKUO6", "HIPRAND_DIRECTION_VECTORS_32_JOEKUO6", "numeric_literal");
    subst("CURAND_DIRECTION_VECTORS_64_JOEKUO6", "HIPRAND_DIRECTION_VECTORS_64_JOEKUO6", "numeric_literal");
    subst("CURAND_ORDERING_PSEUDO_BEST", "HIPRAND_ORDERING_PSEUDO_BEST", "numeric_literal");
    subst("CURAND_ORDERING_PSEUDO_DEFAULT", "HIPRAND_ORDERING_PSEUDO_DEFAULT", "numeric_literal");
    subst("CURAND_ORDERING_PSEUDO_DYNAMIC", "HIPRAND_ORDERING_PSEUDO_DYNAMIC", "numeric_literal");
    subst("CURAND_ORDERING_PSEUDO_LEGACY", "HIPRAND_ORDERING_PSEUDO_LEGACY", "numeric_literal");
    subst("CURAND_ORDERING_PSEUDO_SEEDED", "HIPRAND_ORDERING_PSEUDO_SEEDED", "numeric_literal");
    subst("CURAND_ORDERING_QUASI_DEFAULT", "HIPRAND_ORDERING_QUASI_DEFAULT", "numeric_literal");
    subst("CURAND_RNG_PSEUDO_DEFAULT", "HIPRAND_RNG_PSEUDO_DEFAULT", "numeric_literal");
    subst("CURAND_RNG_PSEUDO_MRG32K3A", "HIPRAND_RNG_PSEUDO_MRG32K3A", "numeric_literal");
    subst("CURAND_RNG_PSEUDO_MT19937", "HIPRAND_RNG_PSEUDO_MT19937", "numeric_literal");
    subst("CURAND_RNG_PSEUDO_MTGP32", "HIPRAND_RNG_PSEUDO_MTGP32", "numeric_literal");
    subst("CURAND_RNG_PSEUDO_PHILOX4_32_10", "HIPRAND_RNG_PSEUDO_PHILOX4_32_10", "numeric_literal");
    subst("CURAND_RNG_PSEUDO_XORWOW", "HIPRAND_RNG_PSEUDO_XORWOW", "numeric_literal");
    subst("CURAND_RNG_QUASI_DEFAULT", "HIPRAND_RNG_QUASI_DEFAULT", "numeric_literal");
    subst("CURAND_RNG_QUASI_SCRAMBLED_SOBOL32", "HIPRAND_RNG_QUASI_SCRAMBLED_SOBOL32", "numeric_literal");
    subst("CURAND_RNG_QUASI_SCRAMBLED_SOBOL64", "HIPRAND_RNG_QUASI_SCRAMBLED_SOBOL64", "numeric_literal");
    subst("CURAND_RNG_QUASI_SOBOL32", "HIPRAND_RNG_QUASI_SOBOL32", "numeric_literal");
    subst("CURAND_RNG_QUASI_SOBOL64", "HIPRAND_RNG_QUASI_SOBOL64", "numeric_literal");
    subst("CURAND_RNG_TEST", "HIPRAND_RNG_TEST", "numeric_literal");
    subst("CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6", "HIPRAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6", "numeric_literal");
    subst("CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6", "HIPRAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6", "numeric_literal");
    subst("CURAND_STATUS_ALLOCATION_FAILED", "HIPRAND_STATUS_ALLOCATION_FAILED", "numeric_literal");
    subst("CURAND_STATUS_ARCH_MISMATCH", "HIPRAND_STATUS_ARCH_MISMATCH", "numeric_literal");
    subst("CURAND_STATUS_DOUBLE_PRECISION_REQUIRED", "HIPRAND_STATUS_DOUBLE_PRECISION_REQUIRED", "numeric_literal");
    subst("CURAND_STATUS_INITIALIZATION_FAILED", "HIPRAND_STATUS_INITIALIZATION_FAILED", "numeric_literal");
    subst("CURAND_STATUS_INTERNAL_ERROR", "HIPRAND_STATUS_INTERNAL_ERROR", "numeric_literal");
    subst("CURAND_STATUS_LAUNCH_FAILURE", "HIPRAND_STATUS_LAUNCH_FAILURE", "numeric_literal");
    subst("CURAND_STATUS_LENGTH_NOT_MULTIPLE", "HIPRAND_STATUS_LENGTH_NOT_MULTIPLE", "numeric_literal");
    subst("CURAND_STATUS_NOT_INITIALIZED", "HIPRAND_STATUS_NOT_INITIALIZED", "numeric_literal");
    subst("CURAND_STATUS_OUT_OF_RANGE", "HIPRAND_STATUS_OUT_OF_RANGE", "numeric_literal");
    subst("CURAND_STATUS_PREEXISTING_FAILURE", "HIPRAND_STATUS_PREEXISTING_FAILURE", "numeric_literal");
    subst("CURAND_STATUS_SUCCESS", "HIPRAND_STATUS_SUCCESS", "numeric_literal");
    subst("CURAND_STATUS_TYPE_ERROR", "HIPRAND_STATUS_TYPE_ERROR", "numeric_literal");
    subst("CURAND_STATUS_VERSION_MISMATCH", "HIPRAND_STATUS_VERSION_MISMATCH", "numeric_literal");
    subst("CUSOLVERDN_GETRF", "HIPSOLVERDN_GETRF", "numeric_literal");
    subst("CUSOLVERRF_FACTORIZATION_ALG0", "HIPSOLVERRF_FACTORIZATION_ALG0", "numeric_literal");
    subst("CUSOLVERRF_FACTORIZATION_ALG1", "HIPSOLVERRF_FACTORIZATION_ALG1", "numeric_literal");
    subst("CUSOLVERRF_FACTORIZATION_ALG2", "HIPSOLVERRF_FACTORIZATION_ALG2", "numeric_literal");
    subst("CUSOLVERRF_MATRIX_FORMAT_CSC", "HIPSOLVERRF_MATRIX_FORMAT_CSC", "numeric_literal");
    subst("CUSOLVERRF_MATRIX_FORMAT_CSR", "HIPSOLVERRF_MATRIX_FORMAT_CSR", "numeric_literal");
    subst("CUSOLVERRF_NUMERIC_BOOST_NOT_USED", "HIPSOLVERRF_NUMERIC_BOOST_NOT_USED", "numeric_literal");
    subst("CUSOLVERRF_NUMERIC_BOOST_USED", "HIPSOLVERRF_NUMERIC_BOOST_USED", "numeric_literal");
    subst("CUSOLVERRF_RESET_VALUES_FAST_MODE_OFF", "HIPSOLVERRF_RESET_VALUES_FAST_MODE_OFF", "numeric_literal");
    subst("CUSOLVERRF_RESET_VALUES_FAST_MODE_ON", "HIPSOLVERRF_RESET_VALUES_FAST_MODE_ON", "numeric_literal");
    subst("CUSOLVERRF_TRIANGULAR_SOLVE_ALG1", "HIPSOLVERRF_TRIANGULAR_SOLVE_ALG1", "numeric_literal");
    subst("CUSOLVERRF_TRIANGULAR_SOLVE_ALG2", "HIPSOLVERRF_TRIANGULAR_SOLVE_ALG2", "numeric_literal");
    subst("CUSOLVERRF_TRIANGULAR_SOLVE_ALG3", "HIPSOLVERRF_TRIANGULAR_SOLVE_ALG3", "numeric_literal");
    subst("CUSOLVERRF_UNIT_DIAGONAL_ASSUMED_L", "HIPSOLVERRF_UNIT_DIAGONAL_ASSUMED_L", "numeric_literal");
    subst("CUSOLVERRF_UNIT_DIAGONAL_ASSUMED_U", "HIPSOLVERRF_UNIT_DIAGONAL_ASSUMED_U", "numeric_literal");
    subst("CUSOLVERRF_UNIT_DIAGONAL_STORED_L", "HIPSOLVERRF_UNIT_DIAGONAL_STORED_L", "numeric_literal");
    subst("CUSOLVERRF_UNIT_DIAGONAL_STORED_U", "HIPSOLVERRF_UNIT_DIAGONAL_STORED_U", "numeric_literal");
    subst("CUSOLVER_ALG_0", "HIPSOLVER_ALG_0", "numeric_literal");
    subst("CUSOLVER_ALG_1", "HIPSOLVER_ALG_1", "numeric_literal");
    subst("CUSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS", "HIPSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS", "numeric_literal");
    subst("CUSOLVER_DETERMINISTIC_RESULTS", "HIPSOLVER_DETERMINISTIC_RESULTS", "numeric_literal");
    subst("CUSOLVER_EIG_MODE_NOVECTOR", "HIPSOLVER_EIG_MODE_NOVECTOR", "numeric_literal");
    subst("CUSOLVER_EIG_MODE_VECTOR", "HIPSOLVER_EIG_MODE_VECTOR", "numeric_literal");
    subst("CUSOLVER_EIG_RANGE_ALL", "HIPSOLVER_EIG_RANGE_ALL", "numeric_literal");
    subst("CUSOLVER_EIG_RANGE_I", "HIPSOLVER_EIG_RANGE_I", "numeric_literal");
    subst("CUSOLVER_EIG_RANGE_V", "HIPSOLVER_EIG_RANGE_V", "numeric_literal");
    subst("CUSOLVER_EIG_TYPE_1", "HIPSOLVER_EIG_TYPE_1", "numeric_literal");
    subst("CUSOLVER_EIG_TYPE_2", "HIPSOLVER_EIG_TYPE_2", "numeric_literal");
    subst("CUSOLVER_EIG_TYPE_3", "HIPSOLVER_EIG_TYPE_3", "numeric_literal");
    subst("CUSOLVER_STATUS_ALLOC_FAILED", "HIPSOLVER_STATUS_ALLOC_FAILED", "numeric_literal");
    subst("CUSOLVER_STATUS_ARCH_MISMATCH", "HIPSOLVER_STATUS_ARCH_MISMATCH", "numeric_literal");
    subst("CUSOLVER_STATUS_EXECUTION_FAILED", "HIPSOLVER_STATUS_EXECUTION_FAILED", "numeric_literal");
    subst("CUSOLVER_STATUS_INTERNAL_ERROR", "HIPSOLVER_STATUS_INTERNAL_ERROR", "numeric_literal");
    subst("CUSOLVER_STATUS_INVALID_VALUE", "HIPSOLVER_STATUS_INVALID_VALUE", "numeric_literal");
    subst("CUSOLVER_STATUS_IRS_INTERNAL_ERROR", "HIPSOLVER_STATUS_INTERNAL_ERROR", "numeric_literal");
    subst("CUSOLVER_STATUS_IRS_NOT_SUPPORTED", "HIPSOLVER_STATUS_NOT_SUPPORTED", "numeric_literal");
    subst("CUSOLVER_STATUS_IRS_PARAMS_INVALID", "HIPSOLVER_STATUS_INVALID_VALUE", "numeric_literal");
    subst("CUSOLVER_STATUS_MAPPING_ERROR", "HIPSOLVER_STATUS_MAPPING_ERROR", "numeric_literal");
    subst("CUSOLVER_STATUS_MATRIX_TYPE_NOT_SUPPORTED", "HIPSOLVER_STATUS_MATRIX_TYPE_NOT_SUPPORTED", "numeric_literal");
    subst("CUSOLVER_STATUS_NOT_INITIALIZED", "HIPSOLVER_STATUS_NOT_INITIALIZED", "numeric_literal");
    subst("CUSOLVER_STATUS_NOT_SUPPORTED", "HIPSOLVER_STATUS_NOT_SUPPORTED", "numeric_literal");
    subst("CUSOLVER_STATUS_SUCCESS", "HIPSOLVER_STATUS_SUCCESS", "numeric_literal");
    subst("CUSOLVER_STATUS_ZERO_PIVOT", "HIPSOLVER_STATUS_ZERO_PIVOT", "numeric_literal");
    subst("CUSPARSE_ACTION_NUMERIC", "HIPSPARSE_ACTION_NUMERIC", "numeric_literal");
    subst("CUSPARSE_ACTION_SYMBOLIC", "HIPSPARSE_ACTION_SYMBOLIC", "numeric_literal");
    subst("CUSPARSE_COOMM_ALG1", "HIPSPARSE_COOMM_ALG1", "numeric_literal");
    subst("CUSPARSE_COOMM_ALG2", "HIPSPARSE_COOMM_ALG2", "numeric_literal");
    subst("CUSPARSE_COOMM_ALG3", "HIPSPARSE_COOMM_ALG3", "numeric_literal");
    subst("CUSPARSE_COOMV_ALG", "HIPSPARSE_COOMV_ALG", "numeric_literal");
    subst("CUSPARSE_CSR2CSC_ALG1", "HIPSPARSE_CSR2CSC_ALG1", "numeric_literal");
    subst("CUSPARSE_CSR2CSC_ALG2", "HIPSPARSE_CSR2CSC_ALG2", "numeric_literal");
    subst("CUSPARSE_CSR2CSC_ALG_DEFAULT", "HIPSPARSE_CSR2CSC_ALG_DEFAULT", "numeric_literal");
    subst("CUSPARSE_CSRMM_ALG1", "HIPSPARSE_CSRMM_ALG1", "numeric_literal");
    subst("CUSPARSE_CSRMV_ALG1", "HIPSPARSE_CSRMV_ALG1", "numeric_literal");
    subst("CUSPARSE_CSRMV_ALG2", "HIPSPARSE_CSRMV_ALG2", "numeric_literal");
    subst("CUSPARSE_DENSETOSPARSE_ALG_DEFAULT", "HIPSPARSE_DENSETOSPARSE_ALG_DEFAULT", "numeric_literal");
    subst("CUSPARSE_DIAG_TYPE_NON_UNIT", "HIPSPARSE_DIAG_TYPE_NON_UNIT", "numeric_literal");
    subst("CUSPARSE_DIAG_TYPE_UNIT", "HIPSPARSE_DIAG_TYPE_UNIT", "numeric_literal");
    subst("CUSPARSE_DIRECTION_COLUMN", "HIPSPARSE_DIRECTION_COLUMN", "numeric_literal");
    subst("CUSPARSE_DIRECTION_ROW", "HIPSPARSE_DIRECTION_ROW", "numeric_literal");
    subst("CUSPARSE_FILL_MODE_LOWER", "HIPSPARSE_FILL_MODE_LOWER", "numeric_literal");
    subst("CUSPARSE_FILL_MODE_UPPER", "HIPSPARSE_FILL_MODE_UPPER", "numeric_literal");
    subst("CUSPARSE_FORMAT_BLOCKED_ELL", "HIPSPARSE_FORMAT_BLOCKED_ELL", "numeric_literal");
    subst("CUSPARSE_FORMAT_COO", "HIPSPARSE_FORMAT_COO", "numeric_literal");
    subst("CUSPARSE_FORMAT_COO_AOS", "HIPSPARSE_FORMAT_COO_AOS", "numeric_literal");
    subst("CUSPARSE_FORMAT_CSC", "HIPSPARSE_FORMAT_CSC", "numeric_literal");
    subst("CUSPARSE_FORMAT_CSR", "HIPSPARSE_FORMAT_CSR", "numeric_literal");
    subst("CUSPARSE_HYB_PARTITION_AUTO", "HIPSPARSE_HYB_PARTITION_AUTO", "numeric_literal");
    subst("CUSPARSE_HYB_PARTITION_MAX", "HIPSPARSE_HYB_PARTITION_MAX", "numeric_literal");
    subst("CUSPARSE_HYB_PARTITION_USER", "HIPSPARSE_HYB_PARTITION_USER", "numeric_literal");
    subst("CUSPARSE_INDEX_16U", "HIPSPARSE_INDEX_16U", "numeric_literal");
    subst("CUSPARSE_INDEX_32I", "HIPSPARSE_INDEX_32I", "numeric_literal");
    subst("CUSPARSE_INDEX_64I", "HIPSPARSE_INDEX_64I", "numeric_literal");
    subst("CUSPARSE_INDEX_BASE_ONE", "HIPSPARSE_INDEX_BASE_ONE", "numeric_literal");
    subst("CUSPARSE_INDEX_BASE_ZERO", "HIPSPARSE_INDEX_BASE_ZERO", "numeric_literal");
    subst("CUSPARSE_MATRIX_TYPE_GENERAL", "HIPSPARSE_MATRIX_TYPE_GENERAL", "numeric_literal");
    subst("CUSPARSE_MATRIX_TYPE_HERMITIAN", "HIPSPARSE_MATRIX_TYPE_HERMITIAN", "numeric_literal");
    subst("CUSPARSE_MATRIX_TYPE_SYMMETRIC", "HIPSPARSE_MATRIX_TYPE_SYMMETRIC", "numeric_literal");
    subst("CUSPARSE_MATRIX_TYPE_TRIANGULAR", "HIPSPARSE_MATRIX_TYPE_TRIANGULAR", "numeric_literal");
    subst("CUSPARSE_MM_ALG_DEFAULT", "HIPSPARSE_MM_ALG_DEFAULT", "numeric_literal");
    subst("CUSPARSE_MV_ALG_DEFAULT", "HIPSPARSE_MV_ALG_DEFAULT", "numeric_literal");
    subst("CUSPARSE_OPERATION_CONJUGATE_TRANSPOSE", "HIPSPARSE_OPERATION_CONJUGATE_TRANSPOSE", "numeric_literal");
    subst("CUSPARSE_OPERATION_NON_TRANSPOSE", "HIPSPARSE_OPERATION_NON_TRANSPOSE", "numeric_literal");
    subst("CUSPARSE_OPERATION_TRANSPOSE", "HIPSPARSE_OPERATION_TRANSPOSE", "numeric_literal");
    subst("CUSPARSE_ORDER_COL", "HIPSPARSE_ORDER_COL", "numeric_literal");
    subst("CUSPARSE_ORDER_ROW", "HIPSPARSE_ORDER_ROW", "numeric_literal");
    subst("CUSPARSE_POINTER_MODE_DEVICE", "HIPSPARSE_POINTER_MODE_DEVICE", "numeric_literal");
    subst("CUSPARSE_POINTER_MODE_HOST", "HIPSPARSE_POINTER_MODE_HOST", "numeric_literal");
    subst("CUSPARSE_SDDMM_ALG_DEFAULT", "HIPSPARSE_SDDMM_ALG_DEFAULT", "numeric_literal");
    subst("CUSPARSE_SOLVE_POLICY_NO_LEVEL", "HIPSPARSE_SOLVE_POLICY_NO_LEVEL", "numeric_literal");
    subst("CUSPARSE_SOLVE_POLICY_USE_LEVEL", "HIPSPARSE_SOLVE_POLICY_USE_LEVEL", "numeric_literal");
    subst("CUSPARSE_SPARSETODENSE_ALG_DEFAULT", "HIPSPARSE_SPARSETODENSE_ALG_DEFAULT", "numeric_literal");
    subst("CUSPARSE_SPGEMM_ALG1", "HIPSPARSE_SPGEMM_ALG1", "numeric_literal");
    subst("CUSPARSE_SPGEMM_ALG2", "HIPSPARSE_SPGEMM_ALG2", "numeric_literal");
    subst("CUSPARSE_SPGEMM_ALG3", "HIPSPARSE_SPGEMM_ALG3", "numeric_literal");
    subst("CUSPARSE_SPGEMM_CSR_ALG_DETERMINITIC", "HIPSPARSE_SPGEMM_CSR_ALG_DETERMINISTIC", "numeric_literal");
    subst("CUSPARSE_SPGEMM_CSR_ALG_NONDETERMINITIC", "HIPSPARSE_SPGEMM_CSR_ALG_NONDETERMINISTIC", "numeric_literal");
    subst("CUSPARSE_SPGEMM_DEFAULT", "HIPSPARSE_SPGEMM_DEFAULT", "numeric_literal");
    subst("CUSPARSE_SPMAT_DIAG_TYPE", "HIPSPARSE_SPMAT_DIAG_TYPE", "numeric_literal");
    subst("CUSPARSE_SPMAT_FILL_MODE", "HIPSPARSE_SPMAT_FILL_MODE", "numeric_literal");
    subst("CUSPARSE_SPMM_ALG_DEFAULT", "HIPSPARSE_SPMM_ALG_DEFAULT", "numeric_literal");
    subst("CUSPARSE_SPMM_BLOCKED_ELL_ALG1", "HIPSPARSE_SPMM_BLOCKED_ELL_ALG1", "numeric_literal");
    subst("CUSPARSE_SPMM_COO_ALG1", "HIPSPARSE_SPMM_COO_ALG1", "numeric_literal");
    subst("CUSPARSE_SPMM_COO_ALG2", "HIPSPARSE_SPMM_COO_ALG2", "numeric_literal");
    subst("CUSPARSE_SPMM_COO_ALG3", "HIPSPARSE_SPMM_COO_ALG3", "numeric_literal");
    subst("CUSPARSE_SPMM_COO_ALG4", "HIPSPARSE_SPMM_COO_ALG4", "numeric_literal");
    subst("CUSPARSE_SPMM_CSR_ALG1", "HIPSPARSE_SPMM_CSR_ALG1", "numeric_literal");
    subst("CUSPARSE_SPMM_CSR_ALG2", "HIPSPARSE_SPMM_CSR_ALG2", "numeric_literal");
    subst("CUSPARSE_SPMM_CSR_ALG3", "HIPSPARSE_SPMM_CSR_ALG3", "numeric_literal");
    subst("CUSPARSE_SPMV_ALG_DEFAULT", "HIPSPARSE_SPMV_ALG_DEFAULT", "numeric_literal");
    subst("CUSPARSE_SPMV_COO_ALG1", "HIPSPARSE_SPMV_COO_ALG1", "numeric_literal");
    subst("CUSPARSE_SPMV_COO_ALG2", "HIPSPARSE_SPMV_COO_ALG2", "numeric_literal");
    subst("CUSPARSE_SPMV_CSR_ALG1", "HIPSPARSE_SPMV_CSR_ALG1", "numeric_literal");
    subst("CUSPARSE_SPMV_CSR_ALG2", "HIPSPARSE_SPMV_CSR_ALG2", "numeric_literal");
    subst("CUSPARSE_SPSM_ALG_DEFAULT", "HIPSPARSE_SPSM_ALG_DEFAULT", "numeric_literal");
    subst("CUSPARSE_SPSV_ALG_DEFAULT", "HIPSPARSE_SPSV_ALG_DEFAULT", "numeric_literal");
    subst("CUSPARSE_STATUS_ALLOC_FAILED", "HIPSPARSE_STATUS_ALLOC_FAILED", "numeric_literal");
    subst("CUSPARSE_STATUS_ARCH_MISMATCH", "HIPSPARSE_STATUS_ARCH_MISMATCH", "numeric_literal");
    subst("CUSPARSE_STATUS_EXECUTION_FAILED", "HIPSPARSE_STATUS_EXECUTION_FAILED", "numeric_literal");
    subst("CUSPARSE_STATUS_INSUFFICIENT_RESOURCES", "HIPSPARSE_STATUS_INSUFFICIENT_RESOURCES", "numeric_literal");
    subst("CUSPARSE_STATUS_INTERNAL_ERROR", "HIPSPARSE_STATUS_INTERNAL_ERROR", "numeric_literal");
    subst("CUSPARSE_STATUS_INVALID_VALUE", "HIPSPARSE_STATUS_INVALID_VALUE", "numeric_literal");
    subst("CUSPARSE_STATUS_MAPPING_ERROR", "HIPSPARSE_STATUS_MAPPING_ERROR", "numeric_literal");
    subst("CUSPARSE_STATUS_MATRIX_TYPE_NOT_SUPPORTED", "HIPSPARSE_STATUS_MATRIX_TYPE_NOT_SUPPORTED", "numeric_literal");
    subst("CUSPARSE_STATUS_NOT_INITIALIZED", "HIPSPARSE_STATUS_NOT_INITIALIZED", "numeric_literal");
    subst("CUSPARSE_STATUS_NOT_SUPPORTED", "HIPSPARSE_STATUS_NOT_SUPPORTED", "numeric_literal");
    subst("CUSPARSE_STATUS_SUCCESS", "HIPSPARSE_STATUS_SUCCESS", "numeric_literal");
    subst("CUSPARSE_STATUS_ZERO_PIVOT", "HIPSPARSE_STATUS_ZERO_PIVOT", "numeric_literal");
    subst("CUTENSOR_ALGO_DEFAULT", "HIPTENSOR_ALGO_DEFAULT", "numeric_literal");
    subst("CUTENSOR_ALGO_DEFAULT_PATIENT", "HIPTENSOR_ALGO_DEFAULT_PATIENT", "numeric_literal");
    subst("CUTENSOR_COMPUTE_16BF", "HIPTENSOR_COMPUTE_16BF", "numeric_literal");
    subst("CUTENSOR_COMPUTE_16F", "HIPTENSOR_COMPUTE_16F", "numeric_literal");
    subst("CUTENSOR_COMPUTE_32F", "HIPTENSOR_COMPUTE_32F", "numeric_literal");
    subst("CUTENSOR_COMPUTE_32I", "HIPTENSOR_COMPUTE_32I", "numeric_literal");
    subst("CUTENSOR_COMPUTE_32U", "HIPTENSOR_COMPUTE_32U", "numeric_literal");
    subst("CUTENSOR_COMPUTE_64F", "HIPTENSOR_COMPUTE_64F", "numeric_literal");
    subst("CUTENSOR_COMPUTE_8I", "HIPTENSOR_COMPUTE_8I", "numeric_literal");
    subst("CUTENSOR_COMPUTE_8U", "HIPTENSOR_COMPUTE_8U", "numeric_literal");
    subst("CUTENSOR_C_32F", "HIPTENSOR_COMPUTE_C32F", "numeric_literal");
    subst("CUTENSOR_C_64F", "HIPTENSOR_COMPUTE_C64F", "numeric_literal");
    subst("CUTENSOR_OP_ADD", "HIPTENSOR_OP_ADD", "numeric_literal");
    subst("CUTENSOR_OP_IDENTITY", "HIPTENSOR_OP_IDENTITY", "numeric_literal");
    subst("CUTENSOR_OP_MAX", "HIPTENSOR_OP_MAX", "numeric_literal");
    subst("CUTENSOR_OP_MIN", "HIPTENSOR_OP_MIN", "numeric_literal");
    subst("CUTENSOR_OP_MUL", "HIPTENSOR_OP_MUL", "numeric_literal");
    subst("CUTENSOR_OP_SQRT", "HIPTENSOR_OP_SQRT", "numeric_literal");
    subst("CUTENSOR_OP_UNKNOWN", "HIPTENSOR_OP_UNKNOWN", "numeric_literal");
    subst("CUTENSOR_R_16BF", "HIPTENSOR_COMPUTE_16BF", "numeric_literal");
    subst("CUTENSOR_R_16F", "HIPTENSOR_COMPUTE_16F", "numeric_literal");
    subst("CUTENSOR_R_32F", "HIPTENSOR_COMPUTE_32F", "numeric_literal");
    subst("CUTENSOR_R_32I", "HIPTENSOR_COMPUTE_32I", "numeric_literal");
    subst("CUTENSOR_R_32U", "HIPTENSOR_COMPUTE_32U", "numeric_literal");
    subst("CUTENSOR_R_64F", "HIPTENSOR_COMPUTE_64F", "numeric_literal");
    subst("CUTENSOR_R_8I", "HIPTENSOR_COMPUTE_8I", "numeric_literal");
    subst("CUTENSOR_R_8U", "HIPTENSOR_COMPUTE_8U", "numeric_literal");
    subst("CUTENSOR_STATUS_ALLOC_FAILED", "HIPTENSOR_STATUS_ALLOC_FAILED", "numeric_literal");
    subst("CUTENSOR_STATUS_ARCH_MISMATCH", "HIPTENSOR_STATUS_ARCH_MISMATCH", "numeric_literal");
    subst("CUTENSOR_STATUS_EXECUTION_FAILED", "HIPTENSOR_STATUS_EXECUTION_FAILED", "numeric_literal");
    subst("CUTENSOR_STATUS_INSUFFICIENT_DRIVER", "HIPTENSOR_STATUS_INSUFFICIENT_DRIVER", "numeric_literal");
    subst("CUTENSOR_STATUS_INSUFFICIENT_WORKSPACE", "HIPTENSOR_STATUS_INSUFFICIENT_WORKSPACE", "numeric_literal");
    subst("CUTENSOR_STATUS_INTERNAL_ERROR", "HIPTENSOR_STATUS_INTERNAL_ERROR", "numeric_literal");
    subst("CUTENSOR_STATUS_INVALID_VALUE", "HIPTENSOR_STATUS_INVALID_VALUE", "numeric_literal");
    subst("CUTENSOR_STATUS_IO_ERROR", "HIPTENSOR_STATUS_IO_ERROR", "numeric_literal");
    subst("CUTENSOR_STATUS_NOT_INITIALIZED", "HIPTENSOR_STATUS_NOT_INITIALIZED", "numeric_literal");
    subst("CUTENSOR_STATUS_NOT_SUPPORTED", "HIPTENSOR_STATUS_NOT_SUPPORTED", "numeric_literal");
    subst("CUTENSOR_STATUS_SUCCESS", "HIPTENSOR_STATUS_SUCCESS", "numeric_literal");
    subst("CUTENSOR_WORKSPACE_MAX", "HIPTENSOR_WORKSPACE_MAX", "numeric_literal");
    subst("CUTENSOR_WORKSPACE_MIN", "HIPTENSOR_WORKSPACE_MIN", "numeric_literal");
    subst("CUTENSOR_WORKSPACE_RECOMMENDED", "HIPTENSOR_WORKSPACE_RECOMMENDED", "numeric_literal");
    subst("CU_ACCESS_PROPERTY_NORMAL", "hipAccessPropertyNormal", "numeric_literal");
    subst("CU_ACCESS_PROPERTY_PERSISTING", "hipAccessPropertyPersisting", "numeric_literal");
    subst("CU_ACCESS_PROPERTY_STREAMING", "hipAccessPropertyStreaming", "numeric_literal");
    subst("CU_AD_FORMAT_FLOAT", "HIP_AD_FORMAT_FLOAT", "numeric_literal");
    subst("CU_AD_FORMAT_HALF", "HIP_AD_FORMAT_HALF", "numeric_literal");
    subst("CU_AD_FORMAT_SIGNED_INT16", "HIP_AD_FORMAT_SIGNED_INT16", "numeric_literal");
    subst("CU_AD_FORMAT_SIGNED_INT32", "HIP_AD_FORMAT_SIGNED_INT32", "numeric_literal");
    subst("CU_AD_FORMAT_SIGNED_INT8", "HIP_AD_FORMAT_SIGNED_INT8", "numeric_literal");
    subst("CU_AD_FORMAT_UNSIGNED_INT16", "HIP_AD_FORMAT_UNSIGNED_INT16", "numeric_literal");
    subst("CU_AD_FORMAT_UNSIGNED_INT32", "HIP_AD_FORMAT_UNSIGNED_INT32", "numeric_literal");
    subst("CU_AD_FORMAT_UNSIGNED_INT8", "HIP_AD_FORMAT_UNSIGNED_INT8", "numeric_literal");
    subst("CU_ARRAY_SPARSE_SUBRESOURCE_TYPE_MIPTAIL", "hipArraySparseSubresourceTypeMiptail", "numeric_literal");
    subst("CU_ARRAY_SPARSE_SUBRESOURCE_TYPE_SPARSE_LEVEL", "hipArraySparseSubresourceTypeSparseLevel", "numeric_literal");
    subst("CU_COMPUTEMODE_DEFAULT", "hipComputeModeDefault", "numeric_literal");
    subst("CU_COMPUTEMODE_EXCLUSIVE", "hipComputeModeExclusive", "numeric_literal");
    subst("CU_COMPUTEMODE_EXCLUSIVE_PROCESS", "hipComputeModeExclusiveProcess", "numeric_literal");
    subst("CU_COMPUTEMODE_PROHIBITED", "hipComputeModeProhibited", "numeric_literal");
    subst("CU_CTX_BLOCKING_SYNC", "hipDeviceScheduleBlockingSync", "numeric_literal");
    subst("CU_CTX_LMEM_RESIZE_TO_MAX", "hipDeviceLmemResizeToMax", "numeric_literal");
    subst("CU_CTX_MAP_HOST", "hipDeviceMapHost", "numeric_literal");
    subst("CU_CTX_SCHED_AUTO", "hipDeviceScheduleAuto", "numeric_literal");
    subst("CU_CTX_SCHED_BLOCKING_SYNC", "hipDeviceScheduleBlockingSync", "numeric_literal");
    subst("CU_CTX_SCHED_MASK", "hipDeviceScheduleMask", "numeric_literal");
    subst("CU_CTX_SCHED_SPIN", "hipDeviceScheduleSpin", "numeric_literal");
    subst("CU_CTX_SCHED_YIELD", "hipDeviceScheduleYield", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_ASYNC_ENGINE_COUNT", "hipDeviceAttributeAsyncEngineCount", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_CAN_MAP_HOST_MEMORY", "hipDeviceAttributeCanMapHostMemory", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_CAN_USE_HOST_POINTER_FOR_REGISTERED_MEM", "hipDeviceAttributeCanUseHostPointerForRegisteredMem", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR", "hipDeviceAttributeCanUseStreamWaitValue", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR_V1", "hipDeviceAttributeCanUseStreamWaitValue", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_CLOCK_RATE", "hipDeviceAttributeClockRate", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MAJOR", "hipDeviceAttributeComputeCapabilityMajor", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MINOR", "hipDeviceAttributeComputeCapabilityMinor", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_COMPUTE_MODE", "hipDeviceAttributeComputeMode", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_COMPUTE_PREEMPTION_SUPPORTED", "hipDeviceAttributeComputePreemptionSupported", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_CONCURRENT_KERNELS", "hipDeviceAttributeConcurrentKernels", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_CONCURRENT_MANAGED_ACCESS", "hipDeviceAttributeConcurrentManagedAccess", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_COOPERATIVE_LAUNCH", "hipDeviceAttributeCooperativeLaunch", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_COOPERATIVE_MULTI_DEVICE_LAUNCH", "hipDeviceAttributeCooperativeMultiDeviceLaunch", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_DIRECT_MANAGED_MEM_ACCESS_FROM_HOST", "hipDeviceAttributeDirectManagedMemAccessFromHost", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_ECC_ENABLED", "hipDeviceAttributeEccEnabled", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_GLOBAL_L1_CACHE_SUPPORTED", "hipDeviceAttributeGlobalL1CacheSupported", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_GLOBAL_MEMORY_BUS_WIDTH", "hipDeviceAttributeMemoryBusWidth", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_GPU_OVERLAP", "hipDeviceAttributeAsyncEngineCount", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_HOST_NATIVE_ATOMIC_SUPPORTED", "hipDeviceAttributeHostNativeAtomicSupported", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_HOST_REGISTER_SUPPORTED", "hipDeviceAttributeHostRegisterSupported", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_INTEGRATED", "hipDeviceAttributeIntegrated", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_KERNEL_EXEC_TIMEOUT", "hipDeviceAttributeKernelExecTimeout", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_L2_CACHE_SIZE", "hipDeviceAttributeL2CacheSize", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_LOCAL_L1_CACHE_SUPPORTED", "hipDeviceAttributeLocalL1CacheSupported", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MANAGED_MEMORY", "hipDeviceAttributeManagedMemory", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_WIDTH", "hipDeviceAttributeMaxSurface1DLayered", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_WIDTH", "hipDeviceAttributeMaxSurface1D", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_HEIGHT", "hipDeviceAttributeMaxSurface2D", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_HEIGHT", "hipDeviceAttributeMaxSurface2DLayered", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_WIDTH", "hipDeviceAttributeMaxSurface2DLayered", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_WIDTH", "hipDeviceAttributeMaxSurface2D", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_DEPTH", "hipDeviceAttributeMaxSurface3D", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_HEIGHT", "hipDeviceAttributeMaxSurface3D", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_WIDTH", "hipDeviceAttributeMaxSurface3D", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_WIDTH", "hipDeviceAttributeMaxSurfaceCubemapLayered", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_WIDTH", "hipDeviceAttributeMaxSurfaceCubemap", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_WIDTH", "hipDeviceAttributeMaxTexture1DLayered", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LINEAR_WIDTH", "hipDeviceAttributeMaxTexture1DLinear", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_MIPMAPPED_WIDTH", "hipDeviceAttributeMaxTexture1DMipmap", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_WIDTH", "hipDeviceAttributeMaxTexture1DWidth", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_HEIGHT", "hipDeviceAttributeMaxTexture2DLayered", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_WIDTH", "hipDeviceAttributeMaxTexture2DLayered", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_HEIGHT", "hipDeviceAttributeMaxTexture2DGather", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_WIDTH", "hipDeviceAttributeMaxTexture2DGather", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_HEIGHT", "hipDeviceAttributeMaxTexture2DHeight", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_HEIGHT", "hipDeviceAttributeMaxTexture2DLayered", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_WIDTH", "hipDeviceAttributeMaxTexture2DLayered", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_HEIGHT", "hipDeviceAttributeMaxTexture2DLinear", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_PITCH", "hipDeviceAttributeMaxTexture2DLinear", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_WIDTH", "hipDeviceAttributeMaxTexture2DLinear", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_HEIGHT", "hipDeviceAttributeMaxTexture2DMipmap", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_WIDTH", "hipDeviceAttributeMaxTexture2DMipmap", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_WIDTH", "hipDeviceAttributeMaxTexture2DWidth", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH", "hipDeviceAttributeMaxTexture3DDepth", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH_ALTERNATE", "hipDeviceAttributeMaxTexture3DAlt", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT", "hipDeviceAttributeMaxTexture3DHeight", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT_ALTERNATE", "hipDeviceAttributeMaxTexture3DAlt", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH", "hipDeviceAttributeMaxTexture3DWidth", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH_ALTERNATE", "hipDeviceAttributeMaxTexture3DAlt", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_WIDTH", "hipDeviceAttributeMaxTextureCubemapLayered", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_WIDTH", "hipDeviceAttributeMaxTextureCubemap", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_BLOCKS_PER_MULTIPROCESSOR", "hipDeviceAttributeMaxBlocksPerMultiprocessor", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_X", "hipDeviceAttributeMaxBlockDimX", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Y", "hipDeviceAttributeMaxBlockDimY", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Z", "hipDeviceAttributeMaxBlockDimZ", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_X", "hipDeviceAttributeMaxGridDimX", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Y", "hipDeviceAttributeMaxGridDimY", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Z", "hipDeviceAttributeMaxGridDimZ", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_PITCH", "hipDeviceAttributeMaxPitch", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_BLOCK", "hipDeviceAttributeMaxRegistersPerBlock", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR", "hipDeviceAttributeMaxRegistersPerMultiprocessor", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK", "hipDeviceAttributeMaxSharedMemoryPerBlock", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK_OPTIN", "hipDeviceAttributeSharedMemPerBlockOptin", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_MULTIPROCESSOR", "hipDeviceAttributeMaxSharedMemoryPerMultiprocessor", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_BLOCK", "hipDeviceAttributeMaxThreadsPerBlock", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_MULTIPROCESSOR", "hipDeviceAttributeMaxThreadsPerMultiProcessor", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MEMORY_CLOCK_RATE", "hipDeviceAttributeMemoryClockRate", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MEMORY_POOLS_SUPPORTED", "hipDeviceAttributeMemoryPoolsSupported", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MULTIPROCESSOR_COUNT", "hipDeviceAttributeMultiprocessorCount", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD", "hipDeviceAttributeIsMultiGpuBoard", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD_GROUP_ID", "hipDeviceAttributeMultiGpuBoardGroupId", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_PAGEABLE_MEMORY_ACCESS", "hipDeviceAttributePageableMemoryAccess", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_PAGEABLE_MEMORY_ACCESS_USES_HOST_PAGE_TABLES", "hipDeviceAttributePageableMemoryAccessUsesHostPageTables", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_PCI_BUS_ID", "hipDeviceAttributePciBusId", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_PCI_DEVICE_ID", "hipDeviceAttributePciDeviceId", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_PCI_DOMAIN_ID", "hipDeviceAttributePciDomainID", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_REGISTERS_PER_BLOCK", "hipDeviceAttributeMaxRegistersPerBlock", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_SHARED_MEMORY_PER_BLOCK", "hipDeviceAttributeMaxSharedMemoryPerBlock", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_SINGLE_TO_DOUBLE_PRECISION_PERF_RATIO", "hipDeviceAttributeSingleToDoublePrecisionPerfRatio", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_STREAM_PRIORITIES_SUPPORTED", "hipDeviceAttributeStreamPrioritiesSupported", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_SURFACE_ALIGNMENT", "hipDeviceAttributeSurfaceAlignment", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_TCC_DRIVER", "hipDeviceAttributeTccDriver", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_TEXTURE_ALIGNMENT", "hipDeviceAttributeTextureAlignment", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_TEXTURE_PITCH_ALIGNMENT", "hipDeviceAttributeTexturePitchAlignment", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_TOTAL_CONSTANT_MEMORY", "hipDeviceAttributeTotalConstantMemory", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_UNIFIED_ADDRESSING", "hipDeviceAttributeUnifiedAddressing", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_VIRTUAL_MEMORY_MANAGEMENT_SUPPORTED", "hipDeviceAttributeVirtualMemoryManagementSupported", "numeric_literal");
    subst("CU_DEVICE_ATTRIBUTE_WARP_SIZE", "hipDeviceAttributeWarpSize", "numeric_literal");
    subst("CU_DEVICE_P2P_ATTRIBUTE_ACCESS_ACCESS_SUPPORTED", "hipDevP2PAttrHipArrayAccessSupported", "numeric_literal");
    subst("CU_DEVICE_P2P_ATTRIBUTE_ACCESS_SUPPORTED", "hipDevP2PAttrAccessSupported", "numeric_literal");
    subst("CU_DEVICE_P2P_ATTRIBUTE_ARRAY_ACCESS_ACCESS_SUPPORTED", "hipDevP2PAttrHipArrayAccessSupported", "numeric_literal");
    subst("CU_DEVICE_P2P_ATTRIBUTE_CUDA_ARRAY_ACCESS_SUPPORTED", "hipDevP2PAttrHipArrayAccessSupported", "numeric_literal");
    subst("CU_DEVICE_P2P_ATTRIBUTE_NATIVE_ATOMIC_SUPPORTED", "hipDevP2PAttrNativeAtomicSupported", "numeric_literal");
    subst("CU_DEVICE_P2P_ATTRIBUTE_PERFORMANCE_RANK", "hipDevP2PAttrPerformanceRank", "numeric_literal");
    subst("CU_EVENT_BLOCKING_SYNC", "hipEventBlockingSync", "numeric_literal");
    subst("CU_EVENT_DEFAULT", "hipEventDefault", "numeric_literal");
    subst("CU_EVENT_DISABLE_TIMING", "hipEventDisableTiming", "numeric_literal");
    subst("CU_EVENT_INTERPROCESS", "hipEventInterprocess", "numeric_literal");
    subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_RESOURCE", "hipExternalMemoryHandleTypeD3D11Resource", "numeric_literal");
    subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_RESOURCE_KMT", "hipExternalMemoryHandleTypeD3D11ResourceKmt", "numeric_literal");
    subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP", "hipExternalMemoryHandleTypeD3D12Heap", "numeric_literal");
    subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE", "hipExternalMemoryHandleTypeD3D12Resource", "numeric_literal");
    subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD", "hipExternalMemoryHandleTypeOpaqueFd", "numeric_literal");
    subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32", "hipExternalMemoryHandleTypeOpaqueWin32", "numeric_literal");
    subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT", "hipExternalMemoryHandleTypeOpaqueWin32Kmt", "numeric_literal");
    subst("CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE", "hipExternalSemaphoreHandleTypeD3D12Fence", "numeric_literal");
    subst("CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD", "hipExternalSemaphoreHandleTypeOpaqueFd", "numeric_literal");
    subst("CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32", "hipExternalSemaphoreHandleTypeOpaqueWin32", "numeric_literal");
    subst("CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT", "hipExternalSemaphoreHandleTypeOpaqueWin32Kmt", "numeric_literal");
    subst("CU_FLUSH_GPU_DIRECT_RDMA_WRITES_OPTION_HOST", "hipFlushGPUDirectRDMAWritesOptionHost", "numeric_literal");
    subst("CU_FLUSH_GPU_DIRECT_RDMA_WRITES_OPTION_MEMOPS", "hipFlushGPUDirectRDMAWritesOptionMemOps", "numeric_literal");
    subst("CU_FUNC_ATTRIBUTE_BINARY_VERSION", "HIP_FUNC_ATTRIBUTE_BINARY_VERSION", "numeric_literal");
    subst("CU_FUNC_ATTRIBUTE_CACHE_MODE_CA", "HIP_FUNC_ATTRIBUTE_CACHE_MODE_CA", "numeric_literal");
    subst("CU_FUNC_ATTRIBUTE_CONST_SIZE_BYTES", "HIP_FUNC_ATTRIBUTE_CONST_SIZE_BYTES", "numeric_literal");
    subst("CU_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES", "HIP_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES", "numeric_literal");
    subst("CU_FUNC_ATTRIBUTE_MAX", "HIP_FUNC_ATTRIBUTE_MAX", "numeric_literal");
    subst("CU_FUNC_ATTRIBUTE_MAX_DYNAMIC_SHARED_SIZE_BYTES", "HIP_FUNC_ATTRIBUTE_MAX_DYNAMIC_SHARED_SIZE_BYTES", "numeric_literal");
    subst("CU_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK", "HIP_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK", "numeric_literal");
    subst("CU_FUNC_ATTRIBUTE_NUM_REGS", "HIP_FUNC_ATTRIBUTE_NUM_REGS", "numeric_literal");
    subst("CU_FUNC_ATTRIBUTE_PREFERRED_SHARED_MEMORY_CARVEOUT", "HIP_FUNC_ATTRIBUTE_PREFERRED_SHARED_MEMORY_CARVEOUT", "numeric_literal");
    subst("CU_FUNC_ATTRIBUTE_PTX_VERSION", "HIP_FUNC_ATTRIBUTE_PTX_VERSION", "numeric_literal");
    subst("CU_FUNC_ATTRIBUTE_SHARED_SIZE_BYTES", "HIP_FUNC_ATTRIBUTE_SHARED_SIZE_BYTES", "numeric_literal");
    subst("CU_FUNC_CACHE_PREFER_EQUAL", "hipFuncCachePreferEqual", "numeric_literal");
    subst("CU_FUNC_CACHE_PREFER_L1", "hipFuncCachePreferL1", "numeric_literal");
    subst("CU_FUNC_CACHE_PREFER_NONE", "hipFuncCachePreferNone", "numeric_literal");
    subst("CU_FUNC_CACHE_PREFER_SHARED", "hipFuncCachePreferShared", "numeric_literal");
    subst("CU_GET_PROC_ADDRESS_SUCCESS", "HIP_GET_PROC_ADDRESS_SUCCESS", "numeric_literal");
    subst("CU_GET_PROC_ADDRESS_SYMBOL_NOT_FOUND", "HIP_GET_PROC_ADDRESS_SYMBOL_NOT_FOUND", "numeric_literal");
    subst("CU_GET_PROC_ADDRESS_VERSION_NOT_SUFFICIENT", "HIP_GET_PROC_ADDRESS_VERSION_NOT_SUFFICIENT", "numeric_literal");
    subst("CU_GL_DEVICE_LIST_ALL", "hipGLDeviceListAll", "numeric_literal");
    subst("CU_GL_DEVICE_LIST_CURRENT_FRAME", "hipGLDeviceListCurrentFrame", "numeric_literal");
    subst("CU_GL_DEVICE_LIST_NEXT_FRAME", "hipGLDeviceListNextFrame", "numeric_literal");
    subst("CU_GPU_DIRECT_RDMA_WRITES_ORDERING_ALL_DEVICES", "hipGPUDirectRDMAWritesOrderingAllDevices", "numeric_literal");
    subst("CU_GPU_DIRECT_RDMA_WRITES_ORDERING_NONE", "hipGPUDirectRDMAWritesOrderingNone", "numeric_literal");
    subst("CU_GPU_DIRECT_RDMA_WRITES_ORDERING_OWNER", "hipGPUDirectRDMAWritesOrderingOwner", "numeric_literal");
    subst("CU_GRAPHICS_REGISTER_FLAGS_NONE", "hipGraphicsRegisterFlagsNone", "numeric_literal");
    subst("CU_GRAPHICS_REGISTER_FLAGS_READ_ONLY", "hipGraphicsRegisterFlagsReadOnly", "numeric_literal");
    subst("CU_GRAPHICS_REGISTER_FLAGS_SURFACE_LDST", "hipGraphicsRegisterFlagsSurfaceLoadStore", "numeric_literal");
    subst("CU_GRAPHICS_REGISTER_FLAGS_TEXTURE_GATHER", "hipGraphicsRegisterFlagsTextureGather", "numeric_literal");
    subst("CU_GRAPHICS_REGISTER_FLAGS_WRITE_DISCARD", "hipGraphicsRegisterFlagsWriteDiscard", "numeric_literal");
    subst("CU_GRAPH_DEBUG_DOT_FLAGS_EVENT_NODE_PARAMS", "hipGraphDebugDotFlagsEventNodeParams", "numeric_literal");
    subst("CU_GRAPH_DEBUG_DOT_FLAGS_EXT_SEMAS_SIGNAL_NODE_PARAMS", "hipGraphDebugDotFlagsExtSemasSignalNodeParams", "numeric_literal");
    subst("CU_GRAPH_DEBUG_DOT_FLAGS_EXT_SEMAS_WAIT_NODE_PARAMS", "hipGraphDebugDotFlagsExtSemasWaitNodeParams", "numeric_literal");
    subst("CU_GRAPH_DEBUG_DOT_FLAGS_HANDLES", "hipGraphDebugDotFlagsHandles", "numeric_literal");
    subst("CU_GRAPH_DEBUG_DOT_FLAGS_HOST_NODE_PARAMS", "hipGraphDebugDotFlagsHostNodeParams", "numeric_literal");
    subst("CU_GRAPH_DEBUG_DOT_FLAGS_KERNEL_NODE_ATTRIBUTES", "hipGraphDebugDotFlagsKernelNodeAttributes", "numeric_literal");
    subst("CU_GRAPH_DEBUG_DOT_FLAGS_KERNEL_NODE_PARAMS", "hipGraphDebugDotFlagsKernelNodeParams", "numeric_literal");
    subst("CU_GRAPH_DEBUG_DOT_FLAGS_MEMCPY_NODE_PARAMS", "hipGraphDebugDotFlagsMemcpyNodeParams", "numeric_literal");
    subst("CU_GRAPH_DEBUG_DOT_FLAGS_MEMSET_NODE_PARAMS", "hipGraphDebugDotFlagsMemsetNodeParams", "numeric_literal");
    subst("CU_GRAPH_DEBUG_DOT_FLAGS_RUNTIME_TYPES", "hipGraphDebugDotFlagsRuntimeTypes", "numeric_literal");
    subst("CU_GRAPH_DEBUG_DOT_FLAGS_VERBOSE", "hipGraphDebugDotFlagsVerbose", "numeric_literal");
    subst("CU_GRAPH_DEPENDENCY_TYPE_DEFAULT", "hipGraphDependencyTypeDefault", "numeric_literal");
    subst("CU_GRAPH_DEPENDENCY_TYPE_PROGRAMMATIC", "hipGraphDependencyTypeProgrammatic", "numeric_literal");
    subst("CU_GRAPH_EXEC_UPDATE_ERROR", "hipGraphExecUpdateError", "numeric_literal");
    subst("CU_GRAPH_EXEC_UPDATE_ERROR_FUNCTION_CHANGED", "hipGraphExecUpdateErrorFunctionChanged", "numeric_literal");
    subst("CU_GRAPH_EXEC_UPDATE_ERROR_NODE_TYPE_CHANGED", "hipGraphExecUpdateErrorNodeTypeChanged", "numeric_literal");
    subst("CU_GRAPH_EXEC_UPDATE_ERROR_NOT_SUPPORTED", "hipGraphExecUpdateErrorNotSupported", "numeric_literal");
    subst("CU_GRAPH_EXEC_UPDATE_ERROR_PARAMETERS_CHANGED", "hipGraphExecUpdateErrorParametersChanged", "numeric_literal");
    subst("CU_GRAPH_EXEC_UPDATE_ERROR_TOPOLOGY_CHANGED", "hipGraphExecUpdateErrorTopologyChanged", "numeric_literal");
    subst("CU_GRAPH_EXEC_UPDATE_ERROR_UNSUPPORTED_FUNCTION_CHANGE", "hipGraphExecUpdateErrorUnsupportedFunctionChange", "numeric_literal");
    subst("CU_GRAPH_EXEC_UPDATE_SUCCESS", "hipGraphExecUpdateSuccess", "numeric_literal");
    subst("CU_GRAPH_MEM_ATTR_RESERVED_MEM_CURRENT", "hipGraphMemAttrReservedMemCurrent", "numeric_literal");
    subst("CU_GRAPH_MEM_ATTR_RESERVED_MEM_HIGH", "hipGraphMemAttrReservedMemHigh", "numeric_literal");
    subst("CU_GRAPH_MEM_ATTR_USED_MEM_CURRENT", "hipGraphMemAttrUsedMemCurrent", "numeric_literal");
    subst("CU_GRAPH_MEM_ATTR_USED_MEM_HIGH", "hipGraphMemAttrUsedMemHigh", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_COUNT", "hipGraphNodeTypeCount", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_EMPTY", "hipGraphNodeTypeEmpty", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_EVENT_RECORD", "hipGraphNodeTypeEventRecord", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_EXT_SEMAS_SIGNAL", "hipGraphNodeTypeExtSemaphoreSignal", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_EXT_SEMAS_WAIT", "hipGraphNodeTypeExtSemaphoreWait", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_GRAPH", "hipGraphNodeTypeGraph", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_HOST", "hipGraphNodeTypeHost", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_KERNEL", "hipGraphNodeTypeKernel", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_MEMCPY", "hipGraphNodeTypeMemcpy", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_MEMSET", "hipGraphNodeTypeMemset", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_MEM_ALLOC", "hipGraphNodeTypeMemAlloc", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_MEM_FREE", "hipGraphNodeTypeMemFree", "numeric_literal");
    subst("CU_GRAPH_NODE_TYPE_WAIT_EVENT", "hipGraphNodeTypeWaitEvent", "numeric_literal");
    subst("CU_GRAPH_USER_OBJECT_MOVE", "hipGraphUserObjectMove", "numeric_literal");
    subst("CU_IPC_MEM_LAZY_ENABLE_PEER_ACCESS", "hipIpcMemLazyEnablePeerAccess", "numeric_literal");
    subst("CU_JIT_CACHE_MODE", "HIPRTC_JIT_CACHE_MODE", "numeric_literal");
    subst("CU_JIT_ERROR_LOG_BUFFER", "HIPRTC_JIT_ERROR_LOG_BUFFER", "numeric_literal");
    subst("CU_JIT_ERROR_LOG_BUFFER_SIZE_BYTES", "HIPRTC_JIT_ERROR_LOG_BUFFER_SIZE_BYTES", "numeric_literal");
    subst("CU_JIT_FALLBACK_STRATEGY", "HIPRTC_JIT_FALLBACK_STRATEGY", "numeric_literal");
    subst("CU_JIT_FAST_COMPILE", "HIPRTC_JIT_FAST_COMPILE", "numeric_literal");
    subst("CU_JIT_GENERATE_DEBUG_INFO", "HIPRTC_JIT_GENERATE_DEBUG_INFO", "numeric_literal");
    subst("CU_JIT_GENERATE_LINE_INFO", "HIPRTC_JIT_GENERATE_LINE_INFO", "numeric_literal");
    subst("CU_JIT_INFO_LOG_BUFFER", "HIPRTC_JIT_INFO_LOG_BUFFER", "numeric_literal");
    subst("CU_JIT_INFO_LOG_BUFFER_SIZE_BYTES", "HIPRTC_JIT_INFO_LOG_BUFFER_SIZE_BYTES", "numeric_literal");
    subst("CU_JIT_INPUT_CUBIN", "HIPRTC_JIT_INPUT_CUBIN", "numeric_literal");
    subst("CU_JIT_INPUT_FATBINARY", "HIPRTC_JIT_INPUT_FATBINARY", "numeric_literal");
    subst("CU_JIT_INPUT_LIBRARY", "HIPRTC_JIT_INPUT_LIBRARY", "numeric_literal");
    subst("CU_JIT_INPUT_NVVM", "HIPRTC_JIT_INPUT_NVVM", "numeric_literal");
    subst("CU_JIT_INPUT_OBJECT", "HIPRTC_JIT_INPUT_OBJECT", "numeric_literal");
    subst("CU_JIT_INPUT_PTX", "HIPRTC_JIT_INPUT_PTX", "numeric_literal");
    subst("CU_JIT_LOG_VERBOSE", "HIPRTC_JIT_LOG_VERBOSE", "numeric_literal");
    subst("CU_JIT_MAX_REGISTERS", "HIPRTC_JIT_MAX_REGISTERS", "numeric_literal");
    subst("CU_JIT_NEW_SM3X_OPT", "HIPRTC_JIT_NEW_SM3X_OPT", "numeric_literal");
    subst("CU_JIT_NUM_INPUT_TYPES", "HIPRTC_JIT_NUM_LEGACY_INPUT_TYPES", "numeric_literal");
    subst("CU_JIT_NUM_OPTIONS", "HIPRTC_JIT_NUM_OPTIONS", "numeric_literal");
    subst("CU_JIT_OPTIMIZATION_LEVEL", "HIPRTC_JIT_OPTIMIZATION_LEVEL", "numeric_literal");
    subst("CU_JIT_TARGET", "HIPRTC_JIT_TARGET", "numeric_literal");
    subst("CU_JIT_TARGET_FROM_CUCONTEXT", "HIPRTC_JIT_TARGET_FROM_HIPCONTEXT", "numeric_literal");
    subst("CU_JIT_THREADS_PER_BLOCK", "HIPRTC_JIT_THREADS_PER_BLOCK", "numeric_literal");
    subst("CU_JIT_WALL_TIME", "HIPRTC_JIT_WALL_TIME", "numeric_literal");
    subst("CU_KERNEL_NODE_ATTRIBUTE_ACCESS_POLICY_WINDOW", "hipKernelNodeAttributeAccessPolicyWindow", "numeric_literal");
    subst("CU_KERNEL_NODE_ATTRIBUTE_COOPERATIVE", "hipKernelNodeAttributeCooperative", "numeric_literal");
    subst("CU_KERNEL_NODE_ATTRIBUTE_PRIORITY", "hipKernelNodeAttributePriority", "numeric_literal");
    subst("CU_LAUNCH_ATTRIBUTE_ACCESS_POLICY_WINDOW", "hipLaunchAttributeAccessPolicyWindow", "numeric_literal");
    subst("CU_LAUNCH_ATTRIBUTE_COOPERATIVE", "hipLaunchAttributeCooperative", "numeric_literal");
    subst("CU_LAUNCH_ATTRIBUTE_PRIORITY", "hipLaunchAttributePriority", "numeric_literal");
    subst("CU_LIMIT_MALLOC_HEAP_SIZE", "hipLimitMallocHeapSize", "numeric_literal");
    subst("CU_LIMIT_PRINTF_FIFO_SIZE", "hipLimitPrintfFifoSize", "numeric_literal");
    subst("CU_LIMIT_STACK_SIZE", "hipLimitStackSize", "numeric_literal");
    subst("CU_MEMORYTYPE_ARRAY", "hipMemoryTypeArray", "numeric_literal");
    subst("CU_MEMORYTYPE_DEVICE", "hipMemoryTypeDevice", "numeric_literal");
    subst("CU_MEMORYTYPE_HOST", "hipMemoryTypeHost", "numeric_literal");
    subst("CU_MEMORYTYPE_UNIFIED", "hipMemoryTypeUnified", "numeric_literal");
    subst("CU_MEMPOOL_ATTR_RELEASE_THRESHOLD", "hipMemPoolAttrReleaseThreshold", "numeric_literal");
    subst("CU_MEMPOOL_ATTR_RESERVED_MEM_CURRENT", "hipMemPoolAttrReservedMemCurrent", "numeric_literal");
    subst("CU_MEMPOOL_ATTR_RESERVED_MEM_HIGH", "hipMemPoolAttrReservedMemHigh", "numeric_literal");
    subst("CU_MEMPOOL_ATTR_REUSE_ALLOW_INTERNAL_DEPENDENCIES", "hipMemPoolReuseAllowInternalDependencies", "numeric_literal");
    subst("CU_MEMPOOL_ATTR_REUSE_ALLOW_OPPORTUNISTIC", "hipMemPoolReuseAllowOpportunistic", "numeric_literal");
    subst("CU_MEMPOOL_ATTR_REUSE_FOLLOW_EVENT_DEPENDENCIES", "hipMemPoolReuseFollowEventDependencies", "numeric_literal");
    subst("CU_MEMPOOL_ATTR_USED_MEM_CURRENT", "hipMemPoolAttrUsedMemCurrent", "numeric_literal");
    subst("CU_MEMPOOL_ATTR_USED_MEM_HIGH", "hipMemPoolAttrUsedMemHigh", "numeric_literal");
    subst("CU_MEM_ACCESS_FLAGS_PROT_NONE", "hipMemAccessFlagsProtNone", "numeric_literal");
    subst("CU_MEM_ACCESS_FLAGS_PROT_READ", "hipMemAccessFlagsProtRead", "numeric_literal");
    subst("CU_MEM_ACCESS_FLAGS_PROT_READWRITE", "hipMemAccessFlagsProtReadWrite", "numeric_literal");
    subst("CU_MEM_ADVISE_SET_ACCESSED_BY", "hipMemAdviseSetAccessedBy", "numeric_literal");
    subst("CU_MEM_ADVISE_SET_PREFERRED_LOCATION", "hipMemAdviseSetPreferredLocation", "numeric_literal");
    subst("CU_MEM_ADVISE_SET_READ_MOSTLY", "hipMemAdviseSetReadMostly", "numeric_literal");
    subst("CU_MEM_ADVISE_UNSET_ACCESSED_BY", "hipMemAdviseUnsetAccessedBy", "numeric_literal");
    subst("CU_MEM_ADVISE_UNSET_PREFERRED_LOCATION", "hipMemAdviseUnsetPreferredLocation", "numeric_literal");
    subst("CU_MEM_ADVISE_UNSET_READ_MOSTLY", "hipMemAdviseUnsetReadMostly", "numeric_literal");
    subst("CU_MEM_ALLOCATION_TYPE_INVALID", "hipMemAllocationTypeInvalid", "numeric_literal");
    subst("CU_MEM_ALLOCATION_TYPE_MAX", "hipMemAllocationTypeMax", "numeric_literal");
    subst("CU_MEM_ALLOCATION_TYPE_PINNED", "hipMemAllocationTypePinned", "numeric_literal");
    subst("CU_MEM_ALLOC_GRANULARITY_MINIMUM", "hipMemAllocationGranularityMinimum", "numeric_literal");
    subst("CU_MEM_ALLOC_GRANULARITY_RECOMMENDED", "hipMemAllocationGranularityRecommended", "numeric_literal");
    subst("CU_MEM_ATTACH_GLOBAL", "hipMemAttachGlobal", "numeric_literal");
    subst("CU_MEM_ATTACH_HOST", "hipMemAttachHost", "numeric_literal");
    subst("CU_MEM_ATTACH_SINGLE", "hipMemAttachSingle", "numeric_literal");
    subst("CU_MEM_HANDLE_TYPE_GENERIC", "hipMemHandleTypeGeneric", "numeric_literal");
    subst("CU_MEM_HANDLE_TYPE_NONE", "hipMemHandleTypeNone", "numeric_literal");
    subst("CU_MEM_HANDLE_TYPE_POSIX_FILE_DESCRIPTOR", "hipMemHandleTypePosixFileDescriptor", "numeric_literal");
    subst("CU_MEM_HANDLE_TYPE_WIN32", "hipMemHandleTypeWin32", "numeric_literal");
    subst("CU_MEM_HANDLE_TYPE_WIN32_KMT", "hipMemHandleTypeWin32Kmt", "numeric_literal");
    subst("CU_MEM_LOCATION_TYPE_DEVICE", "hipMemLocationTypeDevice", "numeric_literal");
    subst("CU_MEM_LOCATION_TYPE_INVALID", "hipMemLocationTypeInvalid", "numeric_literal");
    subst("CU_MEM_OPERATION_TYPE_MAP", "hipMemOperationTypeMap", "numeric_literal");
    subst("CU_MEM_OPERATION_TYPE_UNMAP", "hipMemOperationTypeUnmap", "numeric_literal");
    subst("CU_MEM_RANGE_ATTRIBUTE_ACCESSED_BY", "hipMemRangeAttributeAccessedBy", "numeric_literal");
    subst("CU_MEM_RANGE_ATTRIBUTE_LAST_PREFETCH_LOCATION", "hipMemRangeAttributeLastPrefetchLocation", "numeric_literal");
    subst("CU_MEM_RANGE_ATTRIBUTE_PREFERRED_LOCATION", "hipMemRangeAttributePreferredLocation", "numeric_literal");
    subst("CU_MEM_RANGE_ATTRIBUTE_READ_MOSTLY", "hipMemRangeAttributeReadMostly", "numeric_literal");
    subst("CU_OCCUPANCY_DEFAULT", "hipOccupancyDefault", "numeric_literal");
    subst("CU_OCCUPANCY_DISABLE_CACHING_OVERRIDE", "hipOccupancyDisableCachingOverride", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_ACCESS_FLAGS", "HIP_POINTER_ATTRIBUTE_ACCESS_FLAGS", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_ALLOWED_HANDLE_TYPES", "HIP_POINTER_ATTRIBUTE_ALLOWED_HANDLE_TYPES", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_BUFFER_ID", "HIP_POINTER_ATTRIBUTE_BUFFER_ID", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_CONTEXT", "HIP_POINTER_ATTRIBUTE_CONTEXT", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_DEVICE_ORDINAL", "HIP_POINTER_ATTRIBUTE_DEVICE_ORDINAL", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_DEVICE_POINTER", "HIP_POINTER_ATTRIBUTE_DEVICE_POINTER", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_HOST_POINTER", "HIP_POINTER_ATTRIBUTE_HOST_POINTER", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_IS_GPU_DIRECT_RDMA_CAPABLE", "HIP_POINTER_ATTRIBUTE_IS_GPU_DIRECT_RDMA_CAPABLE", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_IS_LEGACY_CUDA_IPC_CAPABLE", "HIP_POINTER_ATTRIBUTE_IS_LEGACY_HIP_IPC_CAPABLE", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_IS_MANAGED", "HIP_POINTER_ATTRIBUTE_IS_MANAGED", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_MAPPED", "HIP_POINTER_ATTRIBUTE_MAPPED", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_MEMORY_TYPE", "HIP_POINTER_ATTRIBUTE_MEMORY_TYPE", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_MEMPOOL_HANDLE", "HIP_POINTER_ATTRIBUTE_MEMPOOL_HANDLE", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_P2P_TOKENS", "HIP_POINTER_ATTRIBUTE_P2P_TOKENS", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_RANGE_SIZE", "HIP_POINTER_ATTRIBUTE_RANGE_SIZE", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_RANGE_START_ADDR", "HIP_POINTER_ATTRIBUTE_RANGE_START_ADDR", "numeric_literal");
    subst("CU_POINTER_ATTRIBUTE_SYNC_MEMOPS", "HIP_POINTER_ATTRIBUTE_SYNC_MEMOPS", "numeric_literal");
    subst("CU_RESOURCE_TYPE_ARRAY", "HIP_RESOURCE_TYPE_ARRAY", "numeric_literal");
    subst("CU_RESOURCE_TYPE_LINEAR", "HIP_RESOURCE_TYPE_LINEAR", "numeric_literal");
    subst("CU_RESOURCE_TYPE_MIPMAPPED_ARRAY", "HIP_RESOURCE_TYPE_MIPMAPPED_ARRAY", "numeric_literal");
    subst("CU_RESOURCE_TYPE_PITCH2D", "HIP_RESOURCE_TYPE_PITCH2D", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_FLOAT_1X16", "HIP_RES_VIEW_FORMAT_FLOAT_1X16", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_FLOAT_1X32", "HIP_RES_VIEW_FORMAT_FLOAT_1X32", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_FLOAT_2X16", "HIP_RES_VIEW_FORMAT_FLOAT_2X16", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_FLOAT_2X32", "HIP_RES_VIEW_FORMAT_FLOAT_2X32", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_FLOAT_4X16", "HIP_RES_VIEW_FORMAT_FLOAT_4X16", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_FLOAT_4X32", "HIP_RES_VIEW_FORMAT_FLOAT_4X32", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_NONE", "HIP_RES_VIEW_FORMAT_NONE", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_SIGNED_BC4", "HIP_RES_VIEW_FORMAT_SIGNED_BC4", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_SIGNED_BC5", "HIP_RES_VIEW_FORMAT_SIGNED_BC5", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_SIGNED_BC6H", "HIP_RES_VIEW_FORMAT_SIGNED_BC6H", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_SINT_1X16", "HIP_RES_VIEW_FORMAT_SINT_1X16", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_SINT_1X32", "HIP_RES_VIEW_FORMAT_SINT_1X32", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_SINT_1X8", "HIP_RES_VIEW_FORMAT_SINT_1X8", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_SINT_2X16", "HIP_RES_VIEW_FORMAT_SINT_2X16", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_SINT_2X32", "HIP_RES_VIEW_FORMAT_SINT_2X32", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_SINT_2X8", "HIP_RES_VIEW_FORMAT_SINT_2X8", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_SINT_4X16", "HIP_RES_VIEW_FORMAT_SINT_4X16", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_SINT_4X32", "HIP_RES_VIEW_FORMAT_SINT_4X32", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_SINT_4X8", "HIP_RES_VIEW_FORMAT_SINT_4X8", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UINT_1X16", "HIP_RES_VIEW_FORMAT_UINT_1X16", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UINT_1X32", "HIP_RES_VIEW_FORMAT_UINT_1X32", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UINT_1X8", "HIP_RES_VIEW_FORMAT_UINT_1X8", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UINT_2X16", "HIP_RES_VIEW_FORMAT_UINT_2X16", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UINT_2X32", "HIP_RES_VIEW_FORMAT_UINT_2X32", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UINT_2X8", "HIP_RES_VIEW_FORMAT_UINT_2X8", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UINT_4X16", "HIP_RES_VIEW_FORMAT_UINT_4X16", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UINT_4X32", "HIP_RES_VIEW_FORMAT_UINT_4X32", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UINT_4X8", "HIP_RES_VIEW_FORMAT_UINT_4X8", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC1", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC1", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC2", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC2", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC3", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC3", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC4", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC4", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC5", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC5", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC6H", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC6H", "numeric_literal");
    subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC7", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC7", "numeric_literal");
    subst("CU_SHARED_MEM_CONFIG_DEFAULT_BANK_SIZE", "hipSharedMemBankSizeDefault", "numeric_literal");
    subst("CU_SHARED_MEM_CONFIG_EIGHT_BYTE_BANK_SIZE", "hipSharedMemBankSizeEightByte", "numeric_literal");
    subst("CU_SHARED_MEM_CONFIG_FOUR_BYTE_BANK_SIZE", "hipSharedMemBankSizeFourByte", "numeric_literal");
    subst("CU_STREAM_ADD_CAPTURE_DEPENDENCIES", "hipStreamAddCaptureDependencies", "numeric_literal");
    subst("CU_STREAM_CAPTURE_MODE_GLOBAL", "hipStreamCaptureModeGlobal", "numeric_literal");
    subst("CU_STREAM_CAPTURE_MODE_RELAXED", "hipStreamCaptureModeRelaxed", "numeric_literal");
    subst("CU_STREAM_CAPTURE_MODE_THREAD_LOCAL", "hipStreamCaptureModeThreadLocal", "numeric_literal");
    subst("CU_STREAM_CAPTURE_STATUS_ACTIVE", "hipStreamCaptureStatusActive", "numeric_literal");
    subst("CU_STREAM_CAPTURE_STATUS_INVALIDATED", "hipStreamCaptureStatusInvalidated", "numeric_literal");
    subst("CU_STREAM_CAPTURE_STATUS_NONE", "hipStreamCaptureStatusNone", "numeric_literal");
    subst("CU_STREAM_DEFAULT", "hipStreamDefault", "numeric_literal");
    subst("CU_STREAM_NON_BLOCKING", "hipStreamNonBlocking", "numeric_literal");
    subst("CU_STREAM_SET_CAPTURE_DEPENDENCIES", "hipStreamSetCaptureDependencies", "numeric_literal");
    subst("CU_STREAM_WAIT_VALUE_AND", "hipStreamWaitValueAnd", "numeric_literal");
    subst("CU_STREAM_WAIT_VALUE_EQ", "hipStreamWaitValueEq", "numeric_literal");
    subst("CU_STREAM_WAIT_VALUE_GEQ", "hipStreamWaitValueGte", "numeric_literal");
    subst("CU_STREAM_WAIT_VALUE_NOR", "hipStreamWaitValueNor", "numeric_literal");
    subst("CU_TR_ADDRESS_MODE_BORDER", "HIP_TR_ADDRESS_MODE_BORDER", "numeric_literal");
    subst("CU_TR_ADDRESS_MODE_CLAMP", "HIP_TR_ADDRESS_MODE_CLAMP", "numeric_literal");
    subst("CU_TR_ADDRESS_MODE_MIRROR", "HIP_TR_ADDRESS_MODE_MIRROR", "numeric_literal");
    subst("CU_TR_ADDRESS_MODE_WRAP", "HIP_TR_ADDRESS_MODE_WRAP", "numeric_literal");
    subst("CU_TR_FILTER_MODE_LINEAR", "HIP_TR_FILTER_MODE_LINEAR", "numeric_literal");
    subst("CU_TR_FILTER_MODE_POINT", "HIP_TR_FILTER_MODE_POINT", "numeric_literal");
    subst("CU_USER_OBJECT_NO_DESTRUCTOR_SYNC", "hipUserObjectNoDestructorSync", "numeric_literal");
    subst("NVRTC_ERROR_BUILTIN_OPERATION_FAILURE", "HIPRTC_ERROR_BUILTIN_OPERATION_FAILURE", "numeric_literal");
    subst("NVRTC_ERROR_COMPILATION", "HIPRTC_ERROR_COMPILATION", "numeric_literal");
    subst("NVRTC_ERROR_INTERNAL_ERROR", "HIPRTC_ERROR_INTERNAL_ERROR", "numeric_literal");
    subst("NVRTC_ERROR_INVALID_INPUT", "HIPRTC_ERROR_INVALID_INPUT", "numeric_literal");
    subst("NVRTC_ERROR_INVALID_OPTION", "HIPRTC_ERROR_INVALID_OPTION", "numeric_literal");
    subst("NVRTC_ERROR_INVALID_PROGRAM", "HIPRTC_ERROR_INVALID_PROGRAM", "numeric_literal");
    subst("NVRTC_ERROR_NAME_EXPRESSION_NOT_VALID", "HIPRTC_ERROR_NAME_EXPRESSION_NOT_VALID", "numeric_literal");
    subst("NVRTC_ERROR_NO_LOWERED_NAMES_BEFORE_COMPILATION", "HIPRTC_ERROR_NO_LOWERED_NAMES_BEFORE_COMPILATION", "numeric_literal");
    subst("NVRTC_ERROR_NO_NAME_EXPRESSIONS_AFTER_COMPILATION", "HIPRTC_ERROR_NO_NAME_EXPRESSIONS_AFTER_COMPILATION", "numeric_literal");
    subst("NVRTC_ERROR_OUT_OF_MEMORY", "HIPRTC_ERROR_OUT_OF_MEMORY", "numeric_literal");
    subst("NVRTC_ERROR_PROGRAM_CREATION_FAILURE", "HIPRTC_ERROR_PROGRAM_CREATION_FAILURE", "numeric_literal");
    subst("NVRTC_SUCCESS", "HIPRTC_SUCCESS", "numeric_literal");
    subst("__NV_E4M3", "__HIP_E4M3_FNUZ", "numeric_literal");
    subst("__NV_E5M2", "__HIP_E5M2_FNUZ", "numeric_literal");
    subst("__NV_NOSAT", "__HIP_NOSAT", "numeric_literal");
    subst("__NV_SATFINITE", "__HIP_SATFINITE", "numeric_literal");
    subst("__nv_fp8x4_e5m2", "__hip_fp8x4_e5m2_fnuz", "numeric_literal");
    subst("cublasLtOrder_t", "hipblasLtOrder_t", "numeric_literal");
    subst("cudaAccessPropertyNormal", "hipAccessPropertyNormal", "numeric_literal");
    subst("cudaAccessPropertyPersisting", "hipAccessPropertyPersisting", "numeric_literal");
    subst("cudaAccessPropertyStreaming", "hipAccessPropertyStreaming", "numeric_literal");
    subst("cudaAddressModeBorder", "hipAddressModeBorder", "numeric_literal");
    subst("cudaAddressModeClamp", "hipAddressModeClamp", "numeric_literal");
    subst("cudaAddressModeMirror", "hipAddressModeMirror", "numeric_literal");
    subst("cudaAddressModeWrap", "hipAddressModeWrap", "numeric_literal");
    subst("cudaBoundaryModeClamp", "hipBoundaryModeClamp", "numeric_literal");
    subst("cudaBoundaryModeTrap", "hipBoundaryModeTrap", "numeric_literal");
    subst("cudaBoundaryModeZero", "hipBoundaryModeZero", "numeric_literal");
    subst("cudaChannelFormatKindFloat", "hipChannelFormatKindFloat", "numeric_literal");
    subst("cudaChannelFormatKindNone", "hipChannelFormatKindNone", "numeric_literal");
    subst("cudaChannelFormatKindSigned", "hipChannelFormatKindSigned", "numeric_literal");
    subst("cudaChannelFormatKindUnsigned", "hipChannelFormatKindUnsigned", "numeric_literal");
    subst("cudaComputeModeDefault", "hipComputeModeDefault", "numeric_literal");
    subst("cudaComputeModeExclusive", "hipComputeModeExclusive", "numeric_literal");
    subst("cudaComputeModeExclusiveProcess", "hipComputeModeExclusiveProcess", "numeric_literal");
    subst("cudaComputeModeProhibited", "hipComputeModeProhibited", "numeric_literal");
    subst("cudaDevAttrAsyncEngineCount", "hipDeviceAttributeAsyncEngineCount", "numeric_literal");
    subst("cudaDevAttrCanMapHostMemory", "hipDeviceAttributeCanMapHostMemory", "numeric_literal");
    subst("cudaDevAttrCanUseHostPointerForRegisteredMem", "hipDeviceAttributeCanUseHostPointerForRegisteredMem", "numeric_literal");
    subst("cudaDevAttrClockRate", "hipDeviceAttributeClockRate", "numeric_literal");
    subst("cudaDevAttrComputeCapabilityMajor", "hipDeviceAttributeComputeCapabilityMajor", "numeric_literal");
    subst("cudaDevAttrComputeCapabilityMinor", "hipDeviceAttributeComputeCapabilityMinor", "numeric_literal");
    subst("cudaDevAttrComputeMode", "hipDeviceAttributeComputeMode", "numeric_literal");
    subst("cudaDevAttrComputePreemptionSupported", "hipDeviceAttributeComputePreemptionSupported", "numeric_literal");
    subst("cudaDevAttrConcurrentKernels", "hipDeviceAttributeConcurrentKernels", "numeric_literal");
    subst("cudaDevAttrConcurrentManagedAccess", "hipDeviceAttributeConcurrentManagedAccess", "numeric_literal");
    subst("cudaDevAttrCooperativeLaunch", "hipDeviceAttributeCooperativeLaunch", "numeric_literal");
    subst("cudaDevAttrCooperativeMultiDeviceLaunch", "hipDeviceAttributeCooperativeMultiDeviceLaunch", "numeric_literal");
    subst("cudaDevAttrDirectManagedMemAccessFromHost", "hipDeviceAttributeDirectManagedMemAccessFromHost", "numeric_literal");
    subst("cudaDevAttrEccEnabled", "hipDeviceAttributeEccEnabled", "numeric_literal");
    subst("cudaDevAttrGlobalL1CacheSupported", "hipDeviceAttributeGlobalL1CacheSupported", "numeric_literal");
    subst("cudaDevAttrGlobalMemoryBusWidth", "hipDeviceAttributeMemoryBusWidth", "numeric_literal");
    subst("cudaDevAttrGpuOverlap", "hipDeviceAttributeAsyncEngineCount", "numeric_literal");
    subst("cudaDevAttrHostNativeAtomicSupported", "hipDeviceAttributeHostNativeAtomicSupported", "numeric_literal");
    subst("cudaDevAttrHostRegisterSupported", "hipDeviceAttributeHostRegisterSupported", "numeric_literal");
    subst("cudaDevAttrIntegrated", "hipDeviceAttributeIntegrated", "numeric_literal");
    subst("cudaDevAttrIsMultiGpuBoard", "hipDeviceAttributeIsMultiGpuBoard", "numeric_literal");
    subst("cudaDevAttrKernelExecTimeout", "hipDeviceAttributeKernelExecTimeout", "numeric_literal");
    subst("cudaDevAttrL2CacheSize", "hipDeviceAttributeL2CacheSize", "numeric_literal");
    subst("cudaDevAttrLocalL1CacheSupported", "hipDeviceAttributeLocalL1CacheSupported", "numeric_literal");
    subst("cudaDevAttrManagedMemory", "hipDeviceAttributeManagedMemory", "numeric_literal");
    subst("cudaDevAttrMaxBlockDimX", "hipDeviceAttributeMaxBlockDimX", "numeric_literal");
    subst("cudaDevAttrMaxBlockDimY", "hipDeviceAttributeMaxBlockDimY", "numeric_literal");
    subst("cudaDevAttrMaxBlockDimZ", "hipDeviceAttributeMaxBlockDimZ", "numeric_literal");
    subst("cudaDevAttrMaxBlocksPerMultiprocessor", "hipDeviceAttributeMaxBlocksPerMultiprocessor", "numeric_literal");
    subst("cudaDevAttrMaxGridDimX", "hipDeviceAttributeMaxGridDimX", "numeric_literal");
    subst("cudaDevAttrMaxGridDimY", "hipDeviceAttributeMaxGridDimY", "numeric_literal");
    subst("cudaDevAttrMaxGridDimZ", "hipDeviceAttributeMaxGridDimZ", "numeric_literal");
    subst("cudaDevAttrMaxPitch", "hipDeviceAttributeMaxPitch", "numeric_literal");
    subst("cudaDevAttrMaxRegistersPerBlock", "hipDeviceAttributeMaxRegistersPerBlock", "numeric_literal");
    subst("cudaDevAttrMaxRegistersPerMultiprocessor", "hipDeviceAttributeMaxRegistersPerMultiprocessor", "numeric_literal");
    subst("cudaDevAttrMaxSharedMemoryPerBlock", "hipDeviceAttributeMaxSharedMemoryPerBlock", "numeric_literal");
    subst("cudaDevAttrMaxSharedMemoryPerBlockOptin", "hipDeviceAttributeSharedMemPerBlockOptin", "numeric_literal");
    subst("cudaDevAttrMaxSharedMemoryPerMultiprocessor", "hipDeviceAttributeMaxSharedMemoryPerMultiprocessor", "numeric_literal");
    subst("cudaDevAttrMaxSurface1DLayeredWidth", "hipDeviceAttributeMaxSurface1DLayered", "numeric_literal");
    subst("cudaDevAttrMaxSurface1DWidth", "hipDeviceAttributeMaxSurface1D", "numeric_literal");
    subst("cudaDevAttrMaxSurface2DHeight", "hipDeviceAttributeMaxSurface2D", "numeric_literal");
    subst("cudaDevAttrMaxSurface2DLayeredHeight", "hipDeviceAttributeMaxSurface2DLayered", "numeric_literal");
    subst("cudaDevAttrMaxSurface2DLayeredWidth", "hipDeviceAttributeMaxSurface2DLayered", "numeric_literal");
    subst("cudaDevAttrMaxSurface2DWidth", "hipDeviceAttributeMaxSurface2D", "numeric_literal");
    subst("cudaDevAttrMaxSurface3DDepth", "hipDeviceAttributeMaxSurface3D", "numeric_literal");
    subst("cudaDevAttrMaxSurface3DHeight", "hipDeviceAttributeMaxSurface3D", "numeric_literal");
    subst("cudaDevAttrMaxSurface3DWidth", "hipDeviceAttributeMaxSurface3D", "numeric_literal");
    subst("cudaDevAttrMaxSurfaceCubemapLayeredWidth", "hipDeviceAttributeMaxSurfaceCubemapLayered", "numeric_literal");
    subst("cudaDevAttrMaxSurfaceCubemapWidth", "hipDeviceAttributeMaxSurfaceCubemap", "numeric_literal");
    subst("cudaDevAttrMaxTexture1DLayeredWidth", "hipDeviceAttributeMaxTexture1DLayered", "numeric_literal");
    subst("cudaDevAttrMaxTexture1DLinearWidth", "hipDeviceAttributeMaxTexture1DLinear", "numeric_literal");
    subst("cudaDevAttrMaxTexture1DMipmappedWidth", "hipDeviceAttributeMaxTexture1DMipmap", "numeric_literal");
    subst("cudaDevAttrMaxTexture1DWidth", "hipDeviceAttributeMaxTexture1DWidth", "numeric_literal");
    subst("cudaDevAttrMaxTexture2DGatherHeight", "hipDeviceAttributeMaxTexture2DGather", "numeric_literal");
    subst("cudaDevAttrMaxTexture2DGatherWidth", "hipDeviceAttributeMaxTexture2DGather", "numeric_literal");
    subst("cudaDevAttrMaxTexture2DHeight", "hipDeviceAttributeMaxTexture2DHeight", "numeric_literal");
    subst("cudaDevAttrMaxTexture2DLayeredHeight", "hipDeviceAttributeMaxTexture2DLayered", "numeric_literal");
    subst("cudaDevAttrMaxTexture2DLayeredWidth", "hipDeviceAttributeMaxTexture2DLayered", "numeric_literal");
    subst("cudaDevAttrMaxTexture2DLinearHeight", "hipDeviceAttributeMaxTexture2DLinear", "numeric_literal");
    subst("cudaDevAttrMaxTexture2DLinearPitch", "hipDeviceAttributeMaxTexture2DLinear", "numeric_literal");
    subst("cudaDevAttrMaxTexture2DLinearWidth", "hipDeviceAttributeMaxTexture2DLinear", "numeric_literal");
    subst("cudaDevAttrMaxTexture2DMipmappedHeight", "hipDeviceAttributeMaxTexture2DMipmap", "numeric_literal");
    subst("cudaDevAttrMaxTexture2DMipmappedWidth", "hipDeviceAttributeMaxTexture2DMipmap", "numeric_literal");
    subst("cudaDevAttrMaxTexture2DWidth", "hipDeviceAttributeMaxTexture2DWidth", "numeric_literal");
    subst("cudaDevAttrMaxTexture3DDepth", "hipDeviceAttributeMaxTexture3DDepth", "numeric_literal");
    subst("cudaDevAttrMaxTexture3DDepthAlt", "hipDeviceAttributeMaxTexture3DAlt", "numeric_literal");
    subst("cudaDevAttrMaxTexture3DHeight", "hipDeviceAttributeMaxTexture3DHeight", "numeric_literal");
    subst("cudaDevAttrMaxTexture3DHeightAlt", "hipDeviceAttributeMaxTexture3DAlt", "numeric_literal");
    subst("cudaDevAttrMaxTexture3DWidth", "hipDeviceAttributeMaxTexture3DWidth", "numeric_literal");
    subst("cudaDevAttrMaxTexture3DWidthAlt", "hipDeviceAttributeMaxTexture3DAlt", "numeric_literal");
    subst("cudaDevAttrMaxTextureCubemapLayeredWidth", "hipDeviceAttributeMaxTextureCubemapLayered", "numeric_literal");
    subst("cudaDevAttrMaxTextureCubemapWidth", "hipDeviceAttributeMaxTextureCubemap", "numeric_literal");
    subst("cudaDevAttrMaxThreadsPerBlock", "hipDeviceAttributeMaxThreadsPerBlock", "numeric_literal");
    subst("cudaDevAttrMaxThreadsPerMultiProcessor", "hipDeviceAttributeMaxThreadsPerMultiProcessor", "numeric_literal");
    subst("cudaDevAttrMemoryClockRate", "hipDeviceAttributeMemoryClockRate", "numeric_literal");
    subst("cudaDevAttrMemoryPoolsSupported", "hipDeviceAttributeMemoryPoolsSupported", "numeric_literal");
    subst("cudaDevAttrMultiGpuBoardGroupID", "hipDeviceAttributeMultiGpuBoardGroupID", "numeric_literal");
    subst("cudaDevAttrMultiProcessorCount", "hipDeviceAttributeMultiprocessorCount", "numeric_literal");
    subst("cudaDevAttrPageableMemoryAccess", "hipDeviceAttributePageableMemoryAccess", "numeric_literal");
    subst("cudaDevAttrPageableMemoryAccessUsesHostPageTables", "hipDeviceAttributePageableMemoryAccessUsesHostPageTables", "numeric_literal");
    subst("cudaDevAttrPciBusId", "hipDeviceAttributePciBusId", "numeric_literal");
    subst("cudaDevAttrPciDeviceId", "hipDeviceAttributePciDeviceId", "numeric_literal");
    subst("cudaDevAttrPciDomainId", "hipDeviceAttributePciDomainID", "numeric_literal");
    subst("cudaDevAttrReserved94", "hipDeviceAttributeCanUseStreamWaitValue", "numeric_literal");
    subst("cudaDevAttrSingleToDoublePrecisionPerfRatio", "hipDeviceAttributeSingleToDoublePrecisionPerfRatio", "numeric_literal");
    subst("cudaDevAttrStreamPrioritiesSupported", "hipDeviceAttributeStreamPrioritiesSupported", "numeric_literal");
    subst("cudaDevAttrSurfaceAlignment", "hipDeviceAttributeSurfaceAlignment", "numeric_literal");
    subst("cudaDevAttrTccDriver", "hipDeviceAttributeTccDriver", "numeric_literal");
    subst("cudaDevAttrTextureAlignment", "hipDeviceAttributeTextureAlignment", "numeric_literal");
    subst("cudaDevAttrTexturePitchAlignment", "hipDeviceAttributeTexturePitchAlignment", "numeric_literal");
    subst("cudaDevAttrTotalConstantMemory", "hipDeviceAttributeTotalConstantMemory", "numeric_literal");
    subst("cudaDevAttrUnifiedAddressing", "hipDeviceAttributeUnifiedAddressing", "numeric_literal");
    subst("cudaDevAttrWarpSize", "hipDeviceAttributeWarpSize", "numeric_literal");
    subst("cudaDevP2PAttrAccessSupported", "hipDevP2PAttrAccessSupported", "numeric_literal");
    subst("cudaDevP2PAttrCudaArrayAccessSupported", "hipDevP2PAttrHipArrayAccessSupported", "numeric_literal");
    subst("cudaDevP2PAttrNativeAtomicSupported", "hipDevP2PAttrNativeAtomicSupported", "numeric_literal");
    subst("cudaDevP2PAttrPerformanceRank", "hipDevP2PAttrPerformanceRank", "numeric_literal");
    subst("cudaDriverEntryPointSuccess", "HIP_GET_PROC_ADDRESS_SUCCESS", "numeric_literal");
    subst("cudaDriverEntryPointSymbolNotFound", "HIP_GET_PROC_ADDRESS_SYMBOL_NOT_FOUND", "numeric_literal");
    subst("cudaDriverEntryPointVersionNotSufficent", "HIP_GET_PROC_ADDRESS_VERSION_NOT_SUFFICIENT", "numeric_literal");
    subst("cudaErrorAlreadyAcquired", "hipErrorAlreadyAcquired", "numeric_literal");
    subst("cudaErrorAlreadyMapped", "hipErrorAlreadyMapped", "numeric_literal");
    subst("cudaErrorArrayIsMapped", "hipErrorArrayIsMapped", "numeric_literal");
    subst("cudaErrorAssert", "hipErrorAssert", "numeric_literal");
    subst("cudaErrorCapturedEvent", "hipErrorCapturedEvent", "numeric_literal");
    subst("cudaErrorContextIsDestroyed", "hipErrorContextIsDestroyed", "numeric_literal");
    subst("cudaErrorCooperativeLaunchTooLarge", "hipErrorCooperativeLaunchTooLarge", "numeric_literal");
    subst("cudaErrorCudartUnloading", "hipErrorDeinitialized", "numeric_literal");
    subst("cudaErrorDeviceAlreadyInUse", "hipErrorContextAlreadyInUse", "numeric_literal");
    subst("cudaErrorDeviceUninitialized", "hipErrorInvalidContext", "numeric_literal");
    subst("cudaErrorECCUncorrectable", "hipErrorECCNotCorrectable", "numeric_literal");
    subst("cudaErrorFileNotFound", "hipErrorFileNotFound", "numeric_literal");
    subst("cudaErrorGraphExecUpdateFailure", "hipErrorGraphExecUpdateFailure", "numeric_literal");
    subst("cudaErrorHostMemoryAlreadyRegistered", "hipErrorHostMemoryAlreadyRegistered", "numeric_literal");
    subst("cudaErrorHostMemoryNotRegistered", "hipErrorHostMemoryNotRegistered", "numeric_literal");
    subst("cudaErrorIllegalAddress", "hipErrorIllegalAddress", "numeric_literal");
    subst("cudaErrorIllegalState", "hipErrorIllegalState", "numeric_literal");
    subst("cudaErrorInitializationError", "hipErrorNotInitialized", "numeric_literal");
    subst("cudaErrorInsufficientDriver", "hipErrorInsufficientDriver", "numeric_literal");
    subst("cudaErrorInvalidConfiguration", "hipErrorInvalidConfiguration", "numeric_literal");
    subst("cudaErrorInvalidDevice", "hipErrorInvalidDevice", "numeric_literal");
    subst("cudaErrorInvalidDeviceFunction", "hipErrorInvalidDeviceFunction", "numeric_literal");
    subst("cudaErrorInvalidDevicePointer", "hipErrorInvalidDevicePointer", "numeric_literal");
    subst("cudaErrorInvalidGraphicsContext", "hipErrorInvalidGraphicsContext", "numeric_literal");
    subst("cudaErrorInvalidKernelImage", "hipErrorInvalidImage", "numeric_literal");
    subst("cudaErrorInvalidMemcpyDirection", "hipErrorInvalidMemcpyDirection", "numeric_literal");
    subst("cudaErrorInvalidPitchValue", "hipErrorInvalidPitchValue", "numeric_literal");
    subst("cudaErrorInvalidPtx", "hipErrorInvalidKernelFile", "numeric_literal");
    subst("cudaErrorInvalidResourceHandle", "hipErrorInvalidHandle", "numeric_literal");
    subst("cudaErrorInvalidSource", "hipErrorInvalidSource", "numeric_literal");
    subst("cudaErrorInvalidSymbol", "hipErrorInvalidSymbol", "numeric_literal");
    subst("cudaErrorInvalidValue", "hipErrorInvalidValue", "numeric_literal");
    subst("cudaErrorLaunchFailure", "hipErrorLaunchFailure", "numeric_literal");
    subst("cudaErrorLaunchOutOfResources", "hipErrorLaunchOutOfResources", "numeric_literal");
    subst("cudaErrorLaunchTimeout", "hipErrorLaunchTimeOut", "numeric_literal");
    subst("cudaErrorLossyQuery", "hipErrorLossyQuery", "numeric_literal");
    subst("cudaErrorMapBufferObjectFailed", "hipErrorMapFailed", "numeric_literal");
    subst("cudaErrorMemoryAllocation", "hipErrorOutOfMemory", "numeric_literal");
    subst("cudaErrorMissingConfiguration", "hipErrorMissingConfiguration", "numeric_literal");
    subst("cudaErrorNoDevice", "hipErrorNoDevice", "numeric_literal");
    subst("cudaErrorNoKernelImageForDevice", "hipErrorNoBinaryForGpu", "numeric_literal");
    subst("cudaErrorNotMapped", "hipErrorNotMapped", "numeric_literal");
    subst("cudaErrorNotMappedAsArray", "hipErrorNotMappedAsArray", "numeric_literal");
    subst("cudaErrorNotMappedAsPointer", "hipErrorNotMappedAsPointer", "numeric_literal");
    subst("cudaErrorNotReady", "hipErrorNotReady", "numeric_literal");
    subst("cudaErrorNotSupported", "hipErrorNotSupported", "numeric_literal");
    subst("cudaErrorOperatingSystem", "hipErrorOperatingSystem", "numeric_literal");
    subst("cudaErrorPeerAccessAlreadyEnabled", "hipErrorPeerAccessAlreadyEnabled", "numeric_literal");
    subst("cudaErrorPeerAccessNotEnabled", "hipErrorPeerAccessNotEnabled", "numeric_literal");
    subst("cudaErrorPeerAccessUnsupported", "hipErrorPeerAccessUnsupported", "numeric_literal");
    subst("cudaErrorPriorLaunchFailure", "hipErrorPriorLaunchFailure", "numeric_literal");
    subst("cudaErrorProfilerAlreadyStarted", "hipErrorProfilerAlreadyStarted", "numeric_literal");
    subst("cudaErrorProfilerAlreadyStopped", "hipErrorProfilerAlreadyStopped", "numeric_literal");
    subst("cudaErrorProfilerDisabled", "hipErrorProfilerDisabled", "numeric_literal");
    subst("cudaErrorProfilerNotInitialized", "hipErrorProfilerNotInitialized", "numeric_literal");
    subst("cudaErrorSetOnActiveProcess", "hipErrorSetOnActiveProcess", "numeric_literal");
    subst("cudaErrorSharedObjectInitFailed", "hipErrorSharedObjectInitFailed", "numeric_literal");
    subst("cudaErrorSharedObjectSymbolNotFound", "hipErrorSharedObjectSymbolNotFound", "numeric_literal");
    subst("cudaErrorStreamCaptureImplicit", "hipErrorStreamCaptureImplicit", "numeric_literal");
    subst("cudaErrorStreamCaptureInvalidated", "hipErrorStreamCaptureInvalidated", "numeric_literal");
    subst("cudaErrorStreamCaptureIsolation", "hipErrorStreamCaptureIsolation", "numeric_literal");
    subst("cudaErrorStreamCaptureMerge", "hipErrorStreamCaptureMerge", "numeric_literal");
    subst("cudaErrorStreamCaptureUnjoined", "hipErrorStreamCaptureUnjoined", "numeric_literal");
    subst("cudaErrorStreamCaptureUnmatched", "hipErrorStreamCaptureUnmatched", "numeric_literal");
    subst("cudaErrorStreamCaptureUnsupported", "hipErrorStreamCaptureUnsupported", "numeric_literal");
    subst("cudaErrorStreamCaptureWrongThread", "hipErrorStreamCaptureWrongThread", "numeric_literal");
    subst("cudaErrorSymbolNotFound", "hipErrorNotFound", "numeric_literal");
    subst("cudaErrorUnknown", "hipErrorUnknown", "numeric_literal");
    subst("cudaErrorUnmapBufferObjectFailed", "hipErrorUnmapFailed", "numeric_literal");
    subst("cudaErrorUnsupportedLimit", "hipErrorUnsupportedLimit", "numeric_literal");
    subst("cudaExternalMemoryHandleTypeD3D11Resource", "hipExternalMemoryHandleTypeD3D11Resource", "numeric_literal");
    subst("cudaExternalMemoryHandleTypeD3D11ResourceKmt", "hipExternalMemoryHandleTypeD3D11ResourceKmt", "numeric_literal");
    subst("cudaExternalMemoryHandleTypeD3D12Heap", "hipExternalMemoryHandleTypeD3D12Heap", "numeric_literal");
    subst("cudaExternalMemoryHandleTypeD3D12Resource", "hipExternalMemoryHandleTypeD3D12Resource", "numeric_literal");
    subst("cudaExternalMemoryHandleTypeOpaqueFd", "hipExternalMemoryHandleTypeOpaqueFd", "numeric_literal");
    subst("cudaExternalMemoryHandleTypeOpaqueWin32", "hipExternalMemoryHandleTypeOpaqueWin32", "numeric_literal");
    subst("cudaExternalMemoryHandleTypeOpaqueWin32Kmt", "hipExternalMemoryHandleTypeOpaqueWin32Kmt", "numeric_literal");
    subst("cudaExternalSemaphoreHandleTypeD3D12Fence", "hipExternalSemaphoreHandleTypeD3D12Fence", "numeric_literal");
    subst("cudaExternalSemaphoreHandleTypeOpaqueFd", "hipExternalSemaphoreHandleTypeOpaqueFd", "numeric_literal");
    subst("cudaExternalSemaphoreHandleTypeOpaqueWin32", "hipExternalSemaphoreHandleTypeOpaqueWin32", "numeric_literal");
    subst("cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt", "hipExternalSemaphoreHandleTypeOpaqueWin32Kmt", "numeric_literal");
    subst("cudaFilterModeLinear", "hipFilterModeLinear", "numeric_literal");
    subst("cudaFilterModePoint", "hipFilterModePoint", "numeric_literal");
    subst("cudaFlushGPUDirectRDMAWritesOptionHost", "hipFlushGPUDirectRDMAWritesOptionHost", "numeric_literal");
    subst("cudaFlushGPUDirectRDMAWritesOptionMemOps", "hipFlushGPUDirectRDMAWritesOptionMemOps", "numeric_literal");
    subst("cudaFuncAttributeMax", "hipFuncAttributeMax", "numeric_literal");
    subst("cudaFuncAttributeMaxDynamicSharedMemorySize", "hipFuncAttributeMaxDynamicSharedMemorySize", "numeric_literal");
    subst("cudaFuncAttributePreferredSharedMemoryCarveout", "hipFuncAttributePreferredSharedMemoryCarveout", "numeric_literal");
    subst("cudaFuncCachePreferEqual", "hipFuncCachePreferEqual", "numeric_literal");
    subst("cudaFuncCachePreferL1", "hipFuncCachePreferL1", "numeric_literal");
    subst("cudaFuncCachePreferNone", "hipFuncCachePreferNone", "numeric_literal");
    subst("cudaFuncCachePreferShared", "hipFuncCachePreferShared", "numeric_literal");
    subst("cudaGLDeviceListAll", "hipGLDeviceListAll", "numeric_literal");
    subst("cudaGLDeviceListCurrentFrame", "hipGLDeviceListCurrentFrame", "numeric_literal");
    subst("cudaGLDeviceListNextFrame", "hipGLDeviceListNextFrame", "numeric_literal");
    subst("cudaGPUDirectRDMAWritesOrderingAllDevices", "hipGPUDirectRDMAWritesOrderingAllDevices", "numeric_literal");
    subst("cudaGPUDirectRDMAWritesOrderingNone", "hipGPUDirectRDMAWritesOrderingNone", "numeric_literal");
    subst("cudaGPUDirectRDMAWritesOrderingOwner", "hipGPUDirectRDMAWritesOrderingOwner", "numeric_literal");
    subst("cudaGraphDebugDotFlagsEventNodeParams", "hipGraphDebugDotFlagsEventNodeParams", "numeric_literal");
    subst("cudaGraphDebugDotFlagsExtSemasSignalNodeParams", "hipGraphDebugDotFlagsExtSemasSignalNodeParams", "numeric_literal");
    subst("cudaGraphDebugDotFlagsExtSemasWaitNodeParams", "hipGraphDebugDotFlagsExtSemasWaitNodeParams", "numeric_literal");
    subst("cudaGraphDebugDotFlagsHandles", "hipGraphDebugDotFlagsHandles", "numeric_literal");
    subst("cudaGraphDebugDotFlagsHostNodeParams", "hipGraphDebugDotFlagsHostNodeParams", "numeric_literal");
    subst("cudaGraphDebugDotFlagsKernelNodeAttributes", "hipGraphDebugDotFlagsKernelNodeAttributes", "numeric_literal");
    subst("cudaGraphDebugDotFlagsKernelNodeParams", "hipGraphDebugDotFlagsKernelNodeParams", "numeric_literal");
    subst("cudaGraphDebugDotFlagsMemcpyNodeParams", "hipGraphDebugDotFlagsMemcpyNodeParams", "numeric_literal");
    subst("cudaGraphDebugDotFlagsMemsetNodeParams", "hipGraphDebugDotFlagsMemsetNodeParams", "numeric_literal");
    subst("cudaGraphDebugDotFlagsVerbose", "hipGraphDebugDotFlagsVerbose", "numeric_literal");
    subst("cudaGraphDependencyTypeDefault", "hipGraphDependencyTypeDefault", "numeric_literal");
    subst("cudaGraphDependencyTypeProgrammatic", "hipGraphDependencyTypeProgrammatic", "numeric_literal");
    subst("cudaGraphExecUpdateError", "hipGraphExecUpdateError", "numeric_literal");
    subst("cudaGraphExecUpdateErrorFunctionChanged", "hipGraphExecUpdateErrorFunctionChanged", "numeric_literal");
    subst("cudaGraphExecUpdateErrorNodeTypeChanged", "hipGraphExecUpdateErrorNodeTypeChanged", "numeric_literal");
    subst("cudaGraphExecUpdateErrorNotSupported", "hipGraphExecUpdateErrorNotSupported", "numeric_literal");
    subst("cudaGraphExecUpdateErrorParametersChanged", "hipGraphExecUpdateErrorParametersChanged", "numeric_literal");
    subst("cudaGraphExecUpdateErrorTopologyChanged", "hipGraphExecUpdateErrorTopologyChanged", "numeric_literal");
    subst("cudaGraphExecUpdateErrorUnsupportedFunctionChange", "hipGraphExecUpdateErrorUnsupportedFunctionChange", "numeric_literal");
    subst("cudaGraphExecUpdateSuccess", "hipGraphExecUpdateSuccess", "numeric_literal");
    subst("cudaGraphInstantiateError", "hipGraphInstantiateError", "numeric_literal");
    subst("cudaGraphInstantiateFlagAutoFreeOnLaunch", "hipGraphInstantiateFlagAutoFreeOnLaunch", "numeric_literal");
    subst("cudaGraphInstantiateFlagDeviceLaunch", "hipGraphInstantiateFlagDeviceLaunch", "numeric_literal");
    subst("cudaGraphInstantiateFlagUpload", "hipGraphInstantiateFlagUpload", "numeric_literal");
    subst("cudaGraphInstantiateFlagUseNodePriority", "hipGraphInstantiateFlagUseNodePriority", "numeric_literal");
    subst("cudaGraphInstantiateInvalidStructure", "hipGraphInstantiateInvalidStructure", "numeric_literal");
    subst("cudaGraphInstantiateMultipleDevicesNotSupported", "hipGraphInstantiateMultipleDevicesNotSupported", "numeric_literal");
    subst("cudaGraphInstantiateNodeOperationNotSupported", "hipGraphInstantiateNodeOperationNotSupported", "numeric_literal");
    subst("cudaGraphInstantiateSuccess", "hipGraphInstantiateSuccess", "numeric_literal");
    subst("cudaGraphMemAttrReservedMemCurrent", "hipGraphMemAttrReservedMemCurrent", "numeric_literal");
    subst("cudaGraphMemAttrReservedMemHigh", "hipGraphMemAttrReservedMemHigh", "numeric_literal");
    subst("cudaGraphMemAttrUsedMemCurrent", "hipGraphMemAttrUsedMemCurrent", "numeric_literal");
    subst("cudaGraphMemAttrUsedMemHigh", "hipGraphMemAttrUsedMemHigh", "numeric_literal");
    subst("cudaGraphNodeTypeConditional", "hipGraphNodeTypeConditional", "numeric_literal");
    subst("cudaGraphNodeTypeCount", "hipGraphNodeTypeCount", "numeric_literal");
    subst("cudaGraphNodeTypeEmpty", "hipGraphNodeTypeEmpty", "numeric_literal");
    subst("cudaGraphNodeTypeEventRecord", "hipGraphNodeTypeEventRecord", "numeric_literal");
    subst("cudaGraphNodeTypeExtSemaphoreSignal", "hipGraphNodeTypeExtSemaphoreSignal", "numeric_literal");
    subst("cudaGraphNodeTypeExtSemaphoreWait", "hipGraphNodeTypeExtSemaphoreWait", "numeric_literal");
    subst("cudaGraphNodeTypeGraph", "hipGraphNodeTypeGraph", "numeric_literal");
    subst("cudaGraphNodeTypeHost", "hipGraphNodeTypeHost", "numeric_literal");
    subst("cudaGraphNodeTypeKernel", "hipGraphNodeTypeKernel", "numeric_literal");
    subst("cudaGraphNodeTypeMemAlloc", "hipGraphNodeTypeMemAlloc", "numeric_literal");
    subst("cudaGraphNodeTypeMemFree", "hipGraphNodeTypeMemFree", "numeric_literal");
    subst("cudaGraphNodeTypeMemcpy", "hipGraphNodeTypeMemcpy", "numeric_literal");
    subst("cudaGraphNodeTypeMemset", "hipGraphNodeTypeMemset", "numeric_literal");
    subst("cudaGraphNodeTypeWaitEvent", "hipGraphNodeTypeWaitEvent", "numeric_literal");
    subst("cudaGraphUserObjectMove", "hipGraphUserObjectMove", "numeric_literal");
    subst("cudaGraphicsRegisterFlagsNone", "hipGraphicsRegisterFlagsNone", "numeric_literal");
    subst("cudaGraphicsRegisterFlagsReadOnly", "hipGraphicsRegisterFlagsReadOnly", "numeric_literal");
    subst("cudaGraphicsRegisterFlagsSurfaceLoadStore", "hipGraphicsRegisterFlagsSurfaceLoadStore", "numeric_literal");
    subst("cudaGraphicsRegisterFlagsTextureGather", "hipGraphicsRegisterFlagsTextureGather", "numeric_literal");
    subst("cudaGraphicsRegisterFlagsWriteDiscard", "hipGraphicsRegisterFlagsWriteDiscard", "numeric_literal");
    subst("cudaKernelNodeAttributeAccessPolicyWindow", "hipKernelNodeAttributeAccessPolicyWindow", "numeric_literal");
    subst("cudaKernelNodeAttributeCooperative", "hipKernelNodeAttributeCooperative", "numeric_literal");
    subst("cudaKernelNodeAttributePriority", "hipKernelNodeAttributePriority", "numeric_literal");
    subst("cudaLaunchAttributeAccessPolicyWindow", "hipLaunchAttributeAccessPolicyWindow", "numeric_literal");
    subst("cudaLaunchAttributeCooperative", "hipLaunchAttributeCooperative", "numeric_literal");
    subst("cudaLaunchAttributePriority", "hipLaunchAttributePriority", "numeric_literal");
    subst("cudaLimitMallocHeapSize", "hipLimitMallocHeapSize", "numeric_literal");
    subst("cudaLimitPrintfFifoSize", "hipLimitPrintfFifoSize", "numeric_literal");
    subst("cudaLimitStackSize", "hipLimitStackSize", "numeric_literal");
    subst("cudaMemAccessFlagsProtNone", "hipMemAccessFlagsProtNone", "numeric_literal");
    subst("cudaMemAccessFlagsProtRead", "hipMemAccessFlagsProtRead", "numeric_literal");
    subst("cudaMemAccessFlagsProtReadWrite", "hipMemAccessFlagsProtReadWrite", "numeric_literal");
    subst("cudaMemAdviseSetAccessedBy", "hipMemAdviseSetAccessedBy", "numeric_literal");
    subst("cudaMemAdviseSetPreferredLocation", "hipMemAdviseSetPreferredLocation", "numeric_literal");
    subst("cudaMemAdviseSetReadMostly", "hipMemAdviseSetReadMostly", "numeric_literal");
    subst("cudaMemAdviseUnsetAccessedBy", "hipMemAdviseUnsetAccessedBy", "numeric_literal");
    subst("cudaMemAdviseUnsetPreferredLocation", "hipMemAdviseUnsetPreferredLocation", "numeric_literal");
    subst("cudaMemAdviseUnsetReadMostly", "hipMemAdviseUnsetReadMostly", "numeric_literal");
    subst("cudaMemAllocationTypeInvalid", "hipMemAllocationTypeInvalid", "numeric_literal");
    subst("cudaMemAllocationTypeMax", "hipMemAllocationTypeMax", "numeric_literal");
    subst("cudaMemAllocationTypePinned", "hipMemAllocationTypePinned", "numeric_literal");
    subst("cudaMemHandleTypeNone", "hipMemHandleTypeNone", "numeric_literal");
    subst("cudaMemHandleTypePosixFileDescriptor", "hipMemHandleTypePosixFileDescriptor", "numeric_literal");
    subst("cudaMemHandleTypeWin32", "hipMemHandleTypeWin32", "numeric_literal");
    subst("cudaMemHandleTypeWin32Kmt", "hipMemHandleTypeWin32Kmt", "numeric_literal");
    subst("cudaMemLocationTypeDevice", "hipMemLocationTypeDevice", "numeric_literal");
    subst("cudaMemLocationTypeInvalid", "hipMemLocationTypeInvalid", "numeric_literal");
    subst("cudaMemPoolAttrReleaseThreshold", "hipMemPoolAttrReleaseThreshold", "numeric_literal");
    subst("cudaMemPoolAttrReservedMemCurrent", "hipMemPoolAttrReservedMemCurrent", "numeric_literal");
    subst("cudaMemPoolAttrReservedMemHigh", "hipMemPoolAttrReservedMemHigh", "numeric_literal");
    subst("cudaMemPoolAttrUsedMemCurrent", "hipMemPoolAttrUsedMemCurrent", "numeric_literal");
    subst("cudaMemPoolAttrUsedMemHigh", "hipMemPoolAttrUsedMemHigh", "numeric_literal");
    subst("cudaMemPoolReuseAllowInternalDependencies", "hipMemPoolReuseAllowInternalDependencies", "numeric_literal");
    subst("cudaMemPoolReuseAllowOpportunistic", "hipMemPoolReuseAllowOpportunistic", "numeric_literal");
    subst("cudaMemPoolReuseFollowEventDependencies", "hipMemPoolReuseFollowEventDependencies", "numeric_literal");
    subst("cudaMemRangeAttributeAccessedBy", "hipMemRangeAttributeAccessedBy", "numeric_literal");
    subst("cudaMemRangeAttributeLastPrefetchLocation", "hipMemRangeAttributeLastPrefetchLocation", "numeric_literal");
    subst("cudaMemRangeAttributePreferredLocation", "hipMemRangeAttributePreferredLocation", "numeric_literal");
    subst("cudaMemRangeAttributeReadMostly", "hipMemRangeAttributeReadMostly", "numeric_literal");
    subst("cudaMemcpyDefault", "hipMemcpyDefault", "numeric_literal");
    subst("cudaMemcpyDeviceToDevice", "hipMemcpyDeviceToDevice", "numeric_literal");
    subst("cudaMemcpyDeviceToHost", "hipMemcpyDeviceToHost", "numeric_literal");
    subst("cudaMemcpyHostToDevice", "hipMemcpyHostToDevice", "numeric_literal");
    subst("cudaMemcpyHostToHost", "hipMemcpyHostToHost", "numeric_literal");
    subst("cudaMemoryTypeDevice", "hipMemoryTypeDevice", "numeric_literal");
    subst("cudaMemoryTypeHost", "hipMemoryTypeHost", "numeric_literal");
    subst("cudaMemoryTypeManaged", "hipMemoryTypeManaged", "numeric_literal");
    subst("cudaReadModeElementType", "hipReadModeElementType", "numeric_literal");
    subst("cudaReadModeNormalizedFloat", "hipReadModeNormalizedFloat", "numeric_literal");
    subst("cudaResViewFormatFloat1", "hipResViewFormatFloat1", "numeric_literal");
    subst("cudaResViewFormatFloat2", "hipResViewFormatFloat2", "numeric_literal");
    subst("cudaResViewFormatFloat4", "hipResViewFormatFloat4", "numeric_literal");
    subst("cudaResViewFormatHalf1", "hipResViewFormatHalf1", "numeric_literal");
    subst("cudaResViewFormatHalf2", "hipResViewFormatHalf2", "numeric_literal");
    subst("cudaResViewFormatHalf4", "hipResViewFormatHalf4", "numeric_literal");
    subst("cudaResViewFormatNone", "hipResViewFormatNone", "numeric_literal");
    subst("cudaResViewFormatSignedBlockCompressed4", "hipResViewFormatSignedBlockCompressed4", "numeric_literal");
    subst("cudaResViewFormatSignedBlockCompressed5", "hipResViewFormatSignedBlockCompressed5", "numeric_literal");
    subst("cudaResViewFormatSignedBlockCompressed6H", "hipResViewFormatSignedBlockCompressed6H", "numeric_literal");
    subst("cudaResViewFormatSignedChar1", "hipResViewFormatSignedChar1", "numeric_literal");
    subst("cudaResViewFormatSignedChar2", "hipResViewFormatSignedChar2", "numeric_literal");
    subst("cudaResViewFormatSignedChar4", "hipResViewFormatSignedChar4", "numeric_literal");
    subst("cudaResViewFormatSignedInt1", "hipResViewFormatSignedInt1", "numeric_literal");
    subst("cudaResViewFormatSignedInt2", "hipResViewFormatSignedInt2", "numeric_literal");
    subst("cudaResViewFormatSignedInt4", "hipResViewFormatSignedInt4", "numeric_literal");
    subst("cudaResViewFormatSignedShort1", "hipResViewFormatSignedShort1", "numeric_literal");
    subst("cudaResViewFormatSignedShort2", "hipResViewFormatSignedShort2", "numeric_literal");
    subst("cudaResViewFormatSignedShort4", "hipResViewFormatSignedShort4", "numeric_literal");
    subst("cudaResViewFormatUnsignedBlockCompressed1", "hipResViewFormatUnsignedBlockCompressed1", "numeric_literal");
    subst("cudaResViewFormatUnsignedBlockCompressed2", "hipResViewFormatUnsignedBlockCompressed2", "numeric_literal");
    subst("cudaResViewFormatUnsignedBlockCompressed3", "hipResViewFormatUnsignedBlockCompressed3", "numeric_literal");
    subst("cudaResViewFormatUnsignedBlockCompressed4", "hipResViewFormatUnsignedBlockCompressed4", "numeric_literal");
    subst("cudaResViewFormatUnsignedBlockCompressed5", "hipResViewFormatUnsignedBlockCompressed5", "numeric_literal");
    subst("cudaResViewFormatUnsignedBlockCompressed6H", "hipResViewFormatUnsignedBlockCompressed6H", "numeric_literal");
    subst("cudaResViewFormatUnsignedBlockCompressed7", "hipResViewFormatUnsignedBlockCompressed7", "numeric_literal");
    subst("cudaResViewFormatUnsignedChar1", "hipResViewFormatUnsignedChar1", "numeric_literal");
    subst("cudaResViewFormatUnsignedChar2", "hipResViewFormatUnsignedChar2", "numeric_literal");
    subst("cudaResViewFormatUnsignedChar4", "hipResViewFormatUnsignedChar4", "numeric_literal");
    subst("cudaResViewFormatUnsignedInt1", "hipResViewFormatUnsignedInt1", "numeric_literal");
    subst("cudaResViewFormatUnsignedInt2", "hipResViewFormatUnsignedInt2", "numeric_literal");
    subst("cudaResViewFormatUnsignedInt4", "hipResViewFormatUnsignedInt4", "numeric_literal");
    subst("cudaResViewFormatUnsignedShort1", "hipResViewFormatUnsignedShort1", "numeric_literal");
    subst("cudaResViewFormatUnsignedShort2", "hipResViewFormatUnsignedShort2", "numeric_literal");
    subst("cudaResViewFormatUnsignedShort4", "hipResViewFormatUnsignedShort4", "numeric_literal");
    subst("cudaResourceTypeArray", "hipResourceTypeArray", "numeric_literal");
    subst("cudaResourceTypeLinear", "hipResourceTypeLinear", "numeric_literal");
    subst("cudaResourceTypeMipmappedArray", "hipResourceTypeMipmappedArray", "numeric_literal");
    subst("cudaResourceTypePitch2D", "hipResourceTypePitch2D", "numeric_literal");
    subst("cudaSharedMemBankSizeDefault", "hipSharedMemBankSizeDefault", "numeric_literal");
    subst("cudaSharedMemBankSizeEightByte", "hipSharedMemBankSizeEightByte", "numeric_literal");
    subst("cudaSharedMemBankSizeFourByte", "hipSharedMemBankSizeFourByte", "numeric_literal");
    subst("cudaStreamAddCaptureDependencies", "hipStreamAddCaptureDependencies", "numeric_literal");
    subst("cudaStreamCaptureModeGlobal", "hipStreamCaptureModeGlobal", "numeric_literal");
    subst("cudaStreamCaptureModeRelaxed", "hipStreamCaptureModeRelaxed", "numeric_literal");
    subst("cudaStreamCaptureModeThreadLocal", "hipStreamCaptureModeThreadLocal", "numeric_literal");
    subst("cudaStreamCaptureStatusActive", "hipStreamCaptureStatusActive", "numeric_literal");
    subst("cudaStreamCaptureStatusInvalidated", "hipStreamCaptureStatusInvalidated", "numeric_literal");
    subst("cudaStreamCaptureStatusNone", "hipStreamCaptureStatusNone", "numeric_literal");
    subst("cudaStreamSetCaptureDependencies", "hipStreamSetCaptureDependencies", "numeric_literal");
    subst("cudaSuccess", "hipSuccess", "numeric_literal");
    subst("cudaUserObjectNoDestructorSync", "hipUserObjectNoDestructorSync", "numeric_literal");
    subst("cusolver_int_t", "int", "numeric_literal");
    subst("CUB_MAX", "CUB_MAX", "define");
    subst("CUB_MIN", "CUB_MIN", "define");
    subst("CUB_NAMESPACE_BEGIN", "BEGIN_HIPCUB_NAMESPACE", "define");
    subst("CUB_NAMESPACE_END", "END_HIPCUB_NAMESPACE", "define");
    subst("CUB_PTX_ARCH", "HIPCUB_ARCH", "define");
    subst("CUB_PTX_WARP_THREADS", "HIPCUB_WARP_THREADS", "define");
    subst("CUB_RUNTIME_FUNCTION", "HIPCUB_RUNTIME_FUNCTION", "define");
    subst("CUB_STDERR", "HIPCUB_STDERR", "define");
    subst("CUDART_2_OVER_PI", "HIP_2_OVER_PI", "define");
    subst("CUDART_2_OVER_PI_F", "HIP_2_OVER_PI_F", "define");
    subst("CUDART_3PIO4", "HIP_3PIO4", "define");
    subst("CUDART_3PIO4_F", "HIP_3PIO4_F", "define");
    subst("CUDART_DBL2INT_CVT", "HIP_DBL2INT_CVT", "define");
    subst("CUDART_INF", "HIP_INF", "define");
    subst("CUDART_INF_F", "HIP_INF_F", "define");
    subst("CUDART_L2E", "HIP_L2E", "define");
    subst("CUDART_L2E_F", "HIP_L2E_F", "define");
    subst("CUDART_L2E_HI", "HIP_L2E_HI", "define");
    subst("CUDART_L2E_LO", "HIP_L2E_LO", "define");
    subst("CUDART_L2T", "HIP_L2T", "define");
    subst("CUDART_L2T_F", "HIP_L2T_F", "define");
    subst("CUDART_LG2", "HIP_LG2", "define");
    subst("CUDART_LG2_F", "HIP_LG2_F", "define");
    subst("CUDART_LG2_HI", "HIP_LG2_HI", "define");
    subst("CUDART_LG2_LO", "HIP_LG2_LO", "define");
    subst("CUDART_LG2_X_1024", "HIP_LG2_X_1024", "define");
    subst("CUDART_LG2_X_1075", "HIP_LG2_X_1075", "define");
    subst("CUDART_LGE", "HIP_LGE", "define");
    subst("CUDART_LGE_F", "HIP_LGE_F", "define");
    subst("CUDART_LGE_HI", "HIP_LGE_HI", "define");
    subst("CUDART_LGE_LO", "HIP_LGE_LO", "define");
    subst("CUDART_LN2", "HIP_LN2", "define");
    subst("CUDART_LN2_F", "HIP_LN2_F", "define");
    subst("CUDART_LN2_HI", "HIP_LN2_HI", "define");
    subst("CUDART_LN2_LO", "HIP_LN2_LO", "define");
    subst("CUDART_LN2_X_1024", "HIP_LN2_X_1024", "define");
    subst("CUDART_LN2_X_1025", "HIP_LN2_X_1025", "define");
    subst("CUDART_LN2_X_1075", "HIP_LN2_X_1075", "define");
    subst("CUDART_LNPI", "HIP_LNPI", "define");
    subst("CUDART_LNPI_F", "HIP_LNPI_F", "define");
    subst("CUDART_LNT", "HIP_LNT", "define");
    subst("CUDART_LNT_F", "HIP_LNT_F", "define");
    subst("CUDART_LNT_HI", "HIP_LNT_HI", "define");
    subst("CUDART_LNT_LO", "HIP_LNT_LO", "define");
    subst("CUDART_MAX_NORMAL_F", "HIP_MAX_NORMAL_F", "define");
    subst("CUDART_MIN_DENORM", "HIP_MIN_DENORM", "define");
    subst("CUDART_MIN_DENORM_F", "HIP_MIN_DENORM_F", "define");
    subst("CUDART_NAN", "HIP_NAN", "define");
    subst("CUDART_NAN_F", "HIP_NAN_F", "define");
    subst("CUDART_NEG_ZERO", "HIP_NEG_ZERO", "define");
    subst("CUDART_NEG_ZERO_F", "HIP_NEG_ZERO_F", "define");
    subst("CUDART_NORM_HUGE_F", "HIP_NORM_HUGE_F", "define");
    subst("CUDART_ONE", "HIP_ONE", "define");
    subst("CUDART_ONE_F", "HIP_ONE_F", "define");
    subst("CUDART_PI", "HIP_PI", "define");
    subst("CUDART_PIO2", "HIP_PIO2", "define");
    subst("CUDART_PIO2_F", "HIP_PIO2_F", "define");
    subst("CUDART_PIO2_HI", "HIP_PIO2_HI", "define");
    subst("CUDART_PIO2_LO", "HIP_PIO2_LO", "define");
    subst("CUDART_PIO4", "HIP_PIO4", "define");
    subst("CUDART_PIO4_F", "HIP_PIO4_F", "define");
    subst("CUDART_PIO4_HI", "HIP_PIO4_HI", "define");
    subst("CUDART_PIO4_LO", "HIP_PIO4_LO", "define");
    subst("CUDART_PI_F", "HIP_PI_F", "define");
    subst("CUDART_PI_HI", "HIP_PI_HI", "define");
    subst("CUDART_PI_LO", "HIP_PI_LO", "define");
    subst("CUDART_REMQUO_BITS_F", "HIP_REMQUO_BITS_F", "define");
    subst("CUDART_REMQUO_MASK_F", "HIP_REMQUO_MASK_F", "define");
    subst("CUDART_SQRT_2OPI", "HIP_SQRT_2OPI", "define");
    subst("CUDART_SQRT_2PI", "HIP_SQRT_2PI", "define");
    subst("CUDART_SQRT_2PI_HI", "HIP_SQRT_2PI_HI", "define");
    subst("CUDART_SQRT_2PI_LO", "HIP_SQRT_2PI_LO", "define");
    subst("CUDART_SQRT_2_OVER_PI_F", "HIP_SQRT_2_OVER_PI_F", "define");
    subst("CUDART_SQRT_HALF", "HIP_SQRT_HALF", "define");
    subst("CUDART_SQRT_HALF_F", "HIP_SQRT_HALF_F", "define");
    subst("CUDART_SQRT_HALF_HI", "HIP_SQRT_HALF_HI", "define");
    subst("CUDART_SQRT_HALF_HI_F", "HIP_SQRT_HALF_HI_F", "define");
    subst("CUDART_SQRT_HALF_LO", "HIP_SQRT_HALF_LO", "define");
    subst("CUDART_SQRT_HALF_LO_F", "HIP_SQRT_HALF_LO_F", "define");
    subst("CUDART_SQRT_PIO2", "HIP_SQRT_PIO2", "define");
    subst("CUDART_SQRT_PIO2_HI", "HIP_SQRT_PIO2_HI", "define");
    subst("CUDART_SQRT_PIO2_LO", "HIP_SQRT_PIO2_LO", "define");
    subst("CUDART_SQRT_TWO", "HIP_SQRT_TWO", "define");
    subst("CUDART_SQRT_TWO_F", "HIP_SQRT_TWO_F", "define");
    subst("CUDART_THIRD", "HIP_THIRD", "define");
    subst("CUDART_THIRD_F", "HIP_THIRD_F", "define");
    subst("CUDART_TRIG_PLOSS", "HIP_TRIG_PLOSS", "define");
    subst("CUDART_TRIG_PLOSS_F", "HIP_TRIG_PLOSS_F", "define");
    subst("CUDART_TWOTHIRD", "HIP_TWOTHIRD", "define");
    subst("CUDART_TWO_TO_126_F", "HIP_TWO_TO_126_F", "define");
    subst("CUDART_TWO_TO_23", "HIP_TWO_TO_23", "define");
    subst("CUDART_TWO_TO_23_F", "HIP_TWO_TO_23_F", "define");
    subst("CUDART_TWO_TO_24_F", "HIP_TWO_TO_24_F", "define");
    subst("CUDART_TWO_TO_31_F", "HIP_TWO_TO_31_F", "define");
    subst("CUDART_TWO_TO_32_F", "HIP_TWO_TO_32_F", "define");
    subst("CUDART_TWO_TO_52", "HIP_TWO_TO_52", "define");
    subst("CUDART_TWO_TO_53", "HIP_TWO_TO_53", "define");
    subst("CUDART_TWO_TO_54", "HIP_TWO_TO_54", "define");
    subst("CUDART_TWO_TO_M1022", "HIP_TWO_TO_M1022", "define");
    subst("CUDART_TWO_TO_M126_F", "HIP_TWO_TO_M126_F", "define");
    subst("CUDART_TWO_TO_M54", "HIP_TWO_TO_M54", "define");
    subst("CUDART_ZERO", "HIP_ZERO", "define");
    subst("CUDART_ZERO_F", "HIP_ZERO_F", "define");
    subst("CUDA_ARRAY3D_CUBEMAP", "hipArrayCubemap", "define");
    subst("CUDA_ARRAY3D_LAYERED", "hipArrayLayered", "define");
    subst("CUDA_ARRAY3D_SURFACE_LDST", "hipArraySurfaceLoadStore", "define");
    subst("CUDA_ARRAY3D_TEXTURE_GATHER", "hipArrayTextureGather", "define");
    subst("CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_POST_LAUNCH_SYNC", "hipCooperativeLaunchMultiDeviceNoPostSync", "define");
    subst("CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_PRE_LAUNCH_SYNC", "hipCooperativeLaunchMultiDeviceNoPreSync", "define");
    subst("CUDA_EXTERNAL_MEMORY_DEDICATED", "hipExternalMemoryDedicated", "define");
    subst("CUDA_IPC_HANDLE_SIZE", "HIP_IPC_HANDLE_SIZE", "define");
    subst("CU_DEVICE_CPU", "hipCpuDeviceId", "define");
    subst("CU_DEVICE_INVALID", "hipInvalidDeviceId", "define");
    subst("CU_GRAPH_KERNEL_NODE_PORT_DEFAULT", "hipGraphKernelNodePortDefault", "define");
    subst("CU_GRAPH_KERNEL_NODE_PORT_LAUNCH_ORDER", "hipGraphKernelNodePortLaunchCompletion", "define");
    subst("CU_GRAPH_KERNEL_NODE_PORT_PROGRAMMATIC", "hipGraphKernelNodePortProgrammatic", "define");
    subst("CU_IPC_HANDLE_SIZE", "HIP_IPC_HANDLE_SIZE", "define");
    subst("CU_LAUNCH_PARAM_BUFFER_POINTER", "HIP_LAUNCH_PARAM_BUFFER_POINTER", "define");
    subst("CU_LAUNCH_PARAM_BUFFER_SIZE", "HIP_LAUNCH_PARAM_BUFFER_SIZE", "define");
    subst("CU_LAUNCH_PARAM_END", "HIP_LAUNCH_PARAM_END", "define");
    subst("CU_MEMHOSTALLOC_DEVICEMAP", "hipHostMallocMapped", "define");
    subst("CU_MEMHOSTALLOC_PORTABLE", "hipHostMallocPortable", "define");
    subst("CU_MEMHOSTALLOC_WRITECOMBINED", "hipHostMallocWriteCombined", "define");
    subst("CU_MEMHOSTREGISTER_DEVICEMAP", "hipHostRegisterMapped", "define");
    subst("CU_MEMHOSTREGISTER_IOMEMORY", "hipHostRegisterIoMemory", "define");
    subst("CU_MEMHOSTREGISTER_PORTABLE", "hipHostRegisterPortable", "define");
    subst("CU_MEMHOSTREGISTER_READ_ONLY", "hipHostRegisterReadOnly", "define");
    subst("CU_STREAM_LEGACY", "hipStreamLegacy", "define");
    subst("CU_STREAM_PER_THREAD", "hipStreamPerThread", "define");
    subst("CU_TRSA_OVERRIDE_FORMAT", "HIP_TRSA_OVERRIDE_FORMAT", "define");
    subst("CU_TRSF_NORMALIZED_COORDINATES", "HIP_TRSF_NORMALIZED_COORDINATES", "define");
    subst("CU_TRSF_READ_AS_INTEGER", "HIP_TRSF_READ_AS_INTEGER", "define");
    subst("CU_TRSF_SRGB", "HIP_TRSF_SRGB", "define");
    subst("CubDebug", "HipcubDebug", "define");
    subst("REGISTER_CUDA_OPERATOR", "REGISTER_HIP_OPERATOR", "define");
    subst("REGISTER_CUDA_OPERATOR_CREATOR", "REGISTER_HIP_OPERATOR_CREATOR", "define");
    subst("_CubLog", "_HipcubLog", "define");
    subst("__CUB_ALIGN_BYTES", "__HIPCUB_ALIGN_BYTES", "define");
    subst("__CUDACC__", "__HIPCC__", "define");
    subst("cudaArrayCubemap", "hipArrayCubemap", "define");
    subst("cudaArrayDefault", "hipArrayDefault", "define");
    subst("cudaArrayLayered", "hipArrayLayered", "define");
    subst("cudaArraySurfaceLoadStore", "hipArraySurfaceLoadStore", "define");
    subst("cudaArrayTextureGather", "hipArrayTextureGather", "define");
    subst("cudaCooperativeLaunchMultiDeviceNoPostSync", "hipCooperativeLaunchMultiDeviceNoPostSync", "define");
    subst("cudaCooperativeLaunchMultiDeviceNoPreSync", "hipCooperativeLaunchMultiDeviceNoPreSync", "define");
    subst("cudaCpuDeviceId", "hipCpuDeviceId", "define");
    subst("cudaDeviceBlockingSync", "hipDeviceScheduleBlockingSync", "define");
    subst("cudaDeviceLmemResizeToMax", "hipDeviceLmemResizeToMax", "define");
    subst("cudaDeviceMapHost", "hipDeviceMapHost", "define");
    subst("cudaDeviceScheduleAuto", "hipDeviceScheduleAuto", "define");
    subst("cudaDeviceScheduleBlockingSync", "hipDeviceScheduleBlockingSync", "define");
    subst("cudaDeviceScheduleMask", "hipDeviceScheduleMask", "define");
    subst("cudaDeviceScheduleSpin", "hipDeviceScheduleSpin", "define");
    subst("cudaDeviceScheduleYield", "hipDeviceScheduleYield", "define");
    subst("cudaEventBlockingSync", "hipEventBlockingSync", "define");
    subst("cudaEventDefault", "hipEventDefault", "define");
    subst("cudaEventDisableTiming", "hipEventDisableTiming", "define");
    subst("cudaEventInterprocess", "hipEventInterprocess", "define");
    subst("cudaExternalMemoryDedicated", "hipExternalMemoryDedicated", "define");
    subst("cudaGraphKernelNodePortDefault", "hipGraphKernelNodePortDefault", "define");
    subst("cudaGraphKernelNodePortLaunchCompletion", "hipGraphKernelNodePortLaunchCompletion", "define");
    subst("cudaGraphKernelNodePortProgrammatic", "hipGraphKernelNodePortProgrammatic", "define");
    subst("cudaHostAllocDefault", "hipHostMallocDefault", "define");
    subst("cudaHostAllocMapped", "hipHostMallocMapped", "define");
    subst("cudaHostAllocPortable", "hipHostMallocPortable", "define");
    subst("cudaHostAllocWriteCombined", "hipHostMallocWriteCombined", "define");
    subst("cudaHostRegisterDefault", "hipHostRegisterDefault", "define");
    subst("cudaHostRegisterIoMemory", "hipHostRegisterIoMemory", "define");
    subst("cudaHostRegisterMapped", "hipHostRegisterMapped", "define");
    subst("cudaHostRegisterPortable", "hipHostRegisterPortable", "define");
    subst("cudaHostRegisterReadOnly", "hipHostRegisterReadOnly", "define");
    subst("cudaInvalidDeviceId", "hipInvalidDeviceId", "define");
    subst("cudaIpcMemLazyEnablePeerAccess", "hipIpcMemLazyEnablePeerAccess", "define");
    subst("cudaMemAttachGlobal", "hipMemAttachGlobal", "define");
    subst("cudaMemAttachHost", "hipMemAttachHost", "define");
    subst("cudaMemAttachSingle", "hipMemAttachSingle", "define");
    subst("cudaOccupancyDefault", "hipOccupancyDefault", "define");
    subst("cudaOccupancyDisableCachingOverride", "hipOccupancyDisableCachingOverride", "define");
    subst("cudaStreamDefault", "hipStreamDefault", "define");
    subst("cudaStreamLegacy", "hipStreamLegacy", "define");
    subst("cudaStreamNonBlocking", "hipStreamNonBlocking", "define");
    subst("cudaStreamPerThread", "hipStreamPerThread", "define");
    subst("cudaTextureType1D", "hipTextureType1D", "define");
    subst("cudaTextureType1DLayered", "hipTextureType1DLayered", "define");
    subst("cudaTextureType2D", "hipTextureType2D", "define");
    subst("cudaTextureType2DLayered", "hipTextureType2DLayered", "define");
    subst("cudaTextureType3D", "hipTextureType3D", "define");
    subst("cudaTextureTypeCubemap", "hipTextureTypeCubemap", "define");
    subst("cudaTextureTypeCubemapLayered", "hipTextureTypeCubemapLayered", "define");
}

# CUDA Kernel Launch Syntax
sub transformKernelLaunch {
    no warnings qw/uninitialized/;
    my $k = 0;

    # kern<...><<<Dg, Db, Ns, S>>>() syntax
    $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, $5, $6)/g;
    # kern<...><<<Dg, Db, Ns, S>>>(...) syntax
    $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, $5, $6, /g;
    # kern<<<Dg, Db, Ns, S>>>() syntax
    $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL($1, $2, $3, $4, $5)/g;
    # kern<<<Dg, Db, Ns, S>>>(...) syntax
    $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL($1, $2, $3, $4, $5, /g;

    # kern<...><<<Dg, Db, Ns>>>() syntax
    $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, $5, 0)/g;
    # kern<...><<<Dg, Db, Ns>>>(...) syntax
    $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, $5, 0, /g;
    # kern<<<Dg, Db, Ns>>>() syntax
    $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL($1, $2, $3, $4, 0)/g;
    # kern<<<Dg, Db, Ns>>>(...) syntax
    $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL($1, $2, $3, $4, 0, /g;

    # kern<...><<<Dg, Db>>>() syntax
    $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, 0, 0)/g;
    # kern<...><<<Dg, Db>>>(...) syntax
    $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, 0, 0, /g;
    # kern<<<Dg, Db>>>() syntax
    $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL($1, $2, $3, 0, 0)/g;
    # kern<<<Dg, Db>>>(...) syntax
    $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL($1, $2, $3, 0, 0, /g;

    if ($k) {
        $ft{'kernel_launch'} += $k;
        $Tkernels{$1}++;
    }
}

sub transformCubNamespace {
    my $k = 0;
    $k += s/using\s*namespace\s*cub/using namespace hipcub/g;
    $k += s/\bcub::\b/hipcub::/g;
    return $k;
}

sub transformHostFunctions {
    my $k = 0;
    foreach $func (
        "hipMemcpyToSymbol",
        "hipMemcpyToSymbolAsync"
    )
    {
        $k += s/(?<!\/\/ CHECK: )($func)\s*\(([^,\)]+),/$func\(HIP_SYMBOL\($2\),/g;
    }
    foreach $func (
        "hipGetSymbolAddress",
        "hipGetSymbolSize",
        "hipGetTextureReference",
        "hipGraphMemcpyNodeSetParamsToSymbol",
        "hipMemcpyFromSymbol",
        "hipMemcpyFromSymbolAsync"
    )
    {
        $k += s/(?<!\/\/ CHECK: )($func)\s*\(([^,\)]+),([\s]*)([^,\)]+)(,\s*|\))/$func\($2,$3HIP_SYMBOL\($4\)$5/g;
    }
    foreach $func (
        "hipFuncSetAttribute",
        "hipFuncSetCacheConfig",
        "hipFuncSetSharedMemConfig",
        "hipLaunchCooperativeKernel",
        "hipLaunchKernel"
    )
    {
        $k += s/(?<!\/\/ CHECK: )($func)\s*\(([^,\)]+),/$func\(reinterpret_cast<const void*>\($2\),/g;
    }
    foreach $func (
        "hipFuncGetAttributes"
    )
    {
        $k += s/(?<!\/\/ CHECK: )($func)\s*\(([^,\)]+),([\s]*)([^,\)]+)(,\s*|\))/$func\($2,$3reinterpret_cast<const void*>\($4\)$5/g;
    }
    foreach $func (
        "hipGraphExecMemcpyNodeSetParamsToSymbol",
        "hipGraphMemcpyNodeSetParamsFromSymbol"
    )
    {
        $k += s/(?<!\/\/ CHECK: )($func)\s*\(([^,\)]+),([^,\)]+),([\s]*)([^,\)]+)(,\s*|\))/$func\($2,$3,$4HIP_SYMBOL\($5\)$6/g;
    }
    foreach $func (
        "hipModuleOccupancyMaxPotentialBlockSize",
        "hipModuleOccupancyMaxPotentialBlockSizeWithFlags",
        "hipModuleOccupancyMaxPotentialBlockSizeWithFlags"
    )
    {
        $k += s/(?<!\/\/ CHECK: )($func)\s*\(([^,\)]+),([^,\)]+),([^,\)]+),([\s]*)([^,\)]+)(,\s*|\))/$func\($2,$3,$4$7/g;
    }
    foreach $func (
        "hipGraphExecMemcpyNodeSetParamsFromSymbol"
    )
    {
        $k += s/(?<!\/\/ CHECK: )($func)\s*\(([^,\)]+),([^,\)]+),([^,\)]+),([\s]*)([^,\)]+)(,\s*|\))/$func\($2,$3,$4,$5HIP_SYMBOL\($6\)$7/g;
    }
    foreach $func (
        "hipGraphAddMemcpyNodeToSymbol"
    )
    {
        $k += s/(?<!\/\/ CHECK: )($func)\s*\(([^,\)]+),([^,\)]+),([^,\)]+),([^,\)]+),([\s]*)([^,\)]+)(,\s*|\))/$func\($2,$3,$4,$5,$6HIP_SYMBOL\($7\)$8/g;
    }
    foreach $func (
        "hipGraphAddMemcpyNodeFromSymbol"
    )
    {
        $k += s/(?<!\/\/ CHECK: )($func)\s*\(([^,\)]+),([^,\)]+),([^,\)]+),([^,\)]+),([^,\)]+),([\s]*)([^,\)]+)(,\s*|\))/$func\($2,$3,$4,$5,$6,$7HIP_SYMBOL\($8\)$9/g;
    }
    return $k;
}

@SupportedDeviceFunctions = (
    "ynf",
    "yn",
    "y1f",
    "y1",
    "y0f",
    "y0",
    "truncf",
    "trunc",
    "tgammaf",
    "tgamma",
    "tanhf",
    "tanh",
    "tanf",
    "tan",
    "sqrtf",
    "sqrt",
    "sinpif",
    "sinpi",
    "sinhf",
    "sinh",
    "sinf",
    "sincospif",
    "sincospi",
    "sincosf",
    "sincos",
    "sin",
    "signbit",
    "scalbnf",
    "scalbn",
    "scalblnf",
    "scalbln",
    "rsqrtf",
    "rsqrt",
    "roundf",
    "round",
    "rnormf",
    "rnorm4df",
    "rnorm4d",
    "rnorm3df",
    "rnorm3d",
    "rnorm",
    "rintf",
    "rint",
    "rhypotf",
    "rhypot",
    "remquof",
    "remquo",
    "remainderf",
    "remainder",
    "rcbrtf",
    "rcbrt",
    "powf",
    "pow",
    "normf",
    "normcdfinvf",
    "normcdfinv",
    "normcdff",
    "normcdf",
    "norm4df",
    "norm4d",
    "norm3df",
    "norm3d",
    "norm",
    "nextafterf",
    "nextafter",
    "nearbyintf",
    "nearbyint",
    "nanf",
    "nan",
    "modff",
    "modf",
    "min",
    "max",
    "make_half2",
    "lroundf",
    "lround",
    "lrintf",
    "lrint",
    "logf",
    "logbf",
    "logb",
    "log2f",
    "log2",
    "log1pf",
    "log1p",
    "log10f",
    "log10",
    "log",
    "llroundf",
    "llround",
    "llrintf",
    "llrint",
    "llabs",
    "lgammaf",
    "lgamma",
    "ldexpf",
    "ldexp",
    "labs",
    "jnf",
    "jn",
    "j1f",
    "j1",
    "j0f",
    "j0",
    "isnan",
    "isinf",
    "isfinite",
    "ilogbf",
    "ilogb",
    "hypotf",
    "hypot",
    "htrunc",
    "hsqrt",
    "hsin",
    "hrsqrt",
    "hrint",
    "hrcp",
    "hlog2",
    "hlog10",
    "hlog",
    "hfloor",
    "hexp2",
    "hexp10",
    "hexp",
    "hcos",
    "hceil",
    "h2trunc",
    "h2sqrt",
    "h2sin",
    "h2rsqrt",
    "h2rint",
    "h2rcp",
    "h2log2",
    "h2log10",
    "h2log",
    "h2floor",
    "h2exp2",
    "h2exp10",
    "h2exp",
    "h2cos",
    "h2ceil",
    "frexpf",
    "frexp",
    "fmodf",
    "fmod",
    "fminf",
    "fmin",
    "fmaxf",
    "fmax",
    "fmaf",
    "fma",
    "floorf",
    "floor",
    "fdividef",
    "fdimf",
    "fdim",
    "fabsf",
    "fabs",
    "expm1f",
    "expm1",
    "expf",
    "exp2f",
    "exp2",
    "exp10f",
    "exp10",
    "exp",
    "erfinvf",
    "erfinv",
    "erff",
    "erfcxf",
    "erfcx",
    "erfcinvf",
    "erfcinv",
    "erfcf",
    "erfc",
    "erf",
    "cyl_bessel_i1f",
    "cyl_bessel_i1",
    "cyl_bessel_i0f",
    "cyl_bessel_i0",
    "cospif",
    "cospi",
    "coshf",
    "cosh",
    "cosf",
    "cos",
    "copysignf",
    "copysign",
    "clock64",
    "clock",
    "ceilf",
    "ceil",
    "cbrtf",
    "cbrt",
    "atomicXor_system",
    "atomicXor",
    "atomicSub_system",
    "atomicSub",
    "atomicOr_system",
    "atomicOr",
    "atomicMin_system",
    "atomicMin",
    "atomicMax_system",
    "atomicMax",
    "atomicInc",
    "atomicExch_system",
    "atomicExch",
    "atomicDec",
    "atomicCAS_system",
    "atomicCAS",
    "atomicAnd_system",
    "atomicAnd",
    "atomicAdd_system",
    "atomicAdd",
    "atanhf",
    "atanh",
    "atanf",
    "atan2f",
    "atan2",
    "atan",
    "asinhf",
    "asinh",
    "asinf",
    "asin",
    "acoshf",
    "acosh",
    "acosf",
    "acos",
    "abs",
    "__ushort_as_half",
    "__ushort_as_bfloat16",
    "__ushort2half_rz",
    "__ushort2half_ru",
    "__ushort2half_rn",
    "__ushort2half_rd",
    "__usad",
    "__urhadd",
    "__umulhi",
    "__umul64hi",
    "__umul24",
    "__ull2half_rz",
    "__ull2half_ru",
    "__ull2half_rn",
    "__ull2half_rd",
    "__ull2float_rz",
    "__ull2float_ru",
    "__ull2float_rn",
    "__ull2float_rd",
    "__ull2double_rz",
    "__ull2double_ru",
    "__ull2double_rn",
    "__ull2double_rd",
    "__uint_as_float",
    "__uint2half_rz",
    "__uint2half_ru",
    "__uint2half_rn",
    "__uint2half_rd",
    "__uint2float_rz",
    "__uint2float_ru",
    "__uint2float_rn",
    "__uint2float_rd",
    "__uint2double_rn",
    "__uhadd",
    "__threadfence_system",
    "__threadfence_block",
    "__threadfence",
    "__tanf",
    "__syncthreads_or",
    "__syncthreads_count",
    "__syncthreads_and",
    "__syncthreads",
    "__sinf",
    "__sincosf",
    "__short_as_half",
    "__short_as_bfloat16",
    "__short2half_rz",
    "__short2half_ru",
    "__short2half_rn",
    "__short2half_rd",
    "__shfl_xor_sync",
    "__shfl_xor",
    "__shfl_up_sync",
    "__shfl_up",
    "__shfl_sync",
    "__shfl_down_sync",
    "__shfl_down",
    "__shfl",
    "__saturatef",
    "__sad",
    "__rhadd",
    "__powf",
    "__popcll",
    "__popc",
    "__nv_cvt_halfraw_to_fp8",
    "__nv_cvt_halfraw2_to_fp8x2",
    "__nv_cvt_fp8x2_to_halfraw2",
    "__nv_cvt_fp8_to_halfraw",
    "__nv_cvt_float_to_fp8",
    "__nv_cvt_float2_to_fp8x2",
    "__nv_cvt_double_to_fp8",
    "__nv_cvt_double2_to_fp8x2",
    "__nv_cvt_bfloat16raw_to_fp8",
    "__nv_cvt_bfloat16raw2_to_fp8x2",
    "__mulhi",
    "__mul64hi",
    "__mul24",
    "__match_any_sync",
    "__match_all_sync",
    "__lows2half2",
    "__lows2bfloat162",
    "__lowhigh2highlow",
    "__low2half2",
    "__low2half",
    "__low2float",
    "__low2bfloat162",
    "__low2bfloat16",
    "__longlong_as_double",
    "__logf",
    "__log2f",
    "__log10f",
    "__ll2half_rz",
    "__ll2half_ru",
    "__ll2half_rn",
    "__ll2half_rd",
    "__ll2float_rz",
    "__ll2float_ru",
    "__ll2float_rn",
    "__ll2float_rd",
    "__ll2double_rz",
    "__ll2double_ru",
    "__ll2double_rn",
    "__ll2double_rd",
    "__ldg",
    "__ldcs",
    "__ldcg",
    "__ldca",
    "__int_as_float",
    "__int2half_rz",
    "__int2half_ru",
    "__int2half_rn",
    "__int2half_rd",
    "__int2float_rz",
    "__int2float_ru",
    "__int2float_rn",
    "__int2float_rd",
    "__int2double_rn",
    "__hsub_sat",
    "__hsub2_sat",
    "__hsub2",
    "__hsub",
    "__hneu2",
    "__hneu",
    "__hneg2",
    "__hneg",
    "__hne2",
    "__hne",
    "__hmul_sat",
    "__hmul2_sat",
    "__hmul2",
    "__hmul",
    "__hmin_nan",
    "__hmin2",
    "__hmin",
    "__hmax_nan",
    "__hmax2",
    "__hmax",
    "__hltu2",
    "__hltu",
    "__hlt2",
    "__hlt",
    "__hleu2",
    "__hleu",
    "__hle2",
    "__hle",
    "__hisnan2",
    "__hisnan",
    "__hisinf",
    "__hiloint2double",
    "__highs2half2",
    "__highs2bfloat162",
    "__high2half2",
    "__high2half",
    "__high2float",
    "__high2bfloat162",
    "__high2bfloat16",
    "__hgtu2",
    "__hgtu",
    "__hgt2",
    "__hgt",
    "__hgeu2",
    "__hgeu",
    "__hge2",
    "__hge",
    "__hfma_sat",
    "__hfma2_sat",
    "__hfma2",
    "__hfma",
    "__hequ2",
    "__hequ",
    "__heq2",
    "__heq",
    "__hdiv",
    "__hbneu2",
    "__hbne2",
    "__hbltu2",
    "__hblt2",
    "__hbleu2",
    "__hble2",
    "__hbgtu2",
    "__hbgt2",
    "__hbgeu2",
    "__hbge2",
    "__hbequ2",
    "__hbeq2",
    "__halves2half2",
    "__halves2bfloat162",
    "__half_as_ushort",
    "__half_as_short",
    "__half2ushort_rz",
    "__half2ushort_ru",
    "__half2ushort_rn",
    "__half2ushort_rd",
    "__half2ull_rz",
    "__half2ull_ru",
    "__half2ull_rn",
    "__half2ull_rd",
    "__half2uint_rz",
    "__half2uint_ru",
    "__half2uint_rn",
    "__half2uint_rd",
    "__half2short_rz",
    "__half2short_ru",
    "__half2short_rn",
    "__half2short_rd",
    "__half2ll_rz",
    "__half2ll_ru",
    "__half2ll_rn",
    "__half2ll_rd",
    "__half2int_rz",
    "__half2int_ru",
    "__half2int_rn",
    "__half2int_rd",
    "__half2half2",
    "__half2float",
    "__half22float2",
    "__hadd_sat",
    "__hadd2_sat",
    "__hadd2",
    "__hadd",
    "__habs2",
    "__habs",
    "__h2div",
    "__funnelshift_rc",
    "__funnelshift_r",
    "__funnelshift_lc",
    "__funnelshift_l",
    "__fsub_rn",
    "__fsqrt_rn",
    "__frsqrt_rn",
    "__frcp_rn",
    "__fmul_rn",
    "__fmaf_rn",
    "__fma_rn",
    "__floats2half2_rn",
    "__float_as_uint",
    "__float_as_int",
    "__float2ull_rz",
    "__float2ull_ru",
    "__float2ull_rn",
    "__float2ull_rd",
    "__float2uint_rz",
    "__float2uint_ru",
    "__float2uint_rn",
    "__float2uint_rd",
    "__float2ll_rz",
    "__float2ll_ru",
    "__float2ll_rn",
    "__float2ll_rd",
    "__float2int_rz",
    "__float2int_ru",
    "__float2int_rn",
    "__float2int_rd",
    "__float2half_rz",
    "__float2half_ru",
    "__float2half_rn",
    "__float2half_rd",
    "__float2half2_rn",
    "__float2half",
    "__float2bfloat16",
    "__float22half2_rn",
    "__float22bfloat162_rn",
    "__ffsll",
    "__ffs",
    "__fdividef",
    "__fdiv_rn",
    "__fadd_rn",
    "__expf",
    "__exp10f",
    "__dsub_rn",
    "__dsqrt_rn",
    "__drcp_rn",
    "__double_as_longlong",
    "__double2ull_rz",
    "__double2ull_ru",
    "__double2ull_rn",
    "__double2ull_rd",
    "__double2uint_rz",
    "__double2uint_ru",
    "__double2uint_rn",
    "__double2uint_rd",
    "__double2loint",
    "__double2ll_rz",
    "__double2ll_ru",
    "__double2ll_rn",
    "__double2ll_rd",
    "__double2int_rz",
    "__double2int_ru",
    "__double2int_rn",
    "__double2int_rd",
    "__double2hiint",
    "__double2float_rz",
    "__double2float_ru",
    "__double2float_rn",
    "__double2float_rd",
    "__double2bfloat16",
    "__dmul_rn",
    "__ddiv_rn",
    "__dadd_rn",
    "__cosf",
    "__clzll",
    "__clz",
    "__byte_perm",
    "__brevll",
    "__brev",
    "__bfloat16_as_ushort",
    "__bfloat16_as_short",
    "__bfloat162float",
    "__bfloat162bfloat162",
    "__bfloat1622float2",
    "__ballot_sync",
    "__ballot",
    "__assertfail",
    "__assert_fail",
    "__any_sync",
    "__any",
    "__all_sync",
    "__all",
    "__activemask"
);

sub countSupportedDeviceFunctions {
    my $k = 0;
    foreach $func (@SupportedDeviceFunctions)
    {
        # match device function from the list, except those, which have a namespace prefix (aka somenamespace::umin(...));
        # function with only global namespace qualifier '::' (aka ::umin(...)) should be treated as a device function (and warned as well as without such qualifier);
        my $mt_namespace = m/(\w+)::($func)\s*\(\s*.*\s*\)/g;
        my $mt = m/\b($func)\b\s*\(\s*.*\s*\)/g;
        if ($mt && !$mt_namespace) {
            $k += $mt;
        }
    }
    return $k;
}

@UnsupportedDeviceFunctions = (
    "umul24",
    "umin",
    "umax",
    "ullmin",
    "ullmax",
    "uint_as_float",
    "uint2float",
    "saturate",
    "mulhi",
    "mul64hi",
    "mul24",
    "make_bfloat162",
    "llmin",
    "llmax",
    "int_as_float",
    "int2float",
    "float_as_uint",
    "float_as_int",
    "float2int",
    "fdivide",
    "_ldsign",
    "_fdsign",
    "__vsubus4",
    "__vsubus2",
    "__vsubss4",
    "__vsubss2",
    "__vsub4",
    "__vsub2",
    "__vsetne4",
    "__vsetne2",
    "__vsetltu4",
    "__vsetltu2",
    "__vsetlts4",
    "__vsetlts2",
    "__vsetleu4",
    "__vsetleu2",
    "__vsetles4",
    "__vsetles2",
    "__vsetgtu4",
    "__vsetgts4",
    "__vsetgts2",
    "__vsetgeu4",
    "__vsetgeu2",
    "__vsetges4",
    "__vsetges2",
    "__vseteq4",
    "__vseteq2",
    "__vsadu4",
    "__vsadu2",
    "__vsads4",
    "__vsads2",
    "__vnegss4",
    "__vnegss2",
    "__vneg4",
    "__vneg2",
    "__vminu4",
    "__vminu2",
    "__vmins4",
    "__vmins2",
    "__vmaxu4",
    "__vmaxu2",
    "__vmaxs4",
    "__vmaxs2",
    "__vhaddu4",
    "__vhaddu2",
    "__vcmpne4",
    "__vcmpne2",
    "__vcmpltu4",
    "__vcmpltu2",
    "__vcmplts4",
    "__vcmplts2",
    "__vcmpleu4",
    "__vcmples4",
    "__vcmples2",
    "__vcmpgtu4",
    "__vcmpgtu2",
    "__vcmpgts4",
    "__vcmpgts2",
    "__vcmpgeu4",
    "__vcmpgeu2",
    "__vcmpges4",
    "__vcmpges2",
    "__vcmpeq4",
    "__vcmpeq2",
    "__vavgu4",
    "__vavgu2",
    "__vavgs4",
    "__vavgs2",
    "__vaddus4",
    "__vaddus2",
    "__vaddss4",
    "__vaddss2",
    "__vadd4",
    "__vadd2",
    "__vabsss4",
    "__vabsss2",
    "__vabsdiffu4",
    "__vabsdiffu2",
    "__vabsdiffs4",
    "__vabsdiffs2",
    "__vabs4",
    "__vabs2",
    "__ushort2bfloat16_rz",
    "__ushort2bfloat16_ru",
    "__ushort2bfloat16_rn",
    "__ushort2bfloat16_rd",
    "__ull2bfloat16_rz",
    "__ull2bfloat16_ru",
    "__ull2bfloat16_rn",
    "__ull2bfloat16_rd",
    "__uint2bfloat16_rz",
    "__uint2bfloat16_ru",
    "__uint2bfloat16_rn",
    "__uint2bfloat16_rd",
    "__trap",
    "__stwt",
    "__stwb",
    "__stcs",
    "__stcg",
    "__signbitl",
    "__signbitf",
    "__signbit",
    "__short2bfloat16_rz",
    "__short2bfloat16_ru",
    "__short2bfloat16_rn",
    "__short2bfloat16_rd",
    "__prof_trigger",
    "__pm3",
    "__pm2",
    "__pm1",
    "__pm0",
    "__ll2bfloat16_rz",
    "__ll2bfloat16_ru",
    "__ll2bfloat16_rn",
    "__ll2bfloat16_rd",
    "__ldlu",
    "__ldcv",
    "__isnanl",
    "__isnanf",
    "__isnan",
    "__isinfl",
    "__isinff",
    "__isinf",
    "__int2bfloat16_rz",
    "__int2bfloat16_ru",
    "__int2bfloat16_rn",
    "__int2bfloat16_rd",
    "__hsub_rn",
    "__hsub2_rn",
    "__hneu2_mask",
    "__hne2_mask",
    "__hmul_rn",
    "__hmul2_rn",
    "__hmin2_nan",
    "__hmax2_nan",
    "__hltu2_mask",
    "__hlt2_mask",
    "__hleu2_mask",
    "__hle2_mask",
    "__hgtu2_mask",
    "__hgt2_mask",
    "__hgeu2_mask",
    "__hge2_mask",
    "__hfma_relu",
    "__hfma2_relu",
    "__hequ2_mask",
    "__heq2_mask",
    "__hcmadd",
    "__half2uchar_rz",
    "__half2char_rz",
    "__hadd_rn",
    "__hadd2_rn",
    "__fsub_rz",
    "__fsub_ru",
    "__fsub_rd",
    "__fsqrt_rz",
    "__fsqrt_ru",
    "__fsqrt_rd",
    "__frcp_rz",
    "__frcp_ru",
    "__frcp_rd",
    "__fmul_rz",
    "__fmul_ru",
    "__fmul_rd",
    "__fmaf_rz",
    "__fmaf_ru",
    "__fmaf_rd",
    "__fma_rz",
    "__fma_ru",
    "__fma_rd",
    "__floats2bfloat162_rn",
    "__float2bfloat16_rz",
    "__float2bfloat16_ru",
    "__float2bfloat16_rn",
    "__float2bfloat16_rd",
    "__float2bfloat162_rn",
    "__finitel",
    "__finitef",
    "__finite",
    "__fdiv_rz",
    "__fdiv_ru",
    "__fdiv_rd",
    "__fadd_rz",
    "__fadd_ru",
    "__fadd_rd",
    "__dsub_rz",
    "__dsub_ru",
    "__dsub_rd",
    "__dsqrt_rz",
    "__dsqrt_ru",
    "__dsqrt_rd",
    "__drcp_rz",
    "__drcp_ru",
    "__drcp_rd",
    "__double2half",
    "__dmul_rz",
    "__dmul_ru",
    "__dmul_rd",
    "__ddiv_rz",
    "__ddiv_ru",
    "__ddiv_rd",
    "__dadd_rz",
    "__dadd_ru",
    "__dadd_rd",
    "__brkpt",
    "__bfloat162ushort_rz",
    "__bfloat162ushort_ru",
    "__bfloat162ushort_rn",
    "__bfloat162ushort_rd",
    "__bfloat162ull_rz",
    "__bfloat162ull_ru",
    "__bfloat162ull_rn",
    "__bfloat162ull_rd",
    "__bfloat162uint_rz",
    "__bfloat162uint_ru",
    "__bfloat162uint_rn",
    "__bfloat162uint_rd",
    "__bfloat162uchar_rz",
    "__bfloat162short_rz",
    "__bfloat162short_ru",
    "__bfloat162short_rn",
    "__bfloat162short_rd",
    "__bfloat162ll_rz",
    "__bfloat162ll_ru",
    "__bfloat162ll_rn",
    "__bfloat162ll_rd",
    "__bfloat162int_rz",
    "__bfloat162int_ru",
    "__bfloat162int_rn",
    "__bfloat162int_rd",
    "__bfloat162char_rz",
    "_Pow_int"
);

sub warnUnsupportedDeviceFunctions {
    my $line_num = shift;
    my $k = 0;
    foreach $func (@UnsupportedDeviceFunctions)
    {
        # match device function from the list, except those, which have a namespace prefix (aka somenamespace::umin(...));
        # function with only global namespace qualifier '::' (aka ::umin(...)) should be treated as a device function (and warned as well as without such qualifier);
        my $mt_namespace = m/(\w+)::($func)\s*\(\s*.*\s*\)/g;
        my $mt = m/\b($func)\b\s*\(\s*.*\s*\)/g;
        if ($mt && !$mt_namespace) {
            $k += $mt;
            print STDERR "  $fileName:$line_num: warning: unsupported device function \"$func\": $_\n";
        }
    }
    return $k;
}

@SupportedDeviceDataTypes = (
    "nv_bfloat16",
    "__nv_saturation_t",
    "__nv_fp8x4_storage_t",
    "__nv_fp8x4_e5m2",
    "__nv_fp8x4_e4m3",
    "__nv_fp8x2_storage_t",
    "__nv_fp8x2_e5m2",
    "__nv_fp8x2_e4m3",
    "__nv_fp8_storage_t",
    "__nv_fp8_interpretation_t",
    "__nv_fp8_e5m2",
    "__nv_fp8_e4m3",
    "__nv_bfloat16_raw",
    "__nv_bfloat162_raw",
    "__nv_bfloat162",
    "__nv_bfloat16",
    "__half_raw",
    "__half2_raw",
    "__half2",
    "__half",
    "__NV_SATFINITE",
    "__NV_NOSAT",
    "__NV_E5M2",
    "__NV_E4M3"
);

sub countSupportedDeviceDataTypes {
    my $k = 0;
    foreach $func (@SupportedDeviceDataTypes)
    {
        my $mt = m/\b($func)\b/g;
        if ($mt) {
            $k += $mt;
        }
    }
    return $k;
}

@UnsupportedDeviceDataTypes = (
    "nv_bfloat162"
);

sub warnUnsupportedDeviceDataTypes {
    my $line_num = shift;
    my $k = 0;
    foreach $func (@UnsupportedDeviceDataTypes)
    {
        my $mt = m/\b($func)\b/g;
        if ($mt) {
            $k += $mt;
            print STDERR "  $fileName:$line_num: warning: unsupported device data type identifier: $func\n";
        }
    }
    return $k;
}

sub warnExperimentalFunctions {
    my $line_num = shift;
    my $k = 0;
    while (my($func, $val) = each %experimental_funcs)
    {
        my $mt = m/\b($func)\b/g;
        if ($mt) {
            $k += $mt;
            print STDERR "  $fileName:$line_num: warning: experimental ROCm HIP identifier: $func $val\n";
        }
    }
    return $k;
}

sub warnDeprecatedFunctions {
    my $line_num = shift;
    my $k = 0;
    while (my($func, $val) = each %deprecated_funcs)
    {
        my $mt = m/\b($func)\b/g;
        if ($mt) {
            $k += $mt;
            my $cudnn = "CUDNN";
            my $cuda = "CUDA";
            if (index(lc($func),lc($cudnn)) == 0) {
                $cuda = $cudnn;
            }
            print STDERR "  $fileName:$line_num: warning: deprecated CUDA identifier: $func since $cuda $val\n";
        }
    }
    return $k;
}

sub warnRemovedFunctions {
    my $line_num = shift;
    my $k = 0;
    while (my($func, $val) = each %removed_funcs)
    {
        my $mt = m/\b($func)\b/g;
        if ($mt) {
            $k += $mt;
            my $cudnn = "CUDNN";
            my $cuda = "CUDA";
            if (index(lc($func),lc($cudnn)) == 0) {
                $cuda = $cudnn;
            }
            print STDERR "  $fileName:$line_num: warning: removed CUDA identifier: $func since $cuda $val\n";
        }
    }
    return $k;
}

@HipOnlyUnsupportedFunctions = (
    "cutensorWriteKernelCacheToFile",
    "cutensorTensorDescriptor",
    "cutensorReduce",
    "cutensorReadKernelCacheFromFile",
    "cutensorPlanPreferenceSetAttribute",
    "cutensorPlanPreferenceAttribute_t",
    "cutensorPlanGetAttribute",
    "cutensorPlanAttribute_t",
    "cutensorPlan",
    "cutensorPermute",
    "cutensorOperationDescriptorSetAttribute",
    "cutensorOperationDescriptorGetAttribute",
    "cutensorOperationDescriptorAttribute_t",
    "cutensorMgTensorDescriptor_t",
    "cutensorMgTensorDescriptor_s",
    "cutensorMgHostDevice_t",
    "cutensorMgHandle_t",
    "cutensorMgHandle_s",
    "cutensorMgDestroyTensorDescriptor",
    "cutensorMgDestroyCopyPlan",
    "cutensorMgDestroyCopyDescriptor",
    "cutensorMgDestroyContractionPlan",
    "cutensorMgDestroyContractionFind",
    "cutensorMgDestroyContractionDescriptor",
    "cutensorMgDestroy",
    "cutensorMgCreateTensorDescriptor",
    "cutensorMgCreateCopyPlan",
    "cutensorMgCreateCopyDescriptor",
    "cutensorMgCreateContractionPlan",
    "cutensorMgCreateContractionFind",
    "cutensorMgCreateContractionDescriptor",
    "cutensorMgCreate",
    "cutensorMgCopyPlan_t",
    "cutensorMgCopyPlan_s",
    "cutensorMgCopyGetWorkspace",
    "cutensorMgCopyDescriptor_t",
    "cutensorMgCopyDescriptor_s",
    "cutensorMgCopy",
    "cutensorMgContractionPlan_t",
    "cutensorMgContractionPlan_s",
    "cutensorMgContractionGetWorkspace",
    "cutensorMgContractionFind_t",
    "cutensorMgContractionFind_s",
    "cutensorMgContractionFindSetAttribute",
    "cutensorMgContractionFindAttribute_t",
    "cutensorMgContractionDescriptor_t",
    "cutensorMgContractionDescriptor_s",
    "cutensorMgContraction",
    "cutensorMgAlgo_t",
    "cutensorJitMode_t",
    "cutensorHandleWritePlanCacheToFile",
    "cutensorHandleResizePlanCache",
    "cutensorHandleReadPlanCacheFromFile",
    "cutensorHandle",
    "cutensorGetVersion",
    "cutensorEstimateWorkspaceSize",
    "cutensorElementwiseTrinaryExecute",
    "cutensorElementwiseBinaryExecute",
    "cutensorDestroyTensorDescriptor",
    "cutensorDestroyPlanPreference",
    "cutensorDestroyPlan",
    "cutensorDestroyOperationDescriptor",
    "cutensorCreateTensorDescriptor",
    "cutensorCreateReduction",
    "cutensorCreatePlanPreference",
    "cutensorCreatePlan",
    "cutensorCreatePermutation",
    "cutensorCreateElementwiseTrinary",
    "cutensorCreateElementwiseBinary",
    "cutensorCreateContraction",
    "cutensorCacheMode_t",
    "cutensorAutotuneMode_t",
    "cusparseZhybsv_solve",
    "cusparseZhybsv_analysis",
    "cusparseZhyb2dense",
    "cusparseZhyb2csc",
    "cusparseZgtsv_nopivot",
    "cusparseZgtsvStridedBatch",
    "cusparseZgtsv",
    "cusparseZgebsr2gebsr_bufferSizeExt",
    "cusparseZgebsr2gebsc_bufferSizeExt",
    "cusparseZdense2hyb",
    "cusparseZcsrsv_solve",
    "cusparseZcsrsv_analysis",
    "cusparseZcsrsm_solve",
    "cusparseZcsrsm_analysis",
    "cusparseZcsrmv_mp",
    "cusparseZcsrilu0",
    "cusparseZcsric0",
    "cusparseZcsr2gebsr_bufferSizeExt",
    "cusparseZcsc2hyb",
    "cusparseZbsrsm2_bufferSizeExt",
    "cusparseZbsrilu02_bufferSizeExt",
    "cusparseZbsric02_bufferSizeExt",
    "cusparseXgebsr2csr",
    "cusparseSpVecDescr",
    "cusparseSpSV_updateMatrix",
    "cusparseSpSVUpdate_t",
    "cusparseSpSM_updateMatrix",
    "cusparseSpSMUpdate_t",
    "cusparseSpMatSetNumBatches",
    "cusparseSpMatGetNumBatches",
    "cusparseSpMatDescr",
    "cusparseSpMMOp_destroyPlan",
    "cusparseSpMMOp_createPlan",
    "cusparseSpMMOpPlan_t",
    "cusparseSpMMOpPlan",
    "cusparseSpMMOpAlg_t",
    "cusparseSpMMOp",
    "cusparseSpGEMM_getNumProducts",
    "cusparseSpGEMM_estimateMemory",
    "cusparseSolveAnalysisInfo_t",
    "cusparseSolveAnalysisInfo",
    "cusparseSideMode_t",
    "cusparseShybsv_solve",
    "cusparseShybsv_analysis",
    "cusparseShyb2dense",
    "cusparseShyb2csc",
    "cusparseSgtsv_nopivot",
    "cusparseSgtsvStridedBatch",
    "cusparseSgtsv",
    "cusparseSgebsr2gebsr_bufferSizeExt",
    "cusparseSgebsr2gebsc_bufferSizeExt",
    "cusparseSdense2hyb",
    "cusparseScsrsv_solve",
    "cusparseScsrsv_analysis",
    "cusparseScsrsm_solve",
    "cusparseScsrsm_analysis",
    "cusparseScsrmv_mp",
    "cusparseScsrilu0",
    "cusparseScsric0",
    "cusparseScsr2gebsr_bufferSizeExt",
    "cusparseScsc2hyb",
    "cusparseSbsrsm2_bufferSizeExt",
    "cusparseSbsrilu02_bufferSizeExt",
    "cusparseSbsric02_bufferSizeExt",
    "cusparseMatDescr",
    "cusparseLoggerSetMask",
    "cusparseLoggerSetLevel",
    "cusparseLoggerSetFile",
    "cusparseLoggerSetCallback",
    "cusparseLoggerOpenFile",
    "cusparseLoggerForceDisable",
    "cusparseLoggerCallback_t",
    "cusparseHybMat",
    "cusparseHpruneDense2csr_bufferSizeExt",
    "cusparseHpruneDense2csrNnzByPercentage",
    "cusparseHpruneDense2csrNnz",
    "cusparseHpruneDense2csrByPercentage_bufferSizeExt",
    "cusparseHpruneDense2csrByPercentage",
    "cusparseHpruneDense2csr",
    "cusparseHpruneCsr2csr_bufferSizeExt",
    "cusparseHpruneCsr2csrNnzByPercentage",
    "cusparseHpruneCsr2csrNnz",
    "cusparseHpruneCsr2csrByPercentage_bufferSizeExt",
    "cusparseHpruneCsr2csrByPercentage",
    "cusparseHpruneCsr2csr",
    "cusparseGetLevelInfo",
    "cusparseDnVecDescr",
    "cusparseDnMatDescr",
    "cusparseDhybsv_solve",
    "cusparseDhybsv_analysis",
    "cusparseDhyb2dense",
    "cusparseDhyb2csc",
    "cusparseDgtsv_nopivot",
    "cusparseDgtsvStridedBatch",
    "cusparseDgtsv",
    "cusparseDgebsr2gebsr_bufferSizeExt",
    "cusparseDgebsr2gebsc_bufferSizeExt",
    "cusparseDestroySolveAnalysisInfo",
    "cusparseDdense2hyb",
    "cusparseDcsrsv_solve",
    "cusparseDcsrsv_analysis",
    "cusparseDcsrsm_solve",
    "cusparseDcsrsm_analysis",
    "cusparseDcsrmv_mp",
    "cusparseDcsrilu0",
    "cusparseDcsric0",
    "cusparseDcsr2gebsr_bufferSizeExt",
    "cusparseDcsc2hyb",
    "cusparseDbsrsm2_bufferSizeExt",
    "cusparseDbsrilu02_bufferSizeExt",
    "cusparseDbsric02_bufferSizeExt",
    "cusparseCsrsv_solveEx",
    "cusparseCsrsv_analysisEx",
    "cusparseCsrmvEx_bufferSize",
    "cusparseCsrmvEx",
    "cusparseCsrilu0Ex",
    "cusparseCsr2cscEx",
    "cusparseCreateSolveAnalysisInfo",
    "cusparseCreateSlicedEll",
    "cusparseCreateConstSlicedEll",
    "cusparseCreateConstBsr",
    "cusparseCreateBsr",
    "cusparseContext",
    "cusparseConstrainedGeMM_bufferSize",
    "cusparseConstrainedGeMM",
    "cusparseColorInfo",
    "cusparseColorAlg_t",
    "cusparseChybsv_solve",
    "cusparseChybsv_analysis",
    "cusparseChyb2dense",
    "cusparseChyb2csc",
    "cusparseCgtsv_nopivot",
    "cusparseCgtsvStridedBatch",
    "cusparseCgtsv",
    "cusparseCgebsr2gebsr_bufferSizeExt",
    "cusparseCgebsr2gebsc_bufferSizeExt",
    "cusparseCdense2hyb",
    "cusparseCcsrsv_solve",
    "cusparseCcsrsv_analysis",
    "cusparseCcsrsm_solve",
    "cusparseCcsrsm_analysis",
    "cusparseCcsrmv_mp",
    "cusparseCcsrilu0",
    "cusparseCcsric0",
    "cusparseCcsr2gebsr_bufferSizeExt",
    "cusparseCcsc2hyb",
    "cusparseCbsrsm2_bufferSizeExt",
    "cusparseCbsrilu02_bufferSizeExt",
    "cusparseCbsric02_bufferSizeExt",
    "cusparseBsrSetStridedBatch",
    "cusparseAlgMode_t",
    "curand_mtgp32_specific",
    "curand_mtgp32_single_specific",
    "curand_mtgp32_single",
    "curand_Philox4x32_10",
    "curandMethod_t",
    "curandMethod",
    "curandHistogramM2_t",
    "curandHistogramM2_st",
    "curandHistogramM2V_t",
    "curandHistogramM2V_st",
    "curandHistogramM2K_t",
    "curandHistogramM2K_st",
    "curandGetProperty",
    "curandDistribution_t",
    "curandDistribution_st",
    "curandDistributionShift_t",
    "curandDistributionShift_st",
    "curandDistributionM2Shift_t",
    "curandDistributionM2Shift_st",
    "cublasZtrttp",
    "cublasZtpttr",
    "cublasZmatinvBatched",
    "cublasZgemm3m_64",
    "cublasZgemm3m",
    "cublasXerbla",
    "cublasUint8gemmBias",
    "cublasTSTgemvStridedBatched_64",
    "cublasTSTgemvStridedBatched",
    "cublasTSTgemvBatched_64",
    "cublasTSTgemvBatched",
    "cublasTSSgemvStridedBatched_64",
    "cublasTSSgemvStridedBatched",
    "cublasTSSgemvBatched_64",
    "cublasTSSgemvBatched",
    "cublasSwapEx_64",
    "cublasSwapEx",
    "cublasStrttp",
    "cublasStpttr",
    "cublasSmatinvBatched",
    "cublasShutdown",
    "cublasSgemmGroupedBatched_64",
    "cublasSgemmGroupedBatched",
    "cublasSgemmEx_64",
    "cublasSgemmEx",
    "cublasSetVector_64",
    "cublasSetVectorAsync_64",
    "cublasSetSmCountTarget",
    "cublasSetMatrix_64",
    "cublasSetMatrixAsync_64",
    "cublasSetLoggerCallback",
    "cublasSetKernelStream",
    "cublasRotmgEx",
    "cublasRotmEx_64",
    "cublasRotmEx",
    "cublasRotgEx",
    "cublasMigrateComputeType",
    "cublasLtReductionScheme_t",
    "cublasLtPointerModeMask_t",
    "cublasLtNumericalImplFlags_t",
    "cublasLtMatrixTransformDescInit",
    "cublasLtMatrixLayoutInit",
    "cublasLtMatmulTile_t",
    "cublasLtMatmulStages_t",
    "cublasLtMatmulSearch_t",
    "cublasLtMatmulPreferenceInit",
    "cublasLtMatmulInnerShape_t",
    "cublasLtMatmulDescInit",
    "cublasLtMatmulAlgoInit",
    "cublasLtMatmulAlgoGetIds",
    "cublasLtMatmulAlgoConfigSetAttribute",
    "cublasLtMatmulAlgoConfigGetAttribute",
    "cublasLtMatmulAlgoConfigAttributes_t",
    "cublasLtMatmulAlgoCheck",
    "cublasLtMatmulAlgoCapGetAttribute",
    "cublasLtMatmulAlgoCapAttributes_t",
    "cublasLtLoggerSetMask",
    "cublasLtLoggerSetLevel",
    "cublasLtLoggerSetFile",
    "cublasLtLoggerSetCallback",
    "cublasLtLoggerOpenFile",
    "cublasLtLoggerForceDisable",
    "cublasLtLoggerCallback_t",
    "cublasLtHeuristicsCacheSetCapacity",
    "cublasLtHeuristicsCacheGetCapacity",
    "cublasLtGetVersion",
    "cublasLtGetStatusString",
    "cublasLtGetStatusName",
    "cublasLtGetProperty",
    "cublasLtGetCudartVersion",
    "cublasLtDisableCpuInstructionsSetMask",
    "cublasLtContext",
    "cublasLtClusterShape_t",
    "cublasLoggerConfigure",
    "cublasLogCallback",
    "cublasInit",
    "cublasIaminEx_64",
    "cublasIaminEx",
    "cublasIamaxEx_64",
    "cublasIamaxEx",
    "cublasHSSgemvStridedBatched_64",
    "cublasHSSgemvStridedBatched",
    "cublasHSSgemvBatched_64",
    "cublasHSSgemvBatched",
    "cublasHSHgemvStridedBatched_64",
    "cublasHSHgemvStridedBatched",
    "cublasHSHgemvBatched_64",
    "cublasHSHgemvBatched",
    "cublasGetVersion_v2",
    "cublasGetVersion",
    "cublasGetVector_64",
    "cublasGetVectorAsync_64",
    "cublasGetStatusString",
    "cublasGetStatusName",
    "cublasGetSmCountTarget",
    "cublasGetProperty",
    "cublasGetMatrix_64",
    "cublasGetMatrixAsync_64",
    "cublasGetLoggerCallback",
    "cublasGetError",
    "cublasGetCudartVersion",
    "cublasGemmGroupedBatchedEx_64",
    "cublasGemmGroupedBatchedEx",
    "cublasFree",
    "cublasDtrttp",
    "cublasDtpttr",
    "cublasDmatinvBatched",
    "cublasDgemmGroupedBatched_64",
    "cublasDgemmGroupedBatched",
    "cublasCtrttp",
    "cublasCtpttr",
    "cublasCsyrkEx_64",
    "cublasCsyrkEx",
    "cublasCsyrk3mEx_64",
    "cublasCsyrk3mEx",
    "cublasCopyEx_64",
    "cublasCopyEx",
    "cublasContext",
    "cublasCmatinvBatched",
    "cublasCherkEx_64",
    "cublasCherkEx",
    "cublasCherk3mEx_64",
    "cublasCherk3mEx",
    "cublasCgemmEx_64",
    "cublasCgemmEx",
    "cublasCgemm3m_64",
    "cublasCgemm3mStridedBatched_64",
    "cublasCgemm3mStridedBatched",
    "cublasCgemm3mEx_64",
    "cublasCgemm3mEx",
    "cublasCgemm3mBatched_64",
    "cublasCgemm3mBatched",
    "cublasCgemm3m",
    "cublasAsumEx_64",
    "cublasAsumEx",
    "cublasAlloc",
    "csrsv2Info",
    "csrsm2Info",
    "__curand_umul",
    "CUTENSOR_WORKSPACE_DEFAULT",
    "CUTENSOR_STATUS_MAPPING_ERROR",
    "CUTENSOR_STATUS_LICENSE_ERROR",
    "CUTENSOR_STATUS_CUDA_ERROR",
    "CUTENSOR_STATUS_CUBLAS_ERROR",
    "CUTENSOR_R_MIN_TF32",
    "CUTENSOR_R_MIN_8U",
    "CUTENSOR_R_MIN_8I",
    "CUTENSOR_R_MIN_64F",
    "CUTENSOR_R_MIN_32U",
    "CUTENSOR_R_MIN_32I",
    "CUTENSOR_R_MIN_32F",
    "CUTENSOR_R_MIN_16F",
    "CUTENSOR_R_MIN_16BF",
    "CUTENSOR_R_64U",
    "CUTENSOR_R_64I",
    "CUTENSOR_R_4U",
    "CUTENSOR_R_4I",
    "CUTENSOR_R_16U",
    "CUTENSOR_R_16I",
    "CUTENSOR_PLAN_REQUIRED_WORKSPACE",
    "CUTENSOR_PLAN_PREFERENCE_KERNEL_RANK",
    "CUTENSOR_PLAN_PREFERENCE_JIT",
    "CUTENSOR_PLAN_PREFERENCE_INCREMENTAL_COUNT",
    "CUTENSOR_PLAN_PREFERENCE_CACHE_MODE",
    "CUTENSOR_PLAN_PREFERENCE_AUTOTUNE_MODE",
    "CUTENSOR_PLAN_PREFERENCE_ALGO",
    "CUTENSOR_OP_TANH",
    "CUTENSOR_OP_TAN",
    "CUTENSOR_OP_SWISH",
    "CUTENSOR_OP_SOFT_SIGN",
    "CUTENSOR_OP_SOFT_PLUS",
    "CUTENSOR_OP_SINH",
    "CUTENSOR_OP_SIN",
    "CUTENSOR_OP_SIGMOID",
    "CUTENSOR_OP_RELU",
    "CUTENSOR_OP_RCP",
    "CUTENSOR_OP_NEG",
    "CUTENSOR_OP_MISH",
    "CUTENSOR_OP_LOG",
    "CUTENSOR_OP_FLOOR",
    "CUTENSOR_OP_EXP",
    "CUTENSOR_OP_COSH",
    "CUTENSOR_OP_COS",
    "CUTENSOR_OP_CONJ",
    "CUTENSOR_OP_CEIL",
    "CUTENSOR_OP_ATANH",
    "CUTENSOR_OP_ATAN",
    "CUTENSOR_OP_ASINH",
    "CUTENSOR_OP_ASIN",
    "CUTENSOR_OP_ACOSH",
    "CUTENSOR_OP_ACOS",
    "CUTENSOR_OP_ABS",
    "CUTENSOR_OPERATION_DESCRIPTOR_TAG",
    "CUTENSOR_OPERATION_DESCRIPTOR_SCALAR_TYPE",
    "CUTENSOR_OPERATION_DESCRIPTOR_PADDING_VALUE",
    "CUTENSOR_OPERATION_DESCRIPTOR_PADDING_RIGHT",
    "CUTENSOR_OPERATION_DESCRIPTOR_PADDING_LEFT",
    "CUTENSOR_OPERATION_DESCRIPTOR_MOVED_BYTES",
    "CUTENSOR_OPERATION_DESCRIPTOR_FLOPS",
    "CUTENSOR_MG_DEVICE_HOST_PINNED",
    "CUTENSOR_MG_DEVICE_HOST",
    "CUTENSOR_JIT_MODE_NONE",
    "CUTENSOR_JIT_MODE_DEFAULT",
    "CUTENSOR_C_MIN_TF32",
    "CUTENSOR_C_MIN_64F",
    "CUTENSOR_C_MIN_32F",
    "CUTENSOR_C_MIN_16F",
    "CUTENSOR_C_8U",
    "CUTENSOR_C_8I",
    "CUTENSOR_C_64U",
    "CUTENSOR_C_64I",
    "CUTENSOR_C_4U",
    "CUTENSOR_C_4I",
    "CUTENSOR_C_32U",
    "CUTENSOR_C_32I",
    "CUTENSOR_C_16U",
    "CUTENSOR_C_16I",
    "CUTENSOR_C_16F",
    "CUTENSOR_C_16BF",
    "CUTENSOR_COMPUTE_TF32",
    "CUTENSOR_COMPUTE_3XTF32",
    "CUTENSOR_CACHE_MODE_PEDANTIC",
    "CUTENSOR_CACHE_MODE_NONE",
    "CUTENSOR_AUTOTUNE_MODE_NONE",
    "CUTENSOR_AUTOTUNE_MODE_INCREMENTAL",
    "CUTENSOR_ALGO_TTGT",
    "CUTENSOR_ALGO_TGETT",
    "CUTENSOR_ALGO_GETT",
    "CUTENSORMG_CONTRACTION_FIND_ATTRIBUTE_MAX",
    "CUTENSORMG_ALGO_DEFAULT",
    "CUSPARSE_SPSV_UPDATE_GENERAL",
    "CUSPARSE_SPSV_UPDATE_DIAGONAL",
    "CUSPARSE_SPSM_UPDATE_GENERAL",
    "CUSPARSE_SPSM_UPDATE_DIAGONAL",
    "CUSPARSE_SPMV_SELL_ALG1",
    "CUSPARSE_SPMM_OP_ALG_DEFAULT",
    "CUSPARSE_SPMM_BSR_ALG1",
    "CUSPARSE_SPMMA_PREPROCESS",
    "CUSPARSE_SPMMA_ALG4",
    "CUSPARSE_SPMMA_ALG3",
    "CUSPARSE_SPMMA_ALG2",
    "CUSPARSE_SPMMA_ALG1",
    "CUSPARSE_SIDE_RIGHT",
    "CUSPARSE_SIDE_LEFT",
    "CUSPARSE_FORMAT_SLICED_ELLPACK",
    "CUSPARSE_FORMAT_BSR",
    "CUSPARSE_COLOR_ALG1",
    "CUSPARSE_COLOR_ALG0",
    "CUSPARSE_ALG_NAIVE",
    "CUSPARSE_ALG_MERGE_PATH",
    "CUSPARSE_ALG1",
    "CUSPARSE_ALG0",
    "CURAND_REJECTION",
    "CURAND_POISSON",
    "CURAND_M2",
    "CURAND_M1",
    "CURAND_KNUTH",
    "CURAND_ITR",
    "CURAND_HITR",
    "CURAND_FAST_REJECTION",
    "CURAND_DISCRETE_GAUSS",
    "CURAND_DEVICE_API",
    "CURAND_DEFINITION",
    "CURAND_CHOOSE_BEST",
    "CURAND_BINARY_SEARCH",
    "CURAND_3RD",
    "CUDA_R_8F_E5M2",
    "CUDA_R_8F_E4M3",
    "CUDA_R_64U",
    "CUDA_R_64I",
    "CUDA_R_4U",
    "CUDA_R_4I",
    "CUDA_R_16U",
    "CUDA_R_16I",
    "CUDA_C_64U",
    "CUDA_C_64I",
    "CUDA_C_4U",
    "CUDA_C_4I",
    "CUDA_C_16U",
    "CUDA_C_16I",
    "CUBLAS_OP_CONJG",
    "CUBLAS_GEMM_DFALT_TENSOR_OP",
    "CUBLAS_GEMM_DEFAULT_TENSOR_OP",
    "CUBLAS_GEMM_ALGO9_TENSOR_OP",
    "CUBLAS_GEMM_ALGO9",
    "CUBLAS_GEMM_ALGO8_TENSOR_OP",
    "CUBLAS_GEMM_ALGO8",
    "CUBLAS_GEMM_ALGO7_TENSOR_OP",
    "CUBLAS_GEMM_ALGO7",
    "CUBLAS_GEMM_ALGO6_TENSOR_OP",
    "CUBLAS_GEMM_ALGO6",
    "CUBLAS_GEMM_ALGO5_TENSOR_OP",
    "CUBLAS_GEMM_ALGO5",
    "CUBLAS_GEMM_ALGO4_TENSOR_OP",
    "CUBLAS_GEMM_ALGO4",
    "CUBLAS_GEMM_ALGO3_TENSOR_OP",
    "CUBLAS_GEMM_ALGO3",
    "CUBLAS_GEMM_ALGO2_TENSOR_OP",
    "CUBLAS_GEMM_ALGO23",
    "CUBLAS_GEMM_ALGO22",
    "CUBLAS_GEMM_ALGO21",
    "CUBLAS_GEMM_ALGO20",
    "CUBLAS_GEMM_ALGO2",
    "CUBLAS_GEMM_ALGO1_TENSOR_OP",
    "CUBLAS_GEMM_ALGO19",
    "CUBLAS_GEMM_ALGO18",
    "CUBLAS_GEMM_ALGO17",
    "CUBLAS_GEMM_ALGO16",
    "CUBLAS_GEMM_ALGO15_TENSOR_OP",
    "CUBLAS_GEMM_ALGO15",
    "CUBLAS_GEMM_ALGO14_TENSOR_OP",
    "CUBLAS_GEMM_ALGO14",
    "CUBLAS_GEMM_ALGO13_TENSOR_OP",
    "CUBLAS_GEMM_ALGO13",
    "CUBLAS_GEMM_ALGO12_TENSOR_OP",
    "CUBLAS_GEMM_ALGO12",
    "CUBLAS_GEMM_ALGO11_TENSOR_OP",
    "CUBLAS_GEMM_ALGO11",
    "CUBLAS_GEMM_ALGO10_TENSOR_OP",
    "CUBLAS_GEMM_ALGO10",
    "CUBLAS_GEMM_ALGO1",
    "CUBLAS_GEMM_ALGO0_TENSOR_OP",
    "CUBLAS_GEMM_ALGO0",
    "CUBLASLT_SEARCH_RESERVED_09",
    "CUBLASLT_SEARCH_RESERVED_08",
    "CUBLASLT_SEARCH_RESERVED_07",
    "CUBLASLT_SEARCH_RESERVED_06",
    "CUBLASLT_SEARCH_RESERVED_05",
    "CUBLASLT_SEARCH_RESERVED_04",
    "CUBLASLT_SEARCH_RESERVED_03",
    "CUBLASLT_SEARCH_RESERVED_02",
    "CUBLASLT_SEARCH_LIMITED_BY_ALGO_ID",
    "CUBLASLT_SEARCH_BEST_FIT",
    "CUBLASLT_REDUCTION_SCHEME_OUTPUT_TYPE",
    "CUBLASLT_REDUCTION_SCHEME_NONE",
    "CUBLASLT_REDUCTION_SCHEME_MASK",
    "CUBLASLT_REDUCTION_SCHEME_INPLACE",
    "CUBLASLT_REDUCTION_SCHEME_COMPUTE_TYPE",
    "CUBLASLT_POINTER_MODE_MASK_HOST",
    "CUBLASLT_POINTER_MODE_MASK_DEVICE_VECTOR",
    "CUBLASLT_POINTER_MODE_MASK_DEVICE",
    "CUBLASLT_POINTER_MODE_MASK_ALPHA_DEVICE_VECTOR_BETA_ZERO",
    "CUBLASLT_POINTER_MODE_MASK_ALPHA_DEVICE_VECTOR_BETA_HOST",
    "CUBLASLT_POINTER_MODE_DEVICE_VECTOR",
    "CUBLASLT_POINTER_MODE_ALPHA_DEVICE_VECTOR_BETA_ZERO",
    "CUBLASLT_ORDER_COL4_4R2_8C",
    "CUBLASLT_ORDER_COL32_2R_4R4",
    "CUBLASLT_ORDER_COL32",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_TENSOR_OP_MASK",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_OP_TYPE_MASK",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_OP_INPUT_TYPE_MASK",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_TF32",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_8I",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_8F_E5M2",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_8F_E4M3",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_64F",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_32F",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_16F",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_16BF",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_IMMA",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_HMMA",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_GAUSSIAN",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_FMA",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_DMMA",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_ACCUMULATOR_TYPE_MASK",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_ACCUMULATOR_64F",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_ACCUMULATOR_32I",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_ACCUMULATOR_32F",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_ACCUMULATOR_16F",
    "CUBLASLT_MATRIX_LAYOUT_PLANE_OFFSET",
    "CUBLASLT_MATMUL_TILE_UNDEFINED",
    "CUBLASLT_MATMUL_TILE_END",
    "CUBLASLT_MATMUL_TILE_96x64",
    "CUBLASLT_MATMUL_TILE_96x512",
    "CUBLASLT_MATMUL_TILE_96x448",
    "CUBLASLT_MATMUL_TILE_96x384",
    "CUBLASLT_MATMUL_TILE_96x320",
    "CUBLASLT_MATMUL_TILE_96x256",
    "CUBLASLT_MATMUL_TILE_96x192",
    "CUBLASLT_MATMUL_TILE_96x128",
    "CUBLASLT_MATMUL_TILE_8x8",
    "CUBLASLT_MATMUL_TILE_8x768",
    "CUBLASLT_MATMUL_TILE_8x704",
    "CUBLASLT_MATMUL_TILE_8x640",
    "CUBLASLT_MATMUL_TILE_8x64",
    "CUBLASLT_MATMUL_TILE_8x576",
    "CUBLASLT_MATMUL_TILE_8x512",
    "CUBLASLT_MATMUL_TILE_8x448",
    "CUBLASLT_MATMUL_TILE_8x384",
    "CUBLASLT_MATMUL_TILE_8x320",
    "CUBLASLT_MATMUL_TILE_8x32",
    "CUBLASLT_MATMUL_TILE_8x256",
    "CUBLASLT_MATMUL_TILE_8x192",
    "CUBLASLT_MATMUL_TILE_8x16",
    "CUBLASLT_MATMUL_TILE_8x128",
    "CUBLASLT_MATMUL_TILE_88x64",
    "CUBLASLT_MATMUL_TILE_88x512",
    "CUBLASLT_MATMUL_TILE_88x448",
    "CUBLASLT_MATMUL_TILE_88x384",
    "CUBLASLT_MATMUL_TILE_88x320",
    "CUBLASLT_MATMUL_TILE_88x256",
    "CUBLASLT_MATMUL_TILE_88x192",
    "CUBLASLT_MATMUL_TILE_88x128",
    "CUBLASLT_MATMUL_TILE_80x64",
    "CUBLASLT_MATMUL_TILE_80x576",
    "CUBLASLT_MATMUL_TILE_80x512",
    "CUBLASLT_MATMUL_TILE_80x448",
    "CUBLASLT_MATMUL_TILE_80x384",
    "CUBLASLT_MATMUL_TILE_80x320",
    "CUBLASLT_MATMUL_TILE_80x256",
    "CUBLASLT_MATMUL_TILE_80x192",
    "CUBLASLT_MATMUL_TILE_80x128",
    "CUBLASLT_MATMUL_TILE_768x80",
    "CUBLASLT_MATMUL_TILE_768x8",
    "CUBLASLT_MATMUL_TILE_768x72",
    "CUBLASLT_MATMUL_TILE_768x64",
    "CUBLASLT_MATMUL_TILE_768x56",
    "CUBLASLT_MATMUL_TILE_768x48",
    "CUBLASLT_MATMUL_TILE_768x40",
    "CUBLASLT_MATMUL_TILE_768x32",
    "CUBLASLT_MATMUL_TILE_768x24",
    "CUBLASLT_MATMUL_TILE_768x16",
    "CUBLASLT_MATMUL_TILE_760x64",
    "CUBLASLT_MATMUL_TILE_752x64",
    "CUBLASLT_MATMUL_TILE_744x64",
    "CUBLASLT_MATMUL_TILE_736x64",
    "CUBLASLT_MATMUL_TILE_72x640",
    "CUBLASLT_MATMUL_TILE_72x64",
    "CUBLASLT_MATMUL_TILE_72x576",
    "CUBLASLT_MATMUL_TILE_72x512",
    "CUBLASLT_MATMUL_TILE_72x448",
    "CUBLASLT_MATMUL_TILE_72x384",
    "CUBLASLT_MATMUL_TILE_72x320",
    "CUBLASLT_MATMUL_TILE_72x256",
    "CUBLASLT_MATMUL_TILE_72x192",
    "CUBLASLT_MATMUL_TILE_72x128",
    "CUBLASLT_MATMUL_TILE_728x64",
    "CUBLASLT_MATMUL_TILE_720x64",
    "CUBLASLT_MATMUL_TILE_712x64",
    "CUBLASLT_MATMUL_TILE_704x88",
    "CUBLASLT_MATMUL_TILE_704x80",
    "CUBLASLT_MATMUL_TILE_704x8",
    "CUBLASLT_MATMUL_TILE_704x72",
    "CUBLASLT_MATMUL_TILE_704x64",
    "CUBLASLT_MATMUL_TILE_704x56",
    "CUBLASLT_MATMUL_TILE_704x48",
    "CUBLASLT_MATMUL_TILE_704x40",
    "CUBLASLT_MATMUL_TILE_704x32",
    "CUBLASLT_MATMUL_TILE_704x24",
    "CUBLASLT_MATMUL_TILE_704x16",
    "CUBLASLT_MATMUL_TILE_696x64",
    "CUBLASLT_MATMUL_TILE_688x64",
    "CUBLASLT_MATMUL_TILE_680x64",
    "CUBLASLT_MATMUL_TILE_672x64",
    "CUBLASLT_MATMUL_TILE_664x64",
    "CUBLASLT_MATMUL_TILE_656x64",
    "CUBLASLT_MATMUL_TILE_64x96",
    "CUBLASLT_MATMUL_TILE_64x88",
    "CUBLASLT_MATMUL_TILE_64x80",
    "CUBLASLT_MATMUL_TILE_64x8",
    "CUBLASLT_MATMUL_TILE_64x768",
    "CUBLASLT_MATMUL_TILE_64x760",
    "CUBLASLT_MATMUL_TILE_64x752",
    "CUBLASLT_MATMUL_TILE_64x744",
    "CUBLASLT_MATMUL_TILE_64x736",
    "CUBLASLT_MATMUL_TILE_64x728",
    "CUBLASLT_MATMUL_TILE_64x720",
    "CUBLASLT_MATMUL_TILE_64x72",
    "CUBLASLT_MATMUL_TILE_64x712",
    "CUBLASLT_MATMUL_TILE_64x704",
    "CUBLASLT_MATMUL_TILE_64x696",
    "CUBLASLT_MATMUL_TILE_64x688",
    "CUBLASLT_MATMUL_TILE_64x680",
    "CUBLASLT_MATMUL_TILE_64x672",
    "CUBLASLT_MATMUL_TILE_64x664",
    "CUBLASLT_MATMUL_TILE_64x656",
    "CUBLASLT_MATMUL_TILE_64x648",
    "CUBLASLT_MATMUL_TILE_64x640",
    "CUBLASLT_MATMUL_TILE_64x64",
    "CUBLASLT_MATMUL_TILE_64x632",
    "CUBLASLT_MATMUL_TILE_64x624",
    "CUBLASLT_MATMUL_TILE_64x616",
    "CUBLASLT_MATMUL_TILE_64x608",
    "CUBLASLT_MATMUL_TILE_64x600",
    "CUBLASLT_MATMUL_TILE_64x592",
    "CUBLASLT_MATMUL_TILE_64x584",
    "CUBLASLT_MATMUL_TILE_64x576",
    "CUBLASLT_MATMUL_TILE_64x568",
    "CUBLASLT_MATMUL_TILE_64x560",
    "CUBLASLT_MATMUL_TILE_64x56",
    "CUBLASLT_MATMUL_TILE_64x552",
    "CUBLASLT_MATMUL_TILE_64x544",
    "CUBLASLT_MATMUL_TILE_64x536",
    "CUBLASLT_MATMUL_TILE_64x528",
    "CUBLASLT_MATMUL_TILE_64x520",
    "CUBLASLT_MATMUL_TILE_64x512",
    "CUBLASLT_MATMUL_TILE_64x504",
    "CUBLASLT_MATMUL_TILE_64x496",
    "CUBLASLT_MATMUL_TILE_64x488",
    "CUBLASLT_MATMUL_TILE_64x480",
    "CUBLASLT_MATMUL_TILE_64x48",
    "CUBLASLT_MATMUL_TILE_64x472",
    "CUBLASLT_MATMUL_TILE_64x464",
    "CUBLASLT_MATMUL_TILE_64x456",
    "CUBLASLT_MATMUL_TILE_64x448",
    "CUBLASLT_MATMUL_TILE_64x440",
    "CUBLASLT_MATMUL_TILE_64x432",
    "CUBLASLT_MATMUL_TILE_64x424",
    "CUBLASLT_MATMUL_TILE_64x416",
    "CUBLASLT_MATMUL_TILE_64x408",
    "CUBLASLT_MATMUL_TILE_64x400",
    "CUBLASLT_MATMUL_TILE_64x40",
    "CUBLASLT_MATMUL_TILE_64x392",
    "CUBLASLT_MATMUL_TILE_64x384",
    "CUBLASLT_MATMUL_TILE_64x376",
    "CUBLASLT_MATMUL_TILE_64x368",
    "CUBLASLT_MATMUL_TILE_64x360",
    "CUBLASLT_MATMUL_TILE_64x352",
    "CUBLASLT_MATMUL_TILE_64x344",
    "CUBLASLT_MATMUL_TILE_64x336",
    "CUBLASLT_MATMUL_TILE_64x328",
    "CUBLASLT_MATMUL_TILE_64x320",
    "CUBLASLT_MATMUL_TILE_64x32",
    "CUBLASLT_MATMUL_TILE_64x312",
    "CUBLASLT_MATMUL_TILE_64x304",
    "CUBLASLT_MATMUL_TILE_64x296",
    "CUBLASLT_MATMUL_TILE_64x288",
    "CUBLASLT_MATMUL_TILE_64x280",
    "CUBLASLT_MATMUL_TILE_64x272",
    "CUBLASLT_MATMUL_TILE_64x264",
    "CUBLASLT_MATMUL_TILE_64x256",
    "CUBLASLT_MATMUL_TILE_64x248",
    "CUBLASLT_MATMUL_TILE_64x240",
    "CUBLASLT_MATMUL_TILE_64x24",
    "CUBLASLT_MATMUL_TILE_64x232",
    "CUBLASLT_MATMUL_TILE_64x224",
    "CUBLASLT_MATMUL_TILE_64x216",
    "CUBLASLT_MATMUL_TILE_64x208",
    "CUBLASLT_MATMUL_TILE_64x200",
    "CUBLASLT_MATMUL_TILE_64x192",
    "CUBLASLT_MATMUL_TILE_64x184",
    "CUBLASLT_MATMUL_TILE_64x176",
    "CUBLASLT_MATMUL_TILE_64x168",
    "CUBLASLT_MATMUL_TILE_64x160",
    "CUBLASLT_MATMUL_TILE_64x16",
    "CUBLASLT_MATMUL_TILE_64x152",
    "CUBLASLT_MATMUL_TILE_64x144",
    "CUBLASLT_MATMUL_TILE_64x136",
    "CUBLASLT_MATMUL_TILE_64x128",
    "CUBLASLT_MATMUL_TILE_64x120",
    "CUBLASLT_MATMUL_TILE_64x112",
    "CUBLASLT_MATMUL_TILE_64x104",
    "CUBLASLT_MATMUL_TILE_648x64",
    "CUBLASLT_MATMUL_TILE_640x96",
    "CUBLASLT_MATMUL_TILE_640x88",
    "CUBLASLT_MATMUL_TILE_640x80",
    "CUBLASLT_MATMUL_TILE_640x8",
    "CUBLASLT_MATMUL_TILE_640x72",
    "CUBLASLT_MATMUL_TILE_640x64",
    "CUBLASLT_MATMUL_TILE_640x56",
    "CUBLASLT_MATMUL_TILE_640x48",
    "CUBLASLT_MATMUL_TILE_640x40",
    "CUBLASLT_MATMUL_TILE_640x32",
    "CUBLASLT_MATMUL_TILE_640x24",
    "CUBLASLT_MATMUL_TILE_640x16",
    "CUBLASLT_MATMUL_TILE_632x64",
    "CUBLASLT_MATMUL_TILE_624x64",
    "CUBLASLT_MATMUL_TILE_616x64",
    "CUBLASLT_MATMUL_TILE_608x64",
    "CUBLASLT_MATMUL_TILE_600x64",
    "CUBLASLT_MATMUL_TILE_592x64",
    "CUBLASLT_MATMUL_TILE_584x64",
    "CUBLASLT_MATMUL_TILE_576x96",
    "CUBLASLT_MATMUL_TILE_576x88",
    "CUBLASLT_MATMUL_TILE_576x80",
    "CUBLASLT_MATMUL_TILE_576x8",
    "CUBLASLT_MATMUL_TILE_576x72",
    "CUBLASLT_MATMUL_TILE_576x64",
    "CUBLASLT_MATMUL_TILE_576x56",
    "CUBLASLT_MATMUL_TILE_576x48",
    "CUBLASLT_MATMUL_TILE_576x40",
    "CUBLASLT_MATMUL_TILE_576x32",
    "CUBLASLT_MATMUL_TILE_576x24",
    "CUBLASLT_MATMUL_TILE_576x16",
    "CUBLASLT_MATMUL_TILE_576x112",
    "CUBLASLT_MATMUL_TILE_576x104",
    "CUBLASLT_MATMUL_TILE_56x768",
    "CUBLASLT_MATMUL_TILE_56x704",
    "CUBLASLT_MATMUL_TILE_56x640",
    "CUBLASLT_MATMUL_TILE_56x576",
    "CUBLASLT_MATMUL_TILE_56x512",
    "CUBLASLT_MATMUL_TILE_56x448",
    "CUBLASLT_MATMUL_TILE_56x384",
    "CUBLASLT_MATMUL_TILE_56x320",
    "CUBLASLT_MATMUL_TILE_56x256",
    "CUBLASLT_MATMUL_TILE_56x192",
    "CUBLASLT_MATMUL_TILE_56x128",
    "CUBLASLT_MATMUL_TILE_568x64",
    "CUBLASLT_MATMUL_TILE_560x64",
    "CUBLASLT_MATMUL_TILE_552x64",
    "CUBLASLT_MATMUL_TILE_544x64",
    "CUBLASLT_MATMUL_TILE_536x64",
    "CUBLASLT_MATMUL_TILE_528x64",
    "CUBLASLT_MATMUL_TILE_520x64",
    "CUBLASLT_MATMUL_TILE_512x96",
    "CUBLASLT_MATMUL_TILE_512x88",
    "CUBLASLT_MATMUL_TILE_512x80",
    "CUBLASLT_MATMUL_TILE_512x8",
    "CUBLASLT_MATMUL_TILE_512x72",
    "CUBLASLT_MATMUL_TILE_512x64",
    "CUBLASLT_MATMUL_TILE_512x56",
    "CUBLASLT_MATMUL_TILE_512x48",
    "CUBLASLT_MATMUL_TILE_512x40",
    "CUBLASLT_MATMUL_TILE_512x32",
    "CUBLASLT_MATMUL_TILE_512x24",
    "CUBLASLT_MATMUL_TILE_512x16",
    "CUBLASLT_MATMUL_TILE_512x128",
    "CUBLASLT_MATMUL_TILE_512x120",
    "CUBLASLT_MATMUL_TILE_512x112",
    "CUBLASLT_MATMUL_TILE_512x104",
    "CUBLASLT_MATMUL_TILE_504x64",
    "CUBLASLT_MATMUL_TILE_496x64",
    "CUBLASLT_MATMUL_TILE_48x768",
    "CUBLASLT_MATMUL_TILE_48x704",
    "CUBLASLT_MATMUL_TILE_48x640",
    "CUBLASLT_MATMUL_TILE_48x64",
    "CUBLASLT_MATMUL_TILE_48x576",
    "CUBLASLT_MATMUL_TILE_48x512",
    "CUBLASLT_MATMUL_TILE_48x448",
    "CUBLASLT_MATMUL_TILE_48x384",
    "CUBLASLT_MATMUL_TILE_48x320",
    "CUBLASLT_MATMUL_TILE_48x256",
    "CUBLASLT_MATMUL_TILE_48x192",
    "CUBLASLT_MATMUL_TILE_48x128",
    "CUBLASLT_MATMUL_TILE_488x64",
    "CUBLASLT_MATMUL_TILE_480x64",
    "CUBLASLT_MATMUL_TILE_472x64",
    "CUBLASLT_MATMUL_TILE_464x64",
    "CUBLASLT_MATMUL_TILE_456x64",
    "CUBLASLT_MATMUL_TILE_448x96",
    "CUBLASLT_MATMUL_TILE_448x88",
    "CUBLASLT_MATMUL_TILE_448x80",
    "CUBLASLT_MATMUL_TILE_448x8",
    "CUBLASLT_MATMUL_TILE_448x72",
    "CUBLASLT_MATMUL_TILE_448x64",
    "CUBLASLT_MATMUL_TILE_448x56",
    "CUBLASLT_MATMUL_TILE_448x48",
    "CUBLASLT_MATMUL_TILE_448x40",
    "CUBLASLT_MATMUL_TILE_448x32",
    "CUBLASLT_MATMUL_TILE_448x24",
    "CUBLASLT_MATMUL_TILE_448x16",
    "CUBLASLT_MATMUL_TILE_448x144",
    "CUBLASLT_MATMUL_TILE_448x136",
    "CUBLASLT_MATMUL_TILE_448x128",
    "CUBLASLT_MATMUL_TILE_448x120",
    "CUBLASLT_MATMUL_TILE_448x112",
    "CUBLASLT_MATMUL_TILE_448x104",
    "CUBLASLT_MATMUL_TILE_440x64",
    "CUBLASLT_MATMUL_TILE_432x64",
    "CUBLASLT_MATMUL_TILE_424x64",
    "CUBLASLT_MATMUL_TILE_416x64",
    "CUBLASLT_MATMUL_TILE_40x768",
    "CUBLASLT_MATMUL_TILE_40x704",
    "CUBLASLT_MATMUL_TILE_40x640",
    "CUBLASLT_MATMUL_TILE_40x64",
    "CUBLASLT_MATMUL_TILE_40x576",
    "CUBLASLT_MATMUL_TILE_40x512",
    "CUBLASLT_MATMUL_TILE_40x448",
    "CUBLASLT_MATMUL_TILE_40x384",
    "CUBLASLT_MATMUL_TILE_40x320",
    "CUBLASLT_MATMUL_TILE_40x256",
    "CUBLASLT_MATMUL_TILE_40x192",
    "CUBLASLT_MATMUL_TILE_40x128",
    "CUBLASLT_MATMUL_TILE_408x64",
    "CUBLASLT_MATMUL_TILE_400x64",
    "CUBLASLT_MATMUL_TILE_392x64",
    "CUBLASLT_MATMUL_TILE_384x96",
    "CUBLASLT_MATMUL_TILE_384x88",
    "CUBLASLT_MATMUL_TILE_384x80",
    "CUBLASLT_MATMUL_TILE_384x8",
    "CUBLASLT_MATMUL_TILE_384x72",
    "CUBLASLT_MATMUL_TILE_384x64",
    "CUBLASLT_MATMUL_TILE_384x56",
    "CUBLASLT_MATMUL_TILE_384x48",
    "CUBLASLT_MATMUL_TILE_384x40",
    "CUBLASLT_MATMUL_TILE_384x32",
    "CUBLASLT_MATMUL_TILE_384x24",
    "CUBLASLT_MATMUL_TILE_384x168",
    "CUBLASLT_MATMUL_TILE_384x160",
    "CUBLASLT_MATMUL_TILE_384x16",
    "CUBLASLT_MATMUL_TILE_384x152",
    "CUBLASLT_MATMUL_TILE_384x144",
    "CUBLASLT_MATMUL_TILE_384x136",
    "CUBLASLT_MATMUL_TILE_384x128",
    "CUBLASLT_MATMUL_TILE_384x120",
    "CUBLASLT_MATMUL_TILE_384x112",
    "CUBLASLT_MATMUL_TILE_384x104",
    "CUBLASLT_MATMUL_TILE_376x64",
    "CUBLASLT_MATMUL_TILE_376x128",
    "CUBLASLT_MATMUL_TILE_368x64",
    "CUBLASLT_MATMUL_TILE_368x128",
    "CUBLASLT_MATMUL_TILE_360x64",
    "CUBLASLT_MATMUL_TILE_360x128",
    "CUBLASLT_MATMUL_TILE_352x64",
    "CUBLASLT_MATMUL_TILE_352x128",
    "CUBLASLT_MATMUL_TILE_344x64",
    "CUBLASLT_MATMUL_TILE_344x128",
    "CUBLASLT_MATMUL_TILE_336x64",
    "CUBLASLT_MATMUL_TILE_336x128",
    "CUBLASLT_MATMUL_TILE_32x8",
    "CUBLASLT_MATMUL_TILE_32x768",
    "CUBLASLT_MATMUL_TILE_32x704",
    "CUBLASLT_MATMUL_TILE_32x640",
    "CUBLASLT_MATMUL_TILE_32x64",
    "CUBLASLT_MATMUL_TILE_32x576",
    "CUBLASLT_MATMUL_TILE_32x512",
    "CUBLASLT_MATMUL_TILE_32x448",
    "CUBLASLT_MATMUL_TILE_32x384",
    "CUBLASLT_MATMUL_TILE_32x320",
    "CUBLASLT_MATMUL_TILE_32x32",
    "CUBLASLT_MATMUL_TILE_32x256",
    "CUBLASLT_MATMUL_TILE_32x192",
    "CUBLASLT_MATMUL_TILE_32x16",
    "CUBLASLT_MATMUL_TILE_32x128",
    "CUBLASLT_MATMUL_TILE_328x64",
    "CUBLASLT_MATMUL_TILE_328x128",
    "CUBLASLT_MATMUL_TILE_320x96",
    "CUBLASLT_MATMUL_TILE_320x88",
    "CUBLASLT_MATMUL_TILE_320x80",
    "CUBLASLT_MATMUL_TILE_320x8",
    "CUBLASLT_MATMUL_TILE_320x72",
    "CUBLASLT_MATMUL_TILE_320x64",
    "CUBLASLT_MATMUL_TILE_320x56",
    "CUBLASLT_MATMUL_TILE_320x48",
    "CUBLASLT_MATMUL_TILE_320x40",
    "CUBLASLT_MATMUL_TILE_320x32",
    "CUBLASLT_MATMUL_TILE_320x24",
    "CUBLASLT_MATMUL_TILE_320x200",
    "CUBLASLT_MATMUL_TILE_320x192",
    "CUBLASLT_MATMUL_TILE_320x184",
    "CUBLASLT_MATMUL_TILE_320x176",
    "CUBLASLT_MATMUL_TILE_320x168",
    "CUBLASLT_MATMUL_TILE_320x160",
    "CUBLASLT_MATMUL_TILE_320x16",
    "CUBLASLT_MATMUL_TILE_320x152",
    "CUBLASLT_MATMUL_TILE_320x144",
    "CUBLASLT_MATMUL_TILE_320x136",
    "CUBLASLT_MATMUL_TILE_320x128",
    "CUBLASLT_MATMUL_TILE_320x120",
    "CUBLASLT_MATMUL_TILE_320x112",
    "CUBLASLT_MATMUL_TILE_320x104",
    "CUBLASLT_MATMUL_TILE_312x64",
    "CUBLASLT_MATMUL_TILE_312x128",
    "CUBLASLT_MATMUL_TILE_304x64",
    "CUBLASLT_MATMUL_TILE_304x128",
    "CUBLASLT_MATMUL_TILE_296x64",
    "CUBLASLT_MATMUL_TILE_296x128",
    "CUBLASLT_MATMUL_TILE_288x64",
    "CUBLASLT_MATMUL_TILE_288x128",
    "CUBLASLT_MATMUL_TILE_280x64",
    "CUBLASLT_MATMUL_TILE_280x128",
    "CUBLASLT_MATMUL_TILE_272x64",
    "CUBLASLT_MATMUL_TILE_272x128",
    "CUBLASLT_MATMUL_TILE_264x64",
    "CUBLASLT_MATMUL_TILE_264x128",
    "CUBLASLT_MATMUL_TILE_256x96",
    "CUBLASLT_MATMUL_TILE_256x88",
    "CUBLASLT_MATMUL_TILE_256x80",
    "CUBLASLT_MATMUL_TILE_256x8",
    "CUBLASLT_MATMUL_TILE_256x72",
    "CUBLASLT_MATMUL_TILE_256x64",
    "CUBLASLT_MATMUL_TILE_256x56",
    "CUBLASLT_MATMUL_TILE_256x48",
    "CUBLASLT_MATMUL_TILE_256x40",
    "CUBLASLT_MATMUL_TILE_256x32",
    "CUBLASLT_MATMUL_TILE_256x256",
    "CUBLASLT_MATMUL_TILE_256x248",
    "CUBLASLT_MATMUL_TILE_256x240",
    "CUBLASLT_MATMUL_TILE_256x24",
    "CUBLASLT_MATMUL_TILE_256x232",
    "CUBLASLT_MATMUL_TILE_256x224",
    "CUBLASLT_MATMUL_TILE_256x216",
    "CUBLASLT_MATMUL_TILE_256x208",
    "CUBLASLT_MATMUL_TILE_256x200",
    "CUBLASLT_MATMUL_TILE_256x192",
    "CUBLASLT_MATMUL_TILE_256x184",
    "CUBLASLT_MATMUL_TILE_256x176",
    "CUBLASLT_MATMUL_TILE_256x168",
    "CUBLASLT_MATMUL_TILE_256x160",
    "CUBLASLT_MATMUL_TILE_256x16",
    "CUBLASLT_MATMUL_TILE_256x152",
    "CUBLASLT_MATMUL_TILE_256x144",
    "CUBLASLT_MATMUL_TILE_256x136",
    "CUBLASLT_MATMUL_TILE_256x128",
    "CUBLASLT_MATMUL_TILE_256x120",
    "CUBLASLT_MATMUL_TILE_256x112",
    "CUBLASLT_MATMUL_TILE_256x104",
    "CUBLASLT_MATMUL_TILE_24x768",
    "CUBLASLT_MATMUL_TILE_24x704",
    "CUBLASLT_MATMUL_TILE_24x640",
    "CUBLASLT_MATMUL_TILE_24x64",
    "CUBLASLT_MATMUL_TILE_24x576",
    "CUBLASLT_MATMUL_TILE_24x512",
    "CUBLASLT_MATMUL_TILE_24x448",
    "CUBLASLT_MATMUL_TILE_24x384",
    "CUBLASLT_MATMUL_TILE_24x320",
    "CUBLASLT_MATMUL_TILE_24x256",
    "CUBLASLT_MATMUL_TILE_24x192",
    "CUBLASLT_MATMUL_TILE_24x128",
    "CUBLASLT_MATMUL_TILE_248x64",
    "CUBLASLT_MATMUL_TILE_248x192",
    "CUBLASLT_MATMUL_TILE_248x128",
    "CUBLASLT_MATMUL_TILE_240x64",
    "CUBLASLT_MATMUL_TILE_240x192",
    "CUBLASLT_MATMUL_TILE_240x128",
    "CUBLASLT_MATMUL_TILE_232x64",
    "CUBLASLT_MATMUL_TILE_232x192",
    "CUBLASLT_MATMUL_TILE_232x128",
    "CUBLASLT_MATMUL_TILE_224x64",
    "CUBLASLT_MATMUL_TILE_224x192",
    "CUBLASLT_MATMUL_TILE_224x128",
    "CUBLASLT_MATMUL_TILE_216x64",
    "CUBLASLT_MATMUL_TILE_216x192",
    "CUBLASLT_MATMUL_TILE_216x128",
    "CUBLASLT_MATMUL_TILE_208x64",
    "CUBLASLT_MATMUL_TILE_208x192",
    "CUBLASLT_MATMUL_TILE_208x128",
    "CUBLASLT_MATMUL_TILE_200x64",
    "CUBLASLT_MATMUL_TILE_200x192",
    "CUBLASLT_MATMUL_TILE_200x128",
    "CUBLASLT_MATMUL_TILE_192x96",
    "CUBLASLT_MATMUL_TILE_192x88",
    "CUBLASLT_MATMUL_TILE_192x80",
    "CUBLASLT_MATMUL_TILE_192x8",
    "CUBLASLT_MATMUL_TILE_192x72",
    "CUBLASLT_MATMUL_TILE_192x64",
    "CUBLASLT_MATMUL_TILE_192x56",
    "CUBLASLT_MATMUL_TILE_192x48",
    "CUBLASLT_MATMUL_TILE_192x40",
    "CUBLASLT_MATMUL_TILE_192x336",
    "CUBLASLT_MATMUL_TILE_192x328",
    "CUBLASLT_MATMUL_TILE_192x320",
    "CUBLASLT_MATMUL_TILE_192x32",
    "CUBLASLT_MATMUL_TILE_192x312",
    "CUBLASLT_MATMUL_TILE_192x304",
    "CUBLASLT_MATMUL_TILE_192x296",
    "CUBLASLT_MATMUL_TILE_192x288",
    "CUBLASLT_MATMUL_TILE_192x280",
    "CUBLASLT_MATMUL_TILE_192x272",
    "CUBLASLT_MATMUL_TILE_192x264",
    "CUBLASLT_MATMUL_TILE_192x256",
    "CUBLASLT_MATMUL_TILE_192x248",
    "CUBLASLT_MATMUL_TILE_192x240",
    "CUBLASLT_MATMUL_TILE_192x24",
    "CUBLASLT_MATMUL_TILE_192x232",
    "CUBLASLT_MATMUL_TILE_192x224",
    "CUBLASLT_MATMUL_TILE_192x216",
    "CUBLASLT_MATMUL_TILE_192x208",
    "CUBLASLT_MATMUL_TILE_192x200",
    "CUBLASLT_MATMUL_TILE_192x192",
    "CUBLASLT_MATMUL_TILE_192x184",
    "CUBLASLT_MATMUL_TILE_192x176",
    "CUBLASLT_MATMUL_TILE_192x168",
    "CUBLASLT_MATMUL_TILE_192x160",
    "CUBLASLT_MATMUL_TILE_192x16",
    "CUBLASLT_MATMUL_TILE_192x152",
    "CUBLASLT_MATMUL_TILE_192x144",
    "CUBLASLT_MATMUL_TILE_192x136",
    "CUBLASLT_MATMUL_TILE_192x128",
    "CUBLASLT_MATMUL_TILE_192x120",
    "CUBLASLT_MATMUL_TILE_192x112",
    "CUBLASLT_MATMUL_TILE_192x104",
    "CUBLASLT_MATMUL_TILE_184x64",
    "CUBLASLT_MATMUL_TILE_184x256",
    "CUBLASLT_MATMUL_TILE_184x192",
    "CUBLASLT_MATMUL_TILE_184x128",
    "CUBLASLT_MATMUL_TILE_176x64",
    "CUBLASLT_MATMUL_TILE_176x256",
    "CUBLASLT_MATMUL_TILE_176x192",
    "CUBLASLT_MATMUL_TILE_176x128",
    "CUBLASLT_MATMUL_TILE_16x8",
    "CUBLASLT_MATMUL_TILE_16x768",
    "CUBLASLT_MATMUL_TILE_16x704",
    "CUBLASLT_MATMUL_TILE_16x640",
    "CUBLASLT_MATMUL_TILE_16x64",
    "CUBLASLT_MATMUL_TILE_16x576",
    "CUBLASLT_MATMUL_TILE_16x512",
    "CUBLASLT_MATMUL_TILE_16x448",
    "CUBLASLT_MATMUL_TILE_16x384",
    "CUBLASLT_MATMUL_TILE_16x320",
    "CUBLASLT_MATMUL_TILE_16x32",
    "CUBLASLT_MATMUL_TILE_16x256",
    "CUBLASLT_MATMUL_TILE_16x192",
    "CUBLASLT_MATMUL_TILE_16x16",
    "CUBLASLT_MATMUL_TILE_16x128",
    "CUBLASLT_MATMUL_TILE_168x64",
    "CUBLASLT_MATMUL_TILE_168x256",
    "CUBLASLT_MATMUL_TILE_168x192",
    "CUBLASLT_MATMUL_TILE_168x128",
    "CUBLASLT_MATMUL_TILE_160x64",
    "CUBLASLT_MATMUL_TILE_160x256",
    "CUBLASLT_MATMUL_TILE_160x192",
    "CUBLASLT_MATMUL_TILE_160x128",
    "CUBLASLT_MATMUL_TILE_152x64",
    "CUBLASLT_MATMUL_TILE_152x320",
    "CUBLASLT_MATMUL_TILE_152x256",
    "CUBLASLT_MATMUL_TILE_152x192",
    "CUBLASLT_MATMUL_TILE_152x128",
    "CUBLASLT_MATMUL_TILE_144x64",
    "CUBLASLT_MATMUL_TILE_144x320",
    "CUBLASLT_MATMUL_TILE_144x256",
    "CUBLASLT_MATMUL_TILE_144x192",
    "CUBLASLT_MATMUL_TILE_144x128",
    "CUBLASLT_MATMUL_TILE_136x64",
    "CUBLASLT_MATMUL_TILE_136x320",
    "CUBLASLT_MATMUL_TILE_136x256",
    "CUBLASLT_MATMUL_TILE_136x192",
    "CUBLASLT_MATMUL_TILE_136x128",
    "CUBLASLT_MATMUL_TILE_128x96",
    "CUBLASLT_MATMUL_TILE_128x88",
    "CUBLASLT_MATMUL_TILE_128x80",
    "CUBLASLT_MATMUL_TILE_128x8",
    "CUBLASLT_MATMUL_TILE_128x72",
    "CUBLASLT_MATMUL_TILE_128x64",
    "CUBLASLT_MATMUL_TILE_128x56",
    "CUBLASLT_MATMUL_TILE_128x512",
    "CUBLASLT_MATMUL_TILE_128x504",
    "CUBLASLT_MATMUL_TILE_128x496",
    "CUBLASLT_MATMUL_TILE_128x488",
    "CUBLASLT_MATMUL_TILE_128x480",
    "CUBLASLT_MATMUL_TILE_128x48",
    "CUBLASLT_MATMUL_TILE_128x472",
    "CUBLASLT_MATMUL_TILE_128x464",
    "CUBLASLT_MATMUL_TILE_128x456",
    "CUBLASLT_MATMUL_TILE_128x448",
    "CUBLASLT_MATMUL_TILE_128x440",
    "CUBLASLT_MATMUL_TILE_128x432",
    "CUBLASLT_MATMUL_TILE_128x424",
    "CUBLASLT_MATMUL_TILE_128x416",
    "CUBLASLT_MATMUL_TILE_128x408",
    "CUBLASLT_MATMUL_TILE_128x400",
    "CUBLASLT_MATMUL_TILE_128x40",
    "CUBLASLT_MATMUL_TILE_128x392",
    "CUBLASLT_MATMUL_TILE_128x384",
    "CUBLASLT_MATMUL_TILE_128x376",
    "CUBLASLT_MATMUL_TILE_128x368",
    "CUBLASLT_MATMUL_TILE_128x360",
    "CUBLASLT_MATMUL_TILE_128x352",
    "CUBLASLT_MATMUL_TILE_128x344",
    "CUBLASLT_MATMUL_TILE_128x336",
    "CUBLASLT_MATMUL_TILE_128x328",
    "CUBLASLT_MATMUL_TILE_128x320",
    "CUBLASLT_MATMUL_TILE_128x32",
    "CUBLASLT_MATMUL_TILE_128x312",
    "CUBLASLT_MATMUL_TILE_128x304",
    "CUBLASLT_MATMUL_TILE_128x296",
    "CUBLASLT_MATMUL_TILE_128x288",
    "CUBLASLT_MATMUL_TILE_128x280",
    "CUBLASLT_MATMUL_TILE_128x272",
    "CUBLASLT_MATMUL_TILE_128x264",
    "CUBLASLT_MATMUL_TILE_128x256",
    "CUBLASLT_MATMUL_TILE_128x248",
    "CUBLASLT_MATMUL_TILE_128x240",
    "CUBLASLT_MATMUL_TILE_128x24",
    "CUBLASLT_MATMUL_TILE_128x232",
    "CUBLASLT_MATMUL_TILE_128x224",
    "CUBLASLT_MATMUL_TILE_128x216",
    "CUBLASLT_MATMUL_TILE_128x208",
    "CUBLASLT_MATMUL_TILE_128x200",
    "CUBLASLT_MATMUL_TILE_128x192",
    "CUBLASLT_MATMUL_TILE_128x184",
    "CUBLASLT_MATMUL_TILE_128x176",
    "CUBLASLT_MATMUL_TILE_128x168",
    "CUBLASLT_MATMUL_TILE_128x160",
    "CUBLASLT_MATMUL_TILE_128x16",
    "CUBLASLT_MATMUL_TILE_128x152",
    "CUBLASLT_MATMUL_TILE_128x144",
    "CUBLASLT_MATMUL_TILE_128x136",
    "CUBLASLT_MATMUL_TILE_128x128",
    "CUBLASLT_MATMUL_TILE_128x120",
    "CUBLASLT_MATMUL_TILE_128x112",
    "CUBLASLT_MATMUL_TILE_128x104",
    "CUBLASLT_MATMUL_TILE_120x64",
    "CUBLASLT_MATMUL_TILE_120x384",
    "CUBLASLT_MATMUL_TILE_120x320",
    "CUBLASLT_MATMUL_TILE_120x256",
    "CUBLASLT_MATMUL_TILE_120x192",
    "CUBLASLT_MATMUL_TILE_120x128",
    "CUBLASLT_MATMUL_TILE_112x64",
    "CUBLASLT_MATMUL_TILE_112x384",
    "CUBLASLT_MATMUL_TILE_112x320",
    "CUBLASLT_MATMUL_TILE_112x256",
    "CUBLASLT_MATMUL_TILE_112x192",
    "CUBLASLT_MATMUL_TILE_112x128",
    "CUBLASLT_MATMUL_TILE_104x64",
    "CUBLASLT_MATMUL_TILE_104x448",
    "CUBLASLT_MATMUL_TILE_104x384",
    "CUBLASLT_MATMUL_TILE_104x320",
    "CUBLASLT_MATMUL_TILE_104x256",
    "CUBLASLT_MATMUL_TILE_104x192",
    "CUBLASLT_MATMUL_TILE_104x128",
    "CUBLASLT_MATMUL_STAGES_UNDEFINED",
    "CUBLASLT_MATMUL_STAGES_END",
    "CUBLASLT_MATMUL_STAGES_8xAUTO",
    "CUBLASLT_MATMUL_STAGES_8x5",
    "CUBLASLT_MATMUL_STAGES_8x4",
    "CUBLASLT_MATMUL_STAGES_8x3",
    "CUBLASLT_MATMUL_STAGES_64xAUTO",
    "CUBLASLT_MATMUL_STAGES_64x6",
    "CUBLASLT_MATMUL_STAGES_64x5",
    "CUBLASLT_MATMUL_STAGES_64x4",
    "CUBLASLT_MATMUL_STAGES_64x3",
    "CUBLASLT_MATMUL_STAGES_64x2",
    "CUBLASLT_MATMUL_STAGES_64x1",
    "CUBLASLT_MATMUL_STAGES_32xAUTO",
    "CUBLASLT_MATMUL_STAGES_32x6",
    "CUBLASLT_MATMUL_STAGES_32x5",
    "CUBLASLT_MATMUL_STAGES_32x4",
    "CUBLASLT_MATMUL_STAGES_32x3",
    "CUBLASLT_MATMUL_STAGES_32x2",
    "CUBLASLT_MATMUL_STAGES_32x10",
    "CUBLASLT_MATMUL_STAGES_32x1",
    "CUBLASLT_MATMUL_STAGES_16xAUTO",
    "CUBLASLT_MATMUL_STAGES_16x6",
    "CUBLASLT_MATMUL_STAGES_16x5",
    "CUBLASLT_MATMUL_STAGES_16x4",
    "CUBLASLT_MATMUL_STAGES_16x3",
    "CUBLASLT_MATMUL_STAGES_16x2",
    "CUBLASLT_MATMUL_STAGES_16x10",
    "CUBLASLT_MATMUL_STAGES_16x1",
    "CUBLASLT_MATMUL_STAGES_128xAUTO",
    "CUBLASLT_MATMUL_STAGES_128x6",
    "CUBLASLT_MATMUL_STAGES_128x5",
    "CUBLASLT_MATMUL_STAGES_128x4",
    "CUBLASLT_MATMUL_STAGES_128x3",
    "CUBLASLT_MATMUL_STAGES_128x2",
    "CUBLASLT_MATMUL_STAGES_128x1",
    "CUBLASLT_MATMUL_PREF_REDUCTION_SCHEME_MASK",
    "CUBLASLT_MATMUL_PREF_MIN_ALIGNMENT_D_BYTES",
    "CUBLASLT_MATMUL_PREF_MIN_ALIGNMENT_C_BYTES",
    "CUBLASLT_MATMUL_PREF_MIN_ALIGNMENT_B_BYTES",
    "CUBLASLT_MATMUL_PREF_MIN_ALIGNMENT_A_BYTES",
    "CUBLASLT_MATMUL_PREF_MAX_WAVES_COUNT",
    "CUBLASLT_MATMUL_PREF_IMPL_MASK",
    "CUBLASLT_MATMUL_INNER_SHAPE_UNDEFINED",
    "CUBLASLT_MATMUL_INNER_SHAPE_MMA884",
    "CUBLASLT_MATMUL_INNER_SHAPE_MMA1688",
    "CUBLASLT_MATMUL_INNER_SHAPE_MMA1684",
    "CUBLASLT_MATMUL_INNER_SHAPE_MMA16816",
    "CUBLASLT_MATMUL_INNER_SHAPE_END",
    "CUBLASLT_MATMUL_DESC_TRANSC",
    "CUBLASLT_MATMUL_DESC_SM_COUNT_TARGET",
    "CUBLASLT_MATMUL_DESC_SCALE_TYPE",
    "CUBLASLT_MATMUL_DESC_FILL_MODE",
    "CUBLASLT_MATMUL_DESC_FAST_ACCUM",
    "CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_DATA_TYPE",
    "CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_AMAX_POINTER",
    "CUBLASLT_MATMUL_DESC_COMPUTE_TYPE",
    "CUBLASLT_MATMUL_DESC_BIAS_BATCH_STRIDE",
    "CUBLASLT_MATMUL_DESC_ATOMIC_SYNC_OUT_COUNTERS_POINTER",
    "CUBLASLT_MATMUL_DESC_ATOMIC_SYNC_NUM_CHUNKS_D_ROWS",
    "CUBLASLT_MATMUL_DESC_ATOMIC_SYNC_NUM_CHUNKS_D_COLS",
    "CUBLASLT_MATMUL_DESC_ATOMIC_SYNC_IN_COUNTERS_POINTER",
    "CUBLASLT_MATMUL_DESC_ALPHA_VECTOR_BATCH_STRIDE",
    "CUBLASLT_EPILOGUE_RELU_AUX_BIAS",
    "CUBLASLT_EPILOGUE_RELU_AUX",
    "CUBLASLT_EPILOGUE_DRELU_BGRAD",
    "CUBLASLT_EPILOGUE_DRELU",
    "CUBLASLT_CLUSTER_SHAPE_END",
    "CUBLASLT_CLUSTER_SHAPE_AUTO",
    "CUBLASLT_CLUSTER_SHAPE_9x1x1",
    "CUBLASLT_CLUSTER_SHAPE_8x2x1",
    "CUBLASLT_CLUSTER_SHAPE_8x1x1",
    "CUBLASLT_CLUSTER_SHAPE_7x2x1",
    "CUBLASLT_CLUSTER_SHAPE_7x1x1",
    "CUBLASLT_CLUSTER_SHAPE_6x2x1",
    "CUBLASLT_CLUSTER_SHAPE_6x1x1",
    "CUBLASLT_CLUSTER_SHAPE_5x3x1",
    "CUBLASLT_CLUSTER_SHAPE_5x2x1",
    "CUBLASLT_CLUSTER_SHAPE_5x1x1",
    "CUBLASLT_CLUSTER_SHAPE_4x4x1",
    "CUBLASLT_CLUSTER_SHAPE_4x3x1",
    "CUBLASLT_CLUSTER_SHAPE_4x2x1",
    "CUBLASLT_CLUSTER_SHAPE_4x1x1",
    "CUBLASLT_CLUSTER_SHAPE_3x5x1",
    "CUBLASLT_CLUSTER_SHAPE_3x4x1",
    "CUBLASLT_CLUSTER_SHAPE_3x3x1",
    "CUBLASLT_CLUSTER_SHAPE_3x2x1",
    "CUBLASLT_CLUSTER_SHAPE_3x1x1",
    "CUBLASLT_CLUSTER_SHAPE_2x8x1",
    "CUBLASLT_CLUSTER_SHAPE_2x7x1",
    "CUBLASLT_CLUSTER_SHAPE_2x6x1",
    "CUBLASLT_CLUSTER_SHAPE_2x5x1",
    "CUBLASLT_CLUSTER_SHAPE_2x4x1",
    "CUBLASLT_CLUSTER_SHAPE_2x3x1",
    "CUBLASLT_CLUSTER_SHAPE_2x2x1",
    "CUBLASLT_CLUSTER_SHAPE_2x1x1",
    "CUBLASLT_CLUSTER_SHAPE_1x9x1",
    "CUBLASLT_CLUSTER_SHAPE_1x8x1",
    "CUBLASLT_CLUSTER_SHAPE_1x7x1",
    "CUBLASLT_CLUSTER_SHAPE_1x6x1",
    "CUBLASLT_CLUSTER_SHAPE_1x5x1",
    "CUBLASLT_CLUSTER_SHAPE_1x4x1",
    "CUBLASLT_CLUSTER_SHAPE_1x3x1",
    "CUBLASLT_CLUSTER_SHAPE_1x2x1",
    "CUBLASLT_CLUSTER_SHAPE_1x1x1",
    "CUBLASLT_CLUSTER_SHAPE_1x16x1",
    "CUBLASLT_CLUSTER_SHAPE_1x15x1",
    "CUBLASLT_CLUSTER_SHAPE_1x14x1",
    "CUBLASLT_CLUSTER_SHAPE_1x13x1",
    "CUBLASLT_CLUSTER_SHAPE_1x12x1",
    "CUBLASLT_CLUSTER_SHAPE_1x11x1",
    "CUBLASLT_CLUSTER_SHAPE_1x10x1",
    "CUBLASLT_CLUSTER_SHAPE_16x1x1",
    "CUBLASLT_CLUSTER_SHAPE_15x1x1",
    "CUBLASLT_CLUSTER_SHAPE_14x1x1",
    "CUBLASLT_CLUSTER_SHAPE_13x1x1",
    "CUBLASLT_CLUSTER_SHAPE_12x1x1",
    "CUBLASLT_CLUSTER_SHAPE_11x1x1",
    "CUBLASLT_CLUSTER_SHAPE_10x1x1",
    "CUBLASLT_ALGO_CONFIG_TILE_ID",
    "CUBLASLT_ALGO_CONFIG_STAGES_ID",
    "CUBLASLT_ALGO_CONFIG_SPLITK_NUM",
    "CUBLASLT_ALGO_CONFIG_REDUCTION_SCHEME",
    "CUBLASLT_ALGO_CONFIG_INNER_SHAPE_ID",
    "CUBLASLT_ALGO_CONFIG_ID",
    "CUBLASLT_ALGO_CONFIG_CUSTOM_OPTION",
    "CUBLASLT_ALGO_CONFIG_CTA_SWIZZLING",
    "CUBLASLT_ALGO_CONFIG_CLUSTER_SHAPE_ID",
    "CUBLASLT_ALGO_CAP_UPLO_SUPPORT",
    "CUBLASLT_ALGO_CAP_TILE_IDS",
    "CUBLASLT_ALGO_CAP_STRIDED_BATCH_SUPPORT",
    "CUBLASLT_ALGO_CAP_STAGES_IDS",
    "CUBLASLT_ALGO_CAP_SPLITK_SUPPORT",
    "CUBLASLT_ALGO_CAP_REDUCTION_SCHEME_MASK",
    "CUBLASLT_ALGO_CAP_POINTER_MODE_MASK",
    "CUBLASLT_ALGO_CAP_OUT_OF_PLACE_RESULT_SUPPORT",
    "CUBLASLT_ALGO_CAP_NUMERICAL_IMPL_FLAGS",
    "CUBLASLT_ALGO_CAP_MIN_ALIGNMENT_D_BYTES",
    "CUBLASLT_ALGO_CAP_MIN_ALIGNMENT_C_BYTES",
    "CUBLASLT_ALGO_CAP_MIN_ALIGNMENT_B_BYTES",
    "CUBLASLT_ALGO_CAP_MIN_ALIGNMENT_A_BYTES",
    "CUBLASLT_ALGO_CAP_LD_NEGATIVE",
    "CUBLASLT_ALGO_CAP_EPILOGUE_MASK",
    "CUBLASLT_ALGO_CAP_CUSTOM_OPTION_MAX",
    "CUBLASLT_ALGO_CAP_CUSTOM_MEMORY_ORDER",
    "CUBLASLT_ALGO_CAP_CTA_SWIZZLING_SUPPORT",
    "CUBLASLT_ALGO_CAP_ATOMIC_SYNC"
);

sub warnHipOnlyUnsupportedFunctions {
    my $line_num = shift;
    my $k = 0;
    foreach $func (@HipOnlyUnsupportedFunctions)
    {
        my $mt = m/\b($func)\b/g;
        if ($mt) {
            $k += $mt;
            print STDERR "  $fileName:$line_num: warning: unsupported HIP identifier: $func\n";
        }
    }
    return $k;
}

@RocOnlyUnsupportedFunctions = (
    "cutensorWriteKernelCacheToFile",
    "cutensorTensorDescriptor",
    "cutensorReduce",
    "cutensorReadKernelCacheFromFile",
    "cutensorPlanPreferenceSetAttribute",
    "cutensorPlanPreferenceAttribute_t",
    "cutensorPlanGetAttribute",
    "cutensorPlanAttribute_t",
    "cutensorPlan",
    "cutensorPermute",
    "cutensorOperationDescriptorSetAttribute",
    "cutensorOperationDescriptorGetAttribute",
    "cutensorOperationDescriptorAttribute_t",
    "cutensorMgTensorDescriptor_t",
    "cutensorMgTensorDescriptor_s",
    "cutensorMgHostDevice_t",
    "cutensorMgHandle_t",
    "cutensorMgHandle_s",
    "cutensorMgDestroyTensorDescriptor",
    "cutensorMgDestroyCopyPlan",
    "cutensorMgDestroyCopyDescriptor",
    "cutensorMgDestroyContractionPlan",
    "cutensorMgDestroyContractionFind",
    "cutensorMgDestroyContractionDescriptor",
    "cutensorMgDestroy",
    "cutensorMgCreateTensorDescriptor",
    "cutensorMgCreateCopyPlan",
    "cutensorMgCreateCopyDescriptor",
    "cutensorMgCreateContractionPlan",
    "cutensorMgCreateContractionFind",
    "cutensorMgCreateContractionDescriptor",
    "cutensorMgCreate",
    "cutensorMgCopyPlan_t",
    "cutensorMgCopyPlan_s",
    "cutensorMgCopyGetWorkspace",
    "cutensorMgCopyDescriptor_t",
    "cutensorMgCopyDescriptor_s",
    "cutensorMgCopy",
    "cutensorMgContractionPlan_t",
    "cutensorMgContractionPlan_s",
    "cutensorMgContractionGetWorkspace",
    "cutensorMgContractionFind_t",
    "cutensorMgContractionFind_s",
    "cutensorMgContractionFindSetAttribute",
    "cutensorMgContractionFindAttribute_t",
    "cutensorMgContractionDescriptor_t",
    "cutensorMgContractionDescriptor_s",
    "cutensorMgContraction",
    "cutensorMgAlgo_t",
    "cutensorJitMode_t",
    "cutensorHandleWritePlanCacheToFile",
    "cutensorHandleResizePlanCache",
    "cutensorHandleReadPlanCacheFromFile",
    "cutensorHandle",
    "cutensorGetVersion",
    "cutensorEstimateWorkspaceSize",
    "cutensorElementwiseTrinaryExecute",
    "cutensorElementwiseBinaryExecute",
    "cutensorDestroyTensorDescriptor",
    "cutensorDestroyPlanPreference",
    "cutensorDestroyPlan",
    "cutensorDestroyOperationDescriptor",
    "cutensorCreateTensorDescriptor",
    "cutensorCreateReduction",
    "cutensorCreatePlanPreference",
    "cutensorCreatePlan",
    "cutensorCreatePermutation",
    "cutensorCreateElementwiseTrinary",
    "cutensorCreateElementwiseBinary",
    "cutensorCreateContraction",
    "cutensorCacheMode_t",
    "cutensorAutotuneMode_t",
    "cusparseZhybsv_solve",
    "cusparseZhybsv_analysis",
    "cusparseZhyb2dense",
    "cusparseZhyb2csr",
    "cusparseZhyb2csc",
    "cusparseZgtsv_nopivot",
    "cusparseZgtsvStridedBatch",
    "cusparseZgtsv",
    "cusparseZgemmi",
    "cusparseZgebsr2gebsr_bufferSizeExt",
    "cusparseZgebsr2gebsc_bufferSizeExt",
    "cusparseZdense2hyb",
    "cusparseZcsru2csr_bufferSizeExt",
    "cusparseZcsru2csr",
    "cusparseZcsrsv_solve",
    "cusparseZcsrsv_analysis",
    "cusparseZcsrsm_solve",
    "cusparseZcsrsm_analysis",
    "cusparseZcsrmv_mp",
    "cusparseZcsrilu0",
    "cusparseZcsric0",
    "cusparseZcsrgemm",
    "cusparseZcsrgeam2_bufferSizeExt",
    "cusparseZcsr2gebsr_bufferSizeExt",
    "cusparseZcsr2csru",
    "cusparseZcsr2csc",
    "cusparseZcsc2hyb",
    "cusparseZbsrsm2_bufferSizeExt",
    "cusparseZbsrilu02_bufferSizeExt",
    "cusparseZbsric02_bufferSizeExt",
    "cusparseXgebsr2csr",
    "cusparseXcsrgemmNnz",
    "cusparseSpSV_updateMatrix",
    "cusparseSpSV_solve",
    "cusparseSpSV_destroyDescr",
    "cusparseSpSV_createDescr",
    "cusparseSpSV_analysis",
    "cusparseSpSVUpdate_t",
    "cusparseSpSVDescr_t",
    "cusparseSpSVDescr",
    "cusparseSpSM_updateMatrix",
    "cusparseSpSM_destroyDescr",
    "cusparseSpSM_createDescr",
    "cusparseSpSM_bufferSize",
    "cusparseSpSMUpdate_t",
    "cusparseSpSMDescr_t",
    "cusparseSpSMDescr",
    "cusparseSpMatSetNumBatches",
    "cusparseSpMatGetNumBatches",
    "cusparseSpMV_preprocess",
    "cusparseSpMMOp_destroyPlan",
    "cusparseSpMMOp_createPlan",
    "cusparseSpMMOpPlan_t",
    "cusparseSpMMOpPlan",
    "cusparseSpMMOpAlg_t",
    "cusparseSpMMOp",
    "cusparseSpGEMMreuse_workEstimation",
    "cusparseSpGEMMreuse_nnz",
    "cusparseSpGEMMreuse_copy",
    "cusparseSpGEMMreuse_compute",
    "cusparseSpGEMM_workEstimation",
    "cusparseSpGEMM_getNumProducts",
    "cusparseSpGEMM_estimateMemory",
    "cusparseSpGEMM_destroyDescr",
    "cusparseSpGEMM_createDescr",
    "cusparseSpGEMM_copy",
    "cusparseSpGEMM_compute",
    "cusparseSpGEMMDescr_t",
    "cusparseSpGEMMDescr",
    "cusparseSolveAnalysisInfo_t",
    "cusparseSolveAnalysisInfo",
    "cusparseSideMode_t",
    "cusparseShybsv_solve",
    "cusparseShybsv_analysis",
    "cusparseShyb2dense",
    "cusparseShyb2csr",
    "cusparseShyb2csc",
    "cusparseSgtsv_nopivot",
    "cusparseSgtsvStridedBatch",
    "cusparseSgtsv",
    "cusparseSgemmi",
    "cusparseSgebsr2gebsr_bufferSizeExt",
    "cusparseSgebsr2gebsc_bufferSizeExt",
    "cusparseSdense2hyb",
    "cusparseScsru2csr_bufferSizeExt",
    "cusparseScsru2csr",
    "cusparseScsrsv_solve",
    "cusparseScsrsv_analysis",
    "cusparseScsrsm_solve",
    "cusparseScsrsm_analysis",
    "cusparseScsrmv_mp",
    "cusparseScsrilu0",
    "cusparseScsric0",
    "cusparseScsrgemm",
    "cusparseScsrgeam2_bufferSizeExt",
    "cusparseScsr2gebsr_bufferSizeExt",
    "cusparseScsr2csru",
    "cusparseScsr2csc",
    "cusparseScsc2hyb",
    "cusparseSbsrsm2_bufferSizeExt",
    "cusparseSbsrilu02_bufferSizeExt",
    "cusparseSbsric02_bufferSizeExt",
    "cusparseLoggerSetMask",
    "cusparseLoggerSetLevel",
    "cusparseLoggerSetFile",
    "cusparseLoggerSetCallback",
    "cusparseLoggerOpenFile",
    "cusparseLoggerForceDisable",
    "cusparseLoggerCallback_t",
    "cusparseHpruneDense2csr_bufferSizeExt",
    "cusparseHpruneDense2csrNnzByPercentage",
    "cusparseHpruneDense2csrNnz",
    "cusparseHpruneDense2csrByPercentage_bufferSizeExt",
    "cusparseHpruneDense2csrByPercentage",
    "cusparseHpruneDense2csr",
    "cusparseHpruneCsr2csr_bufferSizeExt",
    "cusparseHpruneCsr2csrNnzByPercentage",
    "cusparseHpruneCsr2csrNnz",
    "cusparseHpruneCsr2csrByPercentage_bufferSizeExt",
    "cusparseHpruneCsr2csrByPercentage",
    "cusparseHpruneCsr2csr",
    "cusparseGetLevelInfo",
    "cusparseDhybsv_solve",
    "cusparseDhybsv_analysis",
    "cusparseDhyb2dense",
    "cusparseDhyb2csr",
    "cusparseDhyb2csc",
    "cusparseDgtsv_nopivot",
    "cusparseDgtsvStridedBatch",
    "cusparseDgtsv",
    "cusparseDgemmi",
    "cusparseDgebsr2gebsr_bufferSizeExt",
    "cusparseDgebsr2gebsc_bufferSizeExt",
    "cusparseDestroySolveAnalysisInfo",
    "cusparseDestroyCsru2csrInfo",
    "cusparseDenseToSparse_convert",
    "cusparseDdense2hyb",
    "cusparseDcsru2csr_bufferSizeExt",
    "cusparseDcsru2csr",
    "cusparseDcsrsv_solve",
    "cusparseDcsrsv_analysis",
    "cusparseDcsrsm_solve",
    "cusparseDcsrsm_analysis",
    "cusparseDcsrmv_mp",
    "cusparseDcsrilu0",
    "cusparseDcsric0",
    "cusparseDcsrgemm",
    "cusparseDcsrgeam2_bufferSizeExt",
    "cusparseDcsr2gebsr_bufferSizeExt",
    "cusparseDcsr2csru",
    "cusparseDcsr2csc",
    "cusparseDcsc2hyb",
    "cusparseDbsrsm2_bufferSizeExt",
    "cusparseDbsrilu02_bufferSizeExt",
    "cusparseDbsric02_bufferSizeExt",
    "cusparseCsrsv_solveEx",
    "cusparseCsrsv_analysisEx",
    "cusparseCsrmvEx_bufferSize",
    "cusparseCsrmvEx",
    "cusparseCsrilu0Ex",
    "cusparseCsr2cscEx2",
    "cusparseCsr2cscEx",
    "cusparseCsr2CscAlg_t",
    "cusparseCreateSolveAnalysisInfo",
    "cusparseCreateSlicedEll",
    "cusparseCreateCsru2csrInfo",
    "cusparseCreateConstSlicedEll",
    "cusparseCreateConstBsr",
    "cusparseCreateBsr",
    "cusparseConstrainedGeMM_bufferSize",
    "cusparseConstrainedGeMM",
    "cusparseColorAlg_t",
    "cusparseChybsv_solve",
    "cusparseChybsv_analysis",
    "cusparseChyb2dense",
    "cusparseChyb2csr",
    "cusparseChyb2csc",
    "cusparseCgtsv_nopivot",
    "cusparseCgtsvStridedBatch",
    "cusparseCgtsv",
    "cusparseCgemmi",
    "cusparseCgebsr2gebsr_bufferSizeExt",
    "cusparseCgebsr2gebsc_bufferSizeExt",
    "cusparseCdense2hyb",
    "cusparseCcsru2csr_bufferSizeExt",
    "cusparseCcsru2csr",
    "cusparseCcsrsv_solve",
    "cusparseCcsrsv_analysis",
    "cusparseCcsrsm_solve",
    "cusparseCcsrsm_analysis",
    "cusparseCcsrmv_mp",
    "cusparseCcsrilu0",
    "cusparseCcsric0",
    "cusparseCcsrgemm",
    "cusparseCcsrgeam2_bufferSizeExt",
    "cusparseCcsr2gebsr_bufferSizeExt",
    "cusparseCcsr2csru",
    "cusparseCcsr2csc",
    "cusparseCcsc2hyb",
    "cusparseCbsrsm2_bufferSizeExt",
    "cusparseCbsrilu02_bufferSizeExt",
    "cusparseCbsric02_bufferSizeExt",
    "cusparseBsrSetStridedBatch",
    "cusparseAlgMode_t",
    "curand_mtgp32_specific",
    "curand_mtgp32_single_specific",
    "curand_mtgp32_single",
    "curand_Philox4x32_10",
    "curandState_t",
    "curandStateXORWOW_t",
    "curandStateXORWOW",
    "curandState",
    "curandMethod_t",
    "curandMethod",
    "curandHistogramM2_t",
    "curandHistogramM2_st",
    "curandHistogramM2V_t",
    "curandHistogramM2V_st",
    "curandHistogramM2K_t",
    "curandHistogramM2K_st",
    "curandGetProperty",
    "curandDistribution_t",
    "curandDistribution_st",
    "curandDistributionShift_t",
    "curandDistributionShift_st",
    "curandDistributionM2Shift_t",
    "curandDistributionM2Shift_st",
    "curandDirectionVectors64_t",
    "curandDirectionVectors32_t",
    "cublasZtrttp",
    "cublasZtpttr",
    "cublasZmatinvBatched",
    "cublasZgetrsBatched",
    "cublasZgetriBatched",
    "cublasZgetrfBatched",
    "cublasZgeqrfBatched",
    "cublasZgemm3m_64",
    "cublasZgemm3m",
    "cublasZgelsBatched",
    "cublasXerbla",
    "cublasUint8gemmBias",
    "cublasSwapEx_64",
    "cublasSwapEx",
    "cublasStrttp",
    "cublasStpttr",
    "cublasSmatinvBatched",
    "cublasShutdown",
    "cublasSgetrsBatched",
    "cublasSgetriBatched",
    "cublasSgetrfBatched",
    "cublasSgeqrfBatched",
    "cublasSgemmGroupedBatched_64",
    "cublasSgemmGroupedBatched",
    "cublasSgemmEx_64",
    "cublasSgemmEx",
    "cublasSgelsBatched",
    "cublasSetVector_64",
    "cublasSetVectorAsync_64",
    "cublasSetSmCountTarget",
    "cublasSetMatrix_64",
    "cublasSetMatrixAsync_64",
    "cublasSetLoggerCallback",
    "cublasSetKernelStream",
    "cublasRotmgEx",
    "cublasRotmEx_64",
    "cublasRotmEx",
    "cublasRotgEx",
    "cublasMigrateComputeType",
    "cublasLtReductionScheme_t",
    "cublasLtPointerMode_t",
    "cublasLtPointerModeMask_t",
    "cublasLtOrder_t",
    "cublasLtNumericalImplFlags_t",
    "cublasLtMatrixTransformDescSetAttribute",
    "cublasLtMatrixTransformDescInit",
    "cublasLtMatrixTransformDescGetAttribute",
    "cublasLtMatrixTransformDescDestroy",
    "cublasLtMatrixTransformDescCreate",
    "cublasLtMatrixTransformDescAttributes_t",
    "cublasLtMatrixTransform",
    "cublasLtMatrixLayoutSetAttribute",
    "cublasLtMatrixLayoutInit",
    "cublasLtMatrixLayoutGetAttribute",
    "cublasLtMatrixLayoutDestroy",
    "cublasLtMatrixLayoutCreate",
    "cublasLtMatrixLayoutAttribute_t",
    "cublasLtMatmulTile_t",
    "cublasLtMatmulStages_t",
    "cublasLtMatmulSearch_t",
    "cublasLtMatmulPreferenceSetAttribute",
    "cublasLtMatmulPreferenceInit",
    "cublasLtMatmulPreferenceGetAttribute",
    "cublasLtMatmulPreferenceDestroy",
    "cublasLtMatmulPreferenceCreate",
    "cublasLtMatmulPreferenceAttributes_t",
    "cublasLtMatmulInnerShape_t",
    "cublasLtMatmulHeuristicResult_t",
    "cublasLtMatmulDescSetAttribute",
    "cublasLtMatmulDescInit",
    "cublasLtMatmulDescGetAttribute",
    "cublasLtMatmulDescDestroy",
    "cublasLtMatmulDescCreate",
    "cublasLtMatmulDescAttributes_t",
    "cublasLtMatmulAlgoInit",
    "cublasLtMatmulAlgoGetIds",
    "cublasLtMatmulAlgoGetHeuristic",
    "cublasLtMatmulAlgoConfigSetAttribute",
    "cublasLtMatmulAlgoConfigGetAttribute",
    "cublasLtMatmulAlgoConfigAttributes_t",
    "cublasLtMatmulAlgoCheck",
    "cublasLtMatmulAlgoCapGetAttribute",
    "cublasLtMatmulAlgoCapAttributes_t",
    "cublasLtMatmul",
    "cublasLtLoggerSetMask",
    "cublasLtLoggerSetLevel",
    "cublasLtLoggerSetFile",
    "cublasLtLoggerSetCallback",
    "cublasLtLoggerOpenFile",
    "cublasLtLoggerForceDisable",
    "cublasLtLoggerCallback_t",
    "cublasLtHeuristicsCacheSetCapacity",
    "cublasLtHeuristicsCacheGetCapacity",
    "cublasLtGetVersion",
    "cublasLtGetStatusString",
    "cublasLtGetStatusName",
    "cublasLtGetProperty",
    "cublasLtGetCudartVersion",
    "cublasLtEpilogue_t",
    "cublasLtDisableCpuInstructionsSetMask",
    "cublasLtContext",
    "cublasLtClusterShape_t",
    "cublasLoggerConfigure",
    "cublasLogCallback",
    "cublasIaminEx_64",
    "cublasIaminEx",
    "cublasIamaxEx_64",
    "cublasIamaxEx",
    "cublasGetVersion_v2",
    "cublasGetVersion",
    "cublasGetVector_64",
    "cublasGetVectorAsync_64",
    "cublasGetStatusName",
    "cublasGetSmCountTarget",
    "cublasGetProperty",
    "cublasGetMatrix_64",
    "cublasGetMatrixAsync_64",
    "cublasGetLoggerCallback",
    "cublasGetError",
    "cublasGetCudartVersion",
    "cublasGemmStridedBatchedEx_64",
    "cublasGemmGroupedBatchedEx_64",
    "cublasGemmGroupedBatchedEx",
    "cublasGemmEx_64",
    "cublasGemmBatchedEx_64",
    "cublasFree",
    "cublasDtrttp",
    "cublasDtpttr",
    "cublasDmatinvBatched",
    "cublasDgetrsBatched",
    "cublasDgetriBatched",
    "cublasDgetrfBatched",
    "cublasDgeqrfBatched",
    "cublasDgemmGroupedBatched_64",
    "cublasDgemmGroupedBatched",
    "cublasDgelsBatched",
    "cublasCtrttp",
    "cublasCtpttr",
    "cublasCsyrkEx_64",
    "cublasCsyrkEx",
    "cublasCsyrk3mEx_64",
    "cublasCsyrk3mEx",
    "cublasCopyEx_64",
    "cublasCopyEx",
    "cublasCmatinvBatched",
    "cublasCherkEx_64",
    "cublasCherkEx",
    "cublasCherk3mEx_64",
    "cublasCherk3mEx",
    "cublasCgetrsBatched",
    "cublasCgetriBatched",
    "cublasCgetrfBatched",
    "cublasCgeqrfBatched",
    "cublasCgemmEx_64",
    "cublasCgemmEx",
    "cublasCgemm3m_64",
    "cublasCgemm3mStridedBatched_64",
    "cublasCgemm3mStridedBatched",
    "cublasCgemm3mEx_64",
    "cublasCgemm3mEx",
    "cublasCgemm3mBatched_64",
    "cublasCgemm3mBatched",
    "cublasCgemm3m",
    "cublasCgelsBatched",
    "cublasAsumEx_64",
    "cublasAsumEx",
    "cublasAlloc",
    "csru2csrInfo_t",
    "csru2csrInfo",
    "__curand_umul",
    "CUTENSOR_WORKSPACE_DEFAULT",
    "CUTENSOR_STATUS_MAPPING_ERROR",
    "CUTENSOR_STATUS_LICENSE_ERROR",
    "CUTENSOR_STATUS_CUDA_ERROR",
    "CUTENSOR_STATUS_CUBLAS_ERROR",
    "CUTENSOR_R_MIN_TF32",
    "CUTENSOR_R_MIN_8U",
    "CUTENSOR_R_MIN_8I",
    "CUTENSOR_R_MIN_64F",
    "CUTENSOR_R_MIN_32U",
    "CUTENSOR_R_MIN_32I",
    "CUTENSOR_R_MIN_32F",
    "CUTENSOR_R_MIN_16F",
    "CUTENSOR_R_MIN_16BF",
    "CUTENSOR_R_64U",
    "CUTENSOR_R_64I",
    "CUTENSOR_R_4U",
    "CUTENSOR_R_4I",
    "CUTENSOR_R_16U",
    "CUTENSOR_R_16I",
    "CUTENSOR_PLAN_REQUIRED_WORKSPACE",
    "CUTENSOR_PLAN_PREFERENCE_KERNEL_RANK",
    "CUTENSOR_PLAN_PREFERENCE_JIT",
    "CUTENSOR_PLAN_PREFERENCE_INCREMENTAL_COUNT",
    "CUTENSOR_PLAN_PREFERENCE_CACHE_MODE",
    "CUTENSOR_PLAN_PREFERENCE_AUTOTUNE_MODE",
    "CUTENSOR_PLAN_PREFERENCE_ALGO",
    "CUTENSOR_OP_TANH",
    "CUTENSOR_OP_TAN",
    "CUTENSOR_OP_SWISH",
    "CUTENSOR_OP_SOFT_SIGN",
    "CUTENSOR_OP_SOFT_PLUS",
    "CUTENSOR_OP_SINH",
    "CUTENSOR_OP_SIN",
    "CUTENSOR_OP_SIGMOID",
    "CUTENSOR_OP_RELU",
    "CUTENSOR_OP_RCP",
    "CUTENSOR_OP_NEG",
    "CUTENSOR_OP_MISH",
    "CUTENSOR_OP_LOG",
    "CUTENSOR_OP_FLOOR",
    "CUTENSOR_OP_EXP",
    "CUTENSOR_OP_COSH",
    "CUTENSOR_OP_COS",
    "CUTENSOR_OP_CONJ",
    "CUTENSOR_OP_CEIL",
    "CUTENSOR_OP_ATANH",
    "CUTENSOR_OP_ATAN",
    "CUTENSOR_OP_ASINH",
    "CUTENSOR_OP_ASIN",
    "CUTENSOR_OP_ACOSH",
    "CUTENSOR_OP_ACOS",
    "CUTENSOR_OP_ABS",
    "CUTENSOR_OPERATION_DESCRIPTOR_TAG",
    "CUTENSOR_OPERATION_DESCRIPTOR_SCALAR_TYPE",
    "CUTENSOR_OPERATION_DESCRIPTOR_PADDING_VALUE",
    "CUTENSOR_OPERATION_DESCRIPTOR_PADDING_RIGHT",
    "CUTENSOR_OPERATION_DESCRIPTOR_PADDING_LEFT",
    "CUTENSOR_OPERATION_DESCRIPTOR_MOVED_BYTES",
    "CUTENSOR_OPERATION_DESCRIPTOR_FLOPS",
    "CUTENSOR_MG_DEVICE_HOST_PINNED",
    "CUTENSOR_MG_DEVICE_HOST",
    "CUTENSOR_JIT_MODE_NONE",
    "CUTENSOR_JIT_MODE_DEFAULT",
    "CUTENSOR_C_MIN_TF32",
    "CUTENSOR_C_MIN_64F",
    "CUTENSOR_C_MIN_32F",
    "CUTENSOR_C_MIN_16F",
    "CUTENSOR_C_8U",
    "CUTENSOR_C_8I",
    "CUTENSOR_C_64U",
    "CUTENSOR_C_64I",
    "CUTENSOR_C_4U",
    "CUTENSOR_C_4I",
    "CUTENSOR_C_32U",
    "CUTENSOR_C_32I",
    "CUTENSOR_C_16U",
    "CUTENSOR_C_16I",
    "CUTENSOR_C_16F",
    "CUTENSOR_C_16BF",
    "CUTENSOR_COMPUTE_TF32",
    "CUTENSOR_COMPUTE_3XTF32",
    "CUTENSOR_CACHE_MODE_PEDANTIC",
    "CUTENSOR_CACHE_MODE_NONE",
    "CUTENSOR_AUTOTUNE_MODE_NONE",
    "CUTENSOR_AUTOTUNE_MODE_INCREMENTAL",
    "CUTENSOR_ALGO_TTGT",
    "CUTENSOR_ALGO_TGETT",
    "CUTENSOR_ALGO_GETT",
    "CUTENSORMG_CONTRACTION_FIND_ATTRIBUTE_MAX",
    "CUTENSORMG_ALGO_DEFAULT",
    "CUSPARSE_STATUS_MATRIX_TYPE_NOT_SUPPORTED",
    "CUSPARSE_STATUS_MAPPING_ERROR",
    "CUSPARSE_STATUS_INSUFFICIENT_RESOURCES",
    "CUSPARSE_STATUS_EXECUTION_FAILED",
    "CUSPARSE_SPSV_UPDATE_GENERAL",
    "CUSPARSE_SPSV_UPDATE_DIAGONAL",
    "CUSPARSE_SPSM_UPDATE_GENERAL",
    "CUSPARSE_SPSM_UPDATE_DIAGONAL",
    "CUSPARSE_SPMM_OP_ALG_DEFAULT",
    "CUSPARSE_SPMM_COO_ALG4",
    "CUSPARSE_SPMM_BSR_ALG1",
    "CUSPARSE_SPMMA_PREPROCESS",
    "CUSPARSE_SPMMA_ALG4",
    "CUSPARSE_SPMMA_ALG3",
    "CUSPARSE_SPMMA_ALG2",
    "CUSPARSE_SPMMA_ALG1",
    "CUSPARSE_SPGEMM_CSR_ALG_NONDETERMINITIC",
    "CUSPARSE_SPGEMM_CSR_ALG_DETERMINITIC",
    "CUSPARSE_SPGEMM_ALG3",
    "CUSPARSE_SPGEMM_ALG2",
    "CUSPARSE_SPGEMM_ALG1",
    "CUSPARSE_SIDE_RIGHT",
    "CUSPARSE_SIDE_LEFT",
    "CUSPARSE_MV_ALG_DEFAULT",
    "CUSPARSE_MM_ALG_DEFAULT",
    "CUSPARSE_CSRMV_ALG2",
    "CUSPARSE_CSRMV_ALG1",
    "CUSPARSE_CSRMM_ALG1",
    "CUSPARSE_CSR2CSC_ALG_DEFAULT",
    "CUSPARSE_CSR2CSC_ALG2",
    "CUSPARSE_CSR2CSC_ALG1",
    "CUSPARSE_COOMV_ALG",
    "CUSPARSE_COOMM_ALG3",
    "CUSPARSE_COOMM_ALG2",
    "CUSPARSE_COOMM_ALG1",
    "CUSPARSE_COLOR_ALG1",
    "CUSPARSE_COLOR_ALG0",
    "CUSPARSE_ALG_NAIVE",
    "CUSPARSE_ALG_MERGE_PATH",
    "CUSPARSE_ALG1",
    "CUSPARSE_ALG0",
    "CURAND_STATUS_PREEXISTING_FAILURE",
    "CURAND_STATUS_INITIALIZATION_FAILED",
    "CURAND_STATUS_ARCH_MISMATCH",
    "CURAND_RNG_TEST",
    "CURAND_REJECTION",
    "CURAND_POISSON",
    "CURAND_M2",
    "CURAND_M1",
    "CURAND_KNUTH",
    "CURAND_ITR",
    "CURAND_HITR",
    "CURAND_FAST_REJECTION",
    "CURAND_DISCRETE_GAUSS",
    "CURAND_DEVICE_API",
    "CURAND_DEFINITION",
    "CURAND_CHOOSE_BEST",
    "CURAND_BINARY_SEARCH",
    "CURAND_3RD",
    "CUDA_R_8F_E5M2",
    "CUDA_R_8F_E4M3",
    "CUDA_R_64U",
    "CUDA_R_64I",
    "CUDA_R_4U",
    "CUDA_R_4I",
    "CUDA_R_16U",
    "CUDA_R_16I",
    "CUDA_C_64U",
    "CUDA_C_64I",
    "CUDA_C_4U",
    "CUDA_C_4I",
    "CUDA_C_16U",
    "CUDA_C_16I",
    "CUBLAS_TF32_TENSOR_OP_MATH",
    "CUBLAS_TENSOR_OP_MATH",
    "CUBLAS_STATUS_LICENSE_ERROR",
    "CUBLAS_PEDANTIC_MATH",
    "CUBLAS_OP_CONJG",
    "CUBLAS_MATH_DISALLOW_REDUCED_PRECISION_REDUCTION",
    "CUBLAS_GEMM_DFALT_TENSOR_OP",
    "CUBLAS_GEMM_DEFAULT_TENSOR_OP",
    "CUBLAS_GEMM_ALGO9_TENSOR_OP",
    "CUBLAS_GEMM_ALGO9",
    "CUBLAS_GEMM_ALGO8_TENSOR_OP",
    "CUBLAS_GEMM_ALGO8",
    "CUBLAS_GEMM_ALGO7_TENSOR_OP",
    "CUBLAS_GEMM_ALGO7",
    "CUBLAS_GEMM_ALGO6_TENSOR_OP",
    "CUBLAS_GEMM_ALGO6",
    "CUBLAS_GEMM_ALGO5_TENSOR_OP",
    "CUBLAS_GEMM_ALGO5",
    "CUBLAS_GEMM_ALGO4_TENSOR_OP",
    "CUBLAS_GEMM_ALGO4",
    "CUBLAS_GEMM_ALGO3_TENSOR_OP",
    "CUBLAS_GEMM_ALGO3",
    "CUBLAS_GEMM_ALGO2_TENSOR_OP",
    "CUBLAS_GEMM_ALGO23",
    "CUBLAS_GEMM_ALGO22",
    "CUBLAS_GEMM_ALGO21",
    "CUBLAS_GEMM_ALGO20",
    "CUBLAS_GEMM_ALGO2",
    "CUBLAS_GEMM_ALGO1_TENSOR_OP",
    "CUBLAS_GEMM_ALGO19",
    "CUBLAS_GEMM_ALGO18",
    "CUBLAS_GEMM_ALGO17",
    "CUBLAS_GEMM_ALGO16",
    "CUBLAS_GEMM_ALGO15_TENSOR_OP",
    "CUBLAS_GEMM_ALGO15",
    "CUBLAS_GEMM_ALGO14_TENSOR_OP",
    "CUBLAS_GEMM_ALGO14",
    "CUBLAS_GEMM_ALGO13_TENSOR_OP",
    "CUBLAS_GEMM_ALGO13",
    "CUBLAS_GEMM_ALGO12_TENSOR_OP",
    "CUBLAS_GEMM_ALGO12",
    "CUBLAS_GEMM_ALGO11_TENSOR_OP",
    "CUBLAS_GEMM_ALGO11",
    "CUBLAS_GEMM_ALGO10_TENSOR_OP",
    "CUBLAS_GEMM_ALGO10",
    "CUBLAS_GEMM_ALGO1",
    "CUBLAS_GEMM_ALGO0_TENSOR_OP",
    "CUBLAS_GEMM_ALGO0",
    "CUBLAS_COMPUTE_64F_PEDANTIC",
    "CUBLAS_COMPUTE_64F",
    "CUBLAS_COMPUTE_32I_PEDANTIC",
    "CUBLAS_COMPUTE_32I",
    "CUBLAS_COMPUTE_32F_PEDANTIC",
    "CUBLAS_COMPUTE_32F_FAST_TF32",
    "CUBLAS_COMPUTE_32F_FAST_16F",
    "CUBLAS_COMPUTE_32F_FAST_16BF",
    "CUBLAS_COMPUTE_16F_PEDANTIC",
    "CUBLAS_COMPUTE_16F",
    "CUBLASLT_SEARCH_RESERVED_09",
    "CUBLASLT_SEARCH_RESERVED_08",
    "CUBLASLT_SEARCH_RESERVED_07",
    "CUBLASLT_SEARCH_RESERVED_06",
    "CUBLASLT_SEARCH_RESERVED_05",
    "CUBLASLT_SEARCH_RESERVED_04",
    "CUBLASLT_SEARCH_RESERVED_03",
    "CUBLASLT_SEARCH_RESERVED_02",
    "CUBLASLT_SEARCH_LIMITED_BY_ALGO_ID",
    "CUBLASLT_SEARCH_BEST_FIT",
    "CUBLASLT_REDUCTION_SCHEME_OUTPUT_TYPE",
    "CUBLASLT_REDUCTION_SCHEME_NONE",
    "CUBLASLT_REDUCTION_SCHEME_MASK",
    "CUBLASLT_REDUCTION_SCHEME_INPLACE",
    "CUBLASLT_REDUCTION_SCHEME_COMPUTE_TYPE",
    "CUBLASLT_POINTER_MODE_MASK_HOST",
    "CUBLASLT_POINTER_MODE_MASK_DEVICE_VECTOR",
    "CUBLASLT_POINTER_MODE_MASK_DEVICE",
    "CUBLASLT_POINTER_MODE_MASK_ALPHA_DEVICE_VECTOR_BETA_ZERO",
    "CUBLASLT_POINTER_MODE_MASK_ALPHA_DEVICE_VECTOR_BETA_HOST",
    "CUBLASLT_POINTER_MODE_HOST",
    "CUBLASLT_POINTER_MODE_DEVICE_VECTOR",
    "CUBLASLT_POINTER_MODE_DEVICE",
    "CUBLASLT_POINTER_MODE_ALPHA_DEVICE_VECTOR_BETA_ZERO",
    "CUBLASLT_ORDER_ROW",
    "CUBLASLT_ORDER_COL4_4R2_8C",
    "CUBLASLT_ORDER_COL32_2R_4R4",
    "CUBLASLT_ORDER_COL32",
    "CUBLASLT_ORDER_COL",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_TENSOR_OP_MASK",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_OP_TYPE_MASK",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_OP_INPUT_TYPE_MASK",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_TF32",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_8I",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_8F_E5M2",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_8F_E4M3",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_64F",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_32F",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_16F",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_INPUT_16BF",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_IMMA",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_HMMA",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_GAUSSIAN",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_FMA",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_DMMA",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_ACCUMULATOR_TYPE_MASK",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_ACCUMULATOR_64F",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_ACCUMULATOR_32I",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_ACCUMULATOR_32F",
    "CUBLASLT_NUMERICAL_IMPL_FLAGS_ACCUMULATOR_16F",
    "CUBLASLT_MATRIX_TRANSFORM_DESC_TRANSB",
    "CUBLASLT_MATRIX_TRANSFORM_DESC_TRANSA",
    "CUBLASLT_MATRIX_TRANSFORM_DESC_SCALE_TYPE",
    "CUBLASLT_MATRIX_TRANSFORM_DESC_POINTER_MODE",
    "CUBLASLT_MATRIX_LAYOUT_TYPE",
    "CUBLASLT_MATRIX_LAYOUT_STRIDED_BATCH_OFFSET",
    "CUBLASLT_MATRIX_LAYOUT_ROWS",
    "CUBLASLT_MATRIX_LAYOUT_PLANE_OFFSET",
    "CUBLASLT_MATRIX_LAYOUT_ORDER",
    "CUBLASLT_MATRIX_LAYOUT_LD",
    "CUBLASLT_MATRIX_LAYOUT_COLS",
    "CUBLASLT_MATRIX_LAYOUT_BATCH_COUNT",
    "CUBLASLT_MATMUL_TILE_UNDEFINED",
    "CUBLASLT_MATMUL_TILE_END",
    "CUBLASLT_MATMUL_TILE_96x64",
    "CUBLASLT_MATMUL_TILE_96x512",
    "CUBLASLT_MATMUL_TILE_96x448",
    "CUBLASLT_MATMUL_TILE_96x384",
    "CUBLASLT_MATMUL_TILE_96x320",
    "CUBLASLT_MATMUL_TILE_96x256",
    "CUBLASLT_MATMUL_TILE_96x192",
    "CUBLASLT_MATMUL_TILE_96x128",
    "CUBLASLT_MATMUL_TILE_8x8",
    "CUBLASLT_MATMUL_TILE_8x768",
    "CUBLASLT_MATMUL_TILE_8x704",
    "CUBLASLT_MATMUL_TILE_8x640",
    "CUBLASLT_MATMUL_TILE_8x64",
    "CUBLASLT_MATMUL_TILE_8x576",
    "CUBLASLT_MATMUL_TILE_8x512",
    "CUBLASLT_MATMUL_TILE_8x448",
    "CUBLASLT_MATMUL_TILE_8x384",
    "CUBLASLT_MATMUL_TILE_8x320",
    "CUBLASLT_MATMUL_TILE_8x32",
    "CUBLASLT_MATMUL_TILE_8x256",
    "CUBLASLT_MATMUL_TILE_8x192",
    "CUBLASLT_MATMUL_TILE_8x16",
    "CUBLASLT_MATMUL_TILE_8x128",
    "CUBLASLT_MATMUL_TILE_88x64",
    "CUBLASLT_MATMUL_TILE_88x512",
    "CUBLASLT_MATMUL_TILE_88x448",
    "CUBLASLT_MATMUL_TILE_88x384",
    "CUBLASLT_MATMUL_TILE_88x320",
    "CUBLASLT_MATMUL_TILE_88x256",
    "CUBLASLT_MATMUL_TILE_88x192",
    "CUBLASLT_MATMUL_TILE_88x128",
    "CUBLASLT_MATMUL_TILE_80x64",
    "CUBLASLT_MATMUL_TILE_80x576",
    "CUBLASLT_MATMUL_TILE_80x512",
    "CUBLASLT_MATMUL_TILE_80x448",
    "CUBLASLT_MATMUL_TILE_80x384",
    "CUBLASLT_MATMUL_TILE_80x320",
    "CUBLASLT_MATMUL_TILE_80x256",
    "CUBLASLT_MATMUL_TILE_80x192",
    "CUBLASLT_MATMUL_TILE_80x128",
    "CUBLASLT_MATMUL_TILE_768x80",
    "CUBLASLT_MATMUL_TILE_768x8",
    "CUBLASLT_MATMUL_TILE_768x72",
    "CUBLASLT_MATMUL_TILE_768x64",
    "CUBLASLT_MATMUL_TILE_768x56",
    "CUBLASLT_MATMUL_TILE_768x48",
    "CUBLASLT_MATMUL_TILE_768x40",
    "CUBLASLT_MATMUL_TILE_768x32",
    "CUBLASLT_MATMUL_TILE_768x24",
    "CUBLASLT_MATMUL_TILE_768x16",
    "CUBLASLT_MATMUL_TILE_760x64",
    "CUBLASLT_MATMUL_TILE_752x64",
    "CUBLASLT_MATMUL_TILE_744x64",
    "CUBLASLT_MATMUL_TILE_736x64",
    "CUBLASLT_MATMUL_TILE_72x640",
    "CUBLASLT_MATMUL_TILE_72x64",
    "CUBLASLT_MATMUL_TILE_72x576",
    "CUBLASLT_MATMUL_TILE_72x512",
    "CUBLASLT_MATMUL_TILE_72x448",
    "CUBLASLT_MATMUL_TILE_72x384",
    "CUBLASLT_MATMUL_TILE_72x320",
    "CUBLASLT_MATMUL_TILE_72x256",
    "CUBLASLT_MATMUL_TILE_72x192",
    "CUBLASLT_MATMUL_TILE_72x128",
    "CUBLASLT_MATMUL_TILE_728x64",
    "CUBLASLT_MATMUL_TILE_720x64",
    "CUBLASLT_MATMUL_TILE_712x64",
    "CUBLASLT_MATMUL_TILE_704x88",
    "CUBLASLT_MATMUL_TILE_704x80",
    "CUBLASLT_MATMUL_TILE_704x8",
    "CUBLASLT_MATMUL_TILE_704x72",
    "CUBLASLT_MATMUL_TILE_704x64",
    "CUBLASLT_MATMUL_TILE_704x56",
    "CUBLASLT_MATMUL_TILE_704x48",
    "CUBLASLT_MATMUL_TILE_704x40",
    "CUBLASLT_MATMUL_TILE_704x32",
    "CUBLASLT_MATMUL_TILE_704x24",
    "CUBLASLT_MATMUL_TILE_704x16",
    "CUBLASLT_MATMUL_TILE_696x64",
    "CUBLASLT_MATMUL_TILE_688x64",
    "CUBLASLT_MATMUL_TILE_680x64",
    "CUBLASLT_MATMUL_TILE_672x64",
    "CUBLASLT_MATMUL_TILE_664x64",
    "CUBLASLT_MATMUL_TILE_656x64",
    "CUBLASLT_MATMUL_TILE_64x96",
    "CUBLASLT_MATMUL_TILE_64x88",
    "CUBLASLT_MATMUL_TILE_64x80",
    "CUBLASLT_MATMUL_TILE_64x8",
    "CUBLASLT_MATMUL_TILE_64x768",
    "CUBLASLT_MATMUL_TILE_64x760",
    "CUBLASLT_MATMUL_TILE_64x752",
    "CUBLASLT_MATMUL_TILE_64x744",
    "CUBLASLT_MATMUL_TILE_64x736",
    "CUBLASLT_MATMUL_TILE_64x728",
    "CUBLASLT_MATMUL_TILE_64x720",
    "CUBLASLT_MATMUL_TILE_64x72",
    "CUBLASLT_MATMUL_TILE_64x712",
    "CUBLASLT_MATMUL_TILE_64x704",
    "CUBLASLT_MATMUL_TILE_64x696",
    "CUBLASLT_MATMUL_TILE_64x688",
    "CUBLASLT_MATMUL_TILE_64x680",
    "CUBLASLT_MATMUL_TILE_64x672",
    "CUBLASLT_MATMUL_TILE_64x664",
    "CUBLASLT_MATMUL_TILE_64x656",
    "CUBLASLT_MATMUL_TILE_64x648",
    "CUBLASLT_MATMUL_TILE_64x640",
    "CUBLASLT_MATMUL_TILE_64x64",
    "CUBLASLT_MATMUL_TILE_64x632",
    "CUBLASLT_MATMUL_TILE_64x624",
    "CUBLASLT_MATMUL_TILE_64x616",
    "CUBLASLT_MATMUL_TILE_64x608",
    "CUBLASLT_MATMUL_TILE_64x600",
    "CUBLASLT_MATMUL_TILE_64x592",
    "CUBLASLT_MATMUL_TILE_64x584",
    "CUBLASLT_MATMUL_TILE_64x576",
    "CUBLASLT_MATMUL_TILE_64x568",
    "CUBLASLT_MATMUL_TILE_64x560",
    "CUBLASLT_MATMUL_TILE_64x56",
    "CUBLASLT_MATMUL_TILE_64x552",
    "CUBLASLT_MATMUL_TILE_64x544",
    "CUBLASLT_MATMUL_TILE_64x536",
    "CUBLASLT_MATMUL_TILE_64x528",
    "CUBLASLT_MATMUL_TILE_64x520",
    "CUBLASLT_MATMUL_TILE_64x512",
    "CUBLASLT_MATMUL_TILE_64x504",
    "CUBLASLT_MATMUL_TILE_64x496",
    "CUBLASLT_MATMUL_TILE_64x488",
    "CUBLASLT_MATMUL_TILE_64x480",
    "CUBLASLT_MATMUL_TILE_64x48",
    "CUBLASLT_MATMUL_TILE_64x472",
    "CUBLASLT_MATMUL_TILE_64x464",
    "CUBLASLT_MATMUL_TILE_64x456",
    "CUBLASLT_MATMUL_TILE_64x448",
    "CUBLASLT_MATMUL_TILE_64x440",
    "CUBLASLT_MATMUL_TILE_64x432",
    "CUBLASLT_MATMUL_TILE_64x424",
    "CUBLASLT_MATMUL_TILE_64x416",
    "CUBLASLT_MATMUL_TILE_64x408",
    "CUBLASLT_MATMUL_TILE_64x400",
    "CUBLASLT_MATMUL_TILE_64x40",
    "CUBLASLT_MATMUL_TILE_64x392",
    "CUBLASLT_MATMUL_TILE_64x384",
    "CUBLASLT_MATMUL_TILE_64x376",
    "CUBLASLT_MATMUL_TILE_64x368",
    "CUBLASLT_MATMUL_TILE_64x360",
    "CUBLASLT_MATMUL_TILE_64x352",
    "CUBLASLT_MATMUL_TILE_64x344",
    "CUBLASLT_MATMUL_TILE_64x336",
    "CUBLASLT_MATMUL_TILE_64x328",
    "CUBLASLT_MATMUL_TILE_64x320",
    "CUBLASLT_MATMUL_TILE_64x32",
    "CUBLASLT_MATMUL_TILE_64x312",
    "CUBLASLT_MATMUL_TILE_64x304",
    "CUBLASLT_MATMUL_TILE_64x296",
    "CUBLASLT_MATMUL_TILE_64x288",
    "CUBLASLT_MATMUL_TILE_64x280",
    "CUBLASLT_MATMUL_TILE_64x272",
    "CUBLASLT_MATMUL_TILE_64x264",
    "CUBLASLT_MATMUL_TILE_64x256",
    "CUBLASLT_MATMUL_TILE_64x248",
    "CUBLASLT_MATMUL_TILE_64x240",
    "CUBLASLT_MATMUL_TILE_64x24",
    "CUBLASLT_MATMUL_TILE_64x232",
    "CUBLASLT_MATMUL_TILE_64x224",
    "CUBLASLT_MATMUL_TILE_64x216",
    "CUBLASLT_MATMUL_TILE_64x208",
    "CUBLASLT_MATMUL_TILE_64x200",
    "CUBLASLT_MATMUL_TILE_64x192",
    "CUBLASLT_MATMUL_TILE_64x184",
    "CUBLASLT_MATMUL_TILE_64x176",
    "CUBLASLT_MATMUL_TILE_64x168",
    "CUBLASLT_MATMUL_TILE_64x160",
    "CUBLASLT_MATMUL_TILE_64x16",
    "CUBLASLT_MATMUL_TILE_64x152",
    "CUBLASLT_MATMUL_TILE_64x144",
    "CUBLASLT_MATMUL_TILE_64x136",
    "CUBLASLT_MATMUL_TILE_64x128",
    "CUBLASLT_MATMUL_TILE_64x120",
    "CUBLASLT_MATMUL_TILE_64x112",
    "CUBLASLT_MATMUL_TILE_64x104",
    "CUBLASLT_MATMUL_TILE_648x64",
    "CUBLASLT_MATMUL_TILE_640x96",
    "CUBLASLT_MATMUL_TILE_640x88",
    "CUBLASLT_MATMUL_TILE_640x80",
    "CUBLASLT_MATMUL_TILE_640x8",
    "CUBLASLT_MATMUL_TILE_640x72",
    "CUBLASLT_MATMUL_TILE_640x64",
    "CUBLASLT_MATMUL_TILE_640x56",
    "CUBLASLT_MATMUL_TILE_640x48",
    "CUBLASLT_MATMUL_TILE_640x40",
    "CUBLASLT_MATMUL_TILE_640x32",
    "CUBLASLT_MATMUL_TILE_640x24",
    "CUBLASLT_MATMUL_TILE_640x16",
    "CUBLASLT_MATMUL_TILE_632x64",
    "CUBLASLT_MATMUL_TILE_624x64",
    "CUBLASLT_MATMUL_TILE_616x64",
    "CUBLASLT_MATMUL_TILE_608x64",
    "CUBLASLT_MATMUL_TILE_600x64",
    "CUBLASLT_MATMUL_TILE_592x64",
    "CUBLASLT_MATMUL_TILE_584x64",
    "CUBLASLT_MATMUL_TILE_576x96",
    "CUBLASLT_MATMUL_TILE_576x88",
    "CUBLASLT_MATMUL_TILE_576x80",
    "CUBLASLT_MATMUL_TILE_576x8",
    "CUBLASLT_MATMUL_TILE_576x72",
    "CUBLASLT_MATMUL_TILE_576x64",
    "CUBLASLT_MATMUL_TILE_576x56",
    "CUBLASLT_MATMUL_TILE_576x48",
    "CUBLASLT_MATMUL_TILE_576x40",
    "CUBLASLT_MATMUL_TILE_576x32",
    "CUBLASLT_MATMUL_TILE_576x24",
    "CUBLASLT_MATMUL_TILE_576x16",
    "CUBLASLT_MATMUL_TILE_576x112",
    "CUBLASLT_MATMUL_TILE_576x104",
    "CUBLASLT_MATMUL_TILE_56x768",
    "CUBLASLT_MATMUL_TILE_56x704",
    "CUBLASLT_MATMUL_TILE_56x640",
    "CUBLASLT_MATMUL_TILE_56x576",
    "CUBLASLT_MATMUL_TILE_56x512",
    "CUBLASLT_MATMUL_TILE_56x448",
    "CUBLASLT_MATMUL_TILE_56x384",
    "CUBLASLT_MATMUL_TILE_56x320",
    "CUBLASLT_MATMUL_TILE_56x256",
    "CUBLASLT_MATMUL_TILE_56x192",
    "CUBLASLT_MATMUL_TILE_56x128",
    "CUBLASLT_MATMUL_TILE_568x64",
    "CUBLASLT_MATMUL_TILE_560x64",
    "CUBLASLT_MATMUL_TILE_552x64",
    "CUBLASLT_MATMUL_TILE_544x64",
    "CUBLASLT_MATMUL_TILE_536x64",
    "CUBLASLT_MATMUL_TILE_528x64",
    "CUBLASLT_MATMUL_TILE_520x64",
    "CUBLASLT_MATMUL_TILE_512x96",
    "CUBLASLT_MATMUL_TILE_512x88",
    "CUBLASLT_MATMUL_TILE_512x80",
    "CUBLASLT_MATMUL_TILE_512x8",
    "CUBLASLT_MATMUL_TILE_512x72",
    "CUBLASLT_MATMUL_TILE_512x64",
    "CUBLASLT_MATMUL_TILE_512x56",
    "CUBLASLT_MATMUL_TILE_512x48",
    "CUBLASLT_MATMUL_TILE_512x40",
    "CUBLASLT_MATMUL_TILE_512x32",
    "CUBLASLT_MATMUL_TILE_512x24",
    "CUBLASLT_MATMUL_TILE_512x16",
    "CUBLASLT_MATMUL_TILE_512x128",
    "CUBLASLT_MATMUL_TILE_512x120",
    "CUBLASLT_MATMUL_TILE_512x112",
    "CUBLASLT_MATMUL_TILE_512x104",
    "CUBLASLT_MATMUL_TILE_504x64",
    "CUBLASLT_MATMUL_TILE_496x64",
    "CUBLASLT_MATMUL_TILE_48x768",
    "CUBLASLT_MATMUL_TILE_48x704",
    "CUBLASLT_MATMUL_TILE_48x640",
    "CUBLASLT_MATMUL_TILE_48x64",
    "CUBLASLT_MATMUL_TILE_48x576",
    "CUBLASLT_MATMUL_TILE_48x512",
    "CUBLASLT_MATMUL_TILE_48x448",
    "CUBLASLT_MATMUL_TILE_48x384",
    "CUBLASLT_MATMUL_TILE_48x320",
    "CUBLASLT_MATMUL_TILE_48x256",
    "CUBLASLT_MATMUL_TILE_48x192",
    "CUBLASLT_MATMUL_TILE_48x128",
    "CUBLASLT_MATMUL_TILE_488x64",
    "CUBLASLT_MATMUL_TILE_480x64",
    "CUBLASLT_MATMUL_TILE_472x64",
    "CUBLASLT_MATMUL_TILE_464x64",
    "CUBLASLT_MATMUL_TILE_456x64",
    "CUBLASLT_MATMUL_TILE_448x96",
    "CUBLASLT_MATMUL_TILE_448x88",
    "CUBLASLT_MATMUL_TILE_448x80",
    "CUBLASLT_MATMUL_TILE_448x8",
    "CUBLASLT_MATMUL_TILE_448x72",
    "CUBLASLT_MATMUL_TILE_448x64",
    "CUBLASLT_MATMUL_TILE_448x56",
    "CUBLASLT_MATMUL_TILE_448x48",
    "CUBLASLT_MATMUL_TILE_448x40",
    "CUBLASLT_MATMUL_TILE_448x32",
    "CUBLASLT_MATMUL_TILE_448x24",
    "CUBLASLT_MATMUL_TILE_448x16",
    "CUBLASLT_MATMUL_TILE_448x144",
    "CUBLASLT_MATMUL_TILE_448x136",
    "CUBLASLT_MATMUL_TILE_448x128",
    "CUBLASLT_MATMUL_TILE_448x120",
    "CUBLASLT_MATMUL_TILE_448x112",
    "CUBLASLT_MATMUL_TILE_448x104",
    "CUBLASLT_MATMUL_TILE_440x64",
    "CUBLASLT_MATMUL_TILE_432x64",
    "CUBLASLT_MATMUL_TILE_424x64",
    "CUBLASLT_MATMUL_TILE_416x64",
    "CUBLASLT_MATMUL_TILE_40x768",
    "CUBLASLT_MATMUL_TILE_40x704",
    "CUBLASLT_MATMUL_TILE_40x640",
    "CUBLASLT_MATMUL_TILE_40x64",
    "CUBLASLT_MATMUL_TILE_40x576",
    "CUBLASLT_MATMUL_TILE_40x512",
    "CUBLASLT_MATMUL_TILE_40x448",
    "CUBLASLT_MATMUL_TILE_40x384",
    "CUBLASLT_MATMUL_TILE_40x320",
    "CUBLASLT_MATMUL_TILE_40x256",
    "CUBLASLT_MATMUL_TILE_40x192",
    "CUBLASLT_MATMUL_TILE_40x128",
    "CUBLASLT_MATMUL_TILE_408x64",
    "CUBLASLT_MATMUL_TILE_400x64",
    "CUBLASLT_MATMUL_TILE_392x64",
    "CUBLASLT_MATMUL_TILE_384x96",
    "CUBLASLT_MATMUL_TILE_384x88",
    "CUBLASLT_MATMUL_TILE_384x80",
    "CUBLASLT_MATMUL_TILE_384x8",
    "CUBLASLT_MATMUL_TILE_384x72",
    "CUBLASLT_MATMUL_TILE_384x64",
    "CUBLASLT_MATMUL_TILE_384x56",
    "CUBLASLT_MATMUL_TILE_384x48",
    "CUBLASLT_MATMUL_TILE_384x40",
    "CUBLASLT_MATMUL_TILE_384x32",
    "CUBLASLT_MATMUL_TILE_384x24",
    "CUBLASLT_MATMUL_TILE_384x168",
    "CUBLASLT_MATMUL_TILE_384x160",
    "CUBLASLT_MATMUL_TILE_384x16",
    "CUBLASLT_MATMUL_TILE_384x152",
    "CUBLASLT_MATMUL_TILE_384x144",
    "CUBLASLT_MATMUL_TILE_384x136",
    "CUBLASLT_MATMUL_TILE_384x128",
    "CUBLASLT_MATMUL_TILE_384x120",
    "CUBLASLT_MATMUL_TILE_384x112",
    "CUBLASLT_MATMUL_TILE_384x104",
    "CUBLASLT_MATMUL_TILE_376x64",
    "CUBLASLT_MATMUL_TILE_376x128",
    "CUBLASLT_MATMUL_TILE_368x64",
    "CUBLASLT_MATMUL_TILE_368x128",
    "CUBLASLT_MATMUL_TILE_360x64",
    "CUBLASLT_MATMUL_TILE_360x128",
    "CUBLASLT_MATMUL_TILE_352x64",
    "CUBLASLT_MATMUL_TILE_352x128",
    "CUBLASLT_MATMUL_TILE_344x64",
    "CUBLASLT_MATMUL_TILE_344x128",
    "CUBLASLT_MATMUL_TILE_336x64",
    "CUBLASLT_MATMUL_TILE_336x128",
    "CUBLASLT_MATMUL_TILE_32x8",
    "CUBLASLT_MATMUL_TILE_32x768",
    "CUBLASLT_MATMUL_TILE_32x704",
    "CUBLASLT_MATMUL_TILE_32x640",
    "CUBLASLT_MATMUL_TILE_32x64",
    "CUBLASLT_MATMUL_TILE_32x576",
    "CUBLASLT_MATMUL_TILE_32x512",
    "CUBLASLT_MATMUL_TILE_32x448",
    "CUBLASLT_MATMUL_TILE_32x384",
    "CUBLASLT_MATMUL_TILE_32x320",
    "CUBLASLT_MATMUL_TILE_32x32",
    "CUBLASLT_MATMUL_TILE_32x256",
    "CUBLASLT_MATMUL_TILE_32x192",
    "CUBLASLT_MATMUL_TILE_32x16",
    "CUBLASLT_MATMUL_TILE_32x128",
    "CUBLASLT_MATMUL_TILE_328x64",
    "CUBLASLT_MATMUL_TILE_328x128",
    "CUBLASLT_MATMUL_TILE_320x96",
    "CUBLASLT_MATMUL_TILE_320x88",
    "CUBLASLT_MATMUL_TILE_320x80",
    "CUBLASLT_MATMUL_TILE_320x8",
    "CUBLASLT_MATMUL_TILE_320x72",
    "CUBLASLT_MATMUL_TILE_320x64",
    "CUBLASLT_MATMUL_TILE_320x56",
    "CUBLASLT_MATMUL_TILE_320x48",
    "CUBLASLT_MATMUL_TILE_320x40",
    "CUBLASLT_MATMUL_TILE_320x32",
    "CUBLASLT_MATMUL_TILE_320x24",
    "CUBLASLT_MATMUL_TILE_320x200",
    "CUBLASLT_MATMUL_TILE_320x192",
    "CUBLASLT_MATMUL_TILE_320x184",
    "CUBLASLT_MATMUL_TILE_320x176",
    "CUBLASLT_MATMUL_TILE_320x168",
    "CUBLASLT_MATMUL_TILE_320x160",
    "CUBLASLT_MATMUL_TILE_320x16",
    "CUBLASLT_MATMUL_TILE_320x152",
    "CUBLASLT_MATMUL_TILE_320x144",
    "CUBLASLT_MATMUL_TILE_320x136",
    "CUBLASLT_MATMUL_TILE_320x128",
    "CUBLASLT_MATMUL_TILE_320x120",
    "CUBLASLT_MATMUL_TILE_320x112",
    "CUBLASLT_MATMUL_TILE_320x104",
    "CUBLASLT_MATMUL_TILE_312x64",
    "CUBLASLT_MATMUL_TILE_312x128",
    "CUBLASLT_MATMUL_TILE_304x64",
    "CUBLASLT_MATMUL_TILE_304x128",
    "CUBLASLT_MATMUL_TILE_296x64",
    "CUBLASLT_MATMUL_TILE_296x128",
    "CUBLASLT_MATMUL_TILE_288x64",
    "CUBLASLT_MATMUL_TILE_288x128",
    "CUBLASLT_MATMUL_TILE_280x64",
    "CUBLASLT_MATMUL_TILE_280x128",
    "CUBLASLT_MATMUL_TILE_272x64",
    "CUBLASLT_MATMUL_TILE_272x128",
    "CUBLASLT_MATMUL_TILE_264x64",
    "CUBLASLT_MATMUL_TILE_264x128",
    "CUBLASLT_MATMUL_TILE_256x96",
    "CUBLASLT_MATMUL_TILE_256x88",
    "CUBLASLT_MATMUL_TILE_256x80",
    "CUBLASLT_MATMUL_TILE_256x8",
    "CUBLASLT_MATMUL_TILE_256x72",
    "CUBLASLT_MATMUL_TILE_256x64",
    "CUBLASLT_MATMUL_TILE_256x56",
    "CUBLASLT_MATMUL_TILE_256x48",
    "CUBLASLT_MATMUL_TILE_256x40",
    "CUBLASLT_MATMUL_TILE_256x32",
    "CUBLASLT_MATMUL_TILE_256x256",
    "CUBLASLT_MATMUL_TILE_256x248",
    "CUBLASLT_MATMUL_TILE_256x240",
    "CUBLASLT_MATMUL_TILE_256x24",
    "CUBLASLT_MATMUL_TILE_256x232",
    "CUBLASLT_MATMUL_TILE_256x224",
    "CUBLASLT_MATMUL_TILE_256x216",
    "CUBLASLT_MATMUL_TILE_256x208",
    "CUBLASLT_MATMUL_TILE_256x200",
    "CUBLASLT_MATMUL_TILE_256x192",
    "CUBLASLT_MATMUL_TILE_256x184",
    "CUBLASLT_MATMUL_TILE_256x176",
    "CUBLASLT_MATMUL_TILE_256x168",
    "CUBLASLT_MATMUL_TILE_256x160",
    "CUBLASLT_MATMUL_TILE_256x16",
    "CUBLASLT_MATMUL_TILE_256x152",
    "CUBLASLT_MATMUL_TILE_256x144",
    "CUBLASLT_MATMUL_TILE_256x136",
    "CUBLASLT_MATMUL_TILE_256x128",
    "CUBLASLT_MATMUL_TILE_256x120",
    "CUBLASLT_MATMUL_TILE_256x112",
    "CUBLASLT_MATMUL_TILE_256x104",
    "CUBLASLT_MATMUL_TILE_24x768",
    "CUBLASLT_MATMUL_TILE_24x704",
    "CUBLASLT_MATMUL_TILE_24x640",
    "CUBLASLT_MATMUL_TILE_24x64",
    "CUBLASLT_MATMUL_TILE_24x576",
    "CUBLASLT_MATMUL_TILE_24x512",
    "CUBLASLT_MATMUL_TILE_24x448",
    "CUBLASLT_MATMUL_TILE_24x384",
    "CUBLASLT_MATMUL_TILE_24x320",
    "CUBLASLT_MATMUL_TILE_24x256",
    "CUBLASLT_MATMUL_TILE_24x192",
    "CUBLASLT_MATMUL_TILE_24x128",
    "CUBLASLT_MATMUL_TILE_248x64",
    "CUBLASLT_MATMUL_TILE_248x192",
    "CUBLASLT_MATMUL_TILE_248x128",
    "CUBLASLT_MATMUL_TILE_240x64",
    "CUBLASLT_MATMUL_TILE_240x192",
    "CUBLASLT_MATMUL_TILE_240x128",
    "CUBLASLT_MATMUL_TILE_232x64",
    "CUBLASLT_MATMUL_TILE_232x192",
    "CUBLASLT_MATMUL_TILE_232x128",
    "CUBLASLT_MATMUL_TILE_224x64",
    "CUBLASLT_MATMUL_TILE_224x192",
    "CUBLASLT_MATMUL_TILE_224x128",
    "CUBLASLT_MATMUL_TILE_216x64",
    "CUBLASLT_MATMUL_TILE_216x192",
    "CUBLASLT_MATMUL_TILE_216x128",
    "CUBLASLT_MATMUL_TILE_208x64",
    "CUBLASLT_MATMUL_TILE_208x192",
    "CUBLASLT_MATMUL_TILE_208x128",
    "CUBLASLT_MATMUL_TILE_200x64",
    "CUBLASLT_MATMUL_TILE_200x192",
    "CUBLASLT_MATMUL_TILE_200x128",
    "CUBLASLT_MATMUL_TILE_192x96",
    "CUBLASLT_MATMUL_TILE_192x88",
    "CUBLASLT_MATMUL_TILE_192x80",
    "CUBLASLT_MATMUL_TILE_192x8",
    "CUBLASLT_MATMUL_TILE_192x72",
    "CUBLASLT_MATMUL_TILE_192x64",
    "CUBLASLT_MATMUL_TILE_192x56",
    "CUBLASLT_MATMUL_TILE_192x48",
    "CUBLASLT_MATMUL_TILE_192x40",
    "CUBLASLT_MATMUL_TILE_192x336",
    "CUBLASLT_MATMUL_TILE_192x328",
    "CUBLASLT_MATMUL_TILE_192x320",
    "CUBLASLT_MATMUL_TILE_192x32",
    "CUBLASLT_MATMUL_TILE_192x312",
    "CUBLASLT_MATMUL_TILE_192x304",
    "CUBLASLT_MATMUL_TILE_192x296",
    "CUBLASLT_MATMUL_TILE_192x288",
    "CUBLASLT_MATMUL_TILE_192x280",
    "CUBLASLT_MATMUL_TILE_192x272",
    "CUBLASLT_MATMUL_TILE_192x264",
    "CUBLASLT_MATMUL_TILE_192x256",
    "CUBLASLT_MATMUL_TILE_192x248",
    "CUBLASLT_MATMUL_TILE_192x240",
    "CUBLASLT_MATMUL_TILE_192x24",
    "CUBLASLT_MATMUL_TILE_192x232",
    "CUBLASLT_MATMUL_TILE_192x224",
    "CUBLASLT_MATMUL_TILE_192x216",
    "CUBLASLT_MATMUL_TILE_192x208",
    "CUBLASLT_MATMUL_TILE_192x200",
    "CUBLASLT_MATMUL_TILE_192x192",
    "CUBLASLT_MATMUL_TILE_192x184",
    "CUBLASLT_MATMUL_TILE_192x176",
    "CUBLASLT_MATMUL_TILE_192x168",
    "CUBLASLT_MATMUL_TILE_192x160",
    "CUBLASLT_MATMUL_TILE_192x16",
    "CUBLASLT_MATMUL_TILE_192x152",
    "CUBLASLT_MATMUL_TILE_192x144",
    "CUBLASLT_MATMUL_TILE_192x136",
    "CUBLASLT_MATMUL_TILE_192x128",
    "CUBLASLT_MATMUL_TILE_192x120",
    "CUBLASLT_MATMUL_TILE_192x112",
    "CUBLASLT_MATMUL_TILE_192x104",
    "CUBLASLT_MATMUL_TILE_184x64",
    "CUBLASLT_MATMUL_TILE_184x256",
    "CUBLASLT_MATMUL_TILE_184x192",
    "CUBLASLT_MATMUL_TILE_184x128",
    "CUBLASLT_MATMUL_TILE_176x64",
    "CUBLASLT_MATMUL_TILE_176x256",
    "CUBLASLT_MATMUL_TILE_176x192",
    "CUBLASLT_MATMUL_TILE_176x128",
    "CUBLASLT_MATMUL_TILE_16x8",
    "CUBLASLT_MATMUL_TILE_16x768",
    "CUBLASLT_MATMUL_TILE_16x704",
    "CUBLASLT_MATMUL_TILE_16x640",
    "CUBLASLT_MATMUL_TILE_16x64",
    "CUBLASLT_MATMUL_TILE_16x576",
    "CUBLASLT_MATMUL_TILE_16x512",
    "CUBLASLT_MATMUL_TILE_16x448",
    "CUBLASLT_MATMUL_TILE_16x384",
    "CUBLASLT_MATMUL_TILE_16x320",
    "CUBLASLT_MATMUL_TILE_16x32",
    "CUBLASLT_MATMUL_TILE_16x256",
    "CUBLASLT_MATMUL_TILE_16x192",
    "CUBLASLT_MATMUL_TILE_16x16",
    "CUBLASLT_MATMUL_TILE_16x128",
    "CUBLASLT_MATMUL_TILE_168x64",
    "CUBLASLT_MATMUL_TILE_168x256",
    "CUBLASLT_MATMUL_TILE_168x192",
    "CUBLASLT_MATMUL_TILE_168x128",
    "CUBLASLT_MATMUL_TILE_160x64",
    "CUBLASLT_MATMUL_TILE_160x256",
    "CUBLASLT_MATMUL_TILE_160x192",
    "CUBLASLT_MATMUL_TILE_160x128",
    "CUBLASLT_MATMUL_TILE_152x64",
    "CUBLASLT_MATMUL_TILE_152x320",
    "CUBLASLT_MATMUL_TILE_152x256",
    "CUBLASLT_MATMUL_TILE_152x192",
    "CUBLASLT_MATMUL_TILE_152x128",
    "CUBLASLT_MATMUL_TILE_144x64",
    "CUBLASLT_MATMUL_TILE_144x320",
    "CUBLASLT_MATMUL_TILE_144x256",
    "CUBLASLT_MATMUL_TILE_144x192",
    "CUBLASLT_MATMUL_TILE_144x128",
    "CUBLASLT_MATMUL_TILE_136x64",
    "CUBLASLT_MATMUL_TILE_136x320",
    "CUBLASLT_MATMUL_TILE_136x256",
    "CUBLASLT_MATMUL_TILE_136x192",
    "CUBLASLT_MATMUL_TILE_136x128",
    "CUBLASLT_MATMUL_TILE_128x96",
    "CUBLASLT_MATMUL_TILE_128x88",
    "CUBLASLT_MATMUL_TILE_128x80",
    "CUBLASLT_MATMUL_TILE_128x8",
    "CUBLASLT_MATMUL_TILE_128x72",
    "CUBLASLT_MATMUL_TILE_128x64",
    "CUBLASLT_MATMUL_TILE_128x56",
    "CUBLASLT_MATMUL_TILE_128x512",
    "CUBLASLT_MATMUL_TILE_128x504",
    "CUBLASLT_MATMUL_TILE_128x496",
    "CUBLASLT_MATMUL_TILE_128x488",
    "CUBLASLT_MATMUL_TILE_128x480",
    "CUBLASLT_MATMUL_TILE_128x48",
    "CUBLASLT_MATMUL_TILE_128x472",
    "CUBLASLT_MATMUL_TILE_128x464",
    "CUBLASLT_MATMUL_TILE_128x456",
    "CUBLASLT_MATMUL_TILE_128x448",
    "CUBLASLT_MATMUL_TILE_128x440",
    "CUBLASLT_MATMUL_TILE_128x432",
    "CUBLASLT_MATMUL_TILE_128x424",
    "CUBLASLT_MATMUL_TILE_128x416",
    "CUBLASLT_MATMUL_TILE_128x408",
    "CUBLASLT_MATMUL_TILE_128x400",
    "CUBLASLT_MATMUL_TILE_128x40",
    "CUBLASLT_MATMUL_TILE_128x392",
    "CUBLASLT_MATMUL_TILE_128x384",
    "CUBLASLT_MATMUL_TILE_128x376",
    "CUBLASLT_MATMUL_TILE_128x368",
    "CUBLASLT_MATMUL_TILE_128x360",
    "CUBLASLT_MATMUL_TILE_128x352",
    "CUBLASLT_MATMUL_TILE_128x344",
    "CUBLASLT_MATMUL_TILE_128x336",
    "CUBLASLT_MATMUL_TILE_128x328",
    "CUBLASLT_MATMUL_TILE_128x320",
    "CUBLASLT_MATMUL_TILE_128x32",
    "CUBLASLT_MATMUL_TILE_128x312",
    "CUBLASLT_MATMUL_TILE_128x304",
    "CUBLASLT_MATMUL_TILE_128x296",
    "CUBLASLT_MATMUL_TILE_128x288",
    "CUBLASLT_MATMUL_TILE_128x280",
    "CUBLASLT_MATMUL_TILE_128x272",
    "CUBLASLT_MATMUL_TILE_128x264",
    "CUBLASLT_MATMUL_TILE_128x256",
    "CUBLASLT_MATMUL_TILE_128x248",
    "CUBLASLT_MATMUL_TILE_128x240",
    "CUBLASLT_MATMUL_TILE_128x24",
    "CUBLASLT_MATMUL_TILE_128x232",
    "CUBLASLT_MATMUL_TILE_128x224",
    "CUBLASLT_MATMUL_TILE_128x216",
    "CUBLASLT_MATMUL_TILE_128x208",
    "CUBLASLT_MATMUL_TILE_128x200",
    "CUBLASLT_MATMUL_TILE_128x192",
    "CUBLASLT_MATMUL_TILE_128x184",
    "CUBLASLT_MATMUL_TILE_128x176",
    "CUBLASLT_MATMUL_TILE_128x168",
    "CUBLASLT_MATMUL_TILE_128x160",
    "CUBLASLT_MATMUL_TILE_128x16",
    "CUBLASLT_MATMUL_TILE_128x152",
    "CUBLASLT_MATMUL_TILE_128x144",
    "CUBLASLT_MATMUL_TILE_128x136",
    "CUBLASLT_MATMUL_TILE_128x128",
    "CUBLASLT_MATMUL_TILE_128x120",
    "CUBLASLT_MATMUL_TILE_128x112",
    "CUBLASLT_MATMUL_TILE_128x104",
    "CUBLASLT_MATMUL_TILE_120x64",
    "CUBLASLT_MATMUL_TILE_120x384",
    "CUBLASLT_MATMUL_TILE_120x320",
    "CUBLASLT_MATMUL_TILE_120x256",
    "CUBLASLT_MATMUL_TILE_120x192",
    "CUBLASLT_MATMUL_TILE_120x128",
    "CUBLASLT_MATMUL_TILE_112x64",
    "CUBLASLT_MATMUL_TILE_112x384",
    "CUBLASLT_MATMUL_TILE_112x320",
    "CUBLASLT_MATMUL_TILE_112x256",
    "CUBLASLT_MATMUL_TILE_112x192",
    "CUBLASLT_MATMUL_TILE_112x128",
    "CUBLASLT_MATMUL_TILE_104x64",
    "CUBLASLT_MATMUL_TILE_104x448",
    "CUBLASLT_MATMUL_TILE_104x384",
    "CUBLASLT_MATMUL_TILE_104x320",
    "CUBLASLT_MATMUL_TILE_104x256",
    "CUBLASLT_MATMUL_TILE_104x192",
    "CUBLASLT_MATMUL_TILE_104x128",
    "CUBLASLT_MATMUL_STAGES_UNDEFINED",
    "CUBLASLT_MATMUL_STAGES_END",
    "CUBLASLT_MATMUL_STAGES_8xAUTO",
    "CUBLASLT_MATMUL_STAGES_8x5",
    "CUBLASLT_MATMUL_STAGES_8x4",
    "CUBLASLT_MATMUL_STAGES_8x3",
    "CUBLASLT_MATMUL_STAGES_64xAUTO",
    "CUBLASLT_MATMUL_STAGES_64x6",
    "CUBLASLT_MATMUL_STAGES_64x5",
    "CUBLASLT_MATMUL_STAGES_64x4",
    "CUBLASLT_MATMUL_STAGES_64x3",
    "CUBLASLT_MATMUL_STAGES_64x2",
    "CUBLASLT_MATMUL_STAGES_64x1",
    "CUBLASLT_MATMUL_STAGES_32xAUTO",
    "CUBLASLT_MATMUL_STAGES_32x6",
    "CUBLASLT_MATMUL_STAGES_32x5",
    "CUBLASLT_MATMUL_STAGES_32x4",
    "CUBLASLT_MATMUL_STAGES_32x3",
    "CUBLASLT_MATMUL_STAGES_32x2",
    "CUBLASLT_MATMUL_STAGES_32x10",
    "CUBLASLT_MATMUL_STAGES_32x1",
    "CUBLASLT_MATMUL_STAGES_16xAUTO",
    "CUBLASLT_MATMUL_STAGES_16x6",
    "CUBLASLT_MATMUL_STAGES_16x5",
    "CUBLASLT_MATMUL_STAGES_16x4",
    "CUBLASLT_MATMUL_STAGES_16x3",
    "CUBLASLT_MATMUL_STAGES_16x2",
    "CUBLASLT_MATMUL_STAGES_16x10",
    "CUBLASLT_MATMUL_STAGES_16x1",
    "CUBLASLT_MATMUL_STAGES_128xAUTO",
    "CUBLASLT_MATMUL_STAGES_128x6",
    "CUBLASLT_MATMUL_STAGES_128x5",
    "CUBLASLT_MATMUL_STAGES_128x4",
    "CUBLASLT_MATMUL_STAGES_128x3",
    "CUBLASLT_MATMUL_STAGES_128x2",
    "CUBLASLT_MATMUL_STAGES_128x1",
    "CUBLASLT_MATMUL_PREF_SEARCH_MODE",
    "CUBLASLT_MATMUL_PREF_REDUCTION_SCHEME_MASK",
    "CUBLASLT_MATMUL_PREF_MIN_ALIGNMENT_D_BYTES",
    "CUBLASLT_MATMUL_PREF_MIN_ALIGNMENT_C_BYTES",
    "CUBLASLT_MATMUL_PREF_MIN_ALIGNMENT_B_BYTES",
    "CUBLASLT_MATMUL_PREF_MIN_ALIGNMENT_A_BYTES",
    "CUBLASLT_MATMUL_PREF_MAX_WORKSPACE_BYTES",
    "CUBLASLT_MATMUL_PREF_MAX_WAVES_COUNT",
    "CUBLASLT_MATMUL_PREF_IMPL_MASK",
    "CUBLASLT_MATMUL_INNER_SHAPE_UNDEFINED",
    "CUBLASLT_MATMUL_INNER_SHAPE_MMA884",
    "CUBLASLT_MATMUL_INNER_SHAPE_MMA1688",
    "CUBLASLT_MATMUL_INNER_SHAPE_MMA1684",
    "CUBLASLT_MATMUL_INNER_SHAPE_MMA16816",
    "CUBLASLT_MATMUL_INNER_SHAPE_END",
    "CUBLASLT_MATMUL_DESC_TRANSC",
    "CUBLASLT_MATMUL_DESC_TRANSB",
    "CUBLASLT_MATMUL_DESC_TRANSA",
    "CUBLASLT_MATMUL_DESC_SM_COUNT_TARGET",
    "CUBLASLT_MATMUL_DESC_SCALE_TYPE",
    "CUBLASLT_MATMUL_DESC_POINTER_MODE",
    "CUBLASLT_MATMUL_DESC_FILL_MODE",
    "CUBLASLT_MATMUL_DESC_FAST_ACCUM",
    "CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_SCALE_POINTER",
    "CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_POINTER",
    "CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_LD",
    "CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_DATA_TYPE",
    "CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_BATCH_STRIDE",
    "CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_AMAX_POINTER",
    "CUBLASLT_MATMUL_DESC_EPILOGUE",
    "CUBLASLT_MATMUL_DESC_D_SCALE_POINTER",
    "CUBLASLT_MATMUL_DESC_C_SCALE_POINTER",
    "CUBLASLT_MATMUL_DESC_COMPUTE_TYPE",
    "CUBLASLT_MATMUL_DESC_B_SCALE_POINTER",
    "CUBLASLT_MATMUL_DESC_BIAS_POINTER",
    "CUBLASLT_MATMUL_DESC_BIAS_DATA_TYPE",
    "CUBLASLT_MATMUL_DESC_BIAS_BATCH_STRIDE",
    "CUBLASLT_MATMUL_DESC_A_SCALE_POINTER",
    "CUBLASLT_MATMUL_DESC_ATOMIC_SYNC_OUT_COUNTERS_POINTER",
    "CUBLASLT_MATMUL_DESC_ATOMIC_SYNC_NUM_CHUNKS_D_ROWS",
    "CUBLASLT_MATMUL_DESC_ATOMIC_SYNC_NUM_CHUNKS_D_COLS",
    "CUBLASLT_MATMUL_DESC_ATOMIC_SYNC_IN_COUNTERS_POINTER",
    "CUBLASLT_MATMUL_DESC_ALPHA_VECTOR_BATCH_STRIDE",
    "CUBLASLT_EPILOGUE_RELU_BIAS",
    "CUBLASLT_EPILOGUE_RELU_AUX_BIAS",
    "CUBLASLT_EPILOGUE_RELU_AUX",
    "CUBLASLT_EPILOGUE_RELU",
    "CUBLASLT_EPILOGUE_GELU_BIAS",
    "CUBLASLT_EPILOGUE_GELU_AUX_BIAS",
    "CUBLASLT_EPILOGUE_GELU_AUX",
    "CUBLASLT_EPILOGUE_GELU",
    "CUBLASLT_EPILOGUE_DRELU_BGRAD",
    "CUBLASLT_EPILOGUE_DRELU",
    "CUBLASLT_EPILOGUE_DGELU_BGRAD",
    "CUBLASLT_EPILOGUE_DGELU",
    "CUBLASLT_EPILOGUE_DEFAULT",
    "CUBLASLT_EPILOGUE_BIAS",
    "CUBLASLT_EPILOGUE_BGRADB",
    "CUBLASLT_EPILOGUE_BGRADA",
    "CUBLASLT_CLUSTER_SHAPE_END",
    "CUBLASLT_CLUSTER_SHAPE_AUTO",
    "CUBLASLT_CLUSTER_SHAPE_9x1x1",
    "CUBLASLT_CLUSTER_SHAPE_8x2x1",
    "CUBLASLT_CLUSTER_SHAPE_8x1x1",
    "CUBLASLT_CLUSTER_SHAPE_7x2x1",
    "CUBLASLT_CLUSTER_SHAPE_7x1x1",
    "CUBLASLT_CLUSTER_SHAPE_6x2x1",
    "CUBLASLT_CLUSTER_SHAPE_6x1x1",
    "CUBLASLT_CLUSTER_SHAPE_5x3x1",
    "CUBLASLT_CLUSTER_SHAPE_5x2x1",
    "CUBLASLT_CLUSTER_SHAPE_5x1x1",
    "CUBLASLT_CLUSTER_SHAPE_4x4x1",
    "CUBLASLT_CLUSTER_SHAPE_4x3x1",
    "CUBLASLT_CLUSTER_SHAPE_4x2x1",
    "CUBLASLT_CLUSTER_SHAPE_4x1x1",
    "CUBLASLT_CLUSTER_SHAPE_3x5x1",
    "CUBLASLT_CLUSTER_SHAPE_3x4x1",
    "CUBLASLT_CLUSTER_SHAPE_3x3x1",
    "CUBLASLT_CLUSTER_SHAPE_3x2x1",
    "CUBLASLT_CLUSTER_SHAPE_3x1x1",
    "CUBLASLT_CLUSTER_SHAPE_2x8x1",
    "CUBLASLT_CLUSTER_SHAPE_2x7x1",
    "CUBLASLT_CLUSTER_SHAPE_2x6x1",
    "CUBLASLT_CLUSTER_SHAPE_2x5x1",
    "CUBLASLT_CLUSTER_SHAPE_2x4x1",
    "CUBLASLT_CLUSTER_SHAPE_2x3x1",
    "CUBLASLT_CLUSTER_SHAPE_2x2x1",
    "CUBLASLT_CLUSTER_SHAPE_2x1x1",
    "CUBLASLT_CLUSTER_SHAPE_1x9x1",
    "CUBLASLT_CLUSTER_SHAPE_1x8x1",
    "CUBLASLT_CLUSTER_SHAPE_1x7x1",
    "CUBLASLT_CLUSTER_SHAPE_1x6x1",
    "CUBLASLT_CLUSTER_SHAPE_1x5x1",
    "CUBLASLT_CLUSTER_SHAPE_1x4x1",
    "CUBLASLT_CLUSTER_SHAPE_1x3x1",
    "CUBLASLT_CLUSTER_SHAPE_1x2x1",
    "CUBLASLT_CLUSTER_SHAPE_1x1x1",
    "CUBLASLT_CLUSTER_SHAPE_1x16x1",
    "CUBLASLT_CLUSTER_SHAPE_1x15x1",
    "CUBLASLT_CLUSTER_SHAPE_1x14x1",
    "CUBLASLT_CLUSTER_SHAPE_1x13x1",
    "CUBLASLT_CLUSTER_SHAPE_1x12x1",
    "CUBLASLT_CLUSTER_SHAPE_1x11x1",
    "CUBLASLT_CLUSTER_SHAPE_1x10x1",
    "CUBLASLT_CLUSTER_SHAPE_16x1x1",
    "CUBLASLT_CLUSTER_SHAPE_15x1x1",
    "CUBLASLT_CLUSTER_SHAPE_14x1x1",
    "CUBLASLT_CLUSTER_SHAPE_13x1x1",
    "CUBLASLT_CLUSTER_SHAPE_12x1x1",
    "CUBLASLT_CLUSTER_SHAPE_11x1x1",
    "CUBLASLT_CLUSTER_SHAPE_10x1x1",
    "CUBLASLT_ALGO_CONFIG_TILE_ID",
    "CUBLASLT_ALGO_CONFIG_STAGES_ID",
    "CUBLASLT_ALGO_CONFIG_SPLITK_NUM",
    "CUBLASLT_ALGO_CONFIG_REDUCTION_SCHEME",
    "CUBLASLT_ALGO_CONFIG_INNER_SHAPE_ID",
    "CUBLASLT_ALGO_CONFIG_ID",
    "CUBLASLT_ALGO_CONFIG_CUSTOM_OPTION",
    "CUBLASLT_ALGO_CONFIG_CTA_SWIZZLING",
    "CUBLASLT_ALGO_CONFIG_CLUSTER_SHAPE_ID",
    "CUBLASLT_ALGO_CAP_UPLO_SUPPORT",
    "CUBLASLT_ALGO_CAP_TILE_IDS",
    "CUBLASLT_ALGO_CAP_STRIDED_BATCH_SUPPORT",
    "CUBLASLT_ALGO_CAP_STAGES_IDS",
    "CUBLASLT_ALGO_CAP_SPLITK_SUPPORT",
    "CUBLASLT_ALGO_CAP_REDUCTION_SCHEME_MASK",
    "CUBLASLT_ALGO_CAP_POINTER_MODE_MASK",
    "CUBLASLT_ALGO_CAP_OUT_OF_PLACE_RESULT_SUPPORT",
    "CUBLASLT_ALGO_CAP_NUMERICAL_IMPL_FLAGS",
    "CUBLASLT_ALGO_CAP_MIN_ALIGNMENT_D_BYTES",
    "CUBLASLT_ALGO_CAP_MIN_ALIGNMENT_C_BYTES",
    "CUBLASLT_ALGO_CAP_MIN_ALIGNMENT_B_BYTES",
    "CUBLASLT_ALGO_CAP_MIN_ALIGNMENT_A_BYTES",
    "CUBLASLT_ALGO_CAP_LD_NEGATIVE",
    "CUBLASLT_ALGO_CAP_EPILOGUE_MASK",
    "CUBLASLT_ALGO_CAP_CUSTOM_OPTION_MAX",
    "CUBLASLT_ALGO_CAP_CUSTOM_MEMORY_ORDER",
    "CUBLASLT_ALGO_CAP_CTA_SWIZZLING_SUPPORT",
    "CUBLASLT_ALGO_CAP_ATOMIC_SYNC"
);

sub warnRocOnlyUnsupportedFunctions {
    my $line_num = shift;
    my $k = 0;
    foreach $func (@RocOnlyUnsupportedFunctions)
    {
        my $mt = m/\b($func)\b/g;
        if ($mt) {
            $k += $mt;
            print STDERR "  $fileName:$line_num: warning: unsupported ROC identifier: $func\n";
        }
    }
    return $k;
}

@MIOpenOnlyUnsupportedFunctions = (
    "cudnnWgradMode_t",
    "cudnnTransformTensorEx",
    "cudnnTransformFilter",
    "cudnnTensorTransformStruct",
    "cudnnTensorTransformDescriptor_t",
    "cudnnTensorStruct",
    "cudnnSpatialTransformerStruct",
    "cudnnSpatialTransformerDescriptor_t",
    "cudnnSpatialTfSamplerForward",
    "cudnnSpatialTfSamplerBackward",
    "cudnnSpatialTfGridGeneratorForward",
    "cudnnSpatialTfGridGeneratorBackward",
    "cudnnSignalMode_t",
    "cudnnSeverity_t",
    "cudnnSetTensorTransformDescriptor",
    "cudnnSetTensorNdDescriptorEx",
    "cudnnSetTensorNdDescriptor",
    "cudnnSetTensor4dDescriptor",
    "cudnnSetSpatialTransformerNdDescriptor",
    "cudnnSetSeqDataDescriptor",
    "cudnnSetRNNProjectionLayers",
    "cudnnSetRNNPaddingMode",
    "cudnnSetRNNMatrixMathType",
    "cudnnSetRNNDescriptor_v8",
    "cudnnSetRNNDescriptor_v5",
    "cudnnSetRNNDescriptor",
    "cudnnSetRNNDataDescriptor",
    "cudnnSetRNNBiasMode",
    "cudnnSetRNNAlgorithmDescriptor",
    "cudnnSetPersistentRNNPlan",
    "cudnnSetOpTensorDescriptor",
    "cudnnSetFusedOpsVariantParamPackAttribute",
    "cudnnSetFusedOpsConstParamPackAttribute",
    "cudnnSetFilterNdDescriptor",
    "cudnnSetFilter4dDescriptor",
    "cudnnSetConvolutionReorderType",
    "cudnnSetConvolutionNdDescriptor",
    "cudnnSetConvolutionMathType",
    "cudnnSetConvolution2dDescriptor",
    "cudnnSetCallback",
    "cudnnSetCTCLossDescriptor_v9",
    "cudnnSetCTCLossDescriptor_v8",
    "cudnnSetCTCLossDescriptorEx",
    "cudnnSetAttnDescriptor",
    "cudnnSetAlgorithmPerformance",
    "cudnnSetAlgorithmDescriptor",
    "cudnnSetActivationDescriptorSwishBeta",
    "cudnnSetActivationDescriptor",
    "cudnnSeqDataStruct",
    "cudnnSeqDataDescriptor_t",
    "cudnnSeqDataAxis_t",
    "cudnnSaveAlgorithm",
    "cudnnSamplerType_t",
    "cudnnRuntimeTag_t",
    "cudnnRestoreAlgorithm",
    "cudnnResampleMode_t",
    "cudnnReorderType_t",
    "cudnnReorderFilterAndBias",
    "cudnnReduceTensorStruct",
    "cudnnRNNStruct",
    "cudnnRNNSetClip_v9",
    "cudnnRNNSetClip_v8",
    "cudnnRNNSetClip",
    "cudnnRNNGetClip_v9",
    "cudnnRNNGetClip_v8",
    "cudnnRNNGetClip",
    "cudnnRNNForwardTrainingEx",
    "cudnnRNNForwardInferenceEx",
    "cudnnRNNForward",
    "cudnnRNNDataStruct",
    "cudnnRNNDataLayout_t",
    "cudnnRNNDataDescriptor_t",
    "cudnnRNNClipMode_t",
    "cudnnRNNBackwardWeights_v8",
    "cudnnRNNBackwardWeightsEx",
    "cudnnRNNBackwardData_v8",
    "cudnnRNNBackwardDataEx",
    "cudnnQueryRuntimeError",
    "cudnnPoolingStruct",
    "cudnnPoolingForward",
    "cudnnPoolingBackward",
    "cudnnPersistentRNNPlan_t",
    "cudnnPersistentRNNPlan",
    "cudnnOpsVersionCheck",
    "cudnnOpsTrainVersionCheck",
    "cudnnOpsInferVersionCheck",
    "cudnnOpTensorStruct",
    "cudnnOpTensorDescriptor_t",
    "cudnnOpTensor",
    "cudnnNormalizationForwardTraining",
    "cudnnNormalizationForwardInference",
    "cudnnNormalizationBackward",
    "cudnnNormOps_t",
    "cudnnNormMode_t",
    "cudnnNormAlgo_t",
    "cudnnMultiHeadAttnWeightKind_t",
    "cudnnMultiHeadAttnForward",
    "cudnnMultiHeadAttnBackwardWeights",
    "cudnnMultiHeadAttnBackwardData",
    "cudnnMathType_t",
    "cudnnMakeFusedOpsPlan",
    "cudnnLossNormalizationMode_t",
    "cudnnLRNStruct",
    "cudnnLRNCrossChannelForward",
    "cudnnLRNCrossChannelBackward",
    "cudnnInitTransformDest",
    "cudnnIm2Col",
    "cudnnGraphVersionCheck",
    "cudnnGetVersion",
    "cudnnGetTensorTransformDescriptor",
    "cudnnGetTensorSizeInBytes",
    "cudnnGetTensorNdDescriptor",
    "cudnnGetSeqDataDescriptor",
    "cudnnGetRNNWeightSpaceSize",
    "cudnnGetRNNWeightParams",
    "cudnnGetRNNTempSpaceSizes",
    "cudnnGetRNNProjectionLayers",
    "cudnnGetRNNPaddingMode",
    "cudnnGetRNNMatrixMathType",
    "cudnnGetRNNLinLayerMatrixParams",
    "cudnnGetRNNLinLayerBiasParams",
    "cudnnGetRNNForwardTrainingAlgorithmMaxCount",
    "cudnnGetRNNForwardInferenceAlgorithmMaxCount",
    "cudnnGetRNNDescriptor_v8",
    "cudnnGetRNNDataDescriptor",
    "cudnnGetRNNBiasMode",
    "cudnnGetRNNBackwardWeightsAlgorithmMaxCount",
    "cudnnGetRNNBackwardDataAlgorithmMaxCount",
    "cudnnGetProperty",
    "cudnnGetOpTensorDescriptor",
    "cudnnGetNormalizationTrainingReserveSpaceSize",
    "cudnnGetNormalizationForwardTrainingWorkspaceSize",
    "cudnnGetNormalizationBackwardWorkspaceSize",
    "cudnnGetMultiHeadAttnWeights",
    "cudnnGetMultiHeadAttnBuffers",
    "cudnnGetMaxDeviceVersion",
    "cudnnGetLastErrorString",
    "cudnnGetFusedOpsVariantParamPackAttribute",
    "cudnnGetFusedOpsConstParamPackAttribute",
    "cudnnGetFoldedConvBackwardDataDescriptors",
    "cudnnGetFilterSizeInBytes",
    "cudnnGetFilterNdDescriptor",
    "cudnnGetFilter4dDescriptor",
    "cudnnGetCudartVersion",
    "cudnnGetConvolutionReorderType",
    "cudnnGetConvolutionNdForwardOutputDim",
    "cudnnGetConvolutionNdDescriptor",
    "cudnnGetConvolutionMathType",
    "cudnnGetConvolutionGroupCount",
    "cudnnGetConvolutionForwardAlgorithm_v7",
    "cudnnGetConvolutionForwardAlgorithmMaxCount",
    "cudnnGetConvolutionForwardAlgorithm",
    "cudnnGetConvolutionBackwardFilterWorkspaceSize",
    "cudnnGetConvolutionBackwardFilterAlgorithm_v7",
    "cudnnGetConvolutionBackwardFilterAlgorithmMaxCount",
    "cudnnGetConvolutionBackwardFilterAlgorithm",
    "cudnnGetConvolutionBackwardDataAlgorithm_v7",
    "cudnnGetConvolutionBackwardDataAlgorithmMaxCount",
    "cudnnGetConvolutionBackwardDataAlgorithm",
    "cudnnGetConvolution2dDescriptor",
    "cudnnGetCallback",
    "cudnnGetCTCLossWorkspaceSize_v8",
    "cudnnGetCTCLossDescriptor_v9",
    "cudnnGetCTCLossDescriptor_v8",
    "cudnnGetCTCLossDescriptorEx",
    "cudnnGetBatchNormalizationTrainingExReserveSpaceSize",
    "cudnnGetBatchNormalizationForwardTrainingExWorkspaceSize",
    "cudnnGetBatchNormalizationBackwardExWorkspaceSize",
    "cudnnGetAttnDescriptor",
    "cudnnGetAlgorithmSpaceSize",
    "cudnnGetAlgorithmPerformance",
    "cudnnGetAlgorithmDescriptor",
    "cudnnGetActivationDescriptorSwishBeta",
    "cudnnGetActivationDescriptor",
    "cudnnGenStatsMode_t",
    "cudnnFusedOps_t",
    "cudnnFusedOpsVariantParamStruct",
    "cudnnFusedOpsVariantParamPack_t",
    "cudnnFusedOpsVariantParamLabel_t",
    "cudnnFusedOpsPointerPlaceHolder_t",
    "cudnnFusedOpsPlan_t",
    "cudnnFusedOpsPlanStruct",
    "cudnnFusedOpsExecute",
    "cudnnFusedOpsConstParamStruct",
    "cudnnFusedOpsConstParamPack_t",
    "cudnnFusedOpsConstParamLabel_t",
    "cudnnFraction_t",
    "cudnnFractionStruct",
    "cudnnFoldingDirection_t",
    "cudnnFindRNNForwardTrainingAlgorithmEx",
    "cudnnFindRNNForwardInferenceAlgorithmEx",
    "cudnnFindRNNBackwardWeightsAlgorithmEx",
    "cudnnFindRNNBackwardDataAlgorithmEx",
    "cudnnFindConvolutionForwardAlgorithm",
    "cudnnFindConvolutionBackwardFilterAlgorithmEx",
    "cudnnFindConvolutionBackwardFilterAlgorithm",
    "cudnnFindConvolutionBackwardDataAlgorithmEx",
    "cudnnFindConvolutionBackwardDataAlgorithm",
    "cudnnFilterStruct",
    "cudnnErrQueryMode_t",
    "cudnnDropoutStruct",
    "cudnnDivisiveNormalizationForward",
    "cudnnDivisiveNormalizationBackward",
    "cudnnDivNormMode_t",
    "cudnnDeterminism_t",
    "cudnnDestroyTensorTransformDescriptor",
    "cudnnDestroySpatialTransformerDescriptor",
    "cudnnDestroySeqDataDescriptor",
    "cudnnDestroyRNNDataDescriptor",
    "cudnnDestroyPersistentRNNPlan",
    "cudnnDestroyOpTensorDescriptor",
    "cudnnDestroyFusedOpsVariantParamPack",
    "cudnnDestroyFusedOpsPlan",
    "cudnnDestroyFusedOpsConstParamPack",
    "cudnnDestroyFilterDescriptor",
    "cudnnDestroyAttnDescriptor",
    "cudnnDestroyAlgorithmPerformance",
    "cudnnDestroyAlgorithmDescriptor",
    "cudnnDeriveNormTensorDescriptor",
    "cudnnDebug_t",
    "cudnnDebugStruct",
    "cudnnCreateTensorTransformDescriptor",
    "cudnnCreateSpatialTransformerDescriptor",
    "cudnnCreateSeqDataDescriptor",
    "cudnnCreateRNNDataDescriptor",
    "cudnnCreatePersistentRNNPlan",
    "cudnnCreateOpTensorDescriptor",
    "cudnnCreateFusedOpsVariantParamPack",
    "cudnnCreateFusedOpsPlan",
    "cudnnCreateFusedOpsConstParamPack",
    "cudnnCreateFilterDescriptor",
    "cudnnCreateAttnDescriptor",
    "cudnnCreateAlgorithmPerformance",
    "cudnnCreateAlgorithmDescriptor",
    "cudnnCopyAlgorithmDescriptor",
    "cudnnConvolutionStruct",
    "cudnnConvolutionFwdPreference_t",
    "cudnnConvolutionBwdFilterPreference_t",
    "cudnnConvolutionBwdFilterAlgo_t",
    "cudnnConvolutionBwdFilterAlgoPerf_t",
    "cudnnConvolutionBwdFilterAlgoPerfStruct",
    "cudnnConvolutionBwdDataPreference_t",
    "cudnnConvolutionBackwardFilter",
    "cudnnCnnTrainVersionCheck",
    "cudnnCnnInferVersionCheck",
    "cudnnCallback_t",
    "cudnnCTCLoss_v8",
    "cudnnCTCLossStruct",
    "cudnnCTCGradMode_t",
    "cudnnBuildRNNDynamic",
    "cudnnBnFinalizeStatsMode_t",
    "cudnnBatchNormalizationForwardTrainingEx",
    "cudnnBatchNormalizationBackwardEx",
    "cudnnBatchNormOps_t",
    "cudnnBackendUpdateCudaGraph",
    "cudnnBackendTensorReordering_t",
    "cudnnBackendPopulateCudaGraph",
    "cudnnBackendNumericalNote_t",
    "cudnnBackendNormMode_t",
    "cudnnBackendNormFwdPhase_t",
    "cudnnBackendLayoutType_t",
    "cudnnBackendKnobType_t",
    "cudnnBackendInitialize",
    "cudnnBackendBehaviorNote_t",
    "cudnnAttnStruct",
    "cudnnAttnQueryMap_t",
    "cudnnAttnDescriptor_t",
    "cudnnAlgorithm_t",
    "cudnnAlgorithmUnionStruct",
    "cudnnAlgorithmStruct",
    "cudnnAlgorithmPerformance_t",
    "cudnnAlgorithmPerformanceStruct",
    "cudnnAlgorithmDescriptor_t",
    "cudnnAdvVersionCheck",
    "cudnnAdvTrainVersionCheck",
    "cudnnAdvInferVersionCheck",
    "cudnnAddTensor",
    "cudnnActivationStruct",
    "CUDNN_WGRAD_MODE_SET",
    "CUDNN_WGRAD_MODE_ADD",
    "CUDNN_TRANSFORM_UNFOLD",
    "CUDNN_TRANSFORM_FOLD",
    "CUDNN_TENSOR_REORDERING_NONE",
    "CUDNN_TENSOR_REORDERING_INT8x32",
    "CUDNN_TENSOR_REORDERING_F8_128x4",
    "CUDNN_TENSOR_REORDERING_F16x16",
    "CUDNN_TENSOR_OP_MATH_ALLOW_CONVERSION",
    "CUDNN_TENSOR_OP_MATH",
    "CUDNN_TENSOR_NCHW_VECT_C",
    "CUDNN_STATUS_SUBLIBRARY_VERSION_MISMATCH",
    "CUDNN_STATUS_SUBLIBRARY_LOADING_FAILED",
    "CUDNN_STATUS_SPECIFIC_ERROR",
    "CUDNN_STATUS_SERIALIZATION_VERSION_MISMATCH",
    "CUDNN_STATUS_RUNTIME_PREREQUISITE_MISSING",
    "CUDNN_STATUS_RUNTIME_IN_PROGRESS",
    "CUDNN_STATUS_RUNTIME_FP_OVERFLOW",
    "CUDNN_STATUS_NOT_SUPPORTED_SUBLIBRARY_UNAVAILABLE",
    "CUDNN_STATUS_NOT_SUPPORTED_SHARED_MEMORY_INSUFFICIENT",
    "CUDNN_STATUS_NOT_SUPPORTED_SHAPE",
    "CUDNN_STATUS_NOT_SUPPORTED_RUNTIME_PREREQUISITE_MISSING",
    "CUDNN_STATUS_NOT_SUPPORTED_PADDING",
    "CUDNN_STATUS_NOT_SUPPORTED_LAYOUT",
    "CUDNN_STATUS_NOT_SUPPORTED_INCOMPATIBLE_CUDA_DRIVER",
    "CUDNN_STATUS_NOT_SUPPORTED_INCOMPATIBLE_CUDART",
    "CUDNN_STATUS_NOT_SUPPORTED_GRAPH_PATTERN",
    "CUDNN_STATUS_NOT_SUPPORTED_DATA_TYPE",
    "CUDNN_STATUS_NOT_SUPPORTED_CUDA_GRAPH_NATIVE_API",
    "CUDNN_STATUS_NOT_SUPPORTED_BAD_LAUNCH_PARAM",
    "CUDNN_STATUS_NOT_SUPPORTED_ARCH_MISMATCH",
    "CUDNN_STATUS_MAPPING_ERROR",
    "CUDNN_STATUS_LICENSE_ERROR",
    "CUDNN_STATUS_INTERNAL_ERROR_UNEXPECTED_VALUE",
    "CUDNN_STATUS_INTERNAL_ERROR_TEXTURE_CREATION_FAILED",
    "CUDNN_STATUS_INTERNAL_ERROR_HOST_ALLOCATION_FAILED",
    "CUDNN_STATUS_INTERNAL_ERROR_DEVICE_ALLOCATION_FAILED",
    "CUDNN_STATUS_INTERNAL_ERROR_COMPILATION_FAILED",
    "CUDNN_STATUS_INTERNAL_ERROR_BAD_LAUNCH_PARAM",
    "CUDNN_STATUS_FULL_ERROR_CODE",
    "CUDNN_STATUS_EXECUTION_FAILED_CURAND",
    "CUDNN_STATUS_EXECUTION_FAILED_CUDA_DRIVER",
    "CUDNN_STATUS_EXECUTION_FAILED_CUDART",
    "CUDNN_STATUS_EXECUTION_FAILED_CUBLAS",
    "CUDNN_STATUS_EXECUTION_FAILED",
    "CUDNN_STATUS_DEPRECATED",
    "CUDNN_STATUS_CATEGORY",
    "CUDNN_STATUS_BAD_PARAM_STREAM_MISMATCH",
    "CUDNN_STATUS_BAD_PARAM_SIZE_INSUFFICIENT",
    "CUDNN_STATUS_BAD_PARAM_SHAPE_MISMATCH",
    "CUDNN_STATUS_BAD_PARAM_OUT_OF_BOUND",
    "CUDNN_STATUS_BAD_PARAM_NULL_POINTER",
    "CUDNN_STATUS_BAD_PARAM_NOT_FINALIZED",
    "CUDNN_STATUS_BAD_PARAM_MISALIGNED_POINTER",
    "CUDNN_STATUS_BAD_PARAM_DUPLICATED_ENTRIES",
    "CUDNN_STATUS_BAD_PARAM_DESCRIPTOR_TYPE",
    "CUDNN_STATUS_BAD_PARAM_CUDA_GRAPH_MISMATCH",
    "CUDNN_STATUS_BAD_PARAM_ATTRIBUTE_TYPE",
    "CUDNN_STATUS_ARCH_MISMATCH",
    "CUDNN_SIGNAL_WAIT",
    "CUDNN_SIGNAL_SET",
    "CUDNN_SEV_WARNING_EN",
    "CUDNN_SEV_WARNING",
    "CUDNN_SEV_INFO_EN",
    "CUDNN_SEV_INFO",
    "CUDNN_SEV_FATAL",
    "CUDNN_SEV_ERROR_EN",
    "CUDNN_SEV_ERROR",
    "CUDNN_SEQDATA_VECT_DIM",
    "CUDNN_SEQDATA_TIME_DIM",
    "CUDNN_SEQDATA_DIM_COUNT",
    "CUDNN_SEQDATA_BEAM_DIM",
    "CUDNN_SEQDATA_BATCH_DIM",
    "CUDNN_SCALAR_SIZE_T_WORKSPACE_SIZE_IN_BYTES",
    "CUDNN_SCALAR_INT64_T_BN_ACCUMULATION_COUNT",
    "CUDNN_SCALAR_DOUBLE_BN_EXP_AVG_FACTOR",
    "CUDNN_SCALAR_DOUBLE_BN_EPSILON",
    "CUDNN_SAMPLER_BILINEAR",
    "CUDNN_RNN_DATA_LAYOUT_SEQ_MAJOR_UNPACKED",
    "CUDNN_RNN_DATA_LAYOUT_SEQ_MAJOR_PACKED",
    "CUDNN_RNN_DATA_LAYOUT_BATCH_MAJOR_UNPACKED",
    "CUDNN_RNN_CLIP_NONE",
    "CUDNN_RNN_CLIP_MINMAX",
    "CUDNN_RNN_ALGO_PERSIST_STATIC_SMALL_H",
    "CUDNN_RNN_ALGO_PERSIST_STATIC",
    "CUDNN_RNN_ALGO_PERSIST_DYNAMIC",
    "CUDNN_RNN_ALGO_COUNT",
    "CUDNN_RMS_NORM",
    "CUDNN_RESAMPLE_NEAREST",
    "CUDNN_RESAMPLE_MAXPOOL",
    "CUDNN_RESAMPLE_BILINEAR",
    "CUDNN_RESAMPLE_AVGPOOL_INCLUDE_PADDING",
    "CUDNN_RESAMPLE_AVGPOOL_EXCLUDE_PADDING",
    "CUDNN_RESAMPLE_AVGPOOL",
    "CUDNN_REDUCE_TENSOR_MUL_NO_ZEROS",
    "CUDNN_PTR_ZDATA",
    "CUDNN_PTR_YSUM",
    "CUDNN_PTR_YSQSUM",
    "CUDNN_PTR_YDATA",
    "CUDNN_PTR_XDATA",
    "CUDNN_PTR_WORKSPACE",
    "CUDNN_PTR_WDATA",
    "CUDNN_PTR_NULL",
    "CUDNN_PTR_ELEM_ALIGNED",
    "CUDNN_PTR_DZDATA",
    "CUDNN_PTR_DYDATA",
    "CUDNN_PTR_DXDATA",
    "CUDNN_PTR_DWDATA",
    "CUDNN_PTR_BN_Z_EQSCALE",
    "CUDNN_PTR_BN_Z_EQBIAS",
    "CUDNN_PTR_BN_SCALE",
    "CUDNN_PTR_BN_SAVED_MEAN",
    "CUDNN_PTR_BN_SAVED_INVSTD",
    "CUDNN_PTR_BN_RUNNING_VAR",
    "CUDNN_PTR_BN_RUNNING_MEAN",
    "CUDNN_PTR_BN_EQSCALE",
    "CUDNN_PTR_BN_EQBIAS",
    "CUDNN_PTR_BN_DSCALE",
    "CUDNN_PTR_BN_DBIAS",
    "CUDNN_PTR_BN_BIAS",
    "CUDNN_PTR_ACTIVATION_BITMASK",
    "CUDNN_PTR_16B_ALIGNED",
    "CUDNN_POOLING_MAX_DETERMINISTIC",
    "CUDNN_POINTWISE_ATAN2",
    "CUDNN_PARAM_ZDESC",
    "CUDNN_PARAM_ZDATA_PLACEHOLDER",
    "CUDNN_PARAM_YSUM_PLACEHOLDER",
    "CUDNN_PARAM_YSTATS_DESC",
    "CUDNN_PARAM_YSQSUM_PLACEHOLDER",
    "CUDNN_PARAM_YDESC",
    "CUDNN_PARAM_YDATA_PLACEHOLDER",
    "CUDNN_PARAM_XDESC",
    "CUDNN_PARAM_XDATA_PLACEHOLDER",
    "CUDNN_PARAM_WDESC",
    "CUDNN_PARAM_WDATA_PLACEHOLDER",
    "CUDNN_PARAM_DZDESC",
    "CUDNN_PARAM_DZDATA_PLACEHOLDER",
    "CUDNN_PARAM_DYDESC",
    "CUDNN_PARAM_DYDATA_PLACEHOLDER",
    "CUDNN_PARAM_DXDESC",
    "CUDNN_PARAM_DXDATA_PLACEHOLDER",
    "CUDNN_PARAM_DWDESC",
    "CUDNN_PARAM_DWDATA_PLACEHOLDER",
    "CUDNN_PARAM_CONV_DESC",
    "CUDNN_PARAM_BN_Z_EQSCALE_PLACEHOLDER",
    "CUDNN_PARAM_BN_Z_EQSCALEBIAS_DESC",
    "CUDNN_PARAM_BN_Z_EQBIAS_PLACEHOLDER",
    "CUDNN_PARAM_BN_SCALE_PLACEHOLDER",
    "CUDNN_PARAM_BN_SCALEBIAS_MEANVAR_DESC",
    "CUDNN_PARAM_BN_SAVED_MEAN_PLACEHOLDER",
    "CUDNN_PARAM_BN_SAVED_INVSTD_PLACEHOLDER",
    "CUDNN_PARAM_BN_RUNNING_VAR_PLACEHOLDER",
    "CUDNN_PARAM_BN_RUNNING_MEAN_PLACEHOLDER",
    "CUDNN_PARAM_BN_MODE",
    "CUDNN_PARAM_BN_EQSCALE_PLACEHOLDER",
    "CUDNN_PARAM_BN_EQSCALEBIAS_DESC",
    "CUDNN_PARAM_BN_EQBIAS_PLACEHOLDER",
    "CUDNN_PARAM_BN_DSCALE_PLACEHOLDER",
    "CUDNN_PARAM_BN_DBIAS_PLACEHOLDER",
    "CUDNN_PARAM_BN_BIAS_PLACEHOLDER",
    "CUDNN_PARAM_ACTIVATION_DESC",
    "CUDNN_PARAM_ACTIVATION_BITMASK_PLACEHOLDER",
    "CUDNN_PARAM_ACTIVATION_BITMASK_DESC",
    "CUDNN_OP_TENSOR_SQRT",
    "CUDNN_OP_TENSOR_NOT",
    "CUDNN_NUMERICAL_NOTE_WINOGRAD_TILE_6x6",
    "CUDNN_NUMERICAL_NOTE_WINOGRAD_TILE_4x4",
    "CUDNN_NUMERICAL_NOTE_WINOGRAD_TILE_13x13",
    "CUDNN_NUMERICAL_NOTE_WINOGRAD",
    "CUDNN_NUMERICAL_NOTE_TYPE_COUNT",
    "CUDNN_NUMERICAL_NOTE_TENSOR_CORE",
    "CUDNN_NUMERICAL_NOTE_STRICT_NAN_PROP",
    "CUDNN_NUMERICAL_NOTE_REDUCED_PRECISION_REDUCTION",
    "CUDNN_NUMERICAL_NOTE_NONDETERMINISTIC",
    "CUDNN_NUMERICAL_NOTE_FFT",
    "CUDNN_NUMERICAL_NOTE_DOWN_CONVERT_INPUTS",
    "CUDNN_NO_REORDER",
    "CUDNN_NORM_PER_CHANNEL",
    "CUDNN_NORM_PER_ACTIVATION",
    "CUDNN_NORM_OPS_NORM_ADD_ACTIVATION",
    "CUDNN_NORM_OPS_NORM_ACTIVATION",
    "CUDNN_NORM_OPS_NORM",
    "CUDNN_NORM_FWD_TRAINING",
    "CUDNN_NORM_FWD_INFERENCE",
    "CUDNN_NORM_ALGO_STANDARD",
    "CUDNN_NORM_ALGO_PERSIST",
    "CUDNN_NON_DETERMINISTIC",
    "CUDNN_MH_ATTN_V_WEIGHTS",
    "CUDNN_MH_ATTN_V_BIASES",
    "CUDNN_MH_ATTN_Q_WEIGHTS",
    "CUDNN_MH_ATTN_Q_BIASES",
    "CUDNN_MH_ATTN_O_WEIGHTS",
    "CUDNN_MH_ATTN_O_BIASES",
    "CUDNN_MH_ATTN_K_WEIGHTS",
    "CUDNN_MH_ATTN_K_BIASES",
    "CUDNN_LRN_MIN_N",
    "CUDNN_LRN_MIN_K",
    "CUDNN_LRN_MIN_BETA",
    "CUDNN_LRN_MAX_N",
    "CUDNN_LOSS_NORMALIZATION_SOFTMAX",
    "CUDNN_LOSS_NORMALIZATION_NONE",
    "CUDNN_LAYOUT_TYPE_PREFERRED_PAD8CK",
    "CUDNN_LAYOUT_TYPE_PREFERRED_PAD4CK",
    "CUDNN_LAYOUT_TYPE_PREFERRED_NHWC",
    "CUDNN_LAYOUT_TYPE_PREFERRED_NCHW",
    "CUDNN_LAYOUT_TYPE_COUNT",
    "CUDNN_LAYER_NORM",
    "CUDNN_KNOB_TYPE_WORKSPACE",
    "CUDNN_KNOB_TYPE_WINO_TILE",
    "CUDNN_KNOB_TYPE_WARP_SPEC_CFG",
    "CUDNN_KNOB_TYPE_USE_TEX",
    "CUDNN_KNOB_TYPE_TILE_SIZE",
    "CUDNN_KNOB_TYPE_TILE_ROWS",
    "CUDNN_KNOB_TYPE_TILE_N",
    "CUDNN_KNOB_TYPE_TILE_M",
    "CUDNN_KNOB_TYPE_TILE_COLS",
    "CUDNN_KNOB_TYPE_TILE_CGA_N",
    "CUDNN_KNOB_TYPE_TILE_CGA_M",
    "CUDNN_KNOB_TYPE_TILE_CGA",
    "CUDNN_KNOB_TYPE_TILEK",
    "CUDNN_KNOB_TYPE_SWIZZLE",
    "CUDNN_KNOB_TYPE_STREAM_K",
    "CUDNN_KNOB_TYPE_STAGES",
    "CUDNN_KNOB_TYPE_SPLIT_RS",
    "CUDNN_KNOB_TYPE_SPLIT_P_SLC",
    "CUDNN_KNOB_TYPE_SPLIT_K_SLC",
    "CUDNN_KNOB_TYPE_SPLIT_K_BUF",
    "CUDNN_KNOB_TYPE_SPLIT_K",
    "CUDNN_KNOB_TYPE_SPLIT_H",
    "CUDNN_KNOB_TYPE_SPLIT_COLS",
    "CUDNN_KNOB_TYPE_SPECFILT",
    "CUDNN_KNOB_TYPE_SLICED",
    "CUDNN_KNOB_TYPE_SINGLEBUFFER",
    "CUDNN_KNOB_TYPE_REDUCTION_MODE",
    "CUDNN_KNOB_TYPE_OCCUPANCY",
    "CUDNN_KNOB_TYPE_NUM_C_PER_BLOCK",
    "CUDNN_KNOB_TYPE_MULTIPLY",
    "CUDNN_KNOB_TYPE_LOAD_SIZE",
    "CUDNN_KNOB_TYPE_LDGC",
    "CUDNN_KNOB_TYPE_LDGB",
    "CUDNN_KNOB_TYPE_LDGA",
    "CUDNN_KNOB_TYPE_KERNEL_CFG",
    "CUDNN_KNOB_TYPE_KBLOCK",
    "CUDNN_KNOB_TYPE_IDX_MODE",
    "CUDNN_KNOB_TYPE_EDGE",
    "CUDNN_KNOB_TYPE_CTA_SPLIT_K_MODE",
    "CUDNN_KNOB_TYPE_CTA_COUNT",
    "CUDNN_KNOB_TYPE_COUNTS",
    "CUDNN_KNOB_TYPE_CHUNK_K",
    "CUDNN_KNOB_TYPE_BLOCK_SIZE",
    "CUDNN_KNOB_TYPE_ARRAY_SIZE_PER_THREAD",
    "CUDNN_INSTANCE_NORM",
    "CUDNN_GROUP_NORM",
    "CUDNN_GENSTATS_SUM_SQSUM",
    "CUDNN_FUSED_SCALE_BIAS_ADD_ACTIVATION_GEN_BITMASK",
    "CUDNN_FUSED_SCALE_BIAS_ACTIVATION_WGRAD",
    "CUDNN_FUSED_SCALE_BIAS_ACTIVATION_CONV_BNSTATS",
    "CUDNN_FUSED_DACTIVATION_FORK_DBATCHNORM",
    "CUDNN_FUSED_CONV_SCALE_BIAS_ADD_ACTIVATION",
    "CUDNN_FUSED_BN_FINALIZE_STATISTICS_TRAINING",
    "CUDNN_FUSED_BN_FINALIZE_STATISTICS_INFERENCE",
    "CUDNN_FMA_MATH",
    "CUDNN_ERRQUERY_RAWCODE",
    "CUDNN_ERRQUERY_NONBLOCKING",
    "CUDNN_ERRQUERY_BLOCKING",
    "CUDNN_DIVNORM_PRECOMPUTED_MEANS",
    "CUDNN_DIM_MAX",
    "CUDNN_DETERMINISTIC",
    "CUDNN_DEFAULT_REORDER",
    "CUDNN_DEFAULT_MATH",
    "CUDNN_DATA_UINT8x4",
    "CUDNN_DATA_UINT8",
    "CUDNN_DATA_INT8x32",
    "CUDNN_DATA_FP8_E8M0",
    "CUDNN_DATA_FP4_E2M1",
    "CUDNN_DATA_FAST_FLOAT_FOR_FP8",
    "CUDNN_DATA_BOOLEAN",
    "CUDNN_CTC_ZERO_OOB_GRADIENTS",
    "CUDNN_CTC_SKIP_OOB_GRADIENTS",
    "CUDNN_CTC_LOSS_ALGO_NON_DETERMINISTIC",
    "CUDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT",
    "CUDNN_CONVOLUTION_FWD_PREFER_FASTEST",
    "CUDNN_CONVOLUTION_FWD_NO_WORKSPACE",
    "CUDNN_CONVOLUTION_FWD_ALGO_WINOGRAD_NONFUSED",
    "CUDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_PRECOMP_GEMM",
    "CUDNN_CONVOLUTION_FWD_ALGO_FFT_TILING",
    "CUDNN_CONVOLUTION_FWD_ALGO_COUNT",
    "CUDNN_CONVOLUTION_BWD_FILTER_SPECIFY_WORKSPACE_LIMIT",
    "CUDNN_CONVOLUTION_BWD_FILTER_PREFER_FASTEST",
    "CUDNN_CONVOLUTION_BWD_FILTER_NO_WORKSPACE",
    "CUDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD_NONFUSED",
    "CUDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD",
    "CUDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT_TILING",
    "CUDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT",
    "CUDNN_CONVOLUTION_BWD_FILTER_ALGO_COUNT",
    "CUDNN_CONVOLUTION_BWD_FILTER_ALGO_3",
    "CUDNN_CONVOLUTION_BWD_FILTER_ALGO_1",
    "CUDNN_CONVOLUTION_BWD_FILTER_ALGO_0",
    "CUDNN_CONVOLUTION_BWD_DATA_SPECIFY_WORKSPACE_LIMIT",
    "CUDNN_CONVOLUTION_BWD_DATA_PREFER_FASTEST",
    "CUDNN_CONVOLUTION_BWD_DATA_NO_WORKSPACE",
    "CUDNN_CONVOLUTION_BWD_DATA_ALGO_WINOGRAD_NONFUSED",
    "CUDNN_CONVOLUTION_BWD_DATA_ALGO_FFT_TILING",
    "CUDNN_BN_MIN_EPSILON",
    "CUDNN_BN_FINALIZE_STATISTICS_TRAINING",
    "CUDNN_BN_FINALIZE_STATISTICS_INFERENCE",
    "CUDNN_BEHAVIOR_NOTE_TYPE_COUNT",
    "CUDNN_BEHAVIOR_NOTE_SUPPORTS_CUDA_GRAPH_NATIVE_API",
    "CUDNN_BEHAVIOR_NOTE_RUNTIME_COMPILATION",
    "CUDNN_BEHAVIOR_NOTE_REQUIRES_FILTER_INT8x32_REORDER",
    "CUDNN_BEHAVIOR_NOTE_REQUIRES_BIAS_INT8x32_REORDER",
    "CUDNN_BATCH_NORM",
    "CUDNN_BATCHNORM_SPATIAL_PERSISTENT",
    "CUDNN_BATCHNORM_OPS_BN_ADD_ACTIVATION",
    "CUDNN_BATCHNORM_OPS_BN_ACTIVATION",
    "CUDNN_BATCHNORM_OPS_BN",
    "CUDNN_BACKEND_OPERATION_PAGED_CACHE_LOAD_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_BN_FINALIZE_STATISTICS_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_BN_BWD_WEIGHTS_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_BLOCK_SCALE_QUANTIZE_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_BLOCK_SCALE_DEQUANTIZE_DESCRIPTOR",
    "CUDNN_BACKEND_KERNEL_CACHE_DESCRIPTOR",
    "CUDNN_ATTR_OPERATION_PAGED_CACHE_LOAD_YDESC",
    "CUDNN_ATTR_OPERATION_PAGED_CACHE_LOAD_SEQUENCE_DESC",
    "CUDNN_ATTR_OPERATION_PAGED_CACHE_LOAD_PAGE_TABLE_DESC",
    "CUDNN_ATTR_OPERATION_PAGED_CACHE_LOAD_CONTAINER_DESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_QUANTIZE_YDESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_QUANTIZE_XDESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_QUANTIZE_SCALE_DESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_QUANTIZE_MATH_PREC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_QUANTIZE_DENOM_FACTOR_MODE",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_QUANTIZE_BLOCK_SIZE",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_DEQUANTIZE_YDESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_DEQUANTIZE_XDESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_DEQUANTIZE_SCALE_DESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_DEQUANTIZE_MATH_PREC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_DEQUANTIZE_BLOCK_SIZE",
    "CUDNN_ATTR_OPERATIONGRAPH_IS_SAME_TOPOLOGY",
    "CUDNN_ATTR_OPERATIONGRAPH_IS_DYNAMIC_SHAPE_ENABLED",
    "CUDNN_ATTR_KERNEL_CACHE_OPERATION_GRAPH",
    "CUDNN_ATTR_KERNEL_CACHE_IS_ENGINECFG_KERNEL_CACHED",
    "CUDNN_ATTR_EXECUTION_PLAN_KERNEL_CACHE",
    "CUDNN_ATTR_ENGINECFG_WORKSPACE_SIZE",
    "CUDNN_ATTR_ENGINECFG_SHARED_MEMORY_USED",
    "CUDNN_ATTN_WKIND_COUNT",
    "CUDNN_ATTN_QUERYMAP_ONE_TO_ONE",
    "CUDNN_ATTN_QUERYMAP_ALL_TO_ONE",
    "CUDNN_ATTN_ENABLE_PROJ_BIASES",
    "CUDNN_ATTN_DISABLE_PROJ_BIASES",
    "CUDNN_ADA_LAYER_NORM",
    "CUDNN_ACTIVATION_SWISH"
);

sub warnMIOpenOnlyUnsupportedFunctions {
    my $line_num = shift;
    my $k = 0;
    foreach $func (@MIOpenOnlyUnsupportedFunctions)
    {
        my $mt = m/\b($func)\b/g;
        if ($mt) {
            $k += $mt;
            print STDERR "  $fileName:$line_num: warning: unsupported MIOpen identifier: $func\n";
        }
    }
    return $k;
}

@HipDNNOnlyUnsupportedFunctions = (
    "cudnnWgradMode_t",
    "cudnnTransformTensorEx",
    "cudnnTransformTensor",
    "cudnnTransformFilter",
    "cudnnTensorTransformStruct",
    "cudnnTensorTransformDescriptor_t",
    "cudnnTensorStruct",
    "cudnnSpatialTransformerStruct",
    "cudnnSpatialTransformerDescriptor_t",
    "cudnnSpatialTfSamplerForward",
    "cudnnSpatialTfSamplerBackward",
    "cudnnSpatialTfGridGeneratorForward",
    "cudnnSpatialTfGridGeneratorBackward",
    "cudnnSignalMode_t",
    "cudnnSeverity_t",
    "cudnnSetTensorTransformDescriptor",
    "cudnnSetTensorNdDescriptorEx",
    "cudnnSetSpatialTransformerNdDescriptor",
    "cudnnSetSeqDataDescriptor",
    "cudnnSetRNNProjectionLayers",
    "cudnnSetRNNPaddingMode",
    "cudnnSetRNNMatrixMathType",
    "cudnnSetRNNDescriptor_v8",
    "cudnnSetRNNDataDescriptor",
    "cudnnSetRNNBiasMode",
    "cudnnSetRNNAlgorithmDescriptor",
    "cudnnSetFusedOpsVariantParamPackAttribute",
    "cudnnSetFusedOpsConstParamPackAttribute",
    "cudnnSetConvolutionReorderType",
    "cudnnSetCallback",
    "cudnnSetCTCLossDescriptor_v9",
    "cudnnSetCTCLossDescriptor_v8",
    "cudnnSetCTCLossDescriptorEx",
    "cudnnSetCTCLossDescriptor",
    "cudnnSetAttnDescriptor",
    "cudnnSetAlgorithmPerformance",
    "cudnnSetAlgorithmDescriptor",
    "cudnnSetActivationDescriptorSwishBeta",
    "cudnnSeqDataStruct",
    "cudnnSeqDataDescriptor_t",
    "cudnnSeqDataAxis_t",
    "cudnnSaveAlgorithm",
    "cudnnSamplerType_t",
    "cudnnRuntimeTag_t",
    "cudnnRngDistribution_t",
    "cudnnRestoreDropoutDescriptor",
    "cudnnRestoreAlgorithm",
    "cudnnResampleMode_t",
    "cudnnReorderType_t",
    "cudnnReorderFilterAndBias",
    "cudnnReduceTensorStruct",
    "cudnnRNNStruct",
    "cudnnRNNSetClip_v9",
    "cudnnRNNSetClip_v8",
    "cudnnRNNSetClip",
    "cudnnRNNPaddingMode_t",
    "cudnnRNNGetClip_v9",
    "cudnnRNNGetClip_v8",
    "cudnnRNNGetClip",
    "cudnnRNNForwardTrainingEx",
    "cudnnRNNForwardInferenceEx",
    "cudnnRNNForward",
    "cudnnRNNDataStruct",
    "cudnnRNNDataLayout_t",
    "cudnnRNNDataDescriptor_t",
    "cudnnRNNClipMode_t",
    "cudnnRNNBackwardWeights_v8",
    "cudnnRNNBackwardWeightsEx",
    "cudnnRNNBackwardData_v8",
    "cudnnRNNBackwardDataEx",
    "cudnnQueryRuntimeError",
    "cudnnPoolingStruct",
    "cudnnPointwiseMode_t",
    "cudnnPersistentRNNPlan",
    "cudnnPaddingMode_t",
    "cudnnOpsVersionCheck",
    "cudnnOpsTrainVersionCheck",
    "cudnnOpsInferVersionCheck",
    "cudnnOpTensorStruct",
    "cudnnNormalizationForwardTraining",
    "cudnnNormalizationForwardInference",
    "cudnnNormalizationBackward",
    "cudnnNormOps_t",
    "cudnnNormMode_t",
    "cudnnNormAlgo_t",
    "cudnnMultiHeadAttnWeightKind_t",
    "cudnnMultiHeadAttnForward",
    "cudnnMultiHeadAttnBackwardWeights",
    "cudnnMultiHeadAttnBackwardData",
    "cudnnMakeFusedOpsPlan",
    "cudnnLossNormalizationMode_t",
    "cudnnLRNStruct",
    "cudnnInitTransformDest",
    "cudnnIm2Col",
    "cudnnGraphVersionCheck",
    "cudnnGetTensorTransformDescriptor",
    "cudnnGetTensorSizeInBytes",
    "cudnnGetSeqDataDescriptor",
    "cudnnGetReductionIndicesSize",
    "cudnnGetRNNWeightSpaceSize",
    "cudnnGetRNNWeightParams",
    "cudnnGetRNNTempSpaceSizes",
    "cudnnGetRNNProjectionLayers",
    "cudnnGetRNNPaddingMode",
    "cudnnGetRNNMatrixMathType",
    "cudnnGetRNNForwardTrainingAlgorithmMaxCount",
    "cudnnGetRNNForwardInferenceAlgorithmMaxCount",
    "cudnnGetRNNDescriptor_v8",
    "cudnnGetRNNDescriptor_v6",
    "cudnnGetRNNDataDescriptor",
    "cudnnGetRNNBiasMode",
    "cudnnGetRNNBackwardWeightsAlgorithmMaxCount",
    "cudnnGetRNNBackwardDataAlgorithmMaxCount",
    "cudnnGetProperty",
    "cudnnGetPoolingNdForwardOutputDim",
    "cudnnGetPoolingNdDescriptor",
    "cudnnGetNormalizationTrainingReserveSpaceSize",
    "cudnnGetNormalizationForwardTrainingWorkspaceSize",
    "cudnnGetNormalizationBackwardWorkspaceSize",
    "cudnnGetMultiHeadAttnWeights",
    "cudnnGetMultiHeadAttnBuffers",
    "cudnnGetMaxDeviceVersion",
    "cudnnGetLastErrorString",
    "cudnnGetFusedOpsVariantParamPackAttribute",
    "cudnnGetFusedOpsConstParamPackAttribute",
    "cudnnGetFoldedConvBackwardDataDescriptors",
    "cudnnGetFilterSizeInBytes",
    "cudnnGetDropoutDescriptor",
    "cudnnGetCudartVersion",
    "cudnnGetConvolutionReorderType",
    "cudnnGetConvolutionNdForwardOutputDim",
    "cudnnGetConvolutionNdDescriptor",
    "cudnnGetConvolutionMathType",
    "cudnnGetConvolutionGroupCount",
    "cudnnGetConvolutionForwardAlgorithm_v7",
    "cudnnGetConvolutionForwardAlgorithmMaxCount",
    "cudnnGetConvolutionBackwardFilterAlgorithm_v7",
    "cudnnGetConvolutionBackwardFilterAlgorithmMaxCount",
    "cudnnGetConvolutionBackwardDataAlgorithm_v7",
    "cudnnGetConvolutionBackwardDataAlgorithmMaxCount",
    "cudnnGetCallback",
    "cudnnGetCTCLossWorkspaceSize_v8",
    "cudnnGetCTCLossWorkspaceSize",
    "cudnnGetCTCLossDescriptor_v9",
    "cudnnGetCTCLossDescriptor_v8",
    "cudnnGetCTCLossDescriptorEx",
    "cudnnGetCTCLossDescriptor",
    "cudnnGetBatchNormalizationTrainingExReserveSpaceSize",
    "cudnnGetBatchNormalizationForwardTrainingExWorkspaceSize",
    "cudnnGetBatchNormalizationBackwardExWorkspaceSize",
    "cudnnGetAttnDescriptor",
    "cudnnGetAlgorithmSpaceSize",
    "cudnnGetAlgorithmPerformance",
    "cudnnGetAlgorithmDescriptor",
    "cudnnGetActivationDescriptorSwishBeta",
    "cudnnGenStatsMode_t",
    "cudnnFusedOps_t",
    "cudnnFusedOpsVariantParamStruct",
    "cudnnFusedOpsVariantParamPack_t",
    "cudnnFusedOpsVariantParamLabel_t",
    "cudnnFusedOpsPointerPlaceHolder_t",
    "cudnnFusedOpsPlan_t",
    "cudnnFusedOpsPlanStruct",
    "cudnnFusedOpsExecute",
    "cudnnFusedOpsConstParamStruct",
    "cudnnFusedOpsConstParamPack_t",
    "cudnnFusedOpsConstParamLabel_t",
    "cudnnFraction_t",
    "cudnnFractionStruct",
    "cudnnForwardMode_t",
    "cudnnFoldingDirection_t",
    "cudnnFindRNNForwardTrainingAlgorithmEx",
    "cudnnFindRNNForwardInferenceAlgorithmEx",
    "cudnnFindRNNBackwardWeightsAlgorithmEx",
    "cudnnFindRNNBackwardDataAlgorithmEx",
    "cudnnFilterStruct",
    "cudnnErrQueryMode_t",
    "cudnnDropoutStruct",
    "cudnnDropoutGetReserveSpaceSize",
    "cudnnDropoutForward",
    "cudnnDropoutBackward",
    "cudnnDivisiveNormalizationForward",
    "cudnnDivisiveNormalizationBackward",
    "cudnnDivNormMode_t",
    "cudnnDeterminism_t",
    "cudnnDestroyTensorTransformDescriptor",
    "cudnnDestroySpatialTransformerDescriptor",
    "cudnnDestroySeqDataDescriptor",
    "cudnnDestroyRNNDataDescriptor",
    "cudnnDestroyFusedOpsVariantParamPack",
    "cudnnDestroyFusedOpsPlan",
    "cudnnDestroyFusedOpsConstParamPack",
    "cudnnDestroyCTCLossDescriptor",
    "cudnnDestroyAttnDescriptor",
    "cudnnDestroyAlgorithmPerformance",
    "cudnnDestroyAlgorithmDescriptor",
    "cudnnDeriveNormTensorDescriptor",
    "cudnnDebug_t",
    "cudnnDebugStruct",
    "cudnnCreateTensorTransformDescriptor",
    "cudnnCreateSpatialTransformerDescriptor",
    "cudnnCreateSeqDataDescriptor",
    "cudnnCreateRNNDataDescriptor",
    "cudnnCreateFusedOpsVariantParamPack",
    "cudnnCreateFusedOpsPlan",
    "cudnnCreateFusedOpsConstParamPack",
    "cudnnCreateCTCLossDescriptor",
    "cudnnCreateAttnDescriptor",
    "cudnnCreateAlgorithmPerformance",
    "cudnnCreateAlgorithmDescriptor",
    "cudnnCopyAlgorithmDescriptor",
    "cudnnConvolutionStruct",
    "cudnnConvolutionBiasActivationForward",
    "cudnnContext",
    "cudnnCnnTrainVersionCheck",
    "cudnnCnnInferVersionCheck",
    "cudnnCallback_t",
    "cudnnCTCLoss_v8",
    "cudnnCTCLossStruct",
    "cudnnCTCLossDescriptor_t",
    "cudnnCTCLossAlgo_t",
    "cudnnCTCLoss",
    "cudnnCTCGradMode_t",
    "cudnnBuildRNNDynamic",
    "cudnnBnFinalizeStatsMode_t",
    "cudnnBatchNormalizationForwardTrainingEx",
    "cudnnBatchNormalizationBackwardEx",
    "cudnnBatchNormOps_t",
    "cudnnBackendUpdateCudaGraph",
    "cudnnBackendTensorReordering_t",
    "cudnnBackendSetAttribute",
    "cudnnBackendPopulateCudaGraph",
    "cudnnBackendNumericalNote_t",
    "cudnnBackendNormMode_t",
    "cudnnBackendNormFwdPhase_t",
    "cudnnBackendLayoutType_t",
    "cudnnBackendKnobType_t",
    "cudnnBackendInitialize",
    "cudnnBackendHeurMode_t",
    "cudnnBackendGetAttribute",
    "cudnnBackendFinalize",
    "cudnnBackendExecute",
    "cudnnBackendDestroyDescriptor",
    "cudnnBackendDescriptor_t",
    "cudnnBackendDescriptorType_t",
    "cudnnBackendCreateDescriptor",
    "cudnnBackendBehaviorNote_t",
    "cudnnBackendAttributeType_t",
    "cudnnBackendAttributeName_t",
    "cudnnAttnStruct",
    "cudnnAttnQueryMap_t",
    "cudnnAttnDescriptor_t",
    "cudnnAlgorithm_t",
    "cudnnAlgorithmUnionStruct",
    "cudnnAlgorithmStruct",
    "cudnnAlgorithmPerformance_t",
    "cudnnAlgorithmPerformanceStruct",
    "cudnnAlgorithmDescriptor_t",
    "cudnnAdvVersionCheck",
    "cudnnAdvTrainVersionCheck",
    "cudnnAdvInferVersionCheck",
    "cudnnActivationStruct",
    "CUDNN_ZERO_PAD",
    "CUDNN_WGRAD_MODE_SET",
    "CUDNN_WGRAD_MODE_ADD",
    "CUDNN_TYPE_VOID_PTR",
    "CUDNN_TYPE_TENSOR_REORDERING_MODE",
    "CUDNN_TYPE_SIGNAL_MODE",
    "CUDNN_TYPE_RNG_DISTRIBUTION",
    "CUDNN_TYPE_RESAMPLE_MODE",
    "CUDNN_TYPE_REDUCTION_OPERATOR_TYPE",
    "CUDNN_TYPE_POINTWISE_MODE",
    "CUDNN_TYPE_PADDING_MODE",
    "CUDNN_TYPE_NUMERICAL_NOTE",
    "CUDNN_TYPE_NORM_MODE",
    "CUDNN_TYPE_NORM_FWD_PHASE",
    "CUDNN_TYPE_NAN_PROPOGATION",
    "CUDNN_TYPE_LAYOUT_TYPE",
    "CUDNN_TYPE_KNOB_TYPE",
    "CUDNN_TYPE_INT64",
    "CUDNN_TYPE_INT32",
    "CUDNN_TYPE_HEUR_MODE",
    "CUDNN_TYPE_HANDLE",
    "CUDNN_TYPE_GENSTATS_MODE",
    "CUDNN_TYPE_FRACTION",
    "CUDNN_TYPE_FLOAT",
    "CUDNN_TYPE_DOUBLE",
    "CUDNN_TYPE_DATA_TYPE",
    "CUDNN_TYPE_CONVOLUTION_MODE",
    "CUDNN_TYPE_CHAR",
    "CUDNN_TYPE_BOOLEAN",
    "CUDNN_TYPE_BN_FINALIZE_STATS_MODE",
    "CUDNN_TYPE_BEHAVIOR_NOTE",
    "CUDNN_TYPE_BACKEND_DESCRIPTOR",
    "CUDNN_TYPE_ATTRIB_NAME",
    "CUDNN_TRANSFORM_UNFOLD",
    "CUDNN_TRANSFORM_FOLD",
    "CUDNN_TENSOR_REORDERING_NONE",
    "CUDNN_TENSOR_REORDERING_INT8x32",
    "CUDNN_TENSOR_REORDERING_F8_128x4",
    "CUDNN_TENSOR_REORDERING_F16x16",
    "CUDNN_TENSOR_OP_MATH_ALLOW_CONVERSION",
    "CUDNN_STATUS_VERSION_MISMATCH",
    "CUDNN_STATUS_SUBLIBRARY_VERSION_MISMATCH",
    "CUDNN_STATUS_SUBLIBRARY_LOADING_FAILED",
    "CUDNN_STATUS_SPECIFIC_ERROR",
    "CUDNN_STATUS_SERIALIZATION_VERSION_MISMATCH",
    "CUDNN_STATUS_RUNTIME_IN_PROGRESS",
    "CUDNN_STATUS_RUNTIME_FP_OVERFLOW",
    "CUDNN_STATUS_NOT_SUPPORTED_SUBLIBRARY_UNAVAILABLE",
    "CUDNN_STATUS_NOT_SUPPORTED_SHARED_MEMORY_INSUFFICIENT",
    "CUDNN_STATUS_NOT_SUPPORTED_SHAPE",
    "CUDNN_STATUS_NOT_SUPPORTED_RUNTIME_PREREQUISITE_MISSING",
    "CUDNN_STATUS_NOT_SUPPORTED_PADDING",
    "CUDNN_STATUS_NOT_SUPPORTED_LAYOUT",
    "CUDNN_STATUS_NOT_SUPPORTED_INCOMPATIBLE_CUDA_DRIVER",
    "CUDNN_STATUS_NOT_SUPPORTED_INCOMPATIBLE_CUDART",
    "CUDNN_STATUS_NOT_SUPPORTED_GRAPH_PATTERN",
    "CUDNN_STATUS_NOT_SUPPORTED_DATA_TYPE",
    "CUDNN_STATUS_NOT_SUPPORTED_CUDA_GRAPH_NATIVE_API",
    "CUDNN_STATUS_NOT_SUPPORTED_BAD_LAUNCH_PARAM",
    "CUDNN_STATUS_NOT_SUPPORTED_ARCH_MISMATCH",
    "CUDNN_STATUS_INTERNAL_ERROR_UNEXPECTED_VALUE",
    "CUDNN_STATUS_INTERNAL_ERROR_TEXTURE_CREATION_FAILED",
    "CUDNN_STATUS_INTERNAL_ERROR_HOST_ALLOCATION_FAILED",
    "CUDNN_STATUS_INTERNAL_ERROR_DEVICE_ALLOCATION_FAILED",
    "CUDNN_STATUS_INTERNAL_ERROR_COMPILATION_FAILED",
    "CUDNN_STATUS_INTERNAL_ERROR_BAD_LAUNCH_PARAM",
    "CUDNN_STATUS_FULL_ERROR_CODE",
    "CUDNN_STATUS_EXECUTION_FAILED_CURAND",
    "CUDNN_STATUS_EXECUTION_FAILED_CUDA_DRIVER",
    "CUDNN_STATUS_EXECUTION_FAILED_CUDART",
    "CUDNN_STATUS_EXECUTION_FAILED_CUBLAS",
    "CUDNN_STATUS_DEPRECATED",
    "CUDNN_STATUS_CATEGORY",
    "CUDNN_STATUS_BAD_PARAM_STREAM_MISMATCH",
    "CUDNN_STATUS_BAD_PARAM_SIZE_INSUFFICIENT",
    "CUDNN_STATUS_BAD_PARAM_SHAPE_MISMATCH",
    "CUDNN_STATUS_BAD_PARAM_OUT_OF_BOUND",
    "CUDNN_STATUS_BAD_PARAM_NULL_POINTER",
    "CUDNN_STATUS_BAD_PARAM_NOT_FINALIZED",
    "CUDNN_STATUS_BAD_PARAM_MISALIGNED_POINTER",
    "CUDNN_STATUS_BAD_PARAM_DUPLICATED_ENTRIES",
    "CUDNN_STATUS_BAD_PARAM_DESCRIPTOR_TYPE",
    "CUDNN_STATUS_BAD_PARAM_CUDA_GRAPH_MISMATCH",
    "CUDNN_STATUS_BAD_PARAM_ATTRIBUTE_TYPE",
    "CUDNN_SIGNAL_WAIT",
    "CUDNN_SIGNAL_SET",
    "CUDNN_SEV_WARNING_EN",
    "CUDNN_SEV_WARNING",
    "CUDNN_SEV_INFO_EN",
    "CUDNN_SEV_INFO",
    "CUDNN_SEV_FATAL",
    "CUDNN_SEV_ERROR_EN",
    "CUDNN_SEV_ERROR",
    "CUDNN_SEQDATA_VECT_DIM",
    "CUDNN_SEQDATA_TIME_DIM",
    "CUDNN_SEQDATA_DIM_COUNT",
    "CUDNN_SEQDATA_BEAM_DIM",
    "CUDNN_SEQDATA_BATCH_DIM",
    "CUDNN_SCALAR_SIZE_T_WORKSPACE_SIZE_IN_BYTES",
    "CUDNN_SCALAR_INT64_T_BN_ACCUMULATION_COUNT",
    "CUDNN_SCALAR_DOUBLE_BN_EXP_AVG_FACTOR",
    "CUDNN_SCALAR_DOUBLE_BN_EPSILON",
    "CUDNN_SAMPLER_BILINEAR",
    "CUDNN_RNN_PADDED_IO_ENABLED",
    "CUDNN_RNN_PADDED_IO_DISABLED",
    "CUDNN_RNN_DATA_LAYOUT_SEQ_MAJOR_UNPACKED",
    "CUDNN_RNN_DATA_LAYOUT_SEQ_MAJOR_PACKED",
    "CUDNN_RNN_DATA_LAYOUT_BATCH_MAJOR_UNPACKED",
    "CUDNN_RNN_CLIP_NONE",
    "CUDNN_RNN_CLIP_MINMAX",
    "CUDNN_RNN_ALGO_COUNT",
    "CUDNN_RNG_DISTRIBUTION_UNIFORM",
    "CUDNN_RNG_DISTRIBUTION_NORMAL",
    "CUDNN_RNG_DISTRIBUTION_BERNOULLI",
    "CUDNN_RMS_NORM",
    "CUDNN_RESAMPLE_NEAREST",
    "CUDNN_RESAMPLE_MAXPOOL",
    "CUDNN_RESAMPLE_BILINEAR",
    "CUDNN_RESAMPLE_AVGPOOL_INCLUDE_PADDING",
    "CUDNN_RESAMPLE_AVGPOOL_EXCLUDE_PADDING",
    "CUDNN_RESAMPLE_AVGPOOL",
    "CUDNN_PTR_ZDATA",
    "CUDNN_PTR_YSUM",
    "CUDNN_PTR_YSQSUM",
    "CUDNN_PTR_YDATA",
    "CUDNN_PTR_XDATA",
    "CUDNN_PTR_WORKSPACE",
    "CUDNN_PTR_WDATA",
    "CUDNN_PTR_NULL",
    "CUDNN_PTR_ELEM_ALIGNED",
    "CUDNN_PTR_DZDATA",
    "CUDNN_PTR_DYDATA",
    "CUDNN_PTR_DXDATA",
    "CUDNN_PTR_DWDATA",
    "CUDNN_PTR_BN_Z_EQSCALE",
    "CUDNN_PTR_BN_Z_EQBIAS",
    "CUDNN_PTR_BN_SCALE",
    "CUDNN_PTR_BN_SAVED_MEAN",
    "CUDNN_PTR_BN_SAVED_INVSTD",
    "CUDNN_PTR_BN_RUNNING_VAR",
    "CUDNN_PTR_BN_RUNNING_MEAN",
    "CUDNN_PTR_BN_EQSCALE",
    "CUDNN_PTR_BN_EQBIAS",
    "CUDNN_PTR_BN_DSCALE",
    "CUDNN_PTR_BN_DBIAS",
    "CUDNN_PTR_BN_BIAS",
    "CUDNN_PTR_ACTIVATION_BITMASK",
    "CUDNN_PTR_16B_ALIGNED",
    "CUDNN_POINTWISE_TANH_FWD",
    "CUDNN_POINTWISE_TANH_BWD",
    "CUDNN_POINTWISE_TAN",
    "CUDNN_POINTWISE_SWISH_FWD",
    "CUDNN_POINTWISE_SWISH_BWD",
    "CUDNN_POINTWISE_SUB",
    "CUDNN_POINTWISE_SQRT",
    "CUDNN_POINTWISE_SOFTPLUS_FWD",
    "CUDNN_POINTWISE_SOFTPLUS_BWD",
    "CUDNN_POINTWISE_SIN",
    "CUDNN_POINTWISE_SIGMOID_FWD",
    "CUDNN_POINTWISE_SIGMOID_BWD",
    "CUDNN_POINTWISE_RSQRT",
    "CUDNN_POINTWISE_RELU_FWD",
    "CUDNN_POINTWISE_RELU_BWD",
    "CUDNN_POINTWISE_RECIPROCAL",
    "CUDNN_POINTWISE_POW",
    "CUDNN_POINTWISE_NEG",
    "CUDNN_POINTWISE_MUL",
    "CUDNN_POINTWISE_MOD",
    "CUDNN_POINTWISE_MIN",
    "CUDNN_POINTWISE_MAX",
    "CUDNN_POINTWISE_LOGICAL_OR",
    "CUDNN_POINTWISE_LOGICAL_NOT",
    "CUDNN_POINTWISE_LOGICAL_AND",
    "CUDNN_POINTWISE_LOG",
    "CUDNN_POINTWISE_IDENTITY",
    "CUDNN_POINTWISE_GEN_INDEX",
    "CUDNN_POINTWISE_GELU_FWD",
    "CUDNN_POINTWISE_GELU_BWD",
    "CUDNN_POINTWISE_GELU_APPROX_TANH_FWD",
    "CUDNN_POINTWISE_GELU_APPROX_TANH_BWD",
    "CUDNN_POINTWISE_FLOOR",
    "CUDNN_POINTWISE_EXP",
    "CUDNN_POINTWISE_ERF",
    "CUDNN_POINTWISE_ELU_FWD",
    "CUDNN_POINTWISE_ELU_BWD",
    "CUDNN_POINTWISE_DIV",
    "CUDNN_POINTWISE_COS",
    "CUDNN_POINTWISE_CMP_NEQ",
    "CUDNN_POINTWISE_CMP_LT",
    "CUDNN_POINTWISE_CMP_LE",
    "CUDNN_POINTWISE_CMP_GT",
    "CUDNN_POINTWISE_CMP_GE",
    "CUDNN_POINTWISE_CMP_EQ",
    "CUDNN_POINTWISE_CEIL",
    "CUDNN_POINTWISE_BINARY_SELECT",
    "CUDNN_POINTWISE_ATAN2",
    "CUDNN_POINTWISE_ADD_SQUARE",
    "CUDNN_POINTWISE_ADD",
    "CUDNN_POINTWISE_ABS",
    "CUDNN_PARAM_ZDESC",
    "CUDNN_PARAM_ZDATA_PLACEHOLDER",
    "CUDNN_PARAM_YSUM_PLACEHOLDER",
    "CUDNN_PARAM_YSTATS_DESC",
    "CUDNN_PARAM_YSQSUM_PLACEHOLDER",
    "CUDNN_PARAM_YDESC",
    "CUDNN_PARAM_YDATA_PLACEHOLDER",
    "CUDNN_PARAM_XDESC",
    "CUDNN_PARAM_XDATA_PLACEHOLDER",
    "CUDNN_PARAM_WDESC",
    "CUDNN_PARAM_WDATA_PLACEHOLDER",
    "CUDNN_PARAM_DZDESC",
    "CUDNN_PARAM_DZDATA_PLACEHOLDER",
    "CUDNN_PARAM_DYDESC",
    "CUDNN_PARAM_DYDATA_PLACEHOLDER",
    "CUDNN_PARAM_DXDESC",
    "CUDNN_PARAM_DXDATA_PLACEHOLDER",
    "CUDNN_PARAM_DWDESC",
    "CUDNN_PARAM_DWDATA_PLACEHOLDER",
    "CUDNN_PARAM_CONV_DESC",
    "CUDNN_PARAM_BN_Z_EQSCALE_PLACEHOLDER",
    "CUDNN_PARAM_BN_Z_EQSCALEBIAS_DESC",
    "CUDNN_PARAM_BN_Z_EQBIAS_PLACEHOLDER",
    "CUDNN_PARAM_BN_SCALE_PLACEHOLDER",
    "CUDNN_PARAM_BN_SCALEBIAS_MEANVAR_DESC",
    "CUDNN_PARAM_BN_SAVED_MEAN_PLACEHOLDER",
    "CUDNN_PARAM_BN_SAVED_INVSTD_PLACEHOLDER",
    "CUDNN_PARAM_BN_RUNNING_VAR_PLACEHOLDER",
    "CUDNN_PARAM_BN_RUNNING_MEAN_PLACEHOLDER",
    "CUDNN_PARAM_BN_MODE",
    "CUDNN_PARAM_BN_EQSCALE_PLACEHOLDER",
    "CUDNN_PARAM_BN_EQSCALEBIAS_DESC",
    "CUDNN_PARAM_BN_EQBIAS_PLACEHOLDER",
    "CUDNN_PARAM_BN_DSCALE_PLACEHOLDER",
    "CUDNN_PARAM_BN_DBIAS_PLACEHOLDER",
    "CUDNN_PARAM_BN_BIAS_PLACEHOLDER",
    "CUDNN_PARAM_ACTIVATION_DESC",
    "CUDNN_PARAM_ACTIVATION_BITMASK_PLACEHOLDER",
    "CUDNN_PARAM_ACTIVATION_BITMASK_DESC",
    "CUDNN_OP_TENSOR_NOT",
    "CUDNN_NUMERICAL_NOTE_WINOGRAD_TILE_6x6",
    "CUDNN_NUMERICAL_NOTE_WINOGRAD_TILE_4x4",
    "CUDNN_NUMERICAL_NOTE_WINOGRAD_TILE_13x13",
    "CUDNN_NUMERICAL_NOTE_WINOGRAD",
    "CUDNN_NUMERICAL_NOTE_TYPE_COUNT",
    "CUDNN_NUMERICAL_NOTE_TENSOR_CORE",
    "CUDNN_NUMERICAL_NOTE_STRICT_NAN_PROP",
    "CUDNN_NUMERICAL_NOTE_REDUCED_PRECISION_REDUCTION",
    "CUDNN_NUMERICAL_NOTE_NONDETERMINISTIC",
    "CUDNN_NUMERICAL_NOTE_FFT",
    "CUDNN_NUMERICAL_NOTE_DOWN_CONVERT_INPUTS",
    "CUDNN_NO_REORDER",
    "CUDNN_NORM_PER_CHANNEL",
    "CUDNN_NORM_PER_ACTIVATION",
    "CUDNN_NORM_OPS_NORM_ADD_ACTIVATION",
    "CUDNN_NORM_OPS_NORM_ACTIVATION",
    "CUDNN_NORM_OPS_NORM",
    "CUDNN_NORM_FWD_TRAINING",
    "CUDNN_NORM_FWD_INFERENCE",
    "CUDNN_NORM_ALGO_STANDARD",
    "CUDNN_NORM_ALGO_PERSIST",
    "CUDNN_NON_DETERMINISTIC",
    "CUDNN_NEG_INF_PAD",
    "CUDNN_MH_ATTN_V_WEIGHTS",
    "CUDNN_MH_ATTN_V_BIASES",
    "CUDNN_MH_ATTN_Q_WEIGHTS",
    "CUDNN_MH_ATTN_Q_BIASES",
    "CUDNN_MH_ATTN_O_WEIGHTS",
    "CUDNN_MH_ATTN_O_BIASES",
    "CUDNN_MH_ATTN_K_WEIGHTS",
    "CUDNN_MH_ATTN_K_BIASES",
    "CUDNN_LRN_MIN_N",
    "CUDNN_LRN_MIN_K",
    "CUDNN_LRN_MIN_BETA",
    "CUDNN_LRN_MAX_N",
    "CUDNN_LOSS_NORMALIZATION_SOFTMAX",
    "CUDNN_LOSS_NORMALIZATION_NONE",
    "CUDNN_LAYOUT_TYPE_PREFERRED_PAD8CK",
    "CUDNN_LAYOUT_TYPE_PREFERRED_PAD4CK",
    "CUDNN_LAYOUT_TYPE_PREFERRED_NHWC",
    "CUDNN_LAYOUT_TYPE_PREFERRED_NCHW",
    "CUDNN_LAYOUT_TYPE_COUNT",
    "CUDNN_LAYER_NORM",
    "CUDNN_KNOB_TYPE_WORKSPACE",
    "CUDNN_KNOB_TYPE_WINO_TILE",
    "CUDNN_KNOB_TYPE_WARP_SPEC_CFG",
    "CUDNN_KNOB_TYPE_USE_TEX",
    "CUDNN_KNOB_TYPE_TILE_SIZE",
    "CUDNN_KNOB_TYPE_TILE_ROWS",
    "CUDNN_KNOB_TYPE_TILE_N",
    "CUDNN_KNOB_TYPE_TILE_M",
    "CUDNN_KNOB_TYPE_TILE_COLS",
    "CUDNN_KNOB_TYPE_TILE_CGA_N",
    "CUDNN_KNOB_TYPE_TILE_CGA_M",
    "CUDNN_KNOB_TYPE_TILE_CGA",
    "CUDNN_KNOB_TYPE_TILEK",
    "CUDNN_KNOB_TYPE_SWIZZLE",
    "CUDNN_KNOB_TYPE_STREAM_K",
    "CUDNN_KNOB_TYPE_STAGES",
    "CUDNN_KNOB_TYPE_SPLIT_RS",
    "CUDNN_KNOB_TYPE_SPLIT_P_SLC",
    "CUDNN_KNOB_TYPE_SPLIT_K_SLC",
    "CUDNN_KNOB_TYPE_SPLIT_K_BUF",
    "CUDNN_KNOB_TYPE_SPLIT_K",
    "CUDNN_KNOB_TYPE_SPLIT_H",
    "CUDNN_KNOB_TYPE_SPLIT_COLS",
    "CUDNN_KNOB_TYPE_SPECFILT",
    "CUDNN_KNOB_TYPE_SLICED",
    "CUDNN_KNOB_TYPE_SINGLEBUFFER",
    "CUDNN_KNOB_TYPE_REDUCTION_MODE",
    "CUDNN_KNOB_TYPE_OCCUPANCY",
    "CUDNN_KNOB_TYPE_NUM_C_PER_BLOCK",
    "CUDNN_KNOB_TYPE_MULTIPLY",
    "CUDNN_KNOB_TYPE_LOAD_SIZE",
    "CUDNN_KNOB_TYPE_LDGC",
    "CUDNN_KNOB_TYPE_LDGB",
    "CUDNN_KNOB_TYPE_LDGA",
    "CUDNN_KNOB_TYPE_KERNEL_CFG",
    "CUDNN_KNOB_TYPE_KBLOCK",
    "CUDNN_KNOB_TYPE_IDX_MODE",
    "CUDNN_KNOB_TYPE_EDGE",
    "CUDNN_KNOB_TYPE_CTA_SPLIT_K_MODE",
    "CUDNN_KNOB_TYPE_CTA_COUNT",
    "CUDNN_KNOB_TYPE_COUNTS",
    "CUDNN_KNOB_TYPE_CHUNK_K",
    "CUDNN_KNOB_TYPE_BLOCK_SIZE",
    "CUDNN_KNOB_TYPE_ARRAY_SIZE_PER_THREAD",
    "CUDNN_INSTANCE_NORM",
    "CUDNN_HEUR_MODE_INSTANT",
    "CUDNN_HEUR_MODE_FALLBACK",
    "CUDNN_HEUR_MODE_B",
    "CUDNN_HEUR_MODE_A",
    "CUDNN_HEUR_MODES_COUNT",
    "CUDNN_GROUP_NORM",
    "CUDNN_GENSTATS_SUM_SQSUM",
    "CUDNN_FWD_MODE_TRAINING",
    "CUDNN_FWD_MODE_INFERENCE",
    "CUDNN_FUSED_SCALE_BIAS_ADD_ACTIVATION_GEN_BITMASK",
    "CUDNN_FUSED_SCALE_BIAS_ACTIVATION_WGRAD",
    "CUDNN_FUSED_SCALE_BIAS_ACTIVATION_CONV_BNSTATS",
    "CUDNN_FUSED_DACTIVATION_FORK_DBATCHNORM",
    "CUDNN_FUSED_CONV_SCALE_BIAS_ADD_ACTIVATION",
    "CUDNN_FUSED_BN_FINALIZE_STATISTICS_TRAINING",
    "CUDNN_FUSED_BN_FINALIZE_STATISTICS_INFERENCE",
    "CUDNN_FMA_MATH",
    "CUDNN_ERRQUERY_RAWCODE",
    "CUDNN_ERRQUERY_NONBLOCKING",
    "CUDNN_ERRQUERY_BLOCKING",
    "CUDNN_EDGE_VAL_PAD",
    "CUDNN_DIVNORM_PRECOMPUTED_MEANS",
    "CUDNN_DIM_MAX",
    "CUDNN_DETERMINISTIC",
    "CUDNN_DEFAULT_REORDER",
    "CUDNN_DATA_UINT8x4",
    "CUDNN_DATA_UINT8",
    "CUDNN_DATA_INT8x32",
    "CUDNN_DATA_INT64",
    "CUDNN_DATA_FP8_E8M0",
    "CUDNN_DATA_FP8_E5M2",
    "CUDNN_DATA_FP8_E4M3",
    "CUDNN_DATA_FP4_E2M1",
    "CUDNN_DATA_FAST_FLOAT_FOR_FP8",
    "CUDNN_DATA_BOOLEAN",
    "CUDNN_DATA_BFLOAT16",
    "CUDNN_CTC_ZERO_OOB_GRADIENTS",
    "CUDNN_CTC_SKIP_OOB_GRADIENTS",
    "CUDNN_CTC_LOSS_ALGO_NON_DETERMINISTIC",
    "CUDNN_CTC_LOSS_ALGO_DETERMINISTIC",
    "CUDNN_BN_FINALIZE_STATISTICS_TRAINING",
    "CUDNN_BN_FINALIZE_STATISTICS_INFERENCE",
    "CUDNN_BEHAVIOR_NOTE_TYPE_COUNT",
    "CUDNN_BEHAVIOR_NOTE_SUPPORTS_CUDA_GRAPH_NATIVE_API",
    "CUDNN_BEHAVIOR_NOTE_RUNTIME_COMPILATION",
    "CUDNN_BEHAVIOR_NOTE_REQUIRES_FILTER_INT8x32_REORDER",
    "CUDNN_BEHAVIOR_NOTE_REQUIRES_BIAS_INT8x32_REORDER",
    "CUDNN_BATCH_NORM",
    "CUDNN_BATCHNORM_OPS_BN_ADD_ACTIVATION",
    "CUDNN_BATCHNORM_OPS_BN_ACTIVATION",
    "CUDNN_BATCHNORM_OPS_BN",
    "CUDNN_BACKEND_VARIANT_PACK_DESCRIPTOR",
    "CUDNN_BACKEND_TENSOR_DESCRIPTOR",
    "CUDNN_BACKEND_RNG_DESCRIPTOR",
    "CUDNN_BACKEND_RESAMPLE_DESCRIPTOR",
    "CUDNN_BACKEND_REDUCTION_DESCRIPTOR",
    "CUDNN_BACKEND_POINTWISE_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_SIGNAL_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_RNG_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_RESHAPE_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_RESAMPLE_FWD_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_RESAMPLE_BWD_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_REDUCTION_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_PAGED_CACHE_LOAD_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_NORM_FORWARD_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_NORM_BACKWARD_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_MATMUL_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_GEN_STATS_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_CONVOLUTION_FORWARD_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_CONVOLUTION_BACKWARD_FILTER_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_CONVOLUTION_BACKWARD_DATA_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_CONCAT_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_BN_FINALIZE_STATISTICS_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_BN_BWD_WEIGHTS_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_BLOCK_SCALE_QUANTIZE_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATION_BLOCK_SCALE_DEQUANTIZE_DESCRIPTOR",
    "CUDNN_BACKEND_OPERATIONGRAPH_DESCRIPTOR",
    "CUDNN_BACKEND_MATMUL_DESCRIPTOR",
    "CUDNN_BACKEND_LAYOUT_INFO_DESCRIPTOR",
    "CUDNN_BACKEND_KNOB_INFO_DESCRIPTOR",
    "CUDNN_BACKEND_KNOB_CHOICE_DESCRIPTOR",
    "CUDNN_BACKEND_KERNEL_CACHE_DESCRIPTOR",
    "CUDNN_BACKEND_INTERMEDIATE_INFO_DESCRIPTOR",
    "CUDNN_BACKEND_EXECUTION_PLAN_DESCRIPTOR",
    "CUDNN_BACKEND_ENGINE_DESCRIPTOR",
    "CUDNN_BACKEND_ENGINEHEUR_DESCRIPTOR",
    "CUDNN_BACKEND_ENGINECFG_DESCRIPTOR",
    "CUDNN_BACKEND_CONVOLUTION_DESCRIPTOR",
    "CUDNN_ATTR_VARIANT_PACK_WORKSPACE",
    "CUDNN_ATTR_VARIANT_PACK_UNIQUE_IDS",
    "CUDNN_ATTR_VARIANT_PACK_INTERMEDIATES",
    "CUDNN_ATTR_VARIANT_PACK_DATA_POINTERS",
    "CUDNN_ATTR_TENSOR_VECTOR_COUNT",
    "CUDNN_ATTR_TENSOR_VECTORIZED_DIMENSION",
    "CUDNN_ATTR_TENSOR_UNIQUE_ID",
    "CUDNN_ATTR_TENSOR_STRIDES",
    "CUDNN_ATTR_TENSOR_REORDERING_MODE",
    "CUDNN_ATTR_TENSOR_RAGGED_OFFSET_DESC",
    "CUDNN_ATTR_TENSOR_IS_VIRTUAL",
    "CUDNN_ATTR_TENSOR_IS_BY_VALUE",
    "CUDNN_ATTR_TENSOR_DIMENSIONS",
    "CUDNN_ATTR_TENSOR_DATA_TYPE",
    "CUDNN_ATTR_TENSOR_BYTE_ALIGNMENT",
    "CUDNN_ATTR_RNG_UNIFORM_DIST_MINIMUM",
    "CUDNN_ATTR_RNG_UNIFORM_DIST_MAXIMUM",
    "CUDNN_ATTR_RNG_NORMAL_DIST_STANDARD_DEVIATION",
    "CUDNN_ATTR_RNG_NORMAL_DIST_MEAN",
    "CUDNN_ATTR_RNG_DISTRIBUTION",
    "CUDNN_ATTR_RNG_BERNOULLI_DIST_PROBABILITY",
    "CUDNN_ATTR_RESAMPLE_WINDOW_DIMS",
    "CUDNN_ATTR_RESAMPLE_STRIDES",
    "CUDNN_ATTR_RESAMPLE_SPATIAL_DIMS",
    "CUDNN_ATTR_RESAMPLE_PRE_PADDINGS",
    "CUDNN_ATTR_RESAMPLE_POST_PADDINGS",
    "CUDNN_ATTR_RESAMPLE_PADDING_MODE",
    "CUDNN_ATTR_RESAMPLE_NAN_PROPAGATION",
    "CUDNN_ATTR_RESAMPLE_MODE",
    "CUDNN_ATTR_RESAMPLE_COMP_TYPE",
    "CUDNN_ATTR_REDUCTION_OPERATOR",
    "CUDNN_ATTR_REDUCTION_COMP_TYPE",
    "CUDNN_ATTR_POINTWISE_SWISH_BETA",
    "CUDNN_ATTR_POINTWISE_SOFTPLUS_BETA",
    "CUDNN_ATTR_POINTWISE_RELU_UPPER_CLIP",
    "CUDNN_ATTR_POINTWISE_RELU_LOWER_CLIP_SLOPE",
    "CUDNN_ATTR_POINTWISE_RELU_LOWER_CLIP",
    "CUDNN_ATTR_POINTWISE_NAN_PROPAGATION",
    "CUDNN_ATTR_POINTWISE_MODE",
    "CUDNN_ATTR_POINTWISE_MATH_PREC",
    "CUDNN_ATTR_POINTWISE_ELU_ALPHA",
    "CUDNN_ATTR_POINTWISE_AXIS",
    "CUDNN_ATTR_OPERATION_SIGNAL_YDESC",
    "CUDNN_ATTR_OPERATION_SIGNAL_XDESC",
    "CUDNN_ATTR_OPERATION_SIGNAL_VALUE",
    "CUDNN_ATTR_OPERATION_SIGNAL_MODE",
    "CUDNN_ATTR_OPERATION_SIGNAL_FLAGDESC",
    "CUDNN_ATTR_OPERATION_RNG_YDESC",
    "CUDNN_ATTR_OPERATION_RNG_SEED",
    "CUDNN_ATTR_OPERATION_RNG_OFFSET_DESC",
    "CUDNN_ATTR_OPERATION_RNG_DESC",
    "CUDNN_ATTR_OPERATION_RESHAPE_YDESC",
    "CUDNN_ATTR_OPERATION_RESHAPE_XDESC",
    "CUDNN_ATTR_OPERATION_RESAMPLE_FWD_YDESC",
    "CUDNN_ATTR_OPERATION_RESAMPLE_FWD_XDESC",
    "CUDNN_ATTR_OPERATION_RESAMPLE_FWD_IDXDESC",
    "CUDNN_ATTR_OPERATION_RESAMPLE_FWD_DESC",
    "CUDNN_ATTR_OPERATION_RESAMPLE_FWD_BETA",
    "CUDNN_ATTR_OPERATION_RESAMPLE_FWD_ALPHA",
    "CUDNN_ATTR_OPERATION_RESAMPLE_BWD_YDESC",
    "CUDNN_ATTR_OPERATION_RESAMPLE_BWD_XDESC",
    "CUDNN_ATTR_OPERATION_RESAMPLE_BWD_IDXDESC",
    "CUDNN_ATTR_OPERATION_RESAMPLE_BWD_DYDESC",
    "CUDNN_ATTR_OPERATION_RESAMPLE_BWD_DXDESC",
    "CUDNN_ATTR_OPERATION_RESAMPLE_BWD_DESC",
    "CUDNN_ATTR_OPERATION_RESAMPLE_BWD_BETA",
    "CUDNN_ATTR_OPERATION_RESAMPLE_BWD_ALPHA",
    "CUDNN_ATTR_OPERATION_REDUCTION_YDESC",
    "CUDNN_ATTR_OPERATION_REDUCTION_XDESC",
    "CUDNN_ATTR_OPERATION_REDUCTION_DESC",
    "CUDNN_ATTR_OPERATION_POINTWISE_YDESC",
    "CUDNN_ATTR_OPERATION_POINTWISE_XDESC",
    "CUDNN_ATTR_OPERATION_POINTWISE_TDESC",
    "CUDNN_ATTR_OPERATION_POINTWISE_PW_DESCRIPTOR",
    "CUDNN_ATTR_OPERATION_POINTWISE_DYDESC",
    "CUDNN_ATTR_OPERATION_POINTWISE_DXDESC",
    "CUDNN_ATTR_OPERATION_POINTWISE_BDESC",
    "CUDNN_ATTR_OPERATION_POINTWISE_ALPHA2",
    "CUDNN_ATTR_OPERATION_POINTWISE_ALPHA1",
    "CUDNN_ATTR_OPERATION_PAGED_CACHE_LOAD_YDESC",
    "CUDNN_ATTR_OPERATION_PAGED_CACHE_LOAD_SEQUENCE_DESC",
    "CUDNN_ATTR_OPERATION_PAGED_CACHE_LOAD_PAGE_TABLE_DESC",
    "CUDNN_ATTR_OPERATION_PAGED_CACHE_LOAD_CONTAINER_DESC",
    "CUDNN_ATTR_OPERATION_NORM_FWD_YDESC",
    "CUDNN_ATTR_OPERATION_NORM_FWD_XDESC",
    "CUDNN_ATTR_OPERATION_NORM_FWD_SCALE_DESC",
    "CUDNN_ATTR_OPERATION_NORM_FWD_PHASE",
    "CUDNN_ATTR_OPERATION_NORM_FWD_PEER_STAT_DESCS",
    "CUDNN_ATTR_OPERATION_NORM_FWD_OUTPUT_RUNNING_VAR_DESC",
    "CUDNN_ATTR_OPERATION_NORM_FWD_OUTPUT_RUNNING_MEAN_DESC",
    "CUDNN_ATTR_OPERATION_NORM_FWD_MODE",
    "CUDNN_ATTR_OPERATION_NORM_FWD_MEAN_DESC",
    "CUDNN_ATTR_OPERATION_NORM_FWD_INV_VARIANCE_DESC",
    "CUDNN_ATTR_OPERATION_NORM_FWD_INPUT_RUNNING_VAR_DESC",
    "CUDNN_ATTR_OPERATION_NORM_FWD_INPUT_RUNNING_MEAN_DESC",
    "CUDNN_ATTR_OPERATION_NORM_FWD_EXP_AVG_FACTOR_DESC",
    "CUDNN_ATTR_OPERATION_NORM_FWD_EPSILON_DESC",
    "CUDNN_ATTR_OPERATION_NORM_FWD_BIAS_DESC",
    "CUDNN_ATTR_OPERATION_NORM_BWD_XDESC",
    "CUDNN_ATTR_OPERATION_NORM_BWD_SCALE_DESC",
    "CUDNN_ATTR_OPERATION_NORM_BWD_PEER_STAT_DESCS",
    "CUDNN_ATTR_OPERATION_NORM_BWD_MODE",
    "CUDNN_ATTR_OPERATION_NORM_BWD_MEAN_DESC",
    "CUDNN_ATTR_OPERATION_NORM_BWD_INV_VARIANCE_DESC",
    "CUDNN_ATTR_OPERATION_NORM_BWD_EPSILON_DESC",
    "CUDNN_ATTR_OPERATION_NORM_BWD_DYDESC",
    "CUDNN_ATTR_OPERATION_NORM_BWD_DXDESC",
    "CUDNN_ATTR_OPERATION_NORM_BWD_DSCALE_DESC",
    "CUDNN_ATTR_OPERATION_NORM_BWD_DBIAS_DESC",
    "CUDNN_ATTR_OPERATION_MATMUL_IRREGULARLY_STRIDED_BATCH_COUNT",
    "CUDNN_ATTR_OPERATION_MATMUL_GEMM_N_OVERRIDE_DESC",
    "CUDNN_ATTR_OPERATION_MATMUL_GEMM_M_OVERRIDE_DESC",
    "CUDNN_ATTR_OPERATION_MATMUL_GEMM_K_OVERRIDE_DESC",
    "CUDNN_ATTR_OPERATION_MATMUL_DESC",
    "CUDNN_ATTR_OPERATION_MATMUL_CDESC",
    "CUDNN_ATTR_OPERATION_MATMUL_BDESC",
    "CUDNN_ATTR_OPERATION_MATMUL_ADESC",
    "CUDNN_ATTR_OPERATION_GENSTATS_XDESC",
    "CUDNN_ATTR_OPERATION_GENSTATS_SUMDESC",
    "CUDNN_ATTR_OPERATION_GENSTATS_SQSUMDESC",
    "CUDNN_ATTR_OPERATION_GENSTATS_MODE",
    "CUDNN_ATTR_OPERATION_GENSTATS_MATH_PREC",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_Y",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_X",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_W",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_CONV_DESC",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_BETA",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_ALPHA",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_X",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_DY",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_DW",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_CONV_DESC",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_BETA",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_ALPHA",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_W",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_DY",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_DX",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_CONV_DESC",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_BETA",
    "CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_ALPHA",
    "CUDNN_ATTR_OPERATION_CONCAT_OUTPUT_DESC",
    "CUDNN_ATTR_OPERATION_CONCAT_INPUT_DESCS",
    "CUDNN_ATTR_OPERATION_CONCAT_INPLACE_INDEX",
    "CUDNN_ATTR_OPERATION_CONCAT_AXIS",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_Y_SUM_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_Y_SQ_SUM_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_UPDATED_RUNNING_VAR_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_UPDATED_RUNNING_MEAN_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_STATS_MODE",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_SCALE_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_SAVED_MEAN_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_SAVED_INV_STD_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_PREV_RUNNING_VAR_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_PREV_RUNNING_MEAN_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_MATH_PREC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_EXP_AVERATE_FACTOR_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_EQ_SCALE_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_EQ_BIAS_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_EPSILON_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_BIAS_DESC",
    "CUDNN_ATTR_OPERATION_BN_FINALIZE_ACCUM_COUNT_DESC",
    "CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_X_DESC",
    "CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_MEAN_DESC",
    "CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_MATH_PREC",
    "CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_INVSTD_DESC",
    "CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_X_SCALE_DESC",
    "CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_DY_SCALE_DESC",
    "CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_BIAS",
    "CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_DY_DESC",
    "CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_SCALE_DESC",
    "CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_BIAS_DESC",
    "CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_BN_SCALE_DESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_QUANTIZE_YDESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_QUANTIZE_XDESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_QUANTIZE_SCALE_DESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_QUANTIZE_MATH_PREC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_QUANTIZE_DENOM_FACTOR_MODE",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_QUANTIZE_BLOCK_SIZE",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_DEQUANTIZE_YDESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_DEQUANTIZE_XDESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_DEQUANTIZE_SCALE_DESC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_DEQUANTIZE_MATH_PREC",
    "CUDNN_ATTR_OPERATION_BLOCK_SCALE_DEQUANTIZE_BLOCK_SIZE",
    "CUDNN_ATTR_OPERATIONGRAPH_OPS",
    "CUDNN_ATTR_OPERATIONGRAPH_IS_SAME_TOPOLOGY",
    "CUDNN_ATTR_OPERATIONGRAPH_IS_DYNAMIC_SHAPE_ENABLED",
    "CUDNN_ATTR_OPERATIONGRAPH_HANDLE",
    "CUDNN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT",
    "CUDNN_ATTR_MATMUL_PADDING_VALUE",
    "CUDNN_ATTR_MATMUL_COMP_TYPE",
    "CUDNN_ATTR_LAYOUT_INFO_TYPES",
    "CUDNN_ATTR_LAYOUT_INFO_TENSOR_UID",
    "CUDNN_ATTR_KNOB_INFO_TYPE",
    "CUDNN_ATTR_KNOB_INFO_STRIDE",
    "CUDNN_ATTR_KNOB_INFO_MINIMUM_VALUE",
    "CUDNN_ATTR_KNOB_INFO_MAXIMUM_VALUE",
    "CUDNN_ATTR_KNOB_CHOICE_KNOB_VALUE",
    "CUDNN_ATTR_KNOB_CHOICE_KNOB_TYPE",
    "CUDNN_ATTR_KERNEL_CACHE_OPERATION_GRAPH",
    "CUDNN_ATTR_KERNEL_CACHE_IS_ENGINECFG_KERNEL_CACHED",
    "CUDNN_ATTR_INTERMEDIATE_INFO_UNIQUE_ID",
    "CUDNN_ATTR_INTERMEDIATE_INFO_SIZE",
    "CUDNN_ATTR_INTERMEDIATE_INFO_DEPENDENT_DATA_UIDS",
    "CUDNN_ATTR_INTERMEDIATE_INFO_DEPENDENT_ATTRIBUTES",
    "CUDNN_ATTR_EXECUTION_PLAN_WORKSPACE_SIZE",
    "CUDNN_ATTR_EXECUTION_PLAN_RUN_ONLY_INTERMEDIATE_UIDS",
    "CUDNN_ATTR_EXECUTION_PLAN_KERNEL_CACHE",
    "CUDNN_ATTR_EXECUTION_PLAN_JSON_REPRESENTATION",
    "CUDNN_ATTR_EXECUTION_PLAN_HANDLE",
    "CUDNN_ATTR_EXECUTION_PLAN_ENGINE_CONFIG",
    "CUDNN_ATTR_EXECUTION_PLAN_COMPUTED_INTERMEDIATE_UIDS",
    "CUDNN_ATTR_ENGINE_SM_COUNT_TARGET",
    "CUDNN_ATTR_ENGINE_OPERATION_GRAPH",
    "CUDNN_ATTR_ENGINE_NUMERICAL_NOTE",
    "CUDNN_ATTR_ENGINE_LAYOUT_INFO",
    "CUDNN_ATTR_ENGINE_KNOB_INFO",
    "CUDNN_ATTR_ENGINE_GLOBAL_INDEX",
    "CUDNN_ATTR_ENGINE_BEHAVIOR_NOTE",
    "CUDNN_ATTR_ENGINEHEUR_SM_COUNT_TARGET",
    "CUDNN_ATTR_ENGINEHEUR_RESULTS",
    "CUDNN_ATTR_ENGINEHEUR_OPERATION_GRAPH",
    "CUDNN_ATTR_ENGINEHEUR_MODE",
    "CUDNN_ATTR_ENGINECFG_WORKSPACE_SIZE",
    "CUDNN_ATTR_ENGINECFG_SHARED_MEMORY_USED",
    "CUDNN_ATTR_ENGINECFG_KNOB_CHOICES",
    "CUDNN_ATTR_ENGINECFG_INTERMEDIATE_INFO",
    "CUDNN_ATTR_ENGINECFG_ENGINE",
    "CUDNN_ATTR_CONVOLUTION_SPATIAL_DIMS",
    "CUDNN_ATTR_CONVOLUTION_PRE_PADDINGS",
    "CUDNN_ATTR_CONVOLUTION_POST_PADDINGS",
    "CUDNN_ATTR_CONVOLUTION_FILTER_STRIDES",
    "CUDNN_ATTR_CONVOLUTION_DILATIONS",
    "CUDNN_ATTR_CONVOLUTION_CONV_MODE",
    "CUDNN_ATTR_CONVOLUTION_COMP_TYPE",
    "CUDNN_ATTN_WKIND_COUNT",
    "CUDNN_ATTN_QUERYMAP_ONE_TO_ONE",
    "CUDNN_ATTN_QUERYMAP_ALL_TO_ONE",
    "CUDNN_ATTN_ENABLE_PROJ_BIASES",
    "CUDNN_ATTN_DISABLE_PROJ_BIASES",
    "CUDNN_ADA_LAYER_NORM"
);

sub warnHipDNNOnlyUnsupportedFunctions {
    my $line_num = shift;
    my $k = 0;
    foreach $func (@HipDNNOnlyUnsupportedFunctions)
    {
        my $mt = m/\b($func)\b/g;
        if ($mt) {
            $k += $mt;
            print STDERR "  $fileName:$line_num: warning: unsupported hipDNN identifier: $func\n";
        }
    }
    return $k;
}

# Count of transforms in all files
my %tt;
clearStats(\%tt, \@statNames);
$Twarnings = 0;
$TlineCount = 0;
my %TwarningTags;
my $fileCount = @ARGV;
if ($help) {
    print STDERR "$USAGE\n";
}
if ($version) {
    print STDERR "HIP version 6.4.0\n";
}
while (@ARGV) {
    $fileName=shift (@ARGV);
    my $direxclude = 0;
    my $fileDir = dirname(Cwd::realpath($fileName));
    if ($exclude_dirhash{$fileDir}) {
        print STDERR "Skipping the file: $fileName in the excluded directory: $fileDir \n";
        $direxclude = 1;
    } else {
        $fileDir = dirname($fileDir);
    }
    if ($exclude_filehash{$fileName}) {
        print STDERR "Skipping the excluded file: $fileName \n";
    }
    unless ($direxclude or $exclude_filehash{$fileName}) {
        if ($inplace) {
            my $file_prehip = "$fileName" . ".prehip";
            my $infile;
            my $outfile;
            if (-e $file_prehip) {
                $infile  = $file_prehip;
                $outfile = $fileName;
            } else {
                system ("cp $fileName $file_prehip");
                $infile = $file_prehip;
                $outfile = $fileName;
            }
            open(INFILE,"<", $infile) or die "error: could not open $infile";
            open(OUTFILE,">", $outfile) or die "error: could not open $outfile";
            $OUTFILE = OUTFILE;
        } else {
            open(INFILE,"<", $fileName) or die "error: could not open $fileName";
            if ($hipFileName ne "") {
                open(OUTFILE,">", $hipFileName) or die "error: could not open $hipFileName";
                $OUTFILE = OUTFILE;
            } else {
                $OUTFILE = STDOUT;
            }
        }
        # Count of transforms in this file
        clearStats(\%ft, \@statNames);
        my $countIncludes = 0;
        my $countKeywords = 0;
        my $warnings = 0;
        my %warningTags;
        my $lineCount = 0;
        %tags = ();
        %convertedTags = ();
        %tagsToConvertedTags = ();
        undef $/;
        # Read whole file at once, so we can match newlines
        while (<INFILE>) {
            $countKeywords += m/__global__/;
            $countKeywords += m/__shared__/;
            unless ($quiet_warnings) {
                my @lines = split /\n/, $_;
                # Copy the whole file
                my $tmp = $_;
                my $line_num = 0;
                foreach (@lines) {
                    $line_num++;
                    if (!$experimental) {
                        $s = warnExperimentalFunctions($line_num);
                        $warnings += $s;
                    }
                    $s = warnRemovedFunctions($line_num);
                    $warnings += $s;
                    $s = warnDeprecatedFunctions($line_num);
                    $warnings += $s;
                    if ($roc) {
                        $s = warnRocOnlyUnsupportedFunctions($line_num);
                        $warnings += $s;
                        $s = warnMIOpenOnlyUnsupportedFunctions($line_num);
                        $warnings += $s;
                    } else {
                        $s = warnHipOnlyUnsupportedFunctions($line_num);
                        $warnings += $s;
                        if ($miopen) {
                            $s = warnMIOpenOnlyUnsupportedFunctions($line_num);
                        } else {
                            $s = warnHipDNNOnlyUnsupportedFunctions($line_num);
                        }
                        $warnings += $s;
                    }
                    $s = warnUnsupportedDeviceFunctions($line_num);
                    $warnings += $s;
                    $s = warnUnsupportedDeviceDataTypes($line_num);
                    $warnings += $s;
                }
                $_ = $tmp;
            }
            if ($roc) {
                rocSubstitutions();
                MIOpenSubstitutions();
            }
            if ($miopen) {
                MIOpenSubstitutions();
            }
            if ($experimental) {
                experimentalSubstitutions();
            }
            simpleSubstitutions();
            if (!$cuda_kernel_execution_syntax || $hip_kernel_execution_syntax) {
                transformKernelLaunch();
            }
            transformCubNamespace();
            my $hasDeviceCode = $countKeywords + $ft{'device_function'} + $ft{'device_type'};
            unless ($quiet_warnings) {
                # Copy into array of lines, process line-by-line to show warnings
                if ($hasDeviceCode or (/\bcu|CU/) or (/<<<.*>>>/)) {
                    my @lines = split /\n/, $_;
                    # Copy the whole file
                    my $tmp = $_;
                    my $line_num = 0;
                    foreach (@lines) {
                        $line_num++;
                        # Remove any whitelisted words
                        foreach $w (@whitelist) {
                            redo if s/\b$w\b/ZAP/
                        }
                        my $tag;
                        if ((/(\bcuda[A-Z]\w+)/) or ((/<<<.*>>>/) and ($hip_kernel_execution_syntax))) {
                            # Flag any remaining code that look like cuda API calls: may want to add these to hipify
                            $tag = (defined $1) ? $1 : "Launch";
                        }
                        if (defined $tag) {
                            $warnings++;
                            $warningTags{$tag}++;
                            print STDERR "  warning: $fileName:#$line_num : $_\n";
                        }
                    }
                    $_ = $tmp;
                }
            }
            if ($hasDeviceCode > 0) {
                $ft{'device_function'} += countSupportedDeviceFunctions();
                $ft{'device_type'} += countSupportedDeviceDataTypes();
            }
            transformHostFunctions();
            # TODO: would like to move this code outside loop but it uses $_ which contains the whole file
            unless ($no_output) {
                my $apiCalls   = $ft{'error'} + $ft{'init'} + $ft{'version'} + $ft{'device'} + $ft{'context'} + $ft{'module'} + $ft{'library'} + $ft{'memory'} + $ft{'virtual_memory'} + $ft{'ordered_memory'} + $ft{'multicast'} + $ft{'unified'} + $ft{'stream'} + $ft{'event'} + $ft{'external_resource'} + $ft{'stream_memory'} + $ft{'execution'} + $ft{'graph'} + $ft{'occupancy'} + $ft{'texture'} + $ft{'surface'} + $ft{'tensor'} + $ft{'peer'} + $ft{'graphics'} + $ft{'driver_entry_point'} + $ft{'cpp'} + $ft{'coredump'} + $ft{'driver_interact'} + $ft{'profiler'} + $ft{'openGL'} + $ft{'D3D9'} + $ft{'D3D10'} + $ft{'D3D11'} + $ft{'VDPAU'} + $ft{'EGL'} + $ft{'thread'} + $ft{'complex'} + $ft{'library'} + $ft{'device_library'} + $ft{'device_type'} + $ft{'include'} + $ft{'include_cuda_main_header'} + $ft{'include_cuda_main_header_v2'} + $ft{'type'} + $ft{'literal'} + $ft{'numeric_literal'} + $ft{'define'};
                my $kernStuff  = $hasDeviceCode + $ft{'kernel_launch'} + $ft{'device_function'} + $ft{'device_type'};
                my $totalCalls = $apiCalls + $kernStuff;
                $is_dos = m/\r\n$/;
                if ($totalCalls and ($countIncludes == 0) and ($kernStuff != 0)) {
                    # TODO: implement hipify-clang's logic with header files AMAP
                    print $OUTFILE '#include "hip/hip_runtime.h"' . ($is_dos ? "\r\n" : "\n");
                }
                print $OUTFILE  "$_";
            }
            $lineCount = $_ =~ tr/\n//;
        }
        my $totalConverted = totalStats(\%ft);
        if (($totalConverted+$warnings) and $print_stats) {
            printStats(\%ft, $warnings, $lineCount, $fileName, 0);
        }
        # Update totals for all files
        addStats(\%tt, \%ft);
        $Twarnings += $warnings;
        $TlineCount += $lineCount;
        foreach $key (keys %warningTags) {
            $TwarningTags{$key} += $warningTags{$key};
        }
    }   # Unless filtered directory or file
}
# Print total stats for all files processed
if ($print_stats and ($fileCount > 1)) {
    printStats(\%tt, $Twarnings, $TlineCount, "GLOBAL", 1);
    print STDERR "\n";
}
