#!/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
      -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
    , "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 = (
    "nvrtcGetNVVMSize" => "12.0",
    "nvrtcGetNVVM" => "12.0",
    "cusparseZsctr" => "11.0",
    "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",
    "cusparseZdoti" => "10.2",
    "cusparseZdotci" => "10.2",
    "cusparseZdense2hyb" => "10.2",
    "cusparseZdense2csr" => "11.1",
    "cusparseZdense2csc" => "11.1",
    "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",
    "cusparseZcsrilu0" => "10.2",
    "cusparseZcsric0" => "10.2",
    "cusparseZcsrgemm2_bufferSizeExt" => "11.0",
    "cusparseZcsrgemm2" => "11.0",
    "cusparseZcsrgemm" => "10.2",
    "cusparseZcsrgeam" => "10.2",
    "cusparseZcsr2hyb" => "10.2",
    "cusparseZcsr2dense" => "11.1",
    "cusparseZcsr2csc" => "10.2",
    "cusparseZcsc2hyb" => "10.2",
    "cusparseZcsc2dense" => "11.1",
    "cusparseZaxpyi" => "11.0",
    "cusparseXcsrsv2_zeroPivot" => "11.3",
    "cusparseXcsrsm2_zeroPivot" => "11.3",
    "cusparseXcsrgemmNnz" => "10.2",
    "cusparseXcsrgemm2Nnz" => "11.0",
    "cusparseXcsrgeamNnz" => "10.2",
    "cusparseSsctr" => "11.0",
    "cusparseSroti" => "11.0",
    "cusparseSolveAnalysisInfo_t" => "10.2",
    "cusparseSolveAnalysisInfo" => "10.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",
    "cusparseSdoti" => "10.2",
    "cusparseSdense2hyb" => "10.2",
    "cusparseSdense2csr" => "11.1",
    "cusparseSdense2csc" => "11.1",
    "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",
    "cusparseScsrilu0" => "10.2",
    "cusparseScsric0" => "10.2",
    "cusparseScsrgemm2_bufferSizeExt" => "11.0",
    "cusparseScsrgemm2" => "11.0",
    "cusparseScsrgemm" => "10.2",
    "cusparseScsrgeam" => "10.2",
    "cusparseScsr2hyb" => "10.2",
    "cusparseScsr2dense" => "11.1",
    "cusparseScsr2csc" => "10.2",
    "cusparseScsc2hyb" => "10.2",
    "cusparseScsc2dense" => "11.1",
    "cusparseSaxpyi" => "11.0",
    "cusparseHybPartition_t" => "10.2",
    "cusparseHybMat_t" => "10.2",
    "cusparseHybMat" => "10.2",
    "cusparseDsctr" => "11.0",
    "cusparseDroti" => "11.0",
    "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",
    "cusparseDestroySolveAnalysisInfo" => "10.2",
    "cusparseDestroyHybMat" => "10.2",
    "cusparseDestroyCsrsv2Info" => "11.3",
    "cusparseDestroyCsrsm2Info" => "11.3",
    "cusparseDestroyCsrgemm2Info" => "11.0",
    "cusparseDdoti" => "10.2",
    "cusparseDdense2hyb" => "10.2",
    "cusparseDdense2csr" => "11.1",
    "cusparseDdense2csc" => "11.1",
    "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",
    "cusparseDcsrilu0" => "10.2",
    "cusparseDcsric0" => "10.2",
    "cusparseDcsrgemm2_bufferSizeExt" => "11.0",
    "cusparseDcsrgemm2" => "11.0",
    "cusparseDcsrgemm" => "10.2",
    "cusparseDcsrgeam" => "10.2",
    "cusparseDcsr2hyb" => "10.2",
    "cusparseDcsr2dense" => "11.1",
    "cusparseDcsr2csc" => "10.2",
    "cusparseDcsc2hyb" => "10.2",
    "cusparseDcsc2dense" => "11.1",
    "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",
    "cusparseCreateHybMat" => "10.2",
    "cusparseCreateCsrsv2Info" => "11.3",
    "cusparseCreateCsrsm2Info" => "11.3",
    "cusparseCreateCsrgemm2Info" => "11.0",
    "cusparseCreateCooAoS" => "11.2",
    "cusparseCooAoSGet" => "11.2",
    "cusparseConstrainedGeMM_bufferSize" => "11.2",
    "cusparseConstrainedGeMM" => "11.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",
    "cusparseCdoti" => "10.2",
    "cusparseCdotci" => "10.2",
    "cusparseCdense2hyb" => "10.2",
    "cusparseCdense2csr" => "11.1",
    "cusparseCdense2csc" => "11.1",
    "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",
    "cusparseCcsrilu0" => "10.2",
    "cusparseCcsric0" => "10.2",
    "cusparseCcsrgemm2_bufferSizeExt" => "11.0",
    "cusparseCcsrgemm2" => "11.0",
    "cusparseCcsrgemm" => "10.2",
    "cusparseCcsrgeam" => "10.2",
    "cusparseCcsr2hyb" => "10.2",
    "cusparseCcsr2dense" => "11.1",
    "cusparseCcsr2csc" => "10.2",
    "cusparseCcsc2hyb" => "10.2",
    "cusparseCcsc2dense" => "11.1",
    "cusparseCaxpyi" => "11.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",
    "cudnnSetPersistentRNNPlan" => "8.0.1",
    "cudnnSetAlgorithmPerformance" => "8.0.2",
    "cudnnSetAlgorithmDescriptor" => "8.0.2",
    "cudnnSaveAlgorithm" => "8.0.2",
    "cudnnRestoreAlgorithm" => "8.0.2",
    "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",
    "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",
    "cudnnGetConvolutionForwardAlgorithm" => "7.6.5",
    "cudnnGetConvolutionBackwardFilterAlgorithm" => "7.6.5",
    "cudnnGetConvolutionBackwardDataAlgorithm" => "7.6.5",
    "cudnnGetAlgorithmSpaceSize" => "8.0.2",
    "cudnnGetAlgorithmPerformance" => "8.0.2",
    "cudnnGetAlgorithmDescriptor" => "8.0.2",
    "cudnnFindRNNForwardTrainingAlgorithmEx" => "8.0.2",
    "cudnnFindRNNForwardInferenceAlgorithmEx" => "8.0.2",
    "cudnnFindRNNBackwardWeightsAlgorithmEx" => "8.0.2",
    "cudnnFindRNNBackwardDataAlgorithmEx" => "8.0.2",
    "cudnnDestroyPersistentRNNPlan" => "8.0.1",
    "cudnnDestroyAlgorithmPerformance" => "8.0.2",
    "cudnnDestroyAlgorithmDescriptor" => "8.0.2",
    "cudnnCreatePersistentRNNPlan" => "8.0.1",
    "cudnnCreateAlgorithmPerformance" => "8.0.2",
    "cudnnCreateAlgorithmDescriptor" => "8.0.2",
    "cudnnCopyAlgorithmDescriptor" => "8.0.2",
    "cudnnConvolutionFwdPreference_t" => "7.6.5",
    "cudnnConvolutionBwdFilterPreference_t" => "7.6.5",
    "cudnnConvolutionBwdDataPreference_t" => "7.6.5",
    "cudaThreadSynchronize" => "10.0",
    "cudaThreadSetLimit" => "10.0",
    "cudaThreadSetCacheConfig" => "10.0",
    "cudaThreadGetLimit" => "10.0",
    "cudaThreadGetCacheConfig" => "10.0",
    "cudaThreadExit" => "10.0",
    "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",
    "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",
    "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",
    "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",
    "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_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",
    "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",
    "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",
    "cudnnSetRNNDescriptor_v5" => "8.0.1",
    "cudnnSetRNNDescriptor" => "8.0.1",
    "cudnnGetRNNDescriptor" => "8.0.1",
    "cudnnGetConvolutionForwardAlgorithm" => "8.0.1",
    "cudnnGetConvolutionBackwardFilterAlgorithm" => "8.0.1",
    "cudnnGetConvolutionBackwardDataAlgorithm" => "8.0.1",
    "cudnnConvolutionFwdPreference_t" => "8.0.1",
    "cudnnConvolutionBwdFilterPreference_t" => "8.0.1",
    "cudnnConvolutionBwdDataPreference_t" => "8.0.1",
    "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_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 = (

);

$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 {
}

sub rocSubstitutions {
    subst("cublasAxpyEx", "rocblas_axpy_ex", "library");
    subst("cublasCaxpy", "rocblas_caxpy", "library");
    subst("cublasCaxpy_v2", "rocblas_caxpy", "library");
    subst("cublasCcopy", "rocblas_ccopy", "library");
    subst("cublasCcopy_v2", "rocblas_ccopy", "library");
    subst("cublasCdgmm", "rocblas_cdgmm", "library");
    subst("cublasCdotc", "rocblas_cdotc", "library");
    subst("cublasCdotc_v2", "rocblas_cdotc", "library");
    subst("cublasCdotu", "rocblas_cdotu", "library");
    subst("cublasCdotu_v2", "rocblas_cdotu", "library");
    subst("cublasCgbmv", "rocblas_cgbmv", "library");
    subst("cublasCgbmv_v2", "rocblas_cgbmv", "library");
    subst("cublasCgeam", "rocblas_cgeam", "library");
    subst("cublasCgemm", "rocblas_cgemm", "library");
    subst("cublasCgemmBatched", "rocblas_cgemm_batched", "library");
    subst("cublasCgemmStridedBatched", "rocblas_cgemm_strided_batched", "library");
    subst("cublasCgemm_v2", "rocblas_cgemm", "library");
    subst("cublasCgemv", "rocblas_cgemv", "library");
    subst("cublasCgemv_v2", "rocblas_cgemv", "library");
    subst("cublasCgerc", "rocblas_cgerc", "library");
    subst("cublasCgerc_v2", "rocblas_cgerc", "library");
    subst("cublasCgeru", "rocblas_cgeru", "library");
    subst("cublasCgeru_v2", "rocblas_cgeru", "library");
    subst("cublasChbmv", "rocblas_chbmv", "library");
    subst("cublasChbmv_v2", "rocblas_chbmv", "library");
    subst("cublasChemm", "rocblas_chemm", "library");
    subst("cublasChemm_v2", "rocblas_chemm", "library");
    subst("cublasChemv", "rocblas_chemv", "library");
    subst("cublasChemv_v2", "rocblas_chemv", "library");
    subst("cublasCher", "rocblas_cher", "library");
    subst("cublasCher2", "rocblas_cher2", "library");
    subst("cublasCher2_v2", "rocblas_cher2", "library");
    subst("cublasCher2k", "rocblas_cher2k", "library");
    subst("cublasCher2k_v2", "rocblas_cher2k", "library");
    subst("cublasCher_v2", "rocblas_cher", "library");
    subst("cublasCherk", "rocblas_cherk", "library");
    subst("cublasCherk_v2", "rocblas_cherk", "library");
    subst("cublasCherkx", "rocblas_cherkx", "library");
    subst("cublasChpmv", "rocblas_chpmv", "library");
    subst("cublasChpmv_v2", "rocblas_chpmv", "library");
    subst("cublasChpr", "rocblas_chpr", "library");
    subst("cublasChpr2", "rocblas_chpr2", "library");
    subst("cublasChpr2_v2", "rocblas_chpr2", "library");
    subst("cublasChpr_v2", "rocblas_chpr", "library");
    subst("cublasCreate", "rocblas_create_handle", "library");
    subst("cublasCreate_v2", "rocblas_create_handle", "library");
    subst("cublasCrot", "rocblas_crot", "library");
    subst("cublasCrot_v2", "rocblas_crot", "library");
    subst("cublasCrotg", "rocblas_crotg", "library");
    subst("cublasCrotg_v2", "rocblas_crotg", "library");
    subst("cublasCscal", "rocblas_cscal", "library");
    subst("cublasCscal_v2", "rocblas_cscal", "library");
    subst("cublasCsrot", "rocblas_csrot", "library");
    subst("cublasCsrot_v2", "rocblas_csrot", "library");
    subst("cublasCsscal", "rocblas_csscal", "library");
    subst("cublasCsscal_v2", "rocblas_csscal", "library");
    subst("cublasCswap", "rocblas_cswap", "library");
    subst("cublasCswap_v2", "rocblas_cswap", "library");
    subst("cublasCsymm", "rocblas_csymm", "library");
    subst("cublasCsymm_v2", "rocblas_csymm", "library");
    subst("cublasCsymv", "rocblas_csymv", "library");
    subst("cublasCsymv_v2", "rocblas_csymv", "library");
    subst("cublasCsyr", "rocblas_csyr", "library");
    subst("cublasCsyr2", "rocblas_csyr2", "library");
    subst("cublasCsyr2_v2", "rocblas_csyr2", "library");
    subst("cublasCsyr2k", "rocblas_csyr2k", "library");
    subst("cublasCsyr2k_v2", "rocblas_csyr2k", "library");
    subst("cublasCsyr_v2", "rocblas_csyr", "library");
    subst("cublasCsyrk", "rocblas_csyrk", "library");
    subst("cublasCsyrk_v2", "rocblas_csyrk", "library");
    subst("cublasCsyrkx", "rocblas_csyrkx", "library");
    subst("cublasCtbmv", "rocblas_ctbmv", "library");
    subst("cublasCtbmv_v2", "rocblas_ctbmv", "library");
    subst("cublasCtbsv", "rocblas_ctbsv", "library");
    subst("cublasCtbsv_v2", "rocblas_ctbsv", "library");
    subst("cublasCtpmv", "rocblas_ctpmv", "library");
    subst("cublasCtpmv_v2", "rocblas_ctpmv", "library");
    subst("cublasCtpsv", "rocblas_ctpsv", "library");
    subst("cublasCtpsv_v2", "rocblas_ctpsv", "library");
    subst("cublasCtrmm", "rocblas_ctrmm_outofplace", "library");
    subst("cublasCtrmm_v2", "rocblas_ctrmm_outofplace", "library");
    subst("cublasCtrmv", "rocblas_ctrmv", "library");
    subst("cublasCtrmv_v2", "rocblas_ctrmv", "library");
    subst("cublasCtrsm", "rocblas_ctrsm", "library");
    subst("cublasCtrsmBatched", "rocblas_ctrsm_batched", "library");
    subst("cublasCtrsm_v2", "rocblas_ctrsm", "library");
    subst("cublasCtrsv", "rocblas_ctrsv", "library");
    subst("cublasCtrsv_v2", "rocblas_ctrsv", "library");
    subst("cublasDasum", "rocblas_dasum", "library");
    subst("cublasDasum_v2", "rocblas_dasum", "library");
    subst("cublasDaxpy", "rocblas_daxpy", "library");
    subst("cublasDaxpy_v2", "rocblas_daxpy", "library");
    subst("cublasDcopy", "rocblas_dcopy", "library");
    subst("cublasDcopy_v2", "rocblas_dcopy", "library");
    subst("cublasDdgmm", "rocblas_ddgmm", "library");
    subst("cublasDdot", "rocblas_ddot", "library");
    subst("cublasDdot_v2", "rocblas_ddot", "library");
    subst("cublasDestroy", "rocblas_destroy_handle", "library");
    subst("cublasDestroy_v2", "rocblas_destroy_handle", "library");
    subst("cublasDgbmv", "rocblas_dgbmv", "library");
    subst("cublasDgbmv_v2", "rocblas_dgbmv", "library");
    subst("cublasDgeam", "rocblas_dgeam", "library");
    subst("cublasDgemm", "rocblas_dgemm", "library");
    subst("cublasDgemmBatched", "rocblas_dgemm_batched", "library");
    subst("cublasDgemmStridedBatched", "rocblas_dgemm_strided_batched", "library");
    subst("cublasDgemm_v2", "rocblas_dgemm", "library");
    subst("cublasDgemv", "rocblas_dgemv", "library");
    subst("cublasDgemv_v2", "rocblas_dgemv", "library");
    subst("cublasDger", "rocblas_dger", "library");
    subst("cublasDger_v2", "rocblas_dger", "library");
    subst("cublasDnrm2", "rocblas_dnrm2", "library");
    subst("cublasDnrm2_v2", "rocblas_dnrm2", "library");
    subst("cublasDotEx", "rocblas_dot_ex", "library");
    subst("cublasDotcEx", "rocblas_dotc_ex", "library");
    subst("cublasDrot", "rocblas_drot", "library");
    subst("cublasDrot_v2", "rocblas_drot", "library");
    subst("cublasDrotg", "rocblas_drotg", "library");
    subst("cublasDrotg_v2", "rocblas_drotg", "library");
    subst("cublasDrotm", "rocblas_drotm", "library");
    subst("cublasDrotm_v2", "rocblas_drotm", "library");
    subst("cublasDrotmg", "rocblas_drotmg", "library");
    subst("cublasDrotmg_v2", "rocblas_drotmg", "library");
    subst("cublasDsbmv", "rocblas_dsbmv", "library");
    subst("cublasDsbmv_v2", "rocblas_dsbmv", "library");
    subst("cublasDscal", "rocblas_dscal", "library");
    subst("cublasDscal_v2", "rocblas_dscal", "library");
    subst("cublasDspmv", "rocblas_dspmv", "library");
    subst("cublasDspmv_v2", "rocblas_dspmv", "library");
    subst("cublasDspr", "rocblas_dspr", "library");
    subst("cublasDspr2", "rocblas_dspr2", "library");
    subst("cublasDspr2_v2", "rocblas_dspr2", "library");
    subst("cublasDspr_v2", "rocblas_dspr", "library");
    subst("cublasDswap", "rocblas_dswap", "library");
    subst("cublasDswap_v2", "rocblas_dswap", "library");
    subst("cublasDsymm", "rocblas_dsymm", "library");
    subst("cublasDsymm_v2", "rocblas_dsymm", "library");
    subst("cublasDsymv", "rocblas_dsymv", "library");
    subst("cublasDsymv_v2", "rocblas_dsymv", "library");
    subst("cublasDsyr", "rocblas_dsyr", "library");
    subst("cublasDsyr2", "rocblas_dsyr2", "library");
    subst("cublasDsyr2_v2", "rocblas_dsyr2", "library");
    subst("cublasDsyr2k", "rocblas_dsyr2k", "library");
    subst("cublasDsyr2k_v2", "rocblas_dsyr2k", "library");
    subst("cublasDsyr_v2", "rocblas_dsyr", "library");
    subst("cublasDsyrk", "rocblas_dsyrk", "library");
    subst("cublasDsyrk_v2", "rocblas_dsyrk", "library");
    subst("cublasDsyrkx", "rocblas_dsyrkx", "library");
    subst("cublasDtbmv", "rocblas_dtbmv", "library");
    subst("cublasDtbmv_v2", "rocblas_dtbmv", "library");
    subst("cublasDtbsv", "rocblas_dtbsv", "library");
    subst("cublasDtbsv_v2", "rocblas_dtbsv", "library");
    subst("cublasDtpmv", "rocblas_dtpmv", "library");
    subst("cublasDtpmv_v2", "rocblas_dtpmv", "library");
    subst("cublasDtpsv", "rocblas_dtpsv", "library");
    subst("cublasDtpsv_v2", "rocblas_dtpsv", "library");
    subst("cublasDtrmm", "rocblas_dtrmm_outofplace", "library");
    subst("cublasDtrmm_v2", "rocblas_dtrmm_outofplace", "library");
    subst("cublasDtrmv", "rocblas_dtrmv", "library");
    subst("cublasDtrmv_v2", "rocblas_dtrmv", "library");
    subst("cublasDtrsm", "rocblas_dtrsm", "library");
    subst("cublasDtrsmBatched", "rocblas_dtrsm_batched", "library");
    subst("cublasDtrsm_v2", "rocblas_dtrsm", "library");
    subst("cublasDtrsv", "rocblas_dtrsv", "library");
    subst("cublasDtrsv_v2", "rocblas_dtrsv", "library");
    subst("cublasDzasum", "rocblas_dzasum", "library");
    subst("cublasDzasum_v2", "rocblas_dzasum", "library");
    subst("cublasDznrm2", "rocblas_dznrm2", "library");
    subst("cublasDznrm2_v2", "rocblas_dznrm2", "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("cublasHgemm", "rocblas_hgemm", "library");
    subst("cublasHgemmBatched", "rocblas_hgemm_batched", "library");
    subst("cublasHgemmStridedBatched", "rocblas_hgemm_strided_batched", "library");
    subst("cublasIcamax", "rocblas_icamax", "library");
    subst("cublasIcamax_v2", "rocblas_icamax", "library");
    subst("cublasIcamin", "rocblas_icamin", "library");
    subst("cublasIcamin_v2", "rocblas_icamin", "library");
    subst("cublasIdamax", "rocblas_idamax", "library");
    subst("cublasIdamax_v2", "rocblas_idamax", "library");
    subst("cublasIdamin", "rocblas_idamin", "library");
    subst("cublasIdamin_v2", "rocblas_idamin", "library");
    subst("cublasInit", "rocblas_initialize", "library");
    subst("cublasIsamax", "rocblas_isamax", "library");
    subst("cublasIsamax_v2", "rocblas_isamax", "library");
    subst("cublasIsamin", "rocblas_isamin", "library");
    subst("cublasIsamin_v2", "rocblas_isamin", "library");
    subst("cublasIzamax", "rocblas_izamax", "library");
    subst("cublasIzamax_v2", "rocblas_izamax", "library");
    subst("cublasIzamin", "rocblas_izamin", "library");
    subst("cublasIzamin_v2", "rocblas_izamin", "library");
    subst("cublasNrm2Ex", "rocblas_nrm2_ex", "library");
    subst("cublasRotEx", "rocblas_rot_ex", "library");
    subst("cublasSasum", "rocblas_sasum", "library");
    subst("cublasSasum_v2", "rocblas_sasum", "library");
    subst("cublasSaxpy", "rocblas_saxpy", "library");
    subst("cublasSaxpy_v2", "rocblas_saxpy", "library");
    subst("cublasScalEx", "rocblas_scal_ex", "library");
    subst("cublasScasum", "rocblas_scasum", "library");
    subst("cublasScasum_v2", "rocblas_scasum", "library");
    subst("cublasScnrm2", "rocblas_scnrm2", "library");
    subst("cublasScnrm2_v2", "rocblas_scnrm2", "library");
    subst("cublasScopy", "rocblas_scopy", "library");
    subst("cublasScopy_v2", "rocblas_scopy", "library");
    subst("cublasSdgmm", "rocblas_sdgmm", "library");
    subst("cublasSdot", "rocblas_sdot", "library");
    subst("cublasSdot_v2", "rocblas_sdot", "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_v2", "rocblas_sgbmv", "library");
    subst("cublasSgeam", "rocblas_sgeam", "library");
    subst("cublasSgemm", "rocblas_sgemm", "library");
    subst("cublasSgemmBatched", "rocblas_sgemm_batched", "library");
    subst("cublasSgemmStridedBatched", "rocblas_sgemm_strided_batched", "library");
    subst("cublasSgemm_v2", "rocblas_sgemm", "library");
    subst("cublasSgemv", "rocblas_sgemv", "library");
    subst("cublasSgemv_v2", "rocblas_sgemv", "library");
    subst("cublasSger", "rocblas_sger", "library");
    subst("cublasSger_v2", "rocblas_sger", "library");
    subst("cublasSnrm2", "rocblas_snrm2", "library");
    subst("cublasSnrm2_v2", "rocblas_snrm2", "library");
    subst("cublasSrot", "rocblas_srot", "library");
    subst("cublasSrot_v2", "rocblas_srot", "library");
    subst("cublasSrotg", "rocblas_srotg", "library");
    subst("cublasSrotg_v2", "rocblas_srotg", "library");
    subst("cublasSrotm", "rocblas_srotm", "library");
    subst("cublasSrotm_v2", "rocblas_srotm", "library");
    subst("cublasSrotmg", "rocblas_srotmg", "library");
    subst("cublasSrotmg_v2", "rocblas_srotmg", "library");
    subst("cublasSsbmv", "rocblas_ssbmv", "library");
    subst("cublasSsbmv_v2", "rocblas_ssbmv", "library");
    subst("cublasSscal", "rocblas_sscal", "library");
    subst("cublasSscal_v2", "rocblas_sscal", "library");
    subst("cublasSspmv", "rocblas_sspmv", "library");
    subst("cublasSspmv_v2", "rocblas_sspmv", "library");
    subst("cublasSspr", "rocblas_sspr", "library");
    subst("cublasSspr2", "rocblas_sspr2", "library");
    subst("cublasSspr2_v2", "rocblas_sspr2", "library");
    subst("cublasSspr_v2", "rocblas_sspr", "library");
    subst("cublasSswap", "rocblas_sswap", "library");
    subst("cublasSswap_v2", "rocblas_sswap", "library");
    subst("cublasSsymm", "rocblas_ssymm", "library");
    subst("cublasSsymm_v2", "rocblas_ssymm", "library");
    subst("cublasSsymv", "rocblas_ssymv", "library");
    subst("cublasSsymv_v2", "rocblas_ssymv", "library");
    subst("cublasSsyr", "rocblas_ssyr", "library");
    subst("cublasSsyr2", "rocblas_ssyr2", "library");
    subst("cublasSsyr2_v2", "rocblas_ssyr2", "library");
    subst("cublasSsyr2k", "rocblas_ssyr2k", "library");
    subst("cublasSsyr2k_v2", "rocblas_ssyr2k", "library");
    subst("cublasSsyr_v2", "rocblas_ssyr", "library");
    subst("cublasSsyrk", "rocblas_ssyrk", "library");
    subst("cublasSsyrk_v2", "rocblas_ssyrk", "library");
    subst("cublasSsyrkx", "rocblas_ssyrkx", "library");
    subst("cublasStbmv", "rocblas_stbmv", "library");
    subst("cublasStbmv_v2", "rocblas_stbmv", "library");
    subst("cublasStbsv", "rocblas_stbsv", "library");
    subst("cublasStbsv_v2", "rocblas_stbsv", "library");
    subst("cublasStpmv", "rocblas_stpmv", "library");
    subst("cublasStpmv_v2", "rocblas_stpmv", "library");
    subst("cublasStpsv", "rocblas_stpsv", "library");
    subst("cublasStpsv_v2", "rocblas_stpsv", "library");
    subst("cublasStrmm", "rocblas_strmm_outofplace", "library");
    subst("cublasStrmm_v2", "rocblas_strmm_outofplace", "library");
    subst("cublasStrmv", "rocblas_strmv", "library");
    subst("cublasStrmv_v2", "rocblas_strmv", "library");
    subst("cublasStrsm", "rocblas_strsm", "library");
    subst("cublasStrsmBatched", "rocblas_strsm_batched", "library");
    subst("cublasStrsm_v2", "rocblas_strsm", "library");
    subst("cublasStrsv", "rocblas_strsv", "library");
    subst("cublasStrsv_v2", "rocblas_strsv", "library");
    subst("cublasZaxpy", "rocblas_zaxpy", "library");
    subst("cublasZaxpy_v2", "rocblas_zaxpy", "library");
    subst("cublasZcopy", "rocblas_zcopy", "library");
    subst("cublasZcopy_v2", "rocblas_zcopy", "library");
    subst("cublasZdgmm", "rocblas_zdgmm", "library");
    subst("cublasZdotc", "rocblas_zdotc", "library");
    subst("cublasZdotc_v2", "rocblas_zdotc", "library");
    subst("cublasZdotu", "rocblas_zdotu", "library");
    subst("cublasZdotu_v2", "rocblas_zdotu", "library");
    subst("cublasZdrot", "rocblas_zdrot", "library");
    subst("cublasZdrot_v2", "rocblas_zdrot", "library");
    subst("cublasZdscal", "rocblas_zdscal", "library");
    subst("cublasZdscal_v2", "rocblas_zdscal", "library");
    subst("cublasZgbmv", "rocblas_zgbmv", "library");
    subst("cublasZgbmv_v2", "rocblas_zgbmv", "library");
    subst("cublasZgeam", "rocblas_zgeam", "library");
    subst("cublasZgemm", "rocblas_zgemm", "library");
    subst("cublasZgemmBatched", "rocblas_zgemm_batched", "library");
    subst("cublasZgemmStridedBatched", "rocblas_zgemm_strided_batched", "library");
    subst("cublasZgemm_v2", "rocblas_zgemm", "library");
    subst("cublasZgemv", "rocblas_zgemv", "library");
    subst("cublasZgemv_v2", "rocblas_zgemv", "library");
    subst("cublasZgerc", "rocblas_zgerc", "library");
    subst("cublasZgerc_v2", "rocblas_zgerc", "library");
    subst("cublasZgeru", "rocblas_zgeru", "library");
    subst("cublasZgeru_v2", "rocblas_zgeru", "library");
    subst("cublasZhbmv", "rocblas_zhbmv", "library");
    subst("cublasZhbmv_v2", "rocblas_zhbmv", "library");
    subst("cublasZhemm", "rocblas_zhemm", "library");
    subst("cublasZhemm_v2", "rocblas_zhemm", "library");
    subst("cublasZhemv", "rocblas_zhemv", "library");
    subst("cublasZhemv_v2", "rocblas_zhemv", "library");
    subst("cublasZher", "rocblas_zher", "library");
    subst("cublasZher2", "rocblas_zher2", "library");
    subst("cublasZher2_v2", "rocblas_zher2", "library");
    subst("cublasZher2k", "rocblas_zher2k", "library");
    subst("cublasZher2k_v2", "rocblas_zher2k", "library");
    subst("cublasZher_v2", "rocblas_zher", "library");
    subst("cublasZherk", "rocblas_zherk", "library");
    subst("cublasZherk_v2", "rocblas_zherk", "library");
    subst("cublasZherkx", "rocblas_zherkx", "library");
    subst("cublasZhpmv", "rocblas_zhpmv", "library");
    subst("cublasZhpmv_v2", "rocblas_zhpmv", "library");
    subst("cublasZhpr", "rocblas_zhpr", "library");
    subst("cublasZhpr2", "rocblas_zhpr2", "library");
    subst("cublasZhpr2_v2", "rocblas_zhpr2", "library");
    subst("cublasZhpr_v2", "rocblas_zhpr", "library");
    subst("cublasZrot", "rocblas_zrot", "library");
    subst("cublasZrot_v2", "rocblas_zrot", "library");
    subst("cublasZrotg", "rocblas_zrotg", "library");
    subst("cublasZrotg_v2", "rocblas_zrotg", "library");
    subst("cublasZscal", "rocblas_zscal", "library");
    subst("cublasZscal_v2", "rocblas_zscal", "library");
    subst("cublasZswap", "rocblas_zswap", "library");
    subst("cublasZswap_v2", "rocblas_zswap", "library");
    subst("cublasZsymm", "rocblas_zsymm", "library");
    subst("cublasZsymm_v2", "rocblas_zsymm", "library");
    subst("cublasZsymv", "rocblas_zsymv", "library");
    subst("cublasZsymv_v2", "rocblas_zsymv", "library");
    subst("cublasZsyr", "rocblas_zsyr", "library");
    subst("cublasZsyr2", "rocblas_zsyr2", "library");
    subst("cublasZsyr2_v2", "rocblas_zsyr2", "library");
    subst("cublasZsyr2k", "rocblas_zsyr2k", "library");
    subst("cublasZsyr2k_v2", "rocblas_zsyr2k", "library");
    subst("cublasZsyr_v2", "rocblas_zsyr", "library");
    subst("cublasZsyrk", "rocblas_zsyrk", "library");
    subst("cublasZsyrk_v2", "rocblas_zsyrk", "library");
    subst("cublasZsyrkx", "rocblas_zsyrkx", "library");
    subst("cublasZtbmv", "rocblas_ztbmv", "library");
    subst("cublasZtbmv_v2", "rocblas_ztbmv", "library");
    subst("cublasZtbsv", "rocblas_ztbsv", "library");
    subst("cublasZtbsv_v2", "rocblas_ztbsv", "library");
    subst("cublasZtpmv", "rocblas_ztpmv", "library");
    subst("cublasZtpmv_v2", "rocblas_ztpmv", "library");
    subst("cublasZtpsv", "rocblas_ztpsv", "library");
    subst("cublasZtpsv_v2", "rocblas_ztpsv", "library");
    subst("cublasZtrmm", "rocblas_ztrmm_outofplace", "library");
    subst("cublasZtrmm_v2", "rocblas_ztrmm_outofplace", "library");
    subst("cublasZtrmv", "rocblas_ztrmv", "library");
    subst("cublasZtrmv_v2", "rocblas_ztrmv", "library");
    subst("cublasZtrsm", "rocblas_ztrsm", "library");
    subst("cublasZtrsmBatched", "rocblas_ztrsm_batched", "library");
    subst("cublasZtrsm_v2", "rocblas_ztrsm", "library");
    subst("cublasZtrsv", "rocblas_ztrsv", "library");
    subst("cublasZtrsv_v2", "rocblas_ztrsv", "library");
    subst("cudnnActivationBackward", "miopenActivationBackward", "library");
    subst("cudnnActivationForward", "miopenActivationForward", "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("cusparseAxpby", "rocsparse_axpby", "library");
    subst("cusparseBlockedEllGet", "rocsparse_bell_get", "library");
    subst("cusparseCbsr2csr", "rocsparse_cbsr2csr", "library");
    subst("cusparseCcsrcolor", "rocsparse_ccsrcolor", "library");
    subst("cusparseCgebsr2csr", "rocsparse_cgebsr2csr", "library");
    subst("cusparseCgebsr2gebsr", "rocsparse_cgebsr2gebsr", "library");
    subst("cusparseCgebsr2gebsr_bufferSize", "rocsparse_cgebsr2gebsr_buffer_size", "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("cusparseCreateColorInfo", "rocsparse_create_color_info", "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("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("cusparseCreateSpVec", "rocsparse_create_spvec_descr", "library");
    subst("cusparseCscSetPointers", "rocsparse_csc_set_pointers", "library");
    subst("cusparseCsrGet", "rocsparse_csr_get", "library");
    subst("cusparseCsrSetPointers", "rocsparse_csr_set_pointers", "library");
    subst("cusparseCsrSetStridedBatch", "rocsparse_csr_set_strided_batch", "library");
    subst("cusparseDbsr2csr", "rocsparse_dbsr2csr", "library");
    subst("cusparseDcsrcolor", "rocsparse_dcsrcolor", "library");
    subst("cusparseDestroy", "rocsparse_destroy_handle", "library");
    subst("cusparseDestroyColorInfo", "rocsparse_destroy_color_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("cusparseDestroySpMat", "rocsparse_destroy_spmat_descr", "library");
    subst("cusparseDestroySpVec", "rocsparse_destroy_spvec_descr", "library");
    subst("cusparseDgebsr2csr", "rocsparse_dgebsr2csr", "library");
    subst("cusparseDgebsr2gebsr", "rocsparse_dgebsr2gebsr", "library");
    subst("cusparseDgebsr2gebsr_bufferSize", "rocsparse_dgebsr2gebsr_buffer_size", "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("cusparseDpruneCsr2csrByPercentage", "rocsparse_dprune_csr2csr_by_percentage", "library");
    subst("cusparseGather", "rocsparse_gather", "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("cusparseSbsr2csr", "rocsparse_sbsr2csr", "library");
    subst("cusparseScatter", "rocsparse_scatter", "library");
    subst("cusparseScsrcolor", "rocsparse_scsrcolor", "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("cusparseSgebsr2gebsr", "rocsparse_sgebsr2gebsr", "library");
    subst("cusparseSgebsr2gebsr_bufferSize", "rocsparse_sgebsr2gebsr_buffer_size", "library");
    subst("cusparseSpMV", "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("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("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("cusparseXcsrsort", "rocsparse_csrsort", "library");
    subst("cusparseXcsrsort_bufferSizeExt", "rocsparse_csrsort_buffer_size", "library");
    subst("cusparseXgebsr2gebsrNnz", "rocsparse_gebsr2gebsr_nnz", "library");
    subst("cusparseZbsr2csr", "rocsparse_zbsr2csr", "library");
    subst("cusparseZcsrcolor", "rocsparse_zcsrcolor", "library");
    subst("cusparseZgebsr2csr", "rocsparse_zgebsr2csr", "library");
    subst("cusparseZgebsr2gebsr", "rocsparse_zgebsr2gebsr", "library");
    subst("cusparseZgebsr2gebsr_bufferSize", "rocsparse_zgebsr2gebsr_buffer_size", "library");
    subst("cublas.h", "rocblas.h", "include_cuda_main_header");
    subst("cublas_v2.h", "rocblas.h", "include_cuda_main_header_v2");
    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("cudnnActivationDescriptor_t", "miopenActivationDescriptor_t", "type");
    subst("cudnnActivationMode_t", "miopenActivationMode_t", "type");
    subst("cudnnBatchNormMode_t", "miopenBatchNormMode_t", "type");
    subst("cudnnCTCLossAlgo_t", "miopenCTCLossAlgo_t", "type");
    subst("cudnnCTCLossDescriptor_t", "miopenCTCLossDescriptor_t", "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("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("cudnnReduceTensorDescriptor_t", "miopenReduceTensorDescriptor_t", "type");
    subst("cudnnReduceTensorIndices_t", "miopenReduceTensorIndices_t", "type");
    subst("cudnnReduceTensorOp_t", "miopenReduceTensorOp_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("cusparseAction_t", "rocsparse_action", "type");
    subst("cusparseColorInfo", "_rocsparse_color_info", "type");
    subst("cusparseColorInfo_t", "rocsparse_color_info", "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_size_query_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_pointer", "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("CUBLAS_TF32_TENSOR_OP_MATH", "rocblas_xf32_xdl_math_op", "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("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_TANH", "miopenActivationTANH", "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_BWD_DATA_ALGO_0", "miopenConvolutionBwdDataAlgoGEMM", "numeric_literal");
    subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_1", "miopenConvolutionBwdDataAlgoDirect", "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_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_HALF", "miopenHalf", "numeric_literal");
    subst("CUDNN_DATA_INT32", "miopenInt32", "numeric_literal");
    subst("CUDNN_DATA_INT8", "miopenInt8", "numeric_literal");
    subst("CUDNN_DATA_INT8x4", "miopenInt8x4", "numeric_literal");
    subst("CUDNN_GRU", "miopenGRU", "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_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_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_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_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_UNIDIRECTIONAL", "miopenRNNunidirection", "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");
}

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("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("cuMemcpyAtoH", "hipMemcpyAtoH", "memory");
    subst("cuMemcpyAtoH_v2", "hipMemcpyAtoH", "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("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("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("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("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("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("cuGraphAddHostNode", "hipGraphAddHostNode", "graph");
    subst("cuGraphAddKernelNode", "hipGraphAddKernelNode", "graph");
    subst("cuGraphAddMemAllocNode", "hipGraphAddMemAllocNode", "graph");
    subst("cuGraphAddMemFreeNode", "hipGraphAddMemFreeNode", "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("cuGraphExecHostNodeSetParams", "hipGraphExecHostNodeSetParams", "graph");
    subst("cuGraphExecKernelNodeSetParams", "hipGraphExecKernelNodeSetParams", "graph");
    subst("cuGraphExecUpdate", "hipGraphExecUpdate", "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("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", "hipGraphMemcpyNodeGetParams", "graph");
    subst("cuGraphMemcpyNodeSetParams", "hipGraphMemcpyNodeSetParams", "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("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("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("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("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("cudaGraphExecUpdate", "hipGraphExecUpdate", "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("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("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("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("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", "library");
    subst("cublasCaxpy", "hipblasCaxpy", "library");
    subst("cublasCaxpy_v2", "hipblasCaxpy", "library");
    subst("cublasCcopy", "hipblasCcopy", "library");
    subst("cublasCcopy_v2", "hipblasCcopy", "library");
    subst("cublasCdgmm", "hipblasCdgmm", "library");
    subst("cublasCdotc", "hipblasCdotc", "library");
    subst("cublasCdotc_v2", "hipblasCdotc", "library");
    subst("cublasCdotu", "hipblasCdotu", "library");
    subst("cublasCdotu_v2", "hipblasCdotu", "library");
    subst("cublasCgbmv", "hipblasCgbmv", "library");
    subst("cublasCgbmv_v2", "hipblasCgbmv", "library");
    subst("cublasCgeam", "hipblasCgeam", "library");
    subst("cublasCgelsBatched", "hipblasCgelsBatched", "library");
    subst("cublasCgemm", "hipblasCgemm", "library");
    subst("cublasCgemmBatched", "hipblasCgemmBatched", "library");
    subst("cublasCgemmStridedBatched", "hipblasCgemmStridedBatched", "library");
    subst("cublasCgemm_v2", "hipblasCgemm", "library");
    subst("cublasCgemv", "hipblasCgemv", "library");
    subst("cublasCgemv_v2", "hipblasCgemv", "library");
    subst("cublasCgeqrfBatched", "hipblasCgeqrfBatched", "library");
    subst("cublasCgerc", "hipblasCgerc", "library");
    subst("cublasCgerc_v2", "hipblasCgerc", "library");
    subst("cublasCgeru", "hipblasCgeru", "library");
    subst("cublasCgeru_v2", "hipblasCgeru", "library");
    subst("cublasCgetrfBatched", "hipblasCgetrfBatched", "library");
    subst("cublasCgetriBatched", "hipblasCgetriBatched", "library");
    subst("cublasCgetrsBatched", "hipblasCgetrsBatched", "library");
    subst("cublasChbmv", "hipblasChbmv", "library");
    subst("cublasChbmv_v2", "hipblasChbmv", "library");
    subst("cublasChemm", "hipblasChemm", "library");
    subst("cublasChemm_v2", "hipblasChemm", "library");
    subst("cublasChemv", "hipblasChemv", "library");
    subst("cublasChemv_v2", "hipblasChemv", "library");
    subst("cublasCher", "hipblasCher", "library");
    subst("cublasCher2", "hipblasCher2", "library");
    subst("cublasCher2_v2", "hipblasCher2", "library");
    subst("cublasCher2k", "hipblasCher2k", "library");
    subst("cublasCher2k_v2", "hipblasCher2k", "library");
    subst("cublasCher_v2", "hipblasCher", "library");
    subst("cublasCherk", "hipblasCherk", "library");
    subst("cublasCherk_v2", "hipblasCherk", "library");
    subst("cublasCherkx", "hipblasCherkx", "library");
    subst("cublasChpmv", "hipblasChpmv", "library");
    subst("cublasChpmv_v2", "hipblasChpmv", "library");
    subst("cublasChpr", "hipblasChpr", "library");
    subst("cublasChpr2", "hipblasChpr2", "library");
    subst("cublasChpr2_v2", "hipblasChpr2", "library");
    subst("cublasChpr_v2", "hipblasChpr", "library");
    subst("cublasCreate", "hipblasCreate", "library");
    subst("cublasCreate_v2", "hipblasCreate", "library");
    subst("cublasCrot", "hipblasCrot", "library");
    subst("cublasCrot_v2", "hipblasCrot", "library");
    subst("cublasCrotg", "hipblasCrotg", "library");
    subst("cublasCrotg_v2", "hipblasCrotg", "library");
    subst("cublasCscal", "hipblasCscal", "library");
    subst("cublasCscal_v2", "hipblasCscal", "library");
    subst("cublasCsrot", "hipblasCsrot", "library");
    subst("cublasCsrot_v2", "hipblasCsrot", "library");
    subst("cublasCsscal", "hipblasCsscal", "library");
    subst("cublasCsscal_v2", "hipblasCsscal", "library");
    subst("cublasCswap", "hipblasCswap", "library");
    subst("cublasCswap_v2", "hipblasCswap", "library");
    subst("cublasCsymm", "hipblasCsymm", "library");
    subst("cublasCsymm_v2", "hipblasCsymm", "library");
    subst("cublasCsymv", "hipblasCsymv", "library");
    subst("cublasCsymv_v2", "hipblasCsymv", "library");
    subst("cublasCsyr", "hipblasCsyr", "library");
    subst("cublasCsyr2", "hipblasCsyr2", "library");
    subst("cublasCsyr2_v2", "hipblasCsyr2", "library");
    subst("cublasCsyr2k", "hipblasCsyr2k", "library");
    subst("cublasCsyr2k_v2", "hipblasCsyr2k", "library");
    subst("cublasCsyr_v2", "hipblasCsyr", "library");
    subst("cublasCsyrk", "hipblasCsyrk", "library");
    subst("cublasCsyrk_v2", "hipblasCsyrk", "library");
    subst("cublasCsyrkx", "hipblasCsyrkx", "library");
    subst("cublasCtbmv", "hipblasCtbmv", "library");
    subst("cublasCtbmv_v2", "hipblasCtbmv", "library");
    subst("cublasCtbsv", "hipblasCtbsv", "library");
    subst("cublasCtbsv_v2", "hipblasCtbsv", "library");
    subst("cublasCtpmv", "hipblasCtpmv", "library");
    subst("cublasCtpmv_v2", "hipblasCtpmv", "library");
    subst("cublasCtpsv", "hipblasCtpsv", "library");
    subst("cublasCtpsv_v2", "hipblasCtpsv", "library");
    subst("cublasCtrmm", "hipblasCtrmm", "library");
    subst("cublasCtrmm_v2", "hipblasCtrmm", "library");
    subst("cublasCtrmv", "hipblasCtrmv", "library");
    subst("cublasCtrmv_v2", "hipblasCtrmv", "library");
    subst("cublasCtrsm", "hipblasCtrsm", "library");
    subst("cublasCtrsmBatched", "hipblasCtrsmBatched", "library");
    subst("cublasCtrsm_v2", "hipblasCtrsm", "library");
    subst("cublasCtrsv", "hipblasCtrsv", "library");
    subst("cublasCtrsv_v2", "hipblasCtrsv", "library");
    subst("cublasDasum", "hipblasDasum", "library");
    subst("cublasDasum_v2", "hipblasDasum", "library");
    subst("cublasDaxpy", "hipblasDaxpy", "library");
    subst("cublasDaxpy_v2", "hipblasDaxpy", "library");
    subst("cublasDcopy", "hipblasDcopy", "library");
    subst("cublasDcopy_v2", "hipblasDcopy", "library");
    subst("cublasDdgmm", "hipblasDdgmm", "library");
    subst("cublasDdot", "hipblasDdot", "library");
    subst("cublasDdot_v2", "hipblasDdot", "library");
    subst("cublasDestroy", "hipblasDestroy", "library");
    subst("cublasDestroy_v2", "hipblasDestroy", "library");
    subst("cublasDgbmv", "hipblasDgbmv", "library");
    subst("cublasDgbmv_v2", "hipblasDgbmv", "library");
    subst("cublasDgeam", "hipblasDgeam", "library");
    subst("cublasDgelsBatched", "hipblasDgelsBatched", "library");
    subst("cublasDgemm", "hipblasDgemm", "library");
    subst("cublasDgemmBatched", "hipblasDgemmBatched", "library");
    subst("cublasDgemmStridedBatched", "hipblasDgemmStridedBatched", "library");
    subst("cublasDgemm_v2", "hipblasDgemm", "library");
    subst("cublasDgemv", "hipblasDgemv", "library");
    subst("cublasDgemv_v2", "hipblasDgemv", "library");
    subst("cublasDgeqrfBatched", "hipblasDgeqrfBatched", "library");
    subst("cublasDger", "hipblasDger", "library");
    subst("cublasDger_v2", "hipblasDger", "library");
    subst("cublasDgetrfBatched", "hipblasDgetrfBatched", "library");
    subst("cublasDgetriBatched", "hipblasDgetriBatched", "library");
    subst("cublasDgetrsBatched", "hipblasDgetrsBatched", "library");
    subst("cublasDnrm2", "hipblasDnrm2", "library");
    subst("cublasDnrm2_v2", "hipblasDnrm2", "library");
    subst("cublasDotEx", "hipblasDotEx", "library");
    subst("cublasDotcEx", "hipblasDotcEx", "library");
    subst("cublasDrot", "hipblasDrot", "library");
    subst("cublasDrot_v2", "hipblasDrot", "library");
    subst("cublasDrotg", "hipblasDrotg", "library");
    subst("cublasDrotg_v2", "hipblasDrotg", "library");
    subst("cublasDrotm", "hipblasDrotm", "library");
    subst("cublasDrotm_v2", "hipblasDrotm", "library");
    subst("cublasDrotmg", "hipblasDrotmg", "library");
    subst("cublasDrotmg_v2", "hipblasDrotmg", "library");
    subst("cublasDsbmv", "hipblasDsbmv", "library");
    subst("cublasDsbmv_v2", "hipblasDsbmv", "library");
    subst("cublasDscal", "hipblasDscal", "library");
    subst("cublasDscal_v2", "hipblasDscal", "library");
    subst("cublasDspmv", "hipblasDspmv", "library");
    subst("cublasDspmv_v2", "hipblasDspmv", "library");
    subst("cublasDspr", "hipblasDspr", "library");
    subst("cublasDspr2", "hipblasDspr2", "library");
    subst("cublasDspr2_v2", "hipblasDspr2", "library");
    subst("cublasDspr_v2", "hipblasDspr", "library");
    subst("cublasDswap", "hipblasDswap", "library");
    subst("cublasDswap_v2", "hipblasDswap", "library");
    subst("cublasDsymm", "hipblasDsymm", "library");
    subst("cublasDsymm_v2", "hipblasDsymm", "library");
    subst("cublasDsymv", "hipblasDsymv", "library");
    subst("cublasDsymv_v2", "hipblasDsymv", "library");
    subst("cublasDsyr", "hipblasDsyr", "library");
    subst("cublasDsyr2", "hipblasDsyr2", "library");
    subst("cublasDsyr2_v2", "hipblasDsyr2", "library");
    subst("cublasDsyr2k", "hipblasDsyr2k", "library");
    subst("cublasDsyr2k_v2", "hipblasDsyr2k", "library");
    subst("cublasDsyr_v2", "hipblasDsyr", "library");
    subst("cublasDsyrk", "hipblasDsyrk", "library");
    subst("cublasDsyrk_v2", "hipblasDsyrk", "library");
    subst("cublasDsyrkx", "hipblasDsyrkx", "library");
    subst("cublasDtbmv", "hipblasDtbmv", "library");
    subst("cublasDtbmv_v2", "hipblasDtbmv", "library");
    subst("cublasDtbsv", "hipblasDtbsv", "library");
    subst("cublasDtbsv_v2", "hipblasDtbsv", "library");
    subst("cublasDtpmv", "hipblasDtpmv", "library");
    subst("cublasDtpmv_v2", "hipblasDtpmv", "library");
    subst("cublasDtpsv", "hipblasDtpsv", "library");
    subst("cublasDtpsv_v2", "hipblasDtpsv", "library");
    subst("cublasDtrmm", "hipblasDtrmm", "library");
    subst("cublasDtrmm_v2", "hipblasDtrmm", "library");
    subst("cublasDtrmv", "hipblasDtrmv", "library");
    subst("cublasDtrmv_v2", "hipblasDtrmv", "library");
    subst("cublasDtrsm", "hipblasDtrsm", "library");
    subst("cublasDtrsmBatched", "hipblasDtrsmBatched", "library");
    subst("cublasDtrsm_v2", "hipblasDtrsm", "library");
    subst("cublasDtrsv", "hipblasDtrsv", "library");
    subst("cublasDtrsv_v2", "hipblasDtrsv", "library");
    subst("cublasDzasum", "hipblasDzasum", "library");
    subst("cublasDzasum_v2", "hipblasDzasum", "library");
    subst("cublasDznrm2", "hipblasDznrm2", "library");
    subst("cublasDznrm2_v2", "hipblasDznrm2", "library");
    subst("cublasGemmBatchedEx", "hipblasGemmBatchedEx", "library");
    subst("cublasGemmEx", "hipblasGemmEx", "library");
    subst("cublasGemmStridedBatchedEx", "hipblasGemmStridedBatchedEx", "library");
    subst("cublasGetAtomicsMode", "hipblasGetAtomicsMode", "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("cublasHgemmStridedBatched", "hipblasHgemmStridedBatched", "library");
    subst("cublasIcamax", "hipblasIcamax", "library");
    subst("cublasIcamax_v2", "hipblasIcamax", "library");
    subst("cublasIcamin", "hipblasIcamin", "library");
    subst("cublasIcamin_v2", "hipblasIcamin", "library");
    subst("cublasIdamax", "hipblasIdamax", "library");
    subst("cublasIdamax_v2", "hipblasIdamax", "library");
    subst("cublasIdamin", "hipblasIdamin", "library");
    subst("cublasIdamin_v2", "hipblasIdamin", "library");
    subst("cublasIsamax", "hipblasIsamax", "library");
    subst("cublasIsamax_v2", "hipblasIsamax", "library");
    subst("cublasIsamin", "hipblasIsamin", "library");
    subst("cublasIsamin_v2", "hipblasIsamin", "library");
    subst("cublasIzamax", "hipblasIzamax", "library");
    subst("cublasIzamax_v2", "hipblasIzamax", "library");
    subst("cublasIzamin", "hipblasIzamin", "library");
    subst("cublasIzamin_v2", "hipblasIzamin", "library");
    subst("cublasNrm2Ex", "hipblasNrm2Ex", "library");
    subst("cublasRotEx", "hipblasRotEx", "library");
    subst("cublasSasum", "hipblasSasum", "library");
    subst("cublasSasum_v2", "hipblasSasum", "library");
    subst("cublasSaxpy", "hipblasSaxpy", "library");
    subst("cublasSaxpy_v2", "hipblasSaxpy", "library");
    subst("cublasScalEx", "hipblasScalEx", "library");
    subst("cublasScasum", "hipblasScasum", "library");
    subst("cublasScasum_v2", "hipblasScasum", "library");
    subst("cublasScnrm2", "hipblasScnrm2", "library");
    subst("cublasScnrm2_v2", "hipblasScnrm2", "library");
    subst("cublasScopy", "hipblasScopy", "library");
    subst("cublasScopy_v2", "hipblasScopy", "library");
    subst("cublasSdgmm", "hipblasSdgmm", "library");
    subst("cublasSdot", "hipblasSdot", "library");
    subst("cublasSdot_v2", "hipblasSdot", "library");
    subst("cublasSetAtomicsMode", "hipblasSetAtomicsMode", "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_v2", "hipblasSgbmv", "library");
    subst("cublasSgeam", "hipblasSgeam", "library");
    subst("cublasSgelsBatched", "hipblasSgelsBatched", "library");
    subst("cublasSgemm", "hipblasSgemm", "library");
    subst("cublasSgemmBatched", "hipblasSgemmBatched", "library");
    subst("cublasSgemmStridedBatched", "hipblasSgemmStridedBatched", "library");
    subst("cublasSgemm_v2", "hipblasSgemm", "library");
    subst("cublasSgemv", "hipblasSgemv", "library");
    subst("cublasSgemv_v2", "hipblasSgemv", "library");
    subst("cublasSgeqrfBatched", "hipblasSgeqrfBatched", "library");
    subst("cublasSger", "hipblasSger", "library");
    subst("cublasSger_v2", "hipblasSger", "library");
    subst("cublasSgetrfBatched", "hipblasSgetrfBatched", "library");
    subst("cublasSgetriBatched", "hipblasSgetriBatched", "library");
    subst("cublasSgetrsBatched", "hipblasSgetrsBatched", "library");
    subst("cublasSnrm2", "hipblasSnrm2", "library");
    subst("cublasSnrm2_v2", "hipblasSnrm2", "library");
    subst("cublasSrot", "hipblasSrot", "library");
    subst("cublasSrot_v2", "hipblasSrot", "library");
    subst("cublasSrotg", "hipblasSrotg", "library");
    subst("cublasSrotg_v2", "hipblasSrotg", "library");
    subst("cublasSrotm", "hipblasSrotm", "library");
    subst("cublasSrotm_v2", "hipblasSrotm", "library");
    subst("cublasSrotmg", "hipblasSrotmg", "library");
    subst("cublasSrotmg_v2", "hipblasSrotmg", "library");
    subst("cublasSsbmv", "hipblasSsbmv", "library");
    subst("cublasSsbmv_v2", "hipblasSsbmv", "library");
    subst("cublasSscal", "hipblasSscal", "library");
    subst("cublasSscal_v2", "hipblasSscal", "library");
    subst("cublasSspmv", "hipblasSspmv", "library");
    subst("cublasSspmv_v2", "hipblasSspmv", "library");
    subst("cublasSspr", "hipblasSspr", "library");
    subst("cublasSspr2", "hipblasSspr2", "library");
    subst("cublasSspr2_v2", "hipblasSspr2", "library");
    subst("cublasSspr_v2", "hipblasSspr", "library");
    subst("cublasSswap", "hipblasSswap", "library");
    subst("cublasSswap_v2", "hipblasSswap", "library");
    subst("cublasSsymm", "hipblasSsymm", "library");
    subst("cublasSsymm_v2", "hipblasSsymm", "library");
    subst("cublasSsymv", "hipblasSsymv", "library");
    subst("cublasSsymv_v2", "hipblasSsymv", "library");
    subst("cublasSsyr", "hipblasSsyr", "library");
    subst("cublasSsyr2", "hipblasSsyr2", "library");
    subst("cublasSsyr2_v2", "hipblasSsyr2", "library");
    subst("cublasSsyr2k", "hipblasSsyr2k", "library");
    subst("cublasSsyr2k_v2", "hipblasSsyr2k", "library");
    subst("cublasSsyr_v2", "hipblasSsyr", "library");
    subst("cublasSsyrk", "hipblasSsyrk", "library");
    subst("cublasSsyrk_v2", "hipblasSsyrk", "library");
    subst("cublasSsyrkx", "hipblasSsyrkx", "library");
    subst("cublasStbmv", "hipblasStbmv", "library");
    subst("cublasStbmv_v2", "hipblasStbmv", "library");
    subst("cublasStbsv", "hipblasStbsv", "library");
    subst("cublasStbsv_v2", "hipblasStbsv", "library");
    subst("cublasStpmv", "hipblasStpmv", "library");
    subst("cublasStpmv_v2", "hipblasStpmv", "library");
    subst("cublasStpsv", "hipblasStpsv", "library");
    subst("cublasStpsv_v2", "hipblasStpsv", "library");
    subst("cublasStrmm", "hipblasStrmm", "library");
    subst("cublasStrmm_v2", "hipblasStrmm", "library");
    subst("cublasStrmv", "hipblasStrmv", "library");
    subst("cublasStrmv_v2", "hipblasStrmv", "library");
    subst("cublasStrsm", "hipblasStrsm", "library");
    subst("cublasStrsmBatched", "hipblasStrsmBatched", "library");
    subst("cublasStrsm_v2", "hipblasStrsm", "library");
    subst("cublasStrsv", "hipblasStrsv", "library");
    subst("cublasStrsv_v2", "hipblasStrsv", "library");
    subst("cublasZaxpy", "hipblasZaxpy", "library");
    subst("cublasZaxpy_v2", "hipblasZaxpy", "library");
    subst("cublasZcopy", "hipblasZcopy", "library");
    subst("cublasZcopy_v2", "hipblasZcopy", "library");
    subst("cublasZdgmm", "hipblasZdgmm", "library");
    subst("cublasZdotc", "hipblasZdotc", "library");
    subst("cublasZdotc_v2", "hipblasZdotc", "library");
    subst("cublasZdotu", "hipblasZdotu", "library");
    subst("cublasZdotu_v2", "hipblasZdotu", "library");
    subst("cublasZdrot", "hipblasZdrot", "library");
    subst("cublasZdrot_v2", "hipblasZdrot", "library");
    subst("cublasZdscal", "hipblasZdscal", "library");
    subst("cublasZdscal_v2", "hipblasZdscal", "library");
    subst("cublasZgbmv", "hipblasZgbmv", "library");
    subst("cublasZgbmv_v2", "hipblasZgbmv", "library");
    subst("cublasZgeam", "hipblasZgeam", "library");
    subst("cublasZgelsBatched", "hipblasZgelsBatched", "library");
    subst("cublasZgemm", "hipblasZgemm", "library");
    subst("cublasZgemmBatched", "hipblasZgemmBatched", "library");
    subst("cublasZgemmStridedBatched", "hipblasZgemmStridedBatched", "library");
    subst("cublasZgemm_v2", "hipblasZgemm", "library");
    subst("cublasZgemv", "hipblasZgemv", "library");
    subst("cublasZgemv_v2", "hipblasZgemv", "library");
    subst("cublasZgeqrfBatched", "hipblasZgeqrfBatched", "library");
    subst("cublasZgerc", "hipblasZgerc", "library");
    subst("cublasZgerc_v2", "hipblasZgerc", "library");
    subst("cublasZgeru", "hipblasZgeru", "library");
    subst("cublasZgeru_v2", "hipblasZgeru", "library");
    subst("cublasZgetrfBatched", "hipblasZgetrfBatched", "library");
    subst("cublasZgetriBatched", "hipblasZgetriBatched", "library");
    subst("cublasZgetrsBatched", "hipblasZgetrsBatched", "library");
    subst("cublasZhbmv", "hipblasZhbmv", "library");
    subst("cublasZhbmv_v2", "hipblasZhbmv", "library");
    subst("cublasZhemm", "hipblasZhemm", "library");
    subst("cublasZhemm_v2", "hipblasZhemm", "library");
    subst("cublasZhemv", "hipblasZhemv", "library");
    subst("cublasZhemv_v2", "hipblasZhemv", "library");
    subst("cublasZher", "hipblasZher", "library");
    subst("cublasZher2", "hipblasZher2", "library");
    subst("cublasZher2_v2", "hipblasZher2", "library");
    subst("cublasZher2k", "hipblasZher2k", "library");
    subst("cublasZher2k_v2", "hipblasZher2k", "library");
    subst("cublasZher_v2", "hipblasZher", "library");
    subst("cublasZherk", "hipblasZherk", "library");
    subst("cublasZherk_v2", "hipblasZherk", "library");
    subst("cublasZherkx", "hipblasZherkx", "library");
    subst("cublasZhpmv", "hipblasZhpmv", "library");
    subst("cublasZhpmv_v2", "hipblasZhpmv", "library");
    subst("cublasZhpr", "hipblasZhpr", "library");
    subst("cublasZhpr2", "hipblasZhpr2", "library");
    subst("cublasZhpr2_v2", "hipblasZhpr2", "library");
    subst("cublasZhpr_v2", "hipblasZhpr", "library");
    subst("cublasZrot", "hipblasZrot", "library");
    subst("cublasZrot_v2", "hipblasZrot", "library");
    subst("cublasZrotg", "hipblasZrotg", "library");
    subst("cublasZrotg_v2", "hipblasZrotg", "library");
    subst("cublasZscal", "hipblasZscal", "library");
    subst("cublasZscal_v2", "hipblasZscal", "library");
    subst("cublasZswap", "hipblasZswap", "library");
    subst("cublasZswap_v2", "hipblasZswap", "library");
    subst("cublasZsymm", "hipblasZsymm", "library");
    subst("cublasZsymm_v2", "hipblasZsymm", "library");
    subst("cublasZsymv", "hipblasZsymv", "library");
    subst("cublasZsymv_v2", "hipblasZsymv", "library");
    subst("cublasZsyr", "hipblasZsyr", "library");
    subst("cublasZsyr2", "hipblasZsyr2", "library");
    subst("cublasZsyr2_v2", "hipblasZsyr2", "library");
    subst("cublasZsyr2k", "hipblasZsyr2k", "library");
    subst("cublasZsyr2k_v2", "hipblasZsyr2k", "library");
    subst("cublasZsyr_v2", "hipblasZsyr", "library");
    subst("cublasZsyrk", "hipblasZsyrk", "library");
    subst("cublasZsyrk_v2", "hipblasZsyrk", "library");
    subst("cublasZsyrkx", "hipblasZsyrkx", "library");
    subst("cublasZtbmv", "hipblasZtbmv", "library");
    subst("cublasZtbmv_v2", "hipblasZtbmv", "library");
    subst("cublasZtbsv", "hipblasZtbsv", "library");
    subst("cublasZtbsv_v2", "hipblasZtbsv", "library");
    subst("cublasZtpmv", "hipblasZtpmv", "library");
    subst("cublasZtpmv_v2", "hipblasZtpmv", "library");
    subst("cublasZtpsv", "hipblasZtpsv", "library");
    subst("cublasZtpsv_v2", "hipblasZtpsv", "library");
    subst("cublasZtrmm", "hipblasZtrmm", "library");
    subst("cublasZtrmm_v2", "hipblasZtrmm", "library");
    subst("cublasZtrmv", "hipblasZtrmv", "library");
    subst("cublasZtrmv_v2", "hipblasZtrmv", "library");
    subst("cublasZtrsm", "hipblasZtrsm", "library");
    subst("cublasZtrsmBatched", "hipblasZtrsmBatched", "library");
    subst("cublasZtrsm_v2", "hipblasZtrsm", "library");
    subst("cublasZtrsv", "hipblasZtrsv", "library");
    subst("cublasZtrsv_v2", "hipblasZtrsv", "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("curandGenerateNormal", "hiprandGenerateNormal", "library");
    subst("curandGenerateNormalDouble", "hiprandGenerateNormalDouble", "library");
    subst("curandGeneratePoisson", "hiprandGeneratePoisson", "library");
    subst("curandGenerateSeeds", "hiprandGenerateSeeds", "library");
    subst("curandGenerateUniform", "hiprandGenerateUniform", "library");
    subst("curandGenerateUniformDouble", "hiprandGenerateUniformDouble", "library");
    subst("curandGetVersion", "hiprandGetVersion", "library");
    subst("curandMakeMTGP32Constants", "hiprandMakeMTGP32Constants", "library");
    subst("curandMakeMTGP32KernelState", "hiprandMakeMTGP32KernelState", "library");
    subst("curandSetGeneratorOffset", "hiprandSetGeneratorOffset", "library");
    subst("curandSetPseudoRandomGeneratorSeed", "hiprandSetPseudoRandomGeneratorSeed", "library");
    subst("curandSetQuasiRandomGeneratorDimensions", "hiprandSetQuasiRandomGeneratorDimensions", "library");
    subst("curandSetStream", "hiprandSetStream", "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("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("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("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("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("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("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("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("__half", "__half", "device_type");
    subst("__half2", "__half2", "device_type");
    subst("__half2_raw", "__half2_raw", "device_type");
    subst("__half_raw", "__half_raw", "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("cublas_api.h", "hipblas.h", "include");
    subst("cuda_fp16.h", "hip\/hip_fp16.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", "hipfftXt.h", "include");
    subst("curand_discrete.h", "hiprand_kernel.h", "include");
    subst("curand_discrete2.h", "hiprand_kernel.h", "include");
    subst("curand_globals.h", "hiprand_kernel.h", "include");
    subst("curand_kernel.h", "hiprand_kernel.h", "include");
    subst("curand_lognormal.h", "hiprand_kernel.h", "include");
    subst("curand_mrg32k3a.h", "hiprand_kernel.h", "include");
    subst("curand_mtgp32.h", "hiprand_kernel.h", "include");
    subst("curand_mtgp32_host.h", "hiprand_mtgp32_host.h", "include");
    subst("curand_mtgp32_kernel.h", "hiprand_kernel.h", "include");
    subst("curand_mtgp32dc_p_11213.h", "rocrand_mtgp32_11213.h", "include");
    subst("curand_normal.h", "hiprand_kernel.h", "include");
    subst("curand_normal_static.h", "hiprand_kernel.h", "include");
    subst("curand_philox4x32_x.h", "hiprand_kernel.h", "include");
    subst("curand_poisson.h", "hiprand_kernel.h", "include");
    subst("curand_precalc.h", "hiprand_kernel.h", "include");
    subst("curand_uniform.h", "hiprand_kernel.h", "include");
    subst("device_functions.h", "hip\/device_functions.h", "include");
    subst("driver_types.h", "hip\/driver_types.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.h", "include_cuda_main_header");
    subst("curand.h", "hiprand.h", "include_cuda_main_header");
    subst("cusparse.h", "hipsparse.h", "include_cuda_main_header");
    subst("nvrtc.h", "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_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_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_MEMSET_NODE_PARAMS", "hipMemsetParams", "type");
    subst("CUDA_MEMSET_NODE_PARAMS_st", "hipMemsetParams", "type");
    subst("CUDA_MEMSET_NODE_PARAMS_v1", "hipMemsetParams", "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_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("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("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("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("CUgraphExec", "hipGraphExec_t", "type");
    subst("CUgraphExecUpdateResult", "hipGraphExecUpdateResult", "type");
    subst("CUgraphExecUpdateResult_enum", "hipGraphExecUpdateResult", "type");
    subst("CUgraphExec_st", "hipGraphExec", "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("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("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_t", "bsric02Info_t", "type");
    subst("bsrilu02Info_t", "bsrilu02Info_t", "type");
    subst("bsrsm2Info", "bsrsm2Info", "type");
    subst("bsrsm2Info_t", "bsrsm2Info_t", "type");
    subst("bsrsv2Info_t", "bsrsv2Info_t", "type");
    subst("csrgemm2Info_t", "csrgemm2Info_t", "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", "hipblasDatatype_t", "type");
    subst("cublasDataType_t", "hipblasDatatype_t", "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("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("cudaComputeMode", "hipComputeMode", "type");
    subst("cudaDataType", "hipblasDatatype_t", "type");
    subst("cudaDataType_t", "hipblasDatatype_t", "type");
    subst("cudaDeviceAttr", "hipDeviceAttribute_t", "type");
    subst("cudaDeviceP2PAttr", "hipDeviceP2PAttr", "type");
    subst("cudaDeviceProp", "hipDeviceProp_t", "type");
    subst("cudaError", "hipError_t", "type");
    subst("cudaError_enum", "hipError_t", "type");
    subst("cudaError_t", "hipError_t", "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("cudaExternalSemaphoreSignalParams", "hipExternalSemaphoreSignalParams", "type");
    subst("cudaExternalSemaphoreSignalParams_v1", "hipExternalSemaphoreSignalParams", "type");
    subst("cudaExternalSemaphoreWaitParams", "hipExternalSemaphoreWaitParams", "type");
    subst("cudaExternalSemaphoreWaitParams_v1", "hipExternalSemaphoreWaitParams", "type");
    subst("cudaExternalSemaphore_t", "hipExternalSemaphore_t", "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("cudaGraphDebugDotFlags", "hipGraphDebugDotFlags", "type");
    subst("cudaGraphExecUpdateResult", "hipGraphExecUpdateResult", "type");
    subst("cudaGraphExec_t", "hipGraphExec_t", "type");
    subst("cudaGraphInstantiateFlags", "hipGraphInstantiateFlags", "type");
    subst("cudaGraphMemAttributeType", "hipGraphMemAttributeType", "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("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("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("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("curandDirectionVectors32_t", "hiprandDirectionVectors32_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("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("curandStateSobol32", "hiprandStateSobol32", "type");
    subst("curandStateSobol32_t", "hiprandStateSobol32_t", "type");
    subst("curandStateXORWOW", "hiprandStateXORWOW", "type");
    subst("curandStateXORWOW_t", "hiprandStateXORWOW_t", "type");
    subst("curandState_t", "hiprandState_t", "type");
    subst("curandStatus", "hiprandStatus_t", "type");
    subst("curandStatus_t", "hiprandStatus_t", "type");
    subst("cusparseAction_t", "hipsparseAction_t", "type");
    subst("cusparseColorInfo_t", "hipsparseColorInfo_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("nvrtcProgram", "hiprtcProgram", "type");
    subst("nvrtcResult", "hiprtcResult", "type");
    subst("pruneInfo", "pruneInfo", "type");
    subst("pruneInfo_t", "pruneInfo_t", "type");
    subst("surfaceReference", "surfaceReference", "type");
    subst("texture", "texture", "type");
    subst("textureReference", "textureReference", "type");
    subst("CUBLAS_ATOMICS_ALLOWED", "HIPBLAS_ATOMICS_ALLOWED", "numeric_literal");
    subst("CUBLAS_ATOMICS_NOT_ALLOWED", "HIPBLAS_ATOMICS_NOT_ALLOWED", "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_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_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("CUDA_C_16BF", "HIPBLAS_C_16B", "numeric_literal");
    subst("CUDA_C_16F", "HIPBLAS_C_16F", "numeric_literal");
    subst("CUDA_C_32F", "HIPBLAS_C_32F", "numeric_literal");
    subst("CUDA_C_32I", "HIPBLAS_C_32I", "numeric_literal");
    subst("CUDA_C_32U", "HIPBLAS_C_32U", "numeric_literal");
    subst("CUDA_C_64F", "HIPBLAS_C_64F", "numeric_literal");
    subst("CUDA_C_8I", "HIPBLAS_C_8I", "numeric_literal");
    subst("CUDA_C_8U", "HIPBLAS_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_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_R_16BF", "HIPBLAS_R_16B", "numeric_literal");
    subst("CUDA_R_16F", "HIPBLAS_R_16F", "numeric_literal");
    subst("CUDA_R_32F", "HIPBLAS_R_32F", "numeric_literal");
    subst("CUDA_R_32I", "HIPBLAS_R_32I", "numeric_literal");
    subst("CUDA_R_32U", "HIPBLAS_R_32U", "numeric_literal");
    subst("CUDA_R_64F", "HIPBLAS_R_64F", "numeric_literal");
    subst("CUDA_R_8I", "HIPBLAS_R_8I", "numeric_literal");
    subst("CUDA_R_8U", "HIPBLAS_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_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_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("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("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_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_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_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_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_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_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("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("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("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("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("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("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("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("cudaGraphInstantiateFlagAutoFreeOnLaunch", "hipGraphInstantiateFlagAutoFreeOnLaunch", "numeric_literal");
    subst("cudaGraphInstantiateFlagDeviceLaunch", "hipGraphInstantiateFlagDeviceLaunch", "numeric_literal");
    subst("cudaGraphInstantiateFlagUpload", "hipGraphInstantiateFlagUpload", "numeric_literal");
    subst("cudaGraphInstantiateFlagUseNodePriority", "hipGraphInstantiateFlagUseNodePriority", "numeric_literal");
    subst("cudaGraphMemAttrReservedMemCurrent", "hipGraphMemAttrReservedMemCurrent", "numeric_literal");
    subst("cudaGraphMemAttrReservedMemHigh", "hipGraphMemAttrReservedMemHigh", "numeric_literal");
    subst("cudaGraphMemAttrUsedMemCurrent", "hipGraphMemAttrUsedMemCurrent", "numeric_literal");
    subst("cudaGraphMemAttrUsedMemHigh", "hipGraphMemAttrUsedMemHigh", "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("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("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("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_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_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("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("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 (
        "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;
}

sub countSupportedDeviceFunctions {
    my $k = 0;
    foreach $func (
        "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",
        "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",
        "__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",
        "__short2half_rz",
        "__short2half_ru",
        "__short2half_rn",
        "__short2half_rd",
        "__shfl_xor",
        "__shfl_up",
        "__shfl_down",
        "__shfl",
        "__saturatef",
        "__sad",
        "__rhadd",
        "__powf",
        "__popcll",
        "__popc",
        "__mulhi",
        "__mul64hi",
        "__mul24",
        "__lows2half2",
        "__lowhigh2highlow",
        "__low2half2",
        "__low2half",
        "__low2float",
        "__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",
        "__hmin",
        "__hmax_nan",
        "__hmax",
        "__hltu2",
        "__hltu",
        "__hlt2",
        "__hlt",
        "__hleu2",
        "__hleu",
        "__hle2",
        "__hle",
        "__hisnan2",
        "__hisnan",
        "__hisinf",
        "__hiloint2double",
        "__highs2half2",
        "__high2half2",
        "__high2half",
        "__high2float",
        "__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",
        "__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",
        "__float22half2_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",
        "__dmul_rn",
        "__ddiv_rn",
        "__dadd_rn",
        "__cosf",
        "__clzll",
        "__clz",
        "__byte_perm",
        "__brevll",
        "__brev",
        "__ballot",
        "__assertfail",
        "__assert_fail",
        "__any",
        "__all"
    )
    {
        # 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;
}

sub warnUnsupportedDeviceFunctions {
    my $line_num = shift;
    my $k = 0;
    foreach $func (
        "umul24",
        "umin",
        "umax",
        "ullmin",
        "ullmax",
        "uint_as_float",
        "uint2float",
        "saturate",
        "mulhi",
        "mul64hi",
        "mul24",
        "make_half2",
        "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",
        "__ushort_as_bfloat16",
        "__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",
        "__short_as_bfloat16",
        "__short2bfloat16_rz",
        "__short2bfloat16_ru",
        "__short2bfloat16_rn",
        "__short2bfloat16_rd",
        "__shfl_xor_sync",
        "__shfl_up_sync",
        "__shfl_sync",
        "__shfl_down_sync",
        "__prof_trigger",
        "__pm3",
        "__pm2",
        "__pm1",
        "__pm0",
        "__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",
        "__lows2bfloat162",
        "__low2bfloat162",
        "__low2bfloat16",
        "__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",
        "__hmin2",
        "__hmax2_nan",
        "__hmax2",
        "__hltu2_mask",
        "__hlt2_mask",
        "__hleu2_mask",
        "__hle2_mask",
        "__highs2bfloat162",
        "__high2bfloat162",
        "__high2bfloat16",
        "__hgtu2_mask",
        "__hgt2_mask",
        "__hgeu2_mask",
        "__hge2_mask",
        "__hfma_relu",
        "__hfma2_relu",
        "__hequ2_mask",
        "__heq2_mask",
        "__hcmadd",
        "__halves2bfloat162",
        "__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",
        "__float2bfloat16",
        "__float22bfloat162_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",
        "__double2bfloat16",
        "__dmul_rz",
        "__dmul_ru",
        "__dmul_rd",
        "__ddiv_rz",
        "__ddiv_ru",
        "__ddiv_rd",
        "__dadd_rz",
        "__dadd_ru",
        "__dadd_rd",
        "__brkpt",
        "__bfloat16_as_ushort",
        "__bfloat16_as_short",
        "__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",
        "__bfloat162float",
        "__bfloat162char_rz",
        "__bfloat162bfloat162",
        "__bfloat1622float2",
        "_Pow_int"
    )
    {
        # 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 "  warning: $fileName:$line_num: unsupported device function \"$func\": $_\n";
        }
    }
    return $k;
}

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

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

sub warnUnsupportedFunctions {
    my $line_num = shift;
    my $k = 0;
    foreach $func (
        "nvrtcGetSupportedArchs",
        "nvrtcGetOptiXIRSize",
        "nvrtcGetOptiXIR",
        "nvrtcGetNumSupportedArchs",
        "nvrtcGetNVVMSize",
        "nvrtcGetNVVM",
        "nvrtcGetLTOIRSize",
        "nvrtcGetLTOIR",
        "nv_bfloat162",
        "nv_bfloat16",
        "memoryBarrier",
        "libraryPropertyType_t",
        "libraryPropertyType",
        "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",
        "cusparseSpMatSetNumBatches",
        "cusparseSpMatGetNumBatches",
        "cusparseSpMatDescr",
        "cusparseSpMMOp_destroyPlan",
        "cusparseSpMMOp_createPlan",
        "cusparseSpMMOpPlan_t",
        "cusparseSpMMOpPlan",
        "cusparseSpMMOpAlg_t",
        "cusparseSpMMOp",
        "cusparseSpGEMMreuse_workEstimation",
        "cusparseSpGEMMreuse_nnz",
        "cusparseSpGEMMreuse_copy",
        "cusparseSpGEMMreuse_compute",
        "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",
        "cusparseCscGet",
        "cusparseCreateSolveAnalysisInfo",
        "cusparseCreateSlicedEll",
        "cusparseCreateConstSpVec",
        "cusparseCreateConstSlicedEll",
        "cusparseCreateConstDnVec",
        "cusparseCreateConstDnMat",
        "cusparseCreateConstCsr",
        "cusparseCreateConstCsc",
        "cusparseCreateConstCoo",
        "cusparseCreateConstBsr",
        "cusparseCreateConstBlockedEll",
        "cusparseCreateBsr",
        "cusparseContext",
        "cusparseConstrainedGeMM_bufferSize",
        "cusparseConstrainedGeMM",
        "cusparseConstSpVecGetValues",
        "cusparseConstSpVecGet",
        "cusparseConstSpVecDescr_t",
        "cusparseConstSpMatGetValues",
        "cusparseConstSpMatDescr_t",
        "cusparseConstDnVecGetValues",
        "cusparseConstDnVecGet",
        "cusparseConstDnVecDescr_t",
        "cusparseConstDnMatGetValues",
        "cusparseConstDnMatGet",
        "cusparseConstDnMatDescr_t",
        "cusparseConstCsrGet",
        "cusparseConstCscGet",
        "cusparseConstCooGet",
        "cusparseConstBlockedEllGet",
        "cusparseColorInfo",
        "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",
        "curandStateSobol64_t",
        "curandStateSobol64",
        "curandStateScrambledSobol64_t",
        "curandStateScrambledSobol64",
        "curandStateScrambledSobol32_t",
        "curandStateScrambledSobol32",
        "curandSetGeneratorOrdering",
        "curandOrdering_t",
        "curandOrdering",
        "curandMethod_t",
        "curandMethod",
        "curandHistogramM2_t",
        "curandHistogramM2_st",
        "curandHistogramM2V_t",
        "curandHistogramM2V_st",
        "curandHistogramM2K_t",
        "curandHistogramM2K_st",
        "curandGetScrambleConstants64",
        "curandGetScrambleConstants32",
        "curandGetProperty",
        "curandGetDirectionVectors64",
        "curandGetDirectionVectors32",
        "curandGenerateLongLong",
        "curandDistribution_t",
        "curandDistribution_st",
        "curandDistributionShift_t",
        "curandDistributionShift_st",
        "curandDistributionM2Shift_t",
        "curandDistributionM2Shift_st",
        "curandDirectionVectors64_t",
        "curandDirectionVectorSet_t",
        "curandDirectionVectorSet",
        "cufftXtWorkAreaPolicy_t",
        "cufftXtWorkAreaPolicy",
        "cufftXtSubFormat_t",
        "cufftXtSubFormat",
        "cufftXtSetWorkAreaPolicy",
        "cufftXtSetWorkArea",
        "cufftXtSetGPUs",
        "cufftXtSetDistribution",
        "cufftXtQueryType_t",
        "cufftXtQueryType",
        "cufftXtQueryPlan",
        "cufftXtMemcpy",
        "cufftXtMalloc",
        "cufftXtMakePlanMany",
        "cufftXtGetSizeMany",
        "cufftXtFree",
        "cufftXtExecDescriptorZ2Z",
        "cufftXtExecDescriptorZ2D",
        "cufftXtExecDescriptorR2C",
        "cufftXtExecDescriptorD2Z",
        "cufftXtExecDescriptorC2R",
        "cufftXtExecDescriptorC2C",
        "cufftXtExecDescriptor",
        "cufftXtExec",
        "cufftXtCopyType_t",
        "cufftXtCopyType",
        "cufftXt1dFactors_t",
        "cufftXt1dFactors",
        "cufftCompatibility_t",
        "cufftCompatibility",
        "cufftBox3d_t",
        "cufftBox3d",
        "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_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_v8",
        "cudnnRNNSetClip",
        "cudnnRNNPaddingMode_t",
        "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",
        "cudnnOpsTrainVersionCheck",
        "cudnnOpsInferVersionCheck",
        "cudnnOpTensorStruct",
        "cudnnNormalizationForwardTraining",
        "cudnnNormalizationForwardInference",
        "cudnnNormalizationBackward",
        "cudnnNormOps_t",
        "cudnnNormMode_t",
        "cudnnNormAlgo_t",
        "cudnnMultiHeadAttnWeightKind_t",
        "cudnnMultiHeadAttnForward",
        "cudnnMultiHeadAttnBackwardWeights",
        "cudnnMultiHeadAttnBackwardData",
        "cudnnMakeFusedOpsPlan",
        "cudnnLossNormalizationMode_t",
        "cudnnLRNStruct",
        "cudnnInitTransformDest",
        "cudnnIm2Col",
        "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",
        "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_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",
        "cudnnBuildRNNDynamic",
        "cudnnBnFinalizeStatsMode_t",
        "cudnnBatchNormalizationForwardTrainingEx",
        "cudnnBatchNormalizationBackwardEx",
        "cudnnBatchNormOps_t",
        "cudnnBackendTensorReordering_t",
        "cudnnBackendSetAttribute",
        "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",
        "cudnnAdvTrainVersionCheck",
        "cudnnAdvInferVersionCheck",
        "cudnnActivationStruct",
        "cudaWGLGetDevice",
        "cudaVDPAUSetVDPAUDevice",
        "cudaVDPAUGetDevice",
        "cudaThreadSetLimit",
        "cudaThreadGetLimit",
        "cudaSynchronizationPolicy",
        "cudaSyncPolicyYield",
        "cudaSyncPolicySpin",
        "cudaSyncPolicyBlockingSync",
        "cudaSyncPolicyAuto",
        "cudaSurfaceFormatMode",
        "cudaStreamSetAttribute",
        "cudaStreamLegacy",
        "cudaStreamGetId",
        "cudaStreamGetAttribute",
        "cudaStreamCopyAttributes",
        "cudaStreamAttributeSynchronizationPolicy",
        "cudaStreamAttributePriority",
        "cudaStreamAttributeMemSyncDomainMap",
        "cudaStreamAttributeMemSyncDomain",
        "cudaStreamAttributeAccessPolicyWindow",
        "cudaStreamAttrValue",
        "cudaStreamAttrID",
        "cudaSharedmemCarveoutMaxShared",
        "cudaSharedmemCarveoutMaxL1",
        "cudaSharedmemCarveoutDefault",
        "cudaSharedCarveout",
        "cudaSetValidDevices",
        "cudaSetDoubleForHost",
        "cudaSetDoubleForDevice",
        "cudaProfilerInitialize",
        "cudaOutputMode_t",
        "cudaOutputMode",
        "cudaOccupancyMaxPotentialClusterSize",
        "cudaOccupancyMaxActiveClusters",
        "cudaOccupancyAvailableDynamicSMemPerBlock",
        "cudaNvSciSyncAttrWait",
        "cudaNvSciSyncAttrSignal",
        "cudaMemsetParamsV2",
        "cudaMemoryTypeUnregistered",
        "cudaMemcpyToArrayAsync",
        "cudaMemcpyNodeParams",
        "cudaMemcpyFromArrayAsync",
        "cudaMemcpyArrayToArray",
        "cudaMemcpy3DPeerParms",
        "cudaMemcpy3DPeerAsync",
        "cudaMemcpy3DPeer",
        "cudaMemcpy2DArrayToArray",
        "cudaMemRangeAttributePreferredLocationType",
        "cudaMemRangeAttributePreferredLocationId",
        "cudaMemRangeAttributeLastPrefetchLocationType",
        "cudaMemRangeAttributeLastPrefetchLocationId",
        "cudaMemPrefetchAsync_v2",
        "cudaMemLocationTypeHostNumaCurrent",
        "cudaMemLocationTypeHostNuma",
        "cudaMemLocationTypeHost",
        "cudaMemFreeNodeParams",
        "cudaMemAllocNodeParamsV2",
        "cudaMemAdvise_v2",
        "cudaLimitPersistingL2CacheSize",
        "cudaLimitMaxL2FetchGranularity",
        "cudaLimitDevRuntimeSyncDepth",
        "cudaLimitDevRuntimePendingLaunchCount",
        "cudaLaunchMemSyncDomainRemote",
        "cudaLaunchMemSyncDomainMap_st",
        "cudaLaunchMemSyncDomainMap",
        "cudaLaunchMemSyncDomainDefault",
        "cudaLaunchMemSyncDomain",
        "cudaLaunchKernelExC",
        "cudaLaunchConfig_t",
        "cudaLaunchConfig_st",
        "cudaLaunchAttribute_st",
        "cudaLaunchAttributeValue",
        "cudaLaunchAttributeSynchronizationPolicy",
        "cudaLaunchAttributeProgrammaticStreamSerialization",
        "cudaLaunchAttributeProgrammaticEvent",
        "cudaLaunchAttributePriority",
        "cudaLaunchAttributeMemSyncDomainMap",
        "cudaLaunchAttributeMemSyncDomain",
        "cudaLaunchAttributeIgnore",
        "cudaLaunchAttributeID",
        "cudaLaunchAttributeCooperative",
        "cudaLaunchAttributeClusterSchedulingPolicyPreference",
        "cudaLaunchAttributeClusterDimension",
        "cudaLaunchAttributeAccessPolicyWindow",
        "cudaLaunchAttribute",
        "cudaKeyValuePair",
        "cudaKernel_t",
        "cudaKernelNodeParamsV2",
        "cudaKernelNodeAttributePriority",
        "cudaKernelNodeAttributeMemSyncDomainMap",
        "cudaKernelNodeAttributeMemSyncDomain",
        "cudaKernelNodeAttributeClusterSchedulingPolicyPreference",
        "cudaKernelNodeAttributeClusterDimension",
        "cudaInitDeviceFlagsAreValid",
        "cudaInitDevice",
        "cudaHostNodeParamsV2",
        "cudaGraphicsVDPAURegisterVideoSurface",
        "cudaGraphicsVDPAURegisterOutputSurface",
        "cudaGraphicsResourceSetMapFlags",
        "cudaGraphicsResourceGetMappedMipmappedArray",
        "cudaGraphicsResourceGetMappedEglFrame",
        "cudaGraphicsMapFlagsWriteDiscard",
        "cudaGraphicsMapFlagsReadOnly",
        "cudaGraphicsMapFlagsNone",
        "cudaGraphicsMapFlags",
        "cudaGraphicsEGLRegisterImage",
        "cudaGraphicsD3D9RegisterResource",
        "cudaGraphicsD3D11RegisterResource",
        "cudaGraphicsD3D10RegisterResource",
        "cudaGraphicsCubeFacePositiveZ",
        "cudaGraphicsCubeFacePositiveY",
        "cudaGraphicsCubeFacePositiveX",
        "cudaGraphicsCubeFaceNegativeZ",
        "cudaGraphicsCubeFaceNegativeY",
        "cudaGraphicsCubeFaceNegativeX",
        "cudaGraphicsCubeFace",
        "cudaGraphNodeSetParams",
        "cudaGraphNodeParams",
        "cudaGraphInstantiateWithParams",
        "cudaGraphInstantiateSuccess",
        "cudaGraphInstantiateResult",
        "cudaGraphInstantiateParams_st",
        "cudaGraphInstantiateParams",
        "cudaGraphInstantiateNodeOperationNotSupported",
        "cudaGraphInstantiateMultipleDevicesNotSupported",
        "cudaGraphInstantiateInvalidStructure",
        "cudaGraphInstantiateError",
        "cudaGraphExternalSemaphoresWaitNodeSetParams",
        "cudaGraphExternalSemaphoresWaitNodeGetParams",
        "cudaGraphExternalSemaphoresSignalNodeSetParams",
        "cudaGraphExternalSemaphoresSignalNodeGetParams",
        "cudaGraphExecUpdateResultInfo_st",
        "cudaGraphExecUpdateResultInfo",
        "cudaGraphExecUpdateErrorAttributesChanged",
        "cudaGraphExecNodeSetParams",
        "cudaGraphExecGetFlags",
        "cudaGraphExecExternalSemaphoresWaitNodeSetParams",
        "cudaGraphExecExternalSemaphoresSignalNodeSetParams",
        "cudaGraphAddNode",
        "cudaGraphAddExternalSemaphoresWaitNode",
        "cudaGraphAddExternalSemaphoresSignalNode",
        "cudaGetTextureObjectTextureDesc_v2",
        "cudaGetSurfaceReference",
        "cudaGetSurfaceObjectResourceDesc",
        "cudaGetParameterBufferV2",
        "cudaGetParameterBuffer",
        "cudaGetKernel",
        "cudaGetFuncBySymbol",
        "cudaGetDriverEntryPointFlags",
        "cudaGetDriverEntryPoint",
        "cudaGPUDirectRDMAWritesOrderingOwner",
        "cudaGPUDirectRDMAWritesOrderingNone",
        "cudaGPUDirectRDMAWritesOrderingAllDevices",
        "cudaGPUDirectRDMAWritesOrdering",
        "cudaGLUnregisterBufferObject",
        "cudaGLUnmapBufferObjectAsync",
        "cudaGLUnmapBufferObject",
        "cudaGLSetGLDevice",
        "cudaGLSetBufferObjectMapFlags",
        "cudaGLRegisterBufferObject",
        "cudaGLMapFlagsWriteDiscard",
        "cudaGLMapFlagsReadOnly",
        "cudaGLMapFlagsNone",
        "cudaGLMapFlags",
        "cudaGLMapBufferObjectAsync",
        "cudaGLMapBufferObject",
        "cudaFuncAttributeRequiredClusterWidth",
        "cudaFuncAttributeRequiredClusterHeight",
        "cudaFuncAttributeRequiredClusterDepth",
        "cudaFuncAttributeNonPortableClusterSizeAllowed",
        "cudaFuncAttributeClusterSchedulingPolicyPreference",
        "cudaFuncAttributeClusterDimMustBeSet",
        "cudaFormatModeForced",
        "cudaFormatModeAuto",
        "cudaFlushGPUDirectRDMAWritesToOwner",
        "cudaFlushGPUDirectRDMAWritesToAllDevices",
        "cudaFlushGPUDirectRDMAWritesTargetCurrentDevice",
        "cudaFlushGPUDirectRDMAWritesTarget",
        "cudaFlushGPUDirectRDMAWritesScope",
        "cudaFlushGPUDirectRDMAWritesOptions",
        "cudaFlushGPUDirectRDMAWritesOptionMemOps",
        "cudaFlushGPUDirectRDMAWritesOptionHost",
        "cudaExternalSemaphoreWaitSkipNvSciBufMemSync",
        "cudaExternalSemaphoreWaitNodeParamsV2",
        "cudaExternalSemaphoreWaitNodeParams",
        "cudaExternalSemaphoreSignalSkipNvSciBufMemSync",
        "cudaExternalSemaphoreSignalNodeParamsV2",
        "cudaExternalSemaphoreSignalNodeParams",
        "cudaExternalSemaphoreHandleTypeTimelineSemaphoreWin32",
        "cudaExternalSemaphoreHandleTypeTimelineSemaphoreFd",
        "cudaExternalSemaphoreHandleTypeNvSciSync",
        "cudaExternalSemaphoreHandleTypeKeyedMutexKmt",
        "cudaExternalSemaphoreHandleTypeKeyedMutex",
        "cudaExternalSemaphoreHandleTypeD3D11Fence",
        "cudaExternalMemoryMipmappedArrayDesc",
        "cudaExternalMemoryHandleTypeNvSciBuf",
        "cudaExternalMemoryGetMappedMipmappedArray",
        "cudaEventWaitNodeParams",
        "cudaEventWaitExternal",
        "cudaEventWaitDefault",
        "cudaEventRecordWithFlags",
        "cudaEventRecordNodeParams",
        "cudaEventRecordExternal",
        "cudaEventRecordDefault",
        "cudaEventCreateFromEGLSync",
        "cudaErrorUnsupportedPtxVersion",
        "cudaErrorUnsupportedExecAffinity",
        "cudaErrorUnsupportedDevSideSync",
        "cudaErrorTooManyPeers",
        "cudaErrorTimeout",
        "cudaErrorTextureNotBound",
        "cudaErrorTextureFetchFailed",
        "cudaErrorSystemNotReady",
        "cudaErrorSystemDriverMismatch",
        "cudaErrorSynchronizationError",
        "cudaErrorSyncDepthExceeded",
        "cudaErrorStubLibrary",
        "cudaErrorStartupFailure",
        "cudaErrorSoftwareValidityNotEstablished",
        "cudaErrorNvlinkUncorrectable",
        "cudaErrorNotYetImplemented",
        "cudaErrorNotPermitted",
        "cudaErrorMpsServerNotReady",
        "cudaErrorMpsRpcFailure",
        "cudaErrorMpsMaxConnectionsReached",
        "cudaErrorMpsMaxClientsReached",
        "cudaErrorMpsConnectionFailed",
        "cudaErrorMpsClientTerminated",
        "cudaErrorMixedDeviceExecution",
        "cudaErrorMisalignedAddress",
        "cudaErrorMemoryValueTooLarge",
        "cudaErrorLaunchPendingCountExceeded",
        "cudaErrorLaunchMaxDepthExceeded",
        "cudaErrorLaunchIncompatibleTexturing",
        "cudaErrorLaunchFileScopedTex",
        "cudaErrorLaunchFileScopedSurf",
        "cudaErrorJitCompilerNotFound",
        "cudaErrorJitCompilationDisabled",
        "cudaErrorInvalidTextureBinding",
        "cudaErrorInvalidTexture",
        "cudaErrorInvalidSurface",
        "cudaErrorInvalidPc",
        "cudaErrorInvalidNormSetting",
        "cudaErrorInvalidHostPointer",
        "cudaErrorInvalidFilterSetting",
        "cudaErrorInvalidClusterSize",
        "cudaErrorInvalidChannelDescriptor",
        "cudaErrorInvalidAddressSpace",
        "cudaErrorIncompatibleDriverContext",
        "cudaErrorIllegalInstruction",
        "cudaErrorHardwareStackError",
        "cudaErrorExternalDevice",
        "cudaErrorDuplicateVariableName",
        "cudaErrorDuplicateTextureName",
        "cudaErrorDuplicateSurfaceName",
        "cudaErrorDevicesUnavailable",
        "cudaErrorDeviceNotLicensed",
        "cudaErrorCompatNotSupportedOnDevice",
        "cudaErrorCdpVersionMismatch",
        "cudaErrorCdpNotSupported",
        "cudaErrorCallRequiresNewerDriver",
        "cudaErrorApiFailureBase",
        "cudaErrorAddressOfConstant",
        "cudaEnablePerThreadDefaultStream",
        "cudaEnableLegacyStream",
        "cudaEnableDefault",
        "cudaEglStreamConnection",
        "cudaEglResourceLocationVidmem",
        "cudaEglResourceLocationSysmem",
        "cudaEglResourceLocationFlags",
        "cudaEglPlaneDesc_st",
        "cudaEglPlaneDesc",
        "cudaEglFrame_st",
        "cudaEglFrameTypePitch",
        "cudaEglFrameTypeArray",
        "cudaEglFrameType",
        "cudaEglFrame",
        "cudaEglColorFormatYVYU_ER",
        "cudaEglColorFormatYVU444SemiPlanar_ER",
        "cudaEglColorFormatYVU444SemiPlanar",
        "cudaEglColorFormatYVU444Planar_ER",
        "cudaEglColorFormatYVU444Planar",
        "cudaEglColorFormatYVU422SemiPlanar_ER",
        "cudaEglColorFormatYVU422SemiPlanar",
        "cudaEglColorFormatYVU422Planar_ER",
        "cudaEglColorFormatYVU422Planar",
        "cudaEglColorFormatYVU420SemiPlanar_ER",
        "cudaEglColorFormatYVU420SemiPlanar",
        "cudaEglColorFormatYVU420Planar_ER",
        "cudaEglColorFormatYVU420Planar",
        "cudaEglColorFormatYUYV_ER",
        "cudaEglColorFormatYUYV422",
        "cudaEglColorFormatYUV_ER",
        "cudaEglColorFormatYUVA_ER",
        "cudaEglColorFormatYUV444SemiPlanar_ER",
        "cudaEglColorFormatYUV444SemiPlanar",
        "cudaEglColorFormatYUV444Planar_ER",
        "cudaEglColorFormatYUV444Planar",
        "cudaEglColorFormatYUV422SemiPlanar_ER",
        "cudaEglColorFormatYUV422SemiPlanar",
        "cudaEglColorFormatYUV422Planar_ER",
        "cudaEglColorFormatYUV422Planar",
        "cudaEglColorFormatYUV420SemiPlanar_ER",
        "cudaEglColorFormatYUV420SemiPlanar",
        "cudaEglColorFormatYUV420Planar_ER",
        "cudaEglColorFormatYUV420Planar",
        "cudaEglColorFormatY12V12U12_444SemiPlanar",
        "cudaEglColorFormatY12V12U12_420SemiPlanar",
        "cudaEglColorFormatY10V10U10_444SemiPlanar",
        "cudaEglColorFormatY10V10U10_420SemiPlanar",
        "cudaEglColorFormatVYUY_ER",
        "cudaEglColorFormatUYVY_ER",
        "cudaEglColorFormatUYVY422",
        "cudaEglColorFormatRGBA",
        "cudaEglColorFormatRGB",
        "cudaEglColorFormatRG",
        "cudaEglColorFormatR",
        "cudaEglColorFormatL",
        "cudaEglColorFormatBayerRGGB",
        "cudaEglColorFormatBayerIspRGGB",
        "cudaEglColorFormatBayerIspGRBG",
        "cudaEglColorFormatBayerIspGBRG",
        "cudaEglColorFormatBayerIspBGGR",
        "cudaEglColorFormatBayerGRBG",
        "cudaEglColorFormatBayerGBRG",
        "cudaEglColorFormatBayerBGGR",
        "cudaEglColorFormatBayer20RGGB",
        "cudaEglColorFormatBayer20GRBG",
        "cudaEglColorFormatBayer20GBRG",
        "cudaEglColorFormatBayer20BGGR",
        "cudaEglColorFormatBayer14RGGB",
        "cudaEglColorFormatBayer14GRBG",
        "cudaEglColorFormatBayer14GBRG",
        "cudaEglColorFormatBayer14BGGR",
        "cudaEglColorFormatBayer12RGGB",
        "cudaEglColorFormatBayer12GRBG",
        "cudaEglColorFormatBayer12GBRG",
        "cudaEglColorFormatBayer12BGGR",
        "cudaEglColorFormatBayer10RGGB",
        "cudaEglColorFormatBayer10GRBG",
        "cudaEglColorFormatBayer10GBRG",
        "cudaEglColorFormatBayer10BGGR",
        "cudaEglColorFormatBGRA",
        "cudaEglColorFormatBGR",
        "cudaEglColorFormatAYUV_ER",
        "cudaEglColorFormatAYUV",
        "cudaEglColorFormatARGB",
        "cudaEglColorFormatABGR",
        "cudaEglColorFormatA",
        "cudaEglColorFormat",
        "cudaEGLStreamProducerReturnFrame",
        "cudaEGLStreamProducerPresentFrame",
        "cudaEGLStreamProducerDisconnect",
        "cudaEGLStreamProducerConnect",
        "cudaEGLStreamConsumerReleaseFrame",
        "cudaEGLStreamConsumerDisconnect",
        "cudaEGLStreamConsumerConnectWithFlags",
        "cudaEGLStreamConsumerConnect",
        "cudaEGLStreamConsumerAcquireFrame",
        "cudaDriverEntryPointVersionNotSufficent",
        "cudaDriverEntryPointSymbolNotFound",
        "cudaDriverEntryPointSuccess",
        "cudaDriverEntryPointQueryResult",
        "cudaDeviceSyncMemops",
        "cudaDevicePropDontCare",
        "cudaDeviceNumaConfigNumaNode",
        "cudaDeviceNumaConfigNone",
        "cudaDeviceNumaConfig",
        "cudaDeviceMask",
        "cudaDeviceGetTexture1DLinearMaxWidth",
        "cudaDeviceGetNvSciSyncAttributes",
        "cudaDeviceFlushGPUDirectRDMAWrites",
        "cudaDevAttrTimelineSemaphoreInteropSupported",
        "cudaDevAttrSparseCudaArraySupported",
        "cudaDevAttrReservedSharedMemoryPerBlock",
        "cudaDevAttrReserved93",
        "cudaDevAttrReserved92",
        "cudaDevAttrReserved132",
        "cudaDevAttrReserved129",
        "cudaDevAttrReserved128",
        "cudaDevAttrReserved127",
        "cudaDevAttrReserved124",
        "cudaDevAttrReserved123",
        "cudaDevAttrReserved122",
        "cudaDevAttrNumaId",
        "cudaDevAttrNumaConfig",
        "cudaDevAttrMemoryPoolSupportedHandleTypes",
        "cudaDevAttrMemSyncDomainCount",
        "cudaDevAttrMaxTimelineSemaphoreInteropSupported",
        "cudaDevAttrMaxTextureCubemapLayeredLayers",
        "cudaDevAttrMaxTexture2DLayeredLayers",
        "cudaDevAttrMaxTexture1DLayeredLayers",
        "cudaDevAttrMaxSurfaceCubemapLayeredLayers",
        "cudaDevAttrMaxSurface2DLayeredLayers",
        "cudaDevAttrMaxSurface1DLayeredLayers",
        "cudaDevAttrMaxPersistingL2CacheSize",
        "cudaDevAttrMaxAccessPolicyWindowSize",
        "cudaDevAttrMax",
        "cudaDevAttrIpcEventSupport",
        "cudaDevAttrHostRegisterSupported",
        "cudaDevAttrHostRegisterReadOnlySupported",
        "cudaDevAttrHostNumaId",
        "cudaDevAttrGPUDirectRDMAWritesOrdering",
        "cudaDevAttrGPUDirectRDMASupported",
        "cudaDevAttrGPUDirectRDMAFlushWritesOptions",
        "cudaDevAttrDeferredMappingCudaArraySupported",
        "cudaDevAttrClusterLaunch",
        "cudaDevAttrCanFlushRemoteWrites",
        "cudaD3D9UnregisterResource",
        "cudaD3D9UnmapResources",
        "cudaD3D9SetDirect3DDevice",
        "cudaD3D9ResourceSetMapFlags",
        "cudaD3D9ResourceGetSurfaceDimensions",
        "cudaD3D9ResourceGetMappedSize",
        "cudaD3D9ResourceGetMappedPointer",
        "cudaD3D9ResourceGetMappedPitch",
        "cudaD3D9ResourceGetMappedArray",
        "cudaD3D9RegisterResource",
        "cudaD3D9RegisterFlagsNone",
        "cudaD3D9RegisterFlagsArray",
        "cudaD3D9RegisterFlags",
        "cudaD3D9MapResources",
        "cudaD3D9MapFlagsWriteDiscard",
        "cudaD3D9MapFlagsReadOnly",
        "cudaD3D9MapFlagsNone",
        "cudaD3D9MapFlags",
        "cudaD3D9GetDirect3DDevice",
        "cudaD3D9GetDevices",
        "cudaD3D9GetDevice",
        "cudaD3D9DeviceListNextFrame",
        "cudaD3D9DeviceListCurrentFrame",
        "cudaD3D9DeviceListAll",
        "cudaD3D9DeviceList",
        "cudaD3D11SetDirect3DDevice",
        "cudaD3D11GetDirect3DDevice",
        "cudaD3D11GetDevices",
        "cudaD3D11GetDevice",
        "cudaD3D11DeviceListNextFrame",
        "cudaD3D11DeviceListCurrentFrame",
        "cudaD3D11DeviceListAll",
        "cudaD3D11DeviceList",
        "cudaD3D10UnregisterResource",
        "cudaD3D10UnmapResources",
        "cudaD3D10SetDirect3DDevice",
        "cudaD3D10ResourceSetMapFlags",
        "cudaD3D10ResourceGetSurfaceDimensions",
        "cudaD3D10ResourceGetMappedSize",
        "cudaD3D10ResourceGetMappedPointer",
        "cudaD3D10ResourceGetMappedPitch",
        "cudaD3D10ResourceGetMappedArray",
        "cudaD3D10RegisterResource",
        "cudaD3D10RegisterFlagsNone",
        "cudaD3D10RegisterFlagsArray",
        "cudaD3D10RegisterFlags",
        "cudaD3D10MapResources",
        "cudaD3D10MapFlagsWriteDiscard",
        "cudaD3D10MapFlagsReadOnly",
        "cudaD3D10MapFlagsNone",
        "cudaD3D10MapFlags",
        "cudaD3D10GetDirect3DDevice",
        "cudaD3D10GetDevices",
        "cudaD3D10GetDevice",
        "cudaD3D10DeviceListNextFrame",
        "cudaD3D10DeviceListCurrentFrame",
        "cudaD3D10DeviceListAll",
        "cudaD3D10DeviceList",
        "cudaCtxResetPersistingL2Cache",
        "cudaCreateTextureObject_v2",
        "cudaClusterSchedulingPolicySpread",
        "cudaClusterSchedulingPolicyLoadBalancing",
        "cudaClusterSchedulingPolicyDefault",
        "cudaClusterSchedulingPolicy",
        "cudaChildGraphNodeParams",
        "cudaChannelFormatKindUnsignedNormalized8X4",
        "cudaChannelFormatKindUnsignedNormalized8X2",
        "cudaChannelFormatKindUnsignedNormalized8X1",
        "cudaChannelFormatKindUnsignedNormalized16X4",
        "cudaChannelFormatKindUnsignedNormalized16X2",
        "cudaChannelFormatKindUnsignedNormalized16X1",
        "cudaChannelFormatKindUnsignedBlockCompressed7SRGB",
        "cudaChannelFormatKindUnsignedBlockCompressed7",
        "cudaChannelFormatKindUnsignedBlockCompressed6H",
        "cudaChannelFormatKindUnsignedBlockCompressed5",
        "cudaChannelFormatKindUnsignedBlockCompressed4",
        "cudaChannelFormatKindUnsignedBlockCompressed3SRGB",
        "cudaChannelFormatKindUnsignedBlockCompressed3",
        "cudaChannelFormatKindUnsignedBlockCompressed2SRGB",
        "cudaChannelFormatKindUnsignedBlockCompressed2",
        "cudaChannelFormatKindUnsignedBlockCompressed1SRGB",
        "cudaChannelFormatKindUnsignedBlockCompressed1",
        "cudaChannelFormatKindSignedNormalized8X4",
        "cudaChannelFormatKindSignedNormalized8X2",
        "cudaChannelFormatKindSignedNormalized8X1",
        "cudaChannelFormatKindSignedNormalized16X4",
        "cudaChannelFormatKindSignedNormalized16X2",
        "cudaChannelFormatKindSignedNormalized16X1",
        "cudaChannelFormatKindSignedBlockCompressed6H",
        "cudaChannelFormatKindSignedBlockCompressed5",
        "cudaChannelFormatKindSignedBlockCompressed4",
        "cudaChannelFormatKindNV12",
        "cudaCSV",
        "cudaCGScopeMultiGrid",
        "cudaCGScopeInvalid",
        "cudaCGScopeGrid",
        "cudaCGScope",
        "cudaBindSurfaceToArray",
        "cudaArraySparsePropertiesSingleMipTail",
        "cudaArraySparseProperties",
        "cudaArraySparse",
        "cudaArrayMemoryRequirements",
        "cudaArrayGetSparseProperties",
        "cudaArrayGetPlane",
        "cudaArrayGetMemoryRequirements",
        "cudaArrayDeferredMapping",
        "cudaArrayColorAttachment",
        "cuWGLGetDevice",
        "cuVDPAUGetDevice",
        "cuVDPAUCtxCreate",
        "cuTexRefGetBorderColor",
        "cuTexRefDestroy",
        "cuTexRefCreate",
        "cuTensorMapReplaceAddress",
        "cuTensorMapEncodeTiled",
        "cuTensorMapEncodeIm2col",
        "cuSurfRefSetArray",
        "cuSurfRefGetArray",
        "cuSurfObjectGetResourceDesc",
        "cuSurfObjectDestroy",
        "cuSurfObjectCreate",
        "cuStreamSetAttribute",
        "cuStreamGetId",
        "cuStreamGetCtx",
        "cuStreamGetAttribute",
        "cuStreamCopyAttributes",
        "cuStreamBeginCapture_ptsz",
        "cuStreamBatchMemOp_v2",
        "cuStreamBatchMemOp",
        "cuProfilerInitialize",
        "cuParamSetv",
        "cuParamSeti",
        "cuParamSetf",
        "cuParamSetTexRef",
        "cuParamSetSize",
        "cuOccupancyMaxPotentialClusterSize",
        "cuOccupancyMaxActiveClusters",
        "cuOccupancyAvailableDynamicSMemPerBlock",
        "cuMulticastUnbind",
        "cuMulticastGetGranularity",
        "cuMulticastCreate",
        "cuMulticastBindMem",
        "cuMulticastBindAddr",
        "cuMulticastAddDevice",
        "cuModuleLoadFatBinary",
        "cuModuleGetSurfRef",
        "cuModuleGetLoadingMode",
        "cuMipmappedArrayGetMemoryRequirements",
        "cuMemsetD2D8_v2",
        "cuMemsetD2D8Async",
        "cuMemsetD2D8",
        "cuMemsetD2D32_v2",
        "cuMemsetD2D32Async",
        "cuMemsetD2D32",
        "cuMemsetD2D16_v2",
        "cuMemsetD2D16Async",
        "cuMemsetD2D16",
        "cuMemcpyPeerAsync",
        "cuMemcpyPeer",
        "cuMemcpyHtoAAsync_v2",
        "cuMemcpyHtoAAsync",
        "cuMemcpyDtoA_v2",
        "cuMemcpyDtoA",
        "cuMemcpyAtoHAsync_v2",
        "cuMemcpyAtoHAsync",
        "cuMemcpyAtoD_v2",
        "cuMemcpyAtoD",
        "cuMemcpyAtoA_v2",
        "cuMemcpyAtoA",
        "cuMemcpyAsync",
        "cuMemcpy3DPeerAsync",
        "cuMemcpy3DPeer",
        "cuMemcpy",
        "cuMemPrefetchAsync_v2",
        "cuMemGetHandleForAddressRange",
        "cuMemAdvise_v2",
        "cuLibraryUnload",
        "cuLibraryLoadFromFile",
        "cuLibraryLoadData",
        "cuLibraryGetUnifiedFunction",
        "cuLibraryGetModule",
        "cuLibraryGetManaged",
        "cuLibraryGetKernel",
        "cuLibraryGetGlobal",
        "cuLaunchKernelEx",
        "cuLaunchGridAsync",
        "cuLaunchGrid",
        "cuLaunch",
        "cuKernelSetCacheConfig",
        "cuKernelSetAttribute",
        "cuKernelGetFunction",
        "cuKernelGetAttribute",
        "cuGraphicsVDPAURegisterVideoSurface",
        "cuGraphicsVDPAURegisterOutputSurface",
        "cuGraphicsResourceSetMapFlags_v2",
        "cuGraphicsResourceSetMapFlags",
        "cuGraphicsResourceGetMappedMipmappedArray",
        "cuGraphicsResourceGetMappedEglFrame",
        "cuGraphicsEGLRegisterImage",
        "cuGraphicsD3D9RegisterResource",
        "cuGraphicsD3D11RegisterResource",
        "cuGraphicsD3D10RegisterResource",
        "cuGraphNodeSetParams",
        "cuGraphInstantiateWithParams",
        "cuGraphExternalSemaphoresWaitNodeSetParams",
        "cuGraphExternalSemaphoresWaitNodeGetParams",
        "cuGraphExternalSemaphoresSignalNodeSetParams",
        "cuGraphExternalSemaphoresSignalNodeGetParams",
        "cuGraphExecNodeSetParams",
        "cuGraphExecMemsetNodeSetParams",
        "cuGraphExecMemcpyNodeSetParams",
        "cuGraphExecGetFlags",
        "cuGraphExecExternalSemaphoresWaitNodeSetParams",
        "cuGraphExecExternalSemaphoresSignalNodeSetParams",
        "cuGraphExecBatchMemOpNodeSetParams",
        "cuGraphBatchMemOpNodeSetParams",
        "cuGraphBatchMemOpNodeGetParams",
        "cuGraphAddNode",
        "cuGraphAddMemsetNode",
        "cuGraphAddMemcpyNode",
        "cuGraphAddExternalSemaphoresWaitNode",
        "cuGraphAddExternalSemaphoresSignalNode",
        "cuGraphAddBatchMemOpNode",
        "cuGetProcAddress",
        "cuGLUnregisterBufferObject",
        "cuGLUnmapBufferObjectAsync",
        "cuGLUnmapBufferObject",
        "cuGLSetBufferObjectMapFlags",
        "cuGLRegisterBufferObject",
        "cuGLMapBufferObjectAsync",
        "cuGLMapBufferObject",
        "cuGLInit",
        "cuGLCtxCreate",
        "cuFuncSetSharedSize",
        "cuFuncSetSharedMemConfig",
        "cuFuncSetCacheConfig",
        "cuFuncSetBlockShape",
        "cuFuncSetAttribute",
        "cuFuncGetModule",
        "cuFlushGPUDirectRDMAWrites",
        "cuExternalMemoryGetMappedMipmappedArray",
        "cuEventRecordWithFlags",
        "cuEventCreateFromEGLSync",
        "cuEGLStreamProducerReturnFrame",
        "cuEGLStreamProducerPresentFrame",
        "cuEGLStreamProducerDisconnect",
        "cuEGLStreamProducerConnect",
        "cuEGLStreamConsumerReleaseFrame",
        "cuEGLStreamConsumerDisconnect",
        "cuEGLStreamConsumerConnectWithFlags",
        "cuEGLStreamConsumerConnect",
        "cuEGLStreamConsumerAcquireFrame",
        "cuDeviceGetTexture1DLinearMaxWidth",
        "cuDeviceGetProperties",
        "cuDeviceGetNvSciSyncAttributes",
        "cuDeviceGetLuid",
        "cuDeviceGetExecAffinitySupport",
        "cuD3D9UnregisterResource",
        "cuD3D9UnmapResources",
        "cuD3D9ResourceSetMapFlags",
        "cuD3D9ResourceGetSurfaceDimensions",
        "cuD3D9ResourceGetMappedSize",
        "cuD3D9ResourceGetMappedPointer",
        "cuD3D9ResourceGetMappedPitch",
        "cuD3D9ResourceGetMappedArray",
        "cuD3D9RegisterResource",
        "cuD3D9MapResources",
        "cuD3D9GetDirect3DDevice",
        "cuD3D9GetDevices",
        "cuD3D9GetDevice",
        "cuD3D9CtxCreateOnDevice",
        "cuD3D9CtxCreate",
        "cuD3D11GetDirect3DDevice",
        "cuD3D11GetDevices",
        "cuD3D11GetDevice",
        "cuD3D11CtxCreateOnDevice",
        "cuD3D11CtxCreate",
        "cuD3D10UnregisterResource",
        "cuD3D10UnmapResources",
        "cuD3D10ResourceSetMapFlags",
        "cuD3D10ResourceGetSurfaceDimensions",
        "cuD3D10ResourceGetMappedSize",
        "cuD3D10ResourceGetMappedPointer",
        "cuD3D10ResourceGetMappedPitch",
        "cuD3D10ResourceGetMappedArray",
        "cuD3D10RegisterResource",
        "cuD3D10MapResources",
        "cuD3D10GetDirect3DDevice",
        "cuD3D10GetDevices",
        "cuD3D10GetDevice",
        "cuD3D10CtxCreateOnDevice",
        "cuD3D10CtxCreate",
        "cuCtxSetFlags",
        "cuCtxResetPersistingL2Cache",
        "cuCtxGetId",
        "cuCtxGetExecAffinity",
        "cuCtxDetach",
        "cuCtxCreate_v3",
        "cuCtxAttach",
        "cuCoredumpSetAttributeGlobal",
        "cuCoredumpSetAttribute",
        "cuCoredumpGetAttributeGlobal",
        "cuCoredumpGetAttribute",
        "cuArrayGetSparseProperties",
        "cuArrayGetPlane",
        "cuArrayGetMemoryRequirements",
        "csrsv2Info",
        "csrsm2Info",
        "csrilu02Info",
        "csrgemm2Info",
        "cl_event_flags_enum",
        "cl_event_flags",
        "cl_context_flags_enum",
        "cl_context_flags",
        "bsrsv2Info",
        "bsrilu02Info",
        "bsric02Info",
        "__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",
        "__curand_umul",
        "__NV_SATFINITE",
        "__NV_NOSAT",
        "__NV_E5M2",
        "__NV_E4M3",
        "__CUB_LP64__",
        "_CUB_ASM_PTR_SIZE_",
        "_CUB_ASM_PTR_",
        "NVRTC_ERROR_TIME_FILE_WRITE_FAILED",
        "NVCL_EVENT_SCHED_YIELD",
        "NVCL_EVENT_SCHED_SPIN",
        "NVCL_EVENT_SCHED_BLOCKING_SYNC",
        "NVCL_EVENT_SCHED_AUTO",
        "NVCL_CTX_SCHED_YIELD",
        "NVCL_CTX_SCHED_SPIN",
        "NVCL_CTX_SCHED_BLOCKING_SYNC",
        "NVCL_CTX_SCHED_AUTO",
        "MAX_CUFFT_ERROR",
        "CubVector",
        "CubDebugExit",
        "CUtensorMap_st",
        "CUtensorMapSwizzle_enum",
        "CUtensorMapSwizzle",
        "CUtensorMapL2promotion_enum",
        "CUtensorMapL2promotion",
        "CUtensorMapInterleave_enum",
        "CUtensorMapInterleave",
        "CUtensorMapFloatOOBfill_enum",
        "CUtensorMapFloatOOBfill",
        "CUtensorMapDataType_enum",
        "CUtensorMapDataType",
        "CUtensorMap",
        "CUsynchronizationPolicy_enum",
        "CUsynchronizationPolicy",
        "CUsurfref_st",
        "CUsurfref",
        "CUstream_flags_enum",
        "CUstream_flags",
        "CUstreamWriteValue_flags_enum",
        "CUstreamWriteValue_flags",
        "CUstreamWaitValue_flags_enum",
        "CUstreamWaitValue_flags",
        "CUstreamMemoryBarrier_flags_enum",
        "CUstreamMemoryBarrier_flags",
        "CUstreamMemOpMemoryBarrierParams_st",
        "CUstreamBatchMemOpType_enum",
        "CUstreamBatchMemOpType",
        "CUstreamBatchMemOpParams_v1",
        "CUstreamBatchMemOpParams_union",
        "CUstreamBatchMemOpParams",
        "CUstreamAttrValue_v1",
        "CUstreamAttrValue_union",
        "CUstreamAttrValue",
        "CUstreamAttrID_enum",
        "CUstreamAttrID",
        "CUshared_carveout_enum",
        "CUshared_carveout",
        "CUoccupancy_flags_enum",
        "CUoccupancy_flags",
        "CUmulticastObjectProp_v1",
        "CUmulticastObjectProp_st",
        "CUmulticastObjectProp",
        "CUmulticastGranularity_flags_enum",
        "CUmulticastGranularity_flags",
        "CUmoduleLoadingMode_enum",
        "CUmoduleLoadingMode",
        "CUmemRangeHandleType_enum",
        "CUmemRangeHandleType",
        "CUmemAttach_flags_enum",
        "CUmemAttach_flags",
        "CUlibraryOption_enum",
        "CUlibraryOption",
        "CUlibraryHostUniversalFunctionAndDataTable_st",
        "CUlibraryHostUniversalFunctionAndDataTable",
        "CUlibrary",
        "CUlib_st",
        "CUlaunchMemSyncDomain_enum",
        "CUlaunchMemSyncDomainMap_st",
        "CUlaunchMemSyncDomainMap",
        "CUlaunchMemSyncDomain",
        "CUlaunchConfig_st",
        "CUlaunchConfig",
        "CUlaunchAttribute_st",
        "CUlaunchAttributeValue_union",
        "CUlaunchAttributeValue",
        "CUlaunchAttributeID_enum",
        "CUlaunchAttributeID",
        "CUlaunchAttribute",
        "CUkernel",
        "CUkern_st",
        "CUjit_target_enum",
        "CUjit_target",
        "CUjit_fallback_enum",
        "CUjit_fallback",
        "CUjit_cacheMode_enum",
        "CUjit_cacheMode",
        "CUipcMem_flags_enum",
        "CUipcMem_flags",
        "CUgraphicsMapResourceFlags_enum",
        "CUgraphicsMapResourceFlags",
        "CUgraphNodeParams_st",
        "CUgraphNodeParams",
        "CUgraphInstantiateResult_enum",
        "CUgraphInstantiateResult",
        "CUgraphExecUpdateResultInfo_v1",
        "CUgraphExecUpdateResultInfo_st",
        "CUgraphExecUpdateResultInfo",
        "CUflushGPUDirectRDMAWritesTarget_enum",
        "CUflushGPUDirectRDMAWritesTarget",
        "CUflushGPUDirectRDMAWritesScope_enum",
        "CUflushGPUDirectRDMAWritesScope",
        "CUflushGPUDirectRDMAWritesOptions_enum",
        "CUflushGPUDirectRDMAWritesOptions",
        "CUexternalSemaphore_st",
        "CUexternalMemory_st",
        "CUextSemaphore_st",
        "CUextMemory_st",
        "CUexecAffinityType_enum",
        "CUexecAffinityType",
        "CUexecAffinitySmCount_v1",
        "CUexecAffinitySmCount_st",
        "CUexecAffinitySmCount",
        "CUexecAffinityParam_v1",
        "CUexecAffinityParam_st",
        "CUexecAffinityParam",
        "CUevent_wait_flags_enum",
        "CUevent_wait_flags",
        "CUevent_sched_flags_enum",
        "CUevent_sched_flags",
        "CUevent_record_flags_enum",
        "CUevent_record_flags",
        "CUevent_flags_enum",
        "CUevent_flags",
        "CUeglStreamConnection_st",
        "CUeglStreamConnection",
        "CUeglResourceLocationFlags_enum",
        "CUeglResourceLocationFlags",
        "CUeglFrameType_enum",
        "CUeglFrameType",
        "CUeglColorFormate_enum",
        "CUeglColorFormat",
        "CUdriverProcAddress_flags_enum",
        "CUdriverProcAddress_flags",
        "CUdriverProcAddressQueryResult_enum",
        "CUdriverProcAddressQueryResult",
        "CUdevprop_v1",
        "CUdevprop_st",
        "CUdevprop",
        "CUdeviceNumaConfig_enum",
        "CUdeviceNumaConfig",
        "CUd3d9register_flags_enum",
        "CUd3d9register_flags",
        "CUd3d9map_flags_enum",
        "CUd3d9map_flags",
        "CUd3d9DeviceList_enum",
        "CUd3d9DeviceList",
        "CUd3d11DeviceList_enum",
        "CUd3d11DeviceList",
        "CUd3d10register_flags_enum",
        "CUd3d10register_flags",
        "CUd3d10map_flags_enum",
        "CUd3d10map_flags",
        "CUd3d10DeviceList_enum",
        "CUd3d10DeviceList",
        "CUctx_flags_enum",
        "CUctx_flags",
        "CUcoredumpSettings_enum",
        "CUcoredumpSettings",
        "CUclusterSchedulingPolicy_enum",
        "CUclusterSchedulingPolicy",
        "CUarray_cubemap_face_enum",
        "CUarray_cubemap_face",
        "CU_TRSF_SEAMLESS_CUBEMAP",
        "CU_TRSF_DISABLE_TRILINEAR_OPTIMIZATION",
        "CU_TENSOR_MAP_SWIZZLE_NONE",
        "CU_TENSOR_MAP_SWIZZLE_64B",
        "CU_TENSOR_MAP_SWIZZLE_32B",
        "CU_TENSOR_MAP_SWIZZLE_128B",
        "CU_TENSOR_MAP_NUM_QWORDS",
        "CU_TENSOR_MAP_L2_PROMOTION_NONE",
        "CU_TENSOR_MAP_L2_PROMOTION_L2_64B",
        "CU_TENSOR_MAP_L2_PROMOTION_L2_256B",
        "CU_TENSOR_MAP_L2_PROMOTION_L2_128B",
        "CU_TENSOR_MAP_INTERLEAVE_NONE",
        "CU_TENSOR_MAP_INTERLEAVE_32B",
        "CU_TENSOR_MAP_INTERLEAVE_16B",
        "CU_TENSOR_MAP_FLOAT_OOB_FILL_NONE",
        "CU_TENSOR_MAP_FLOAT_OOB_FILL_NAN_REQUEST_ZERO_FMA",
        "CU_TENSOR_MAP_DATA_TYPE_UINT8",
        "CU_TENSOR_MAP_DATA_TYPE_UINT64",
        "CU_TENSOR_MAP_DATA_TYPE_UINT32",
        "CU_TENSOR_MAP_DATA_TYPE_UINT16",
        "CU_TENSOR_MAP_DATA_TYPE_TFLOAT32_FTZ",
        "CU_TENSOR_MAP_DATA_TYPE_TFLOAT32",
        "CU_TENSOR_MAP_DATA_TYPE_INT64",
        "CU_TENSOR_MAP_DATA_TYPE_INT32",
        "CU_TENSOR_MAP_DATA_TYPE_FLOAT64",
        "CU_TENSOR_MAP_DATA_TYPE_FLOAT32_FTZ",
        "CU_TENSOR_MAP_DATA_TYPE_FLOAT32",
        "CU_TENSOR_MAP_DATA_TYPE_FLOAT16",
        "CU_TENSOR_MAP_DATA_TYPE_BFLOAT16",
        "CU_TARGET_COMPUTE_90A",
        "CU_TARGET_COMPUTE_90",
        "CU_TARGET_COMPUTE_89",
        "CU_TARGET_COMPUTE_87",
        "CU_TARGET_COMPUTE_86",
        "CU_TARGET_COMPUTE_80",
        "CU_TARGET_COMPUTE_75",
        "CU_TARGET_COMPUTE_73",
        "CU_TARGET_COMPUTE_72",
        "CU_TARGET_COMPUTE_70",
        "CU_TARGET_COMPUTE_62",
        "CU_TARGET_COMPUTE_61",
        "CU_TARGET_COMPUTE_60",
        "CU_TARGET_COMPUTE_53",
        "CU_TARGET_COMPUTE_52",
        "CU_TARGET_COMPUTE_50",
        "CU_TARGET_COMPUTE_37",
        "CU_TARGET_COMPUTE_35",
        "CU_TARGET_COMPUTE_32",
        "CU_TARGET_COMPUTE_30",
        "CU_TARGET_COMPUTE_21",
        "CU_TARGET_COMPUTE_20",
        "CU_TARGET_COMPUTE_13",
        "CU_TARGET_COMPUTE_12",
        "CU_TARGET_COMPUTE_11",
        "CU_TARGET_COMPUTE_10",
        "CU_SYNC_POLICY_YIELD",
        "CU_SYNC_POLICY_SPIN",
        "CU_SYNC_POLICY_BLOCKING_SYNC",
        "CU_SYNC_POLICY_AUTO",
        "CU_STREAM_WRITE_VALUE_NO_MEMORY_BARRIER",
        "CU_STREAM_WRITE_VALUE_DEFAULT",
        "CU_STREAM_WAIT_VALUE_FLUSH",
        "CU_STREAM_MEM_OP_WRITE_VALUE_64",
        "CU_STREAM_MEM_OP_WRITE_VALUE_32",
        "CU_STREAM_MEM_OP_WAIT_VALUE_64",
        "CU_STREAM_MEM_OP_WAIT_VALUE_32",
        "CU_STREAM_MEM_OP_FLUSH_REMOTE_WRITES",
        "CU_STREAM_MEM_OP_BARRIER",
        "CU_STREAM_MEMORY_BARRIER_TYPE_SYS",
        "CU_STREAM_MEMORY_BARRIER_TYPE_GPU",
        "CU_STREAM_LEGACY",
        "CU_STREAM_ATTRIBUTE_SYNCHRONIZATION_POLICY",
        "CU_STREAM_ATTRIBUTE_PRIORITY",
        "CU_STREAM_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP",
        "CU_STREAM_ATTRIBUTE_MEM_SYNC_DOMAIN",
        "CU_STREAM_ATTRIBUTE_ACCESS_POLICY_WINDOW",
        "CU_SHAREDMEM_CARVEOUT_MAX_SHARED",
        "CU_SHAREDMEM_CARVEOUT_MAX_L1",
        "CU_SHAREDMEM_CARVEOUT_DEFAULT",
        "CU_PREFER_PTX",
        "CU_PREFER_BINARY",
        "CU_POINTER_ATTRIBUTE_MEMORY_BLOCK_ID",
        "CU_POINTER_ATTRIBUTE_MAPPING_SIZE",
        "CU_POINTER_ATTRIBUTE_MAPPING_BASE_ADDR",
        "CU_POINTER_ATTRIBUTE_ACCESS_FLAG_READWRITE",
        "CU_POINTER_ATTRIBUTE_ACCESS_FLAG_READ",
        "CU_POINTER_ATTRIBUTE_ACCESS_FLAG_NONE",
        "CU_PARAM_TR_DEFAULT",
        "CU_MULTICAST_GRANULARITY_RECOMMENDED",
        "CU_MULTICAST_GRANULARITY_MINIMUM",
        "CU_MODULE_LAZY_LOADING",
        "CU_MODULE_EAGER_LOADING",
        "CU_MEM_RANGE_HANDLE_TYPE_MAX",
        "CU_MEM_RANGE_HANDLE_TYPE_DMA_BUF_FD",
        "CU_MEM_RANGE_ATTRIBUTE_PREFERRED_LOCATION_TYPE",
        "CU_MEM_RANGE_ATTRIBUTE_PREFERRED_LOCATION_ID",
        "CU_MEM_RANGE_ATTRIBUTE_LAST_PREFETCH_LOCATION_TYPE",
        "CU_MEM_RANGE_ATTRIBUTE_LAST_PREFETCH_LOCATION_ID",
        "CU_MEM_LOCATION_TYPE_MAX",
        "CU_MEM_LOCATION_TYPE_HOST_NUMA_CURRENT",
        "CU_MEM_LOCATION_TYPE_HOST_NUMA",
        "CU_MEM_LOCATION_TYPE_HOST",
        "CU_MEM_HANDLE_TYPE_MAX",
        "CU_MEM_CREATE_USAGE_TILE_POOL",
        "CU_MEM_ACCESS_FLAGS_PROT_MAX",
        "CU_LIMIT_PERSISTING_L2_CACHE_SIZE",
        "CU_LIMIT_MAX_L2_FETCH_GRANULARITY",
        "CU_LIMIT_MAX",
        "CU_LIMIT_DEV_RUNTIME_SYNC_DEPTH",
        "CU_LIMIT_DEV_RUNTIME_PENDING_LAUNCH_COUNT",
        "CU_LIBRARY_NUM_OPTIONS",
        "CU_LIBRARY_HOST_UNIVERSAL_FUNCTION_AND_DATA_TABLE",
        "CU_LIBRARY_BINARY_IS_PRESERVED",
        "CU_LAUNCH_PARAM_END_AS_INT",
        "CU_LAUNCH_PARAM_BUFFER_SIZE_AS_INT",
        "CU_LAUNCH_PARAM_BUFFER_POINTER_AS_INT",
        "CU_LAUNCH_MEM_SYNC_DOMAIN_REMOTE",
        "CU_LAUNCH_MEM_SYNC_DOMAIN_DEFAULT",
        "CU_LAUNCH_ATTRIBUTE_SYNCHRONIZATION_POLICY",
        "CU_LAUNCH_ATTRIBUTE_PROGRAMMATIC_STREAM_SERIALIZATION",
        "CU_LAUNCH_ATTRIBUTE_PROGRAMMATIC_EVENT",
        "CU_LAUNCH_ATTRIBUTE_PRIORITY",
        "CU_LAUNCH_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP",
        "CU_LAUNCH_ATTRIBUTE_MEM_SYNC_DOMAIN",
        "CU_LAUNCH_ATTRIBUTE_MAX",
        "CU_LAUNCH_ATTRIBUTE_IGNORE",
        "CU_LAUNCH_ATTRIBUTE_COOPERATIVE",
        "CU_LAUNCH_ATTRIBUTE_CLUSTER_SCHEDULING_POLICY_PREFERENCE",
        "CU_LAUNCH_ATTRIBUTE_CLUSTER_DIMENSION",
        "CU_LAUNCH_ATTRIBUTE_ACCESS_POLICY_WINDOW",
        "CU_KERNEL_NODE_ATTRIBUTE_PRIORITY",
        "CU_KERNEL_NODE_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP",
        "CU_KERNEL_NODE_ATTRIBUTE_MEM_SYNC_DOMAIN",
        "CU_KERNEL_NODE_ATTRIBUTE_CLUSTER_SCHEDULING_POLICY_PREFERENCE",
        "CU_KERNEL_NODE_ATTRIBUTE_CLUSTER_DIMENSION",
        "CU_JIT_REFERENCED_VARIABLE_NAMES",
        "CU_JIT_REFERENCED_VARIABLE_COUNT",
        "CU_JIT_REFERENCED_KERNEL_NAMES",
        "CU_JIT_REFERENCED_KERNEL_COUNT",
        "CU_JIT_PREC_SQRT",
        "CU_JIT_PREC_DIV",
        "CU_JIT_POSITION_INDEPENDENT_CODE",
        "CU_JIT_OPTIMIZE_UNUSED_DEVICE_VARIABLES",
        "CU_JIT_LTO",
        "CU_JIT_GLOBAL_SYMBOL_NAMES",
        "CU_JIT_GLOBAL_SYMBOL_COUNT",
        "CU_JIT_GLOBAL_SYMBOL_ADDRESSES",
        "CU_JIT_FTZ",
        "CU_JIT_FMA",
        "CU_JIT_CACHE_OPTION_NONE",
        "CU_JIT_CACHE_OPTION_CG",
        "CU_JIT_CACHE_OPTION_CA",
        "CU_GRAPH_NODE_TYPE_BATCH_MEM_OP",
        "CU_GRAPH_EXEC_UPDATE_ERROR_ATTRIBUTES_CHANGED",
        "CU_GRAPH_DEBUG_DOT_FLAGS_MEM_FREE_NODE_PARAMS",
        "CU_GRAPH_DEBUG_DOT_FLAGS_MEM_ALLOC_NODE_PARAMS",
        "CU_GRAPH_DEBUG_DOT_FLAGS_EXTRA_TOPO_INFO",
        "CU_GRAPH_DEBUG_DOT_FLAGS_BATCH_MEM_OP_NODE_PARAMS",
        "CU_GRAPHICS_MAP_RESOURCE_FLAGS_WRITE_DISCARD",
        "CU_GRAPHICS_MAP_RESOURCE_FLAGS_READ_ONLY",
        "CU_GRAPHICS_MAP_RESOURCE_FLAGS_NONE",
        "CU_GPU_DIRECT_RDMA_WRITES_ORDERING_OWNER",
        "CU_GPU_DIRECT_RDMA_WRITES_ORDERING_NONE",
        "CU_GPU_DIRECT_RDMA_WRITES_ORDERING_ALL_DEVICES",
        "CU_GL_MAP_RESOURCE_FLAGS_WRITE_DISCARD",
        "CU_GL_MAP_RESOURCE_FLAGS_READ_ONLY",
        "CU_GL_MAP_RESOURCE_FLAGS_NONE",
        "CU_GET_PROC_ADDRESS_VERSION_NOT_SUFFICIENT",
        "CU_GET_PROC_ADDRESS_SYMBOL_NOT_FOUND",
        "CU_GET_PROC_ADDRESS_SUCCESS",
        "CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM",
        "CU_GET_PROC_ADDRESS_LEGACY_STREAM",
        "CU_GET_PROC_ADDRESS_DEFAULT",
        "CU_FUNC_ATTRIBUTE_REQUIRED_CLUSTER_WIDTH",
        "CU_FUNC_ATTRIBUTE_REQUIRED_CLUSTER_HEIGHT",
        "CU_FUNC_ATTRIBUTE_REQUIRED_CLUSTER_DEPTH",
        "CU_FUNC_ATTRIBUTE_NON_PORTABLE_CLUSTER_SIZE_ALLOWED",
        "CU_FUNC_ATTRIBUTE_CLUSTER_SIZE_MUST_BE_SET",
        "CU_FUNC_ATTRIBUTE_CLUSTER_SCHEDULING_POLICY_PREFERENCE",
        "CU_FLUSH_GPU_DIRECT_RDMA_WRITES_TO_OWNER",
        "CU_FLUSH_GPU_DIRECT_RDMA_WRITES_TO_ALL_DEVICES",
        "CU_FLUSH_GPU_DIRECT_RDMA_WRITES_TARGET_CURRENT_CTX",
        "CU_FLUSH_GPU_DIRECT_RDMA_WRITES_OPTION_MEMOPS",
        "CU_FLUSH_GPU_DIRECT_RDMA_WRITES_OPTION_HOST",
        "CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_TIMELINE_SEMAPHORE_WIN32",
        "CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_TIMELINE_SEMAPHORE_FD",
        "CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_NVSCISYNC",
        "CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_KEYED_MUTEX_KMT",
        "CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_KEYED_MUTEX",
        "CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE",
        "CU_EXTERNAL_MEMORY_HANDLE_TYPE_NVSCIBUF",
        "CU_EXEC_AFFINITY_TYPE_SM_COUNT",
        "CU_EXEC_AFFINITY_TYPE_MAX",
        "CU_EVENT_WAIT_EXTERNAL",
        "CU_EVENT_WAIT_DEFAULT",
        "CU_EVENT_SCHED_YIELD",
        "CU_EVENT_SCHED_SPIN",
        "CU_EVENT_SCHED_BLOCKING_SYNC",
        "CU_EVENT_SCHED_AUTO",
        "CU_EVENT_RECORD_EXTERNAL",
        "CU_EVENT_RECORD_DEFAULT",
        "CU_EGL_RESOURCE_LOCATION_VIDMEM",
        "CU_EGL_RESOURCE_LOCATION_SYSMEM",
        "CU_EGL_FRAME_TYPE_PITCH",
        "CU_EGL_FRAME_TYPE_ARRAY",
        "CU_EGL_COLOR_FORMAT_YVYU_ER",
        "CU_EGL_COLOR_FORMAT_YVU444_SEMIPLANAR_ER",
        "CU_EGL_COLOR_FORMAT_YVU444_SEMIPLANAR",
        "CU_EGL_COLOR_FORMAT_YVU444_PLANAR_ER",
        "CU_EGL_COLOR_FORMAT_YVU444_PLANAR",
        "CU_EGL_COLOR_FORMAT_YVU422_SEMIPLANAR_ER",
        "CU_EGL_COLOR_FORMAT_YVU422_SEMIPLANAR",
        "CU_EGL_COLOR_FORMAT_YVU422_PLANAR_ER",
        "CU_EGL_COLOR_FORMAT_YVU422_PLANAR",
        "CU_EGL_COLOR_FORMAT_YVU420_SEMIPLANAR_ER",
        "CU_EGL_COLOR_FORMAT_YVU420_SEMIPLANAR",
        "CU_EGL_COLOR_FORMAT_YVU420_PLANAR_ER",
        "CU_EGL_COLOR_FORMAT_YVU420_PLANAR",
        "CU_EGL_COLOR_FORMAT_YUYV_ER",
        "CU_EGL_COLOR_FORMAT_YUYV_422",
        "CU_EGL_COLOR_FORMAT_YUV_ER",
        "CU_EGL_COLOR_FORMAT_YUVA_ER",
        "CU_EGL_COLOR_FORMAT_YUV444_SEMIPLANAR_ER",
        "CU_EGL_COLOR_FORMAT_YUV444_SEMIPLANAR",
        "CU_EGL_COLOR_FORMAT_YUV444_PLANAR_ER",
        "CU_EGL_COLOR_FORMAT_YUV444_PLANAR",
        "CU_EGL_COLOR_FORMAT_YUV422_SEMIPLANAR_ER",
        "CU_EGL_COLOR_FORMAT_YUV422_SEMIPLANAR",
        "CU_EGL_COLOR_FORMAT_YUV422_PLANAR_ER",
        "CU_EGL_COLOR_FORMAT_YUV422_PLANAR",
        "CU_EGL_COLOR_FORMAT_YUV420_SEMIPLANAR_ER",
        "CU_EGL_COLOR_FORMAT_YUV420_SEMIPLANAR",
        "CU_EGL_COLOR_FORMAT_YUV420_PLANAR_ER",
        "CU_EGL_COLOR_FORMAT_YUV420_PLANAR",
        "CU_EGL_COLOR_FORMAT_Y12V12U12_444_SEMIPLANAR",
        "CU_EGL_COLOR_FORMAT_Y12V12U12_420_SEMIPLANAR",
        "CU_EGL_COLOR_FORMAT_Y10V10U10_444_SEMIPLANAR",
        "CU_EGL_COLOR_FORMAT_Y10V10U10_420_SEMIPLANAR",
        "CU_EGL_COLOR_FORMAT_VYUY_ER",
        "CU_EGL_COLOR_FORMAT_UYVY_ER",
        "CU_EGL_COLOR_FORMAT_UYVY_422",
        "CU_EGL_COLOR_FORMAT_RGBA",
        "CU_EGL_COLOR_FORMAT_RGB",
        "CU_EGL_COLOR_FORMAT_RG",
        "CU_EGL_COLOR_FORMAT_R",
        "CU_EGL_COLOR_FORMAT_MAX",
        "CU_EGL_COLOR_FORMAT_L",
        "CU_EGL_COLOR_FORMAT_BGRA",
        "CU_EGL_COLOR_FORMAT_BGR",
        "CU_EGL_COLOR_FORMAT_BAYER_RGGB",
        "CU_EGL_COLOR_FORMAT_BAYER_ISP_RGGB",
        "CU_EGL_COLOR_FORMAT_BAYER_ISP_GRBG",
        "CU_EGL_COLOR_FORMAT_BAYER_ISP_GBRG",
        "CU_EGL_COLOR_FORMAT_BAYER_ISP_BGGR",
        "CU_EGL_COLOR_FORMAT_BAYER_GRBG",
        "CU_EGL_COLOR_FORMAT_BAYER_GBRG",
        "CU_EGL_COLOR_FORMAT_BAYER_BGGR",
        "CU_EGL_COLOR_FORMAT_BAYER20_RGGB",
        "CU_EGL_COLOR_FORMAT_BAYER20_GRBG",
        "CU_EGL_COLOR_FORMAT_BAYER20_GBRG",
        "CU_EGL_COLOR_FORMAT_BAYER20_BGGR",
        "CU_EGL_COLOR_FORMAT_BAYER14_RGGB",
        "CU_EGL_COLOR_FORMAT_BAYER14_GRBG",
        "CU_EGL_COLOR_FORMAT_BAYER14_GBRG",
        "CU_EGL_COLOR_FORMAT_BAYER14_BGGR",
        "CU_EGL_COLOR_FORMAT_BAYER12_RGGB",
        "CU_EGL_COLOR_FORMAT_BAYER12_GRBG",
        "CU_EGL_COLOR_FORMAT_BAYER12_GBRG",
        "CU_EGL_COLOR_FORMAT_BAYER12_BGGR",
        "CU_EGL_COLOR_FORMAT_BAYER10_RGGB",
        "CU_EGL_COLOR_FORMAT_BAYER10_GRBG",
        "CU_EGL_COLOR_FORMAT_BAYER10_GBRG",
        "CU_EGL_COLOR_FORMAT_BAYER10_BGGR",
        "CU_EGL_COLOR_FORMAT_AYUV_ER",
        "CU_EGL_COLOR_FORMAT_AYUV",
        "CU_EGL_COLOR_FORMAT_ARGB",
        "CU_EGL_COLOR_FORMAT_ABGR",
        "CU_EGL_COLOR_FORMAT_A",
        "CU_DEVICE_NUMA_CONFIG_NUMA_NODE",
        "CU_DEVICE_NUMA_CONFIG_NONE",
        "CU_DEVICE_ATTRIBUTE_VIRTUAL_ADDRESS_MANAGEMENT_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_UNIFIED_FUNCTION_POINTERS",
        "CU_DEVICE_ATTRIBUTE_TIMELINE_SEMAPHORE_INTEROP_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_TENSOR_MAP_ACCESS_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_SPARSE_CUDA_ARRAY_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_RESERVED_SHARED_MEMORY_PER_BLOCK",
        "CU_DEVICE_ATTRIBUTE_READ_ONLY_HOST_REGISTER_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_NUMA_ID",
        "CU_DEVICE_ATTRIBUTE_NUMA_CONFIG",
        "CU_DEVICE_ATTRIBUTE_MULTICAST_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_MEM_SYNC_DOMAIN_COUNT",
        "CU_DEVICE_ATTRIBUTE_MEMPOOL_SUPPORTED_HANDLE_TYPES",
        "CU_DEVICE_ATTRIBUTE_MAX_PERSISTING_L2_CACHE_SIZE",
        "CU_DEVICE_ATTRIBUTE_MAX_ACCESS_POLICY_WINDOW_SIZE",
        "CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_LAYERS",
        "CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_LAYERS",
        "CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_NUMSLICES",
        "CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_LAYERS",
        "CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_LAYERS",
        "CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_LAYERS",
        "CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_LAYERS",
        "CU_DEVICE_ATTRIBUTE_MAX",
        "CU_DEVICE_ATTRIBUTE_IPC_EVENT_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_HOST_REGISTER_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_HOST_NUMA_ID",
        "CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_WIN32_KMT_HANDLE_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_WIN32_HANDLE_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_POSIX_FILE_DESCRIPTOR_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_WRITES_ORDERING",
        "CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_WITH_CUDA_VMM_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_FLUSH_WRITES_OPTIONS",
        "CU_DEVICE_ATTRIBUTE_GENERIC_COMPRESSION_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_DMA_BUF_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_DEFERRED_MAPPING_CUDA_ARRAY_SUPPORTED",
        "CU_DEVICE_ATTRIBUTE_CLUSTER_LAUNCH",
        "CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR_V2",
        "CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_MEM_OPS_V1",
        "CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_MEM_OPS",
        "CU_DEVICE_ATTRIBUTE_CAN_USE_64_BIT_STREAM_MEM_OPS_V2",
        "CU_DEVICE_ATTRIBUTE_CAN_USE_64_BIT_STREAM_MEM_OPS_V1",
        "CU_DEVICE_ATTRIBUTE_CAN_USE_64_BIT_STREAM_MEM_OPS",
        "CU_DEVICE_ATTRIBUTE_CAN_TEX2D_GATHER",
        "CU_DEVICE_ATTRIBUTE_CAN_FLUSH_REMOTE_WRITES",
        "CU_D3D9_REGISTER_FLAGS_NONE",
        "CU_D3D9_REGISTER_FLAGS_ARRAY",
        "CU_D3D9_MAPRESOURCE_FLAGS_WRITEDISCARD",
        "CU_D3D9_MAPRESOURCE_FLAGS_READONLY",
        "CU_D3D9_MAPRESOURCE_FLAGS_NONE",
        "CU_D3D9_DEVICE_LIST_NEXT_FRAME",
        "CU_D3D9_DEVICE_LIST_CURRENT_FRAME",
        "CU_D3D9_DEVICE_LIST_ALL",
        "CU_D3D11_DEVICE_LIST_NEXT_FRAME",
        "CU_D3D11_DEVICE_LIST_CURRENT_FRAME",
        "CU_D3D11_DEVICE_LIST_ALL",
        "CU_D3D10_REGISTER_FLAGS_NONE",
        "CU_D3D10_REGISTER_FLAGS_ARRAY",
        "CU_D3D10_MAPRESOURCE_FLAGS_WRITEDISCARD",
        "CU_D3D10_MAPRESOURCE_FLAGS_READONLY",
        "CU_D3D10_MAPRESOURCE_FLAGS_NONE",
        "CU_D3D10_DEVICE_LIST_NEXT_FRAME",
        "CU_D3D10_DEVICE_LIST_CURRENT_FRAME",
        "CU_D3D10_DEVICE_LIST_ALL",
        "CU_CUBEMAP_FACE_POSITIVE_Z",
        "CU_CUBEMAP_FACE_POSITIVE_Y",
        "CU_CUBEMAP_FACE_POSITIVE_X",
        "CU_CUBEMAP_FACE_NEGATIVE_Z",
        "CU_CUBEMAP_FACE_NEGATIVE_Y",
        "CU_CUBEMAP_FACE_NEGATIVE_X",
        "CU_CTX_USER_COREDUMP_ENABLE",
        "CU_CTX_SYNC_MEMOPS",
        "CU_CTX_FLAGS_MASK",
        "CU_CTX_COREDUMP_ENABLE",
        "CU_COREDUMP_TRIGGER_HOST",
        "CU_COREDUMP_PIPE",
        "CU_COREDUMP_MAX",
        "CU_COREDUMP_LIGHTWEIGHT",
        "CU_COREDUMP_FILE",
        "CU_COREDUMP_ENABLE_USER_TRIGGER",
        "CU_COREDUMP_ENABLE_ON_EXCEPTION",
        "CU_COMPUTE_ACCELERATED_TARGET_BASE",
        "CU_CLUSTER_SCHEDULING_POLICY_SPREAD",
        "CU_CLUSTER_SCHEDULING_POLICY_LOAD_BALANCING",
        "CU_CLUSTER_SCHEDULING_POLICY_DEFAULT",
        "CU_ARRAY_SPARSE_PROPERTIES_SINGLE_MIPTAIL",
        "CU_AD_FORMAT_UNORM_INT8X4",
        "CU_AD_FORMAT_UNORM_INT8X2",
        "CU_AD_FORMAT_UNORM_INT8X1",
        "CU_AD_FORMAT_UNORM_INT16X4",
        "CU_AD_FORMAT_UNORM_INT16X2",
        "CU_AD_FORMAT_UNORM_INT16X1",
        "CU_AD_FORMAT_SNORM_INT8X4",
        "CU_AD_FORMAT_SNORM_INT8X2",
        "CU_AD_FORMAT_SNORM_INT8X1",
        "CU_AD_FORMAT_SNORM_INT16X4",
        "CU_AD_FORMAT_SNORM_INT16X2",
        "CU_AD_FORMAT_SNORM_INT16X1",
        "CU_AD_FORMAT_NV12",
        "CU_AD_FORMAT_BC7_UNORM_SRGB",
        "CU_AD_FORMAT_BC7_UNORM",
        "CU_AD_FORMAT_BC6H_UF16",
        "CU_AD_FORMAT_BC6H_SF16",
        "CU_AD_FORMAT_BC5_UNORM",
        "CU_AD_FORMAT_BC5_SNORM",
        "CU_AD_FORMAT_BC4_UNORM",
        "CU_AD_FORMAT_BC4_SNORM",
        "CU_AD_FORMAT_BC3_UNORM_SRGB",
        "CU_AD_FORMAT_BC3_UNORM",
        "CU_AD_FORMAT_BC2_UNORM_SRGB",
        "CU_AD_FORMAT_BC2_UNORM",
        "CU_AD_FORMAT_BC1_UNORM_SRGB",
        "CU_AD_FORMAT_BC1_UNORM",
        "CUSPARSE_SPSV_UPDATE_GENERAL",
        "CUSPARSE_SPSV_UPDATE_DIAGONAL",
        "CUSPARSE_SPMV_SELL_ALG1",
        "CUSPARSE_SPMM_OP_ALG_DEFAULT",
        "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_ALG_NAIVE",
        "CUSPARSE_ALG_MERGE_PATH",
        "CUSPARSE_ALG1",
        "CUSPARSE_ALG0",
        "CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6",
        "CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6",
        "CURAND_REJECTION",
        "CURAND_POISSON",
        "CURAND_ORDERING_QUASI_DEFAULT",
        "CURAND_ORDERING_PSEUDO_SEEDED",
        "CURAND_ORDERING_PSEUDO_LEGACY",
        "CURAND_ORDERING_PSEUDO_DYNAMIC",
        "CURAND_ORDERING_PSEUDO_DEFAULT",
        "CURAND_ORDERING_PSEUDO_BEST",
        "CURAND_M2",
        "CURAND_M1",
        "CURAND_KNUTH",
        "CURAND_ITR",
        "CURAND_HITR",
        "CURAND_FAST_REJECTION",
        "CURAND_DISCRETE_GAUSS",
        "CURAND_DIRECTION_VECTORS_64_JOEKUO6",
        "CURAND_DIRECTION_VECTORS_32_JOEKUO6",
        "CURAND_DEVICE_API",
        "CURAND_DEFINITION",
        "CURAND_CHOOSE_BEST",
        "CURAND_BINARY_SEARCH",
        "CURAND_3RD",
        "CUGPUDirectRDMAWritesOrdering_enum",
        "CUGPUDirectRDMAWritesOrdering",
        "CUGLmap_flags_enum",
        "CUGLmap_flags",
        "CUFFT_XT_FORMAT_OUTPUT",
        "CUFFT_XT_FORMAT_INPUT",
        "CUFFT_XT_FORMAT_INPLACE_SHUFFLED",
        "CUFFT_XT_FORMAT_INPLACE",
        "CUFFT_XT_FORMAT_DISTRIBUTED_OUTPUT",
        "CUFFT_XT_FORMAT_DISTRIBUTED_INPUT",
        "CUFFT_XT_FORMAT_1D_INPUT_SHUFFLED",
        "CUFFT_WORKAREA_USER",
        "CUFFT_WORKAREA_PERFORMANCE",
        "CUFFT_WORKAREA_MINIMAL",
        "CUFFT_QUERY_UNDEFINED",
        "CUFFT_QUERY_1D_FACTORS",
        "CUFFT_LICENSE_ERROR",
        "CUFFT_FORMAT_UNDEFINED",
        "CUFFT_COPY_UNDEFINED",
        "CUFFT_COPY_HOST_TO_DEVICE",
        "CUFFT_COPY_DEVICE_TO_HOST",
        "CUFFT_COPY_DEVICE_TO_DEVICE",
        "CUFFT_COMPATIBILITY_FFTW_PADDING",
        "CUFFT_COMPATIBILITY_DEFAULT",
        "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_F16x16",
        "CUDNN_TENSOR_OP_MATH_ALLOW_CONVERSION",
        "CUDNN_STATUS_VERSION_MISMATCH",
        "CUDNN_STATUS_RUNTIME_IN_PROGRESS",
        "CUDNN_STATUS_RUNTIME_FP_OVERFLOW",
        "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_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_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_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_USE_TEX",
        "CUDNN_KNOB_TYPE_TILE_SIZE",
        "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_STAGES",
        "CUDNN_KNOB_TYPE_SPLIT_RS",
        "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_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_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_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_E5M2",
        "CUDNN_DATA_FP8_E4M3",
        "CUDNN_DATA_FAST_FLOAT_FOR_FP8",
        "CUDNN_DATA_BOOLEAN",
        "CUDNN_DATA_BFLOAT16",
        "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_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_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_OPERATIONGRAPH_DESCRIPTOR",
        "CUDNN_BACKEND_MATMUL_DESCRIPTOR",
        "CUDNN_BACKEND_LAYOUT_INFO_DESCRIPTOR",
        "CUDNN_BACKEND_KNOB_INFO_DESCRIPTOR",
        "CUDNN_BACKEND_KNOB_CHOICE_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_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_OPERATIONGRAPH_OPS",
        "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_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_JSON_REPRESENTATION",
        "CUDNN_ATTR_EXECUTION_PLAN_HANDLE",
        "CUDNN_ATTR_EXECUTION_PLAN_ENGINE_CONFIG",
        "CUDNN_ATTR_EXECUTION_PLAN_COMPUTED_INTERMEDIATE_UIDS",
        "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_RESULTS",
        "CUDNN_ATTR_ENGINEHEUR_OPERATION_GRAPH",
        "CUDNN_ATTR_ENGINEHEUR_MODE",
        "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",
        "CUDA_POINTER_ATTRIBUTE_P2P_TOKENS_v1",
        "CUDA_POINTER_ATTRIBUTE_P2P_TOKENS_st",
        "CUDA_POINTER_ATTRIBUTE_P2P_TOKENS",
        "CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS_enum",
        "CUDA_POINTER_ATTRIBUTE_ACCESS_FLAGS",
        "CUDA_NVSCISYNC_ATTR_WAIT",
        "CUDA_NVSCISYNC_ATTR_SIGNAL",
        "CUDA_MEM_FREE_NODE_PARAMS_st",
        "CUDA_MEM_FREE_NODE_PARAMS",
        "CUDA_MEM_ALLOC_NODE_PARAMS_v2_st",
        "CUDA_MEM_ALLOC_NODE_PARAMS_v2",
        "CUDA_MEMSET_NODE_PARAMS_v2_st",
        "CUDA_MEMSET_NODE_PARAMS_v2",
        "CUDA_MEMCPY_NODE_PARAMS_st",
        "CUDA_MEMCPY_NODE_PARAMS",
        "CUDA_MEMCPY3D_PEER_v1",
        "CUDA_MEMCPY3D_PEER_st",
        "CUDA_MEMCPY3D_PEER",
        "CUDA_KERNEL_NODE_PARAMS_v3_st",
        "CUDA_KERNEL_NODE_PARAMS_v3",
        "CUDA_KERNEL_NODE_PARAMS_v2_st",
        "CUDA_KERNEL_NODE_PARAMS_v2",
        "CUDA_HOST_NODE_PARAMS_v2_st",
        "CUDA_HOST_NODE_PARAMS_v2",
        "CUDA_GRAPH_INSTANTIATE_SUCCESS",
        "CUDA_GRAPH_INSTANTIATE_PARAMS_st",
        "CUDA_GRAPH_INSTANTIATE_PARAMS",
        "CUDA_GRAPH_INSTANTIATE_NODE_OPERATION_NOT_SUPPORTED",
        "CUDA_GRAPH_INSTANTIATE_MULTIPLE_CTXS_NOT_SUPPORTED",
        "CUDA_GRAPH_INSTANTIATE_INVALID_STRUCTURE",
        "CUDA_GRAPH_INSTANTIATE_ERROR",
        "CUDA_EXT_SEM_WAIT_NODE_PARAMS_v2_st",
        "CUDA_EXT_SEM_WAIT_NODE_PARAMS_v2",
        "CUDA_EXT_SEM_WAIT_NODE_PARAMS_v1",
        "CUDA_EXT_SEM_WAIT_NODE_PARAMS_st",
        "CUDA_EXT_SEM_WAIT_NODE_PARAMS",
        "CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v2_st",
        "CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v2",
        "CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v1",
        "CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_st",
        "CUDA_EXT_SEM_SIGNAL_NODE_PARAMS",
        "CUDA_EXTERNAL_SEMAPHORE_WAIT_SKIP_NVSCIBUF_MEMSYNC",
        "CUDA_EXTERNAL_SEMAPHORE_SIGNAL_SKIP_NVSCIBUF_MEMSYNC",
        "CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC_v1",
        "CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC_st",
        "CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC",
        "CUDA_EVENT_WAIT_NODE_PARAMS_st",
        "CUDA_EVENT_WAIT_NODE_PARAMS",
        "CUDA_EVENT_RECORD_NODE_PARAMS_st",
        "CUDA_EVENT_RECORD_NODE_PARAMS",
        "CUDA_ERROR_UNSUPPORTED_PTX_VERSION",
        "CUDA_ERROR_UNSUPPORTED_EXEC_AFFINITY",
        "CUDA_ERROR_UNSUPPORTED_DEVSIDE_SYNC",
        "CUDA_ERROR_TOO_MANY_PEERS",
        "CUDA_ERROR_TIMEOUT",
        "CUDA_ERROR_SYSTEM_NOT_READY",
        "CUDA_ERROR_SYSTEM_DRIVER_MISMATCH",
        "CUDA_ERROR_STUB_LIBRARY",
        "CUDA_ERROR_NVLINK_UNCORRECTABLE",
        "CUDA_ERROR_NOT_PERMITTED",
        "CUDA_ERROR_MPS_SERVER_NOT_READY",
        "CUDA_ERROR_MPS_RPC_FAILURE",
        "CUDA_ERROR_MPS_MAX_CONNECTIONS_REACHED",
        "CUDA_ERROR_MPS_MAX_CLIENTS_REACHED",
        "CUDA_ERROR_MPS_CONNECTION_FAILED",
        "CUDA_ERROR_MPS_CLIENT_TERMINATED",
        "CUDA_ERROR_MISALIGNED_ADDRESS",
        "CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING",
        "CUDA_ERROR_JIT_COMPILER_NOT_FOUND",
        "CUDA_ERROR_JIT_COMPILATION_DISABLED",
        "CUDA_ERROR_INVALID_PC",
        "CUDA_ERROR_INVALID_CLUSTER_SIZE",
        "CUDA_ERROR_INVALID_ADDRESS_SPACE",
        "CUDA_ERROR_ILLEGAL_INSTRUCTION",
        "CUDA_ERROR_HARDWARE_STACK_ERROR",
        "CUDA_ERROR_EXTERNAL_DEVICE",
        "CUDA_ERROR_DEVICE_UNAVAILABLE",
        "CUDA_ERROR_DEVICE_NOT_LICENSED",
        "CUDA_ERROR_COMPAT_NOT_SUPPORTED_ON_DEVICE",
        "CUDA_ERROR_CDP_VERSION_MISMATCH",
        "CUDA_ERROR_CDP_NOT_SUPPORTED",
        "CUDA_EGL_MAX_PLANES",
        "CUDA_CHILD_GRAPH_NODE_PARAMS_st",
        "CUDA_CHILD_GRAPH_NODE_PARAMS",
        "CUDA_CB",
        "CUDA_BATCH_MEM_OP_NODE_PARAMS_v2_st",
        "CUDA_BATCH_MEM_OP_NODE_PARAMS_v2",
        "CUDA_BATCH_MEM_OP_NODE_PARAMS_v1_st",
        "CUDA_BATCH_MEM_OP_NODE_PARAMS_v1",
        "CUDA_BATCH_MEM_OP_NODE_PARAMS_st",
        "CUDA_BATCH_MEM_OP_NODE_PARAMS",
        "CUDA_ARRAY_SPARSE_PROPERTIES_v1",
        "CUDA_ARRAY_SPARSE_PROPERTIES_st",
        "CUDA_ARRAY_SPARSE_PROPERTIES",
        "CUDA_ARRAY_MEMORY_REQUIREMENTS_v1",
        "CUDA_ARRAY_MEMORY_REQUIREMENTS_st",
        "CUDA_ARRAY_MEMORY_REQUIREMENTS",
        "CUDA_ARRAY3D_SPARSE",
        "CUDA_ARRAY3D_DEPTH_TEXTURE",
        "CUDA_ARRAY3D_DEFERRED_MAPPING",
        "CUDA_ARRAY3D_COLOR_ATTACHMENT",
        "CUDA_ARRAY3D_2DARRAY",
        "CUB_USE_COOPERATIVE_GROUPS",
        "CUB_SUBSCRIPTION_FACTOR",
        "CUB_STATIC_ASSERT",
        "CUB_SMEM_BANKS",
        "CUB_RUNTIME_ENABLED",
        "CUB_ROUND_UP_NEAREST",
        "CUB_ROUND_DOWN_NEAREST",
        "CUB_QUOTIENT_FLOOR",
        "CUB_QUOTIENT_CEILING",
        "CUB_PTX_SUBSCRIPTION_FACTOR",
        "CUB_PTX_SMEM_BANKS",
        "CUB_PTX_PREFER_CONFLICT_OVER_PADDING",
        "CUB_PTX_LOG_WARP_THREADS",
        "CUB_PTX_LOG_SMEM_BANKS",
        "CUB_PREVENT_MACRO_SUBSTITUTION",
        "CUB_PREFER_CONFLICT_OVER_PADDING",
        "CUB_MSVC_VERSION_FULL",
        "CUB_MSVC_VERSION",
        "CUB_MAX_DEVICES",
        "CUB_LOG_WARP_THREADS",
        "CUB_LOG_SMEM_BANKS",
        "CUB_IS_HOST_CODE",
        "CUB_IS_DEVICE_CODE",
        "CUB_INCLUDE_HOST_CODE",
        "CUB_INCLUDE_DEVICE_CODE",
        "CUB_IGNORE_DEPRECATED_DIALECT",
        "CUB_IGNORE_DEPRECATED_CPP_DIALECT",
        "CUB_IGNORE_DEPRECATED_CPP_11",
        "CUB_IGNORE_DEPRECATED_COMPILER",
        "CUB_IGNORE_DEPRECATED_API",
        "CUB_HOST_COMPILER_UNKNOWN",
        "CUB_HOST_COMPILER_MSVC",
        "CUB_HOST_COMPILER_GCC",
        "CUB_HOST_COMPILER_CLANG",
        "CUB_HOST_COMPILER",
        "CUB_DEVICE_COMPILER_UNKNOWN",
        "CUB_DEVICE_COMPILER_NVCC",
        "CUB_DEVICE_COMPILER_MSVC",
        "CUB_DEVICE_COMPILER_GCC",
        "CUB_DEVICE_COMPILER_CLANG",
        "CUB_DEVICE_COMPILER",
        "CUB_DEPRECATED",
        "CUB_DEFINE_VECTOR_TYPE",
        "CUB_DEFINE_DETECT_NESTED_TYPE",
        "CUB_CPP_DIALECT",
        "CUB_CPLUSPLUS",
        "CUB_COMP_DEPR_IMPL1",
        "CUB_COMP_DEPR_IMPL0",
        "CUB_COMP_DEPR_IMPL",
        "CUB_COMPILER_DEPRECATION_SOFT",
        "CUB_COMPILER_DEPRECATION",
        "CUB_CAT_",
        "CUB_CAT",
        "CUB_ALIGN"
    )
    {
        my $mt = m/($func)/g;
        if ($mt) {
            $k += $mt;
            print STDERR "  warning: $fileName:$line_num: unsupported identifier \"$func\"\n";
        }
    }
    return $k;
}

sub warnHipOnlyUnsupportedFunctions {
    my $line_num = shift;
    my $k = 0;
    foreach $func (
        "cublasZtrttp",
        "cublasZtrsv_v2_64",
        "cublasZtrsv_64",
        "cublasZtrsm_v2_64",
        "cublasZtrsm_64",
        "cublasZtrsmBatched_64",
        "cublasZtrmv_v2_64",
        "cublasZtrmv_64",
        "cublasZtrmm_v2_64",
        "cublasZtrmm_64",
        "cublasZtpttr",
        "cublasZtpsv_v2_64",
        "cublasZtpsv_64",
        "cublasZtpmv_v2_64",
        "cublasZtpmv_64",
        "cublasZtbsv_v2_64",
        "cublasZtbsv_64",
        "cublasZtbmv_v2_64",
        "cublasZtbmv_64",
        "cublasZsyrkx_64",
        "cublasZsyrk_v2_64",
        "cublasZsyrk_64",
        "cublasZsyr_v2_64",
        "cublasZsyr_64",
        "cublasZsyr2k_v2_64",
        "cublasZsyr2k_64",
        "cublasZsyr2_v2_64",
        "cublasZsyr2_64",
        "cublasZsymv_v2_64",
        "cublasZsymv_64",
        "cublasZsymm_v2_64",
        "cublasZsymm_64",
        "cublasZswap_v2_64",
        "cublasZswap_64",
        "cublasZscal_v2_64",
        "cublasZscal_64",
        "cublasZrot_v2_64",
        "cublasZrot_64",
        "cublasZmatinvBatched",
        "cublasZhpr_v2_64",
        "cublasZhpr_64",
        "cublasZhpr2_v2_64",
        "cublasZhpr2_64",
        "cublasZhpmv_v2_64",
        "cublasZhpmv_64",
        "cublasZherkx_64",
        "cublasZherk_v2_64",
        "cublasZherk_64",
        "cublasZher_v2_64",
        "cublasZher_64",
        "cublasZher2k_v2_64",
        "cublasZher2k_64",
        "cublasZher2_v2_64",
        "cublasZher2_64",
        "cublasZhemv_v2_64",
        "cublasZhemv_64",
        "cublasZhemm_v2_64",
        "cublasZhemm_64",
        "cublasZhbmv_v2_64",
        "cublasZhbmv_64",
        "cublasZgeru_v2_64",
        "cublasZgeru_64",
        "cublasZgerc_v2_64",
        "cublasZgerc_64",
        "cublasZgemv_v2_64",
        "cublasZgemv_64",
        "cublasZgemvStridedBatched_64",
        "cublasZgemvStridedBatched",
        "cublasZgemvBatched_64",
        "cublasZgemvBatched",
        "cublasZgemm_v2_64",
        "cublasZgemm_64",
        "cublasZgemmStridedBatched_64",
        "cublasZgemmBatched_64",
        "cublasZgemm3m_64",
        "cublasZgemm3m",
        "cublasZgeam_64",
        "cublasZgbmv_v2_64",
        "cublasZgbmv_64",
        "cublasZdscal_v2_64",
        "cublasZdscal_64",
        "cublasZdrot_v2_64",
        "cublasZdrot_64",
        "cublasZdotu_v2_64",
        "cublasZdotu_64",
        "cublasZdotc_v2_64",
        "cublasZdotc_64",
        "cublasZdgmm_64",
        "cublasZcopy_v2_64",
        "cublasZcopy_64",
        "cublasZaxpy_v2_64",
        "cublasZaxpy_64",
        "cublasXerbla",
        "cublasUint8gemmBias",
        "cublasTSTgemvStridedBatched_64",
        "cublasTSTgemvStridedBatched",
        "cublasTSTgemvBatched_64",
        "cublasTSTgemvBatched",
        "cublasTSSgemvStridedBatched_64",
        "cublasTSSgemvStridedBatched",
        "cublasTSSgemvBatched_64",
        "cublasTSSgemvBatched",
        "cublasSwapEx_64",
        "cublasSwapEx",
        "cublasStrttp",
        "cublasStrsv_v2_64",
        "cublasStrsv_64",
        "cublasStrsm_v2_64",
        "cublasStrsm_64",
        "cublasStrsmBatched_64",
        "cublasStrmv_v2_64",
        "cublasStrmv_64",
        "cublasStrmm_v2_64",
        "cublasStrmm_64",
        "cublasStpttr",
        "cublasStpsv_v2_64",
        "cublasStpsv_64",
        "cublasStpmv_v2_64",
        "cublasStpmv_64",
        "cublasStbsv_v2_64",
        "cublasStbsv_64",
        "cublasStbmv_v2_64",
        "cublasStbmv_64",
        "cublasSsyrkx_64",
        "cublasSsyrk_v2_64",
        "cublasSsyrk_64",
        "cublasSsyr_v2_64",
        "cublasSsyr_64",
        "cublasSsyr2k_v2_64",
        "cublasSsyr2k_64",
        "cublasSsyr2_v2_64",
        "cublasSsyr2_64",
        "cublasSsymv_v2_64",
        "cublasSsymv_64",
        "cublasSsymm_v2_64",
        "cublasSsymm_64",
        "cublasSswap_v2_64",
        "cublasSswap_64",
        "cublasSspr_v2_64",
        "cublasSspr_64",
        "cublasSspr2_v2_64",
        "cublasSspr2_64",
        "cublasSspmv_v2_64",
        "cublasSspmv_64",
        "cublasSscal_v2_64",
        "cublasSscal_64",
        "cublasSsbmv_v2_64",
        "cublasSsbmv_64",
        "cublasSrotm_v2_64",
        "cublasSrotm_64",
        "cublasSrot_v2_64",
        "cublasSrot_64",
        "cublasSnrm2_v2_64",
        "cublasSnrm2_64",
        "cublasSmatinvBatched",
        "cublasShutdown",
        "cublasSger_v2_64",
        "cublasSger_64",
        "cublasSgemv_v2_64",
        "cublasSgemv_64",
        "cublasSgemvStridedBatched_64",
        "cublasSgemvStridedBatched",
        "cublasSgemvBatched_64",
        "cublasSgemvBatched",
        "cublasSgemm_v2_64",
        "cublasSgemm_64",
        "cublasSgemmStridedBatched_64",
        "cublasSgemmEx_64",
        "cublasSgemmEx",
        "cublasSgemmBatched_64",
        "cublasSgeam_64",
        "cublasSgbmv_v2_64",
        "cublasSgbmv_64",
        "cublasSetVector_64",
        "cublasSetVectorAsync_64",
        "cublasSetSmCountTarget",
        "cublasSetMatrix_64",
        "cublasSetMatrixAsync_64",
        "cublasSetMathMode",
        "cublasSetLoggerCallback",
        "cublasSetKernelStream",
        "cublasSdot_v2_64",
        "cublasSdot_64",
        "cublasSdgmm_64",
        "cublasScopy_v2_64",
        "cublasScopy_64",
        "cublasScnrm2_v2_64",
        "cublasScnrm2_64",
        "cublasScasum_v2_64",
        "cublasScasum_64",
        "cublasScalEx_64",
        "cublasSaxpy_v2_64",
        "cublasSaxpy_64",
        "cublasSasum_v2_64",
        "cublasSasum_64",
        "cublasRotmgEx",
        "cublasRotmEx_64",
        "cublasRotmEx",
        "cublasRotgEx",
        "cublasRotEx_64",
        "cublasNrm2Ex_64",
        "cublasMigrateComputeType",
        "cublasMath_t",
        "cublasLoggerConfigure",
        "cublasLogCallback",
        "cublasIzamin_v2_64",
        "cublasIzamin_64",
        "cublasIzamax_v2_64",
        "cublasIzamax_64",
        "cublasIsamin_v2_64",
        "cublasIsamin_64",
        "cublasIsamax_v2_64",
        "cublasIsamax_64",
        "cublasInit",
        "cublasIdamin_v2_64",
        "cublasIdamin_64",
        "cublasIdamax_v2_64",
        "cublasIdamax_64",
        "cublasIcamin_v2_64",
        "cublasIcamin_64",
        "cublasIcamax_v2_64",
        "cublasIcamax_64",
        "cublasIaminEx_64",
        "cublasIaminEx",
        "cublasIamaxEx_64",
        "cublasIamaxEx",
        "cublasHgemm_64",
        "cublasHgemmStridedBatched_64",
        "cublasHgemmBatched_64",
        "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",
        "cublasGetMathMode",
        "cublasGetLoggerCallback",
        "cublasGetError",
        "cublasGetCudartVersion",
        "cublasGemmStridedBatchedEx_64",
        "cublasGemmEx_64",
        "cublasGemmBatchedEx_64",
        "cublasFree",
        "cublasDznrm2_v2_64",
        "cublasDznrm2_64",
        "cublasDzasum_v2_64",
        "cublasDzasum_64",
        "cublasDtrttp",
        "cublasDtrsv_v2_64",
        "cublasDtrsv_64",
        "cublasDtrsm_v2_64",
        "cublasDtrsm_64",
        "cublasDtrsmBatched_64",
        "cublasDtrmv_v2_64",
        "cublasDtrmv_64",
        "cublasDtrmm_v2_64",
        "cublasDtrmm_64",
        "cublasDtpttr",
        "cublasDtpsv_v2_64",
        "cublasDtpsv_64",
        "cublasDtpmv_v2_64",
        "cublasDtpmv_64",
        "cublasDtbsv_v2_64",
        "cublasDtbsv_64",
        "cublasDtbmv_v2_64",
        "cublasDtbmv_64",
        "cublasDsyrkx_64",
        "cublasDsyrk_v2_64",
        "cublasDsyrk_64",
        "cublasDsyr_v2_64",
        "cublasDsyr_64",
        "cublasDsyr2k_v2_64",
        "cublasDsyr2k_64",
        "cublasDsyr2_v2_64",
        "cublasDsyr2_64",
        "cublasDsymv_v2_64",
        "cublasDsymv_64",
        "cublasDsymm_v2_64",
        "cublasDsymm_64",
        "cublasDswap_v2_64",
        "cublasDswap_64",
        "cublasDspr_v2_64",
        "cublasDspr_64",
        "cublasDspr2_v2_64",
        "cublasDspr2_64",
        "cublasDspmv_v2_64",
        "cublasDspmv_64",
        "cublasDscal_v2_64",
        "cublasDscal_64",
        "cublasDsbmv_v2_64",
        "cublasDsbmv_64",
        "cublasDrotm_v2_64",
        "cublasDrotm_64",
        "cublasDrot_v2_64",
        "cublasDrot_64",
        "cublasDotcEx_64",
        "cublasDotEx_64",
        "cublasDnrm2_v2_64",
        "cublasDnrm2_64",
        "cublasDmatinvBatched",
        "cublasDger_v2_64",
        "cublasDger_64",
        "cublasDgemv_v2_64",
        "cublasDgemv_64",
        "cublasDgemvStridedBatched_64",
        "cublasDgemvStridedBatched",
        "cublasDgemvBatched_64",
        "cublasDgemvBatched",
        "cublasDgemm_v2_64",
        "cublasDgemm_64",
        "cublasDgemmStridedBatched_64",
        "cublasDgemmBatched_64",
        "cublasDgeam_64",
        "cublasDgbmv_v2_64",
        "cublasDgbmv_64",
        "cublasDdot_v2_64",
        "cublasDdot_64",
        "cublasDdgmm_64",
        "cublasDcopy_v2_64",
        "cublasDcopy_64",
        "cublasDaxpy_v2_64",
        "cublasDaxpy_64",
        "cublasDasum_v2_64",
        "cublasDasum_64",
        "cublasCtrttp",
        "cublasCtrsv_v2_64",
        "cublasCtrsv_64",
        "cublasCtrsm_v2_64",
        "cublasCtrsm_64",
        "cublasCtrsmBatched_64",
        "cublasCtrmv_v2_64",
        "cublasCtrmv_64",
        "cublasCtrmm_v2_64",
        "cublasCtrmm_64",
        "cublasCtpttr",
        "cublasCtpsv_v2_64",
        "cublasCtpsv_64",
        "cublasCtpmv_v2_64",
        "cublasCtpmv_64",
        "cublasCtbsv_v2_64",
        "cublasCtbsv_64",
        "cublasCtbmv_v2_64",
        "cublasCtbmv_64",
        "cublasCsyrkx_64",
        "cublasCsyrk_v2_64",
        "cublasCsyrk_64",
        "cublasCsyrkEx_64",
        "cublasCsyrkEx",
        "cublasCsyrk3mEx_64",
        "cublasCsyrk3mEx",
        "cublasCsyr_v2_64",
        "cublasCsyr_64",
        "cublasCsyr2k_v2_64",
        "cublasCsyr2k_64",
        "cublasCsyr2_v2_64",
        "cublasCsyr2_64",
        "cublasCsymv_v2_64",
        "cublasCsymv_64",
        "cublasCsymm_v2_64",
        "cublasCsymm_64",
        "cublasCswap_v2_64",
        "cublasCswap_64",
        "cublasCsscal_v2_64",
        "cublasCsscal_64",
        "cublasCsrot_v2_64",
        "cublasCsrot_64",
        "cublasCscal_v2_64",
        "cublasCscal_64",
        "cublasCrot_v2_64",
        "cublasCrot_64",
        "cublasCopyEx_64",
        "cublasCopyEx",
        "cublasContext",
        "cublasCmatinvBatched",
        "cublasChpr_v2_64",
        "cublasChpr_64",
        "cublasChpr2_v2_64",
        "cublasChpr2_64",
        "cublasChpmv_v2_64",
        "cublasChpmv_64",
        "cublasCherkx_64",
        "cublasCherk_v2_64",
        "cublasCherk_64",
        "cublasCherkEx_64",
        "cublasCherkEx",
        "cublasCherk3mEx_64",
        "cublasCherk3mEx",
        "cublasCher_v2_64",
        "cublasCher_64",
        "cublasCher2k_v2_64",
        "cublasCher2k_64",
        "cublasCher2_v2_64",
        "cublasCher2_64",
        "cublasChemv_v2_64",
        "cublasChemv_64",
        "cublasChemm_v2_64",
        "cublasChemm_64",
        "cublasChbmv_v2_64",
        "cublasChbmv_64",
        "cublasCgeru_v2_64",
        "cublasCgeru_64",
        "cublasCgerc_v2_64",
        "cublasCgerc_64",
        "cublasCgemv_v2_64",
        "cublasCgemv_64",
        "cublasCgemvStridedBatched_64",
        "cublasCgemvStridedBatched",
        "cublasCgemvBatched_64",
        "cublasCgemvBatched",
        "cublasCgemm_v2_64",
        "cublasCgemm_64",
        "cublasCgemmStridedBatched_64",
        "cublasCgemmEx_64",
        "cublasCgemmEx",
        "cublasCgemmBatched_64",
        "cublasCgemm3m_64",
        "cublasCgemm3mStridedBatched_64",
        "cublasCgemm3mStridedBatched",
        "cublasCgemm3mEx_64",
        "cublasCgemm3mEx",
        "cublasCgemm3mBatched_64",
        "cublasCgemm3mBatched",
        "cublasCgemm3m",
        "cublasCgeam_64",
        "cublasCgbmv_v2_64",
        "cublasCgbmv_64",
        "cublasCdotu_v2_64",
        "cublasCdotu_64",
        "cublasCdotc_v2_64",
        "cublasCdotc_64",
        "cublasCdgmm_64",
        "cublasCcopy_v2_64",
        "cublasCcopy_64",
        "cublasCaxpy_v2_64",
        "cublasCaxpy_64",
        "cublasAxpyEx_64",
        "cublasAsumEx_64",
        "cublasAsumEx",
        "cublasAlloc",
        "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_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_DEFAULT_MATH",
        "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_32F",
        "CUBLAS_COMPUTE_16F_PEDANTIC",
        "CUBLAS_COMPUTE_16F"
    )
    {
        my $mt = m/($func)/g;
        if ($mt) {
            $k += $mt;
            print STDERR "  warning: $fileName:$line_num: unsupported identifier \"$func\"\n";
        }
    }
    return $k;
}

sub warnRocOnlyUnsupportedFunctions {
    my $line_num = shift;
    my $k = 0;
    foreach $func (
        "cublasZtrttp",
        "cublasZtrsv_v2_64",
        "cublasZtrsv_64",
        "cublasZtrsm_v2_64",
        "cublasZtrsm_64",
        "cublasZtrsmBatched_64",
        "cublasZtrmv_v2_64",
        "cublasZtrmv_64",
        "cublasZtrmm_v2_64",
        "cublasZtrmm_64",
        "cublasZtpttr",
        "cublasZtpsv_v2_64",
        "cublasZtpsv_64",
        "cublasZtpmv_v2_64",
        "cublasZtpmv_64",
        "cublasZtbsv_v2_64",
        "cublasZtbsv_64",
        "cublasZtbmv_v2_64",
        "cublasZtbmv_64",
        "cublasZsyrkx_64",
        "cublasZsyrk_v2_64",
        "cublasZsyrk_64",
        "cublasZsyr_v2_64",
        "cublasZsyr_64",
        "cublasZsyr2k_v2_64",
        "cublasZsyr2k_64",
        "cublasZsyr2_v2_64",
        "cublasZsyr2_64",
        "cublasZsymv_v2_64",
        "cublasZsymv_64",
        "cublasZsymm_v2_64",
        "cublasZsymm_64",
        "cublasZswap_v2_64",
        "cublasZswap_64",
        "cublasZscal_v2_64",
        "cublasZscal_64",
        "cublasZrot_v2_64",
        "cublasZrot_64",
        "cublasZmatinvBatched",
        "cublasZhpr_v2_64",
        "cublasZhpr_64",
        "cublasZhpr2_v2_64",
        "cublasZhpr2_64",
        "cublasZhpmv_v2_64",
        "cublasZhpmv_64",
        "cublasZherkx_64",
        "cublasZherk_v2_64",
        "cublasZherk_64",
        "cublasZher_v2_64",
        "cublasZher_64",
        "cublasZher2k_v2_64",
        "cublasZher2k_64",
        "cublasZher2_v2_64",
        "cublasZher2_64",
        "cublasZhemv_v2_64",
        "cublasZhemv_64",
        "cublasZhemm_v2_64",
        "cublasZhemm_64",
        "cublasZhbmv_v2_64",
        "cublasZhbmv_64",
        "cublasZgetrsBatched",
        "cublasZgetriBatched",
        "cublasZgetrfBatched",
        "cublasZgeru_v2_64",
        "cublasZgeru_64",
        "cublasZgerc_v2_64",
        "cublasZgerc_64",
        "cublasZgeqrfBatched",
        "cublasZgemv_v2_64",
        "cublasZgemv_64",
        "cublasZgemvStridedBatched_64",
        "cublasZgemvStridedBatched",
        "cublasZgemvBatched_64",
        "cublasZgemvBatched",
        "cublasZgemm_v2_64",
        "cublasZgemm_64",
        "cublasZgemmStridedBatched_64",
        "cublasZgemmBatched_64",
        "cublasZgemm3m_64",
        "cublasZgemm3m",
        "cublasZgelsBatched",
        "cublasZgeam_64",
        "cublasZgbmv_v2_64",
        "cublasZgbmv_64",
        "cublasZdscal_v2_64",
        "cublasZdscal_64",
        "cublasZdrot_v2_64",
        "cublasZdrot_64",
        "cublasZdotu_v2_64",
        "cublasZdotu_64",
        "cublasZdotc_v2_64",
        "cublasZdotc_64",
        "cublasZdgmm_64",
        "cublasZcopy_v2_64",
        "cublasZcopy_64",
        "cublasZaxpy_v2_64",
        "cublasZaxpy_64",
        "cublasXerbla",
        "cublasUint8gemmBias",
        "cublasTSTgemvStridedBatched_64",
        "cublasTSTgemvStridedBatched",
        "cublasTSTgemvBatched_64",
        "cublasTSTgemvBatched",
        "cublasTSSgemvStridedBatched_64",
        "cublasTSSgemvStridedBatched",
        "cublasTSSgemvBatched_64",
        "cublasTSSgemvBatched",
        "cublasSwapEx_64",
        "cublasSwapEx",
        "cublasStrttp",
        "cublasStrsv_v2_64",
        "cublasStrsv_64",
        "cublasStrsm_v2_64",
        "cublasStrsm_64",
        "cublasStrsmBatched_64",
        "cublasStrmv_v2_64",
        "cublasStrmv_64",
        "cublasStrmm_v2_64",
        "cublasStrmm_64",
        "cublasStpttr",
        "cublasStpsv_v2_64",
        "cublasStpsv_64",
        "cublasStpmv_v2_64",
        "cublasStpmv_64",
        "cublasStbsv_v2_64",
        "cublasStbsv_64",
        "cublasStbmv_v2_64",
        "cublasStbmv_64",
        "cublasSsyrkx_64",
        "cublasSsyrk_v2_64",
        "cublasSsyrk_64",
        "cublasSsyr_v2_64",
        "cublasSsyr_64",
        "cublasSsyr2k_v2_64",
        "cublasSsyr2k_64",
        "cublasSsyr2_v2_64",
        "cublasSsyr2_64",
        "cublasSsymv_v2_64",
        "cublasSsymv_64",
        "cublasSsymm_v2_64",
        "cublasSsymm_64",
        "cublasSswap_v2_64",
        "cublasSswap_64",
        "cublasSspr_v2_64",
        "cublasSspr_64",
        "cublasSspr2_v2_64",
        "cublasSspr2_64",
        "cublasSspmv_v2_64",
        "cublasSspmv_64",
        "cublasSscal_v2_64",
        "cublasSscal_64",
        "cublasSsbmv_v2_64",
        "cublasSsbmv_64",
        "cublasSrotm_v2_64",
        "cublasSrotm_64",
        "cublasSrot_v2_64",
        "cublasSrot_64",
        "cublasSnrm2_v2_64",
        "cublasSnrm2_64",
        "cublasSmatinvBatched",
        "cublasShutdown",
        "cublasSgetrsBatched",
        "cublasSgetriBatched",
        "cublasSgetrfBatched",
        "cublasSger_v2_64",
        "cublasSger_64",
        "cublasSgeqrfBatched",
        "cublasSgemv_v2_64",
        "cublasSgemv_64",
        "cublasSgemvStridedBatched_64",
        "cublasSgemvStridedBatched",
        "cublasSgemvBatched_64",
        "cublasSgemvBatched",
        "cublasSgemm_v2_64",
        "cublasSgemm_64",
        "cublasSgemmStridedBatched_64",
        "cublasSgemmEx_64",
        "cublasSgemmEx",
        "cublasSgemmBatched_64",
        "cublasSgelsBatched",
        "cublasSgeam_64",
        "cublasSgbmv_v2_64",
        "cublasSgbmv_64",
        "cublasSetVector_64",
        "cublasSetVectorAsync_64",
        "cublasSetSmCountTarget",
        "cublasSetMatrix_64",
        "cublasSetMatrixAsync_64",
        "cublasSetLoggerCallback",
        "cublasSetKernelStream",
        "cublasSdot_v2_64",
        "cublasSdot_64",
        "cublasSdgmm_64",
        "cublasScopy_v2_64",
        "cublasScopy_64",
        "cublasScnrm2_v2_64",
        "cublasScnrm2_64",
        "cublasScasum_v2_64",
        "cublasScasum_64",
        "cublasScalEx_64",
        "cublasSaxpy_v2_64",
        "cublasSaxpy_64",
        "cublasSasum_v2_64",
        "cublasSasum_64",
        "cublasRotmgEx",
        "cublasRotmEx_64",
        "cublasRotmEx",
        "cublasRotgEx",
        "cublasRotEx_64",
        "cublasNrm2Ex_64",
        "cublasMigrateComputeType",
        "cublasLoggerConfigure",
        "cublasLogCallback",
        "cublasIzamin_v2_64",
        "cublasIzamin_64",
        "cublasIzamax_v2_64",
        "cublasIzamax_64",
        "cublasIsamin_v2_64",
        "cublasIsamin_64",
        "cublasIsamax_v2_64",
        "cublasIsamax_64",
        "cublasIdamin_v2_64",
        "cublasIdamin_64",
        "cublasIdamax_v2_64",
        "cublasIdamax_64",
        "cublasIcamin_v2_64",
        "cublasIcamin_64",
        "cublasIcamax_v2_64",
        "cublasIcamax_64",
        "cublasIaminEx_64",
        "cublasIaminEx",
        "cublasIamaxEx_64",
        "cublasIamaxEx",
        "cublasHgemm_64",
        "cublasHgemmStridedBatched_64",
        "cublasHgemmBatched_64",
        "cublasHSSgemvStridedBatched_64",
        "cublasHSSgemvStridedBatched",
        "cublasHSSgemvBatched_64",
        "cublasHSSgemvBatched",
        "cublasHSHgemvStridedBatched_64",
        "cublasHSHgemvStridedBatched",
        "cublasHSHgemvBatched_64",
        "cublasHSHgemvBatched",
        "cublasGetVersion_v2",
        "cublasGetVersion",
        "cublasGetVector_64",
        "cublasGetVectorAsync_64",
        "cublasGetStatusName",
        "cublasGetSmCountTarget",
        "cublasGetProperty",
        "cublasGetMatrix_64",
        "cublasGetMatrixAsync_64",
        "cublasGetLoggerCallback",
        "cublasGetError",
        "cublasGetCudartVersion",
        "cublasGemmStridedBatchedEx_64",
        "cublasGemmEx_64",
        "cublasGemmBatchedEx_64",
        "cublasFree",
        "cublasDznrm2_v2_64",
        "cublasDznrm2_64",
        "cublasDzasum_v2_64",
        "cublasDzasum_64",
        "cublasDtrttp",
        "cublasDtrsv_v2_64",
        "cublasDtrsv_64",
        "cublasDtrsm_v2_64",
        "cublasDtrsm_64",
        "cublasDtrsmBatched_64",
        "cublasDtrmv_v2_64",
        "cublasDtrmv_64",
        "cublasDtrmm_v2_64",
        "cublasDtrmm_64",
        "cublasDtpttr",
        "cublasDtpsv_v2_64",
        "cublasDtpsv_64",
        "cublasDtpmv_v2_64",
        "cublasDtpmv_64",
        "cublasDtbsv_v2_64",
        "cublasDtbsv_64",
        "cublasDtbmv_v2_64",
        "cublasDtbmv_64",
        "cublasDsyrkx_64",
        "cublasDsyrk_v2_64",
        "cublasDsyrk_64",
        "cublasDsyr_v2_64",
        "cublasDsyr_64",
        "cublasDsyr2k_v2_64",
        "cublasDsyr2k_64",
        "cublasDsyr2_v2_64",
        "cublasDsyr2_64",
        "cublasDsymv_v2_64",
        "cublasDsymv_64",
        "cublasDsymm_v2_64",
        "cublasDsymm_64",
        "cublasDswap_v2_64",
        "cublasDswap_64",
        "cublasDspr_v2_64",
        "cublasDspr_64",
        "cublasDspr2_v2_64",
        "cublasDspr2_64",
        "cublasDspmv_v2_64",
        "cublasDspmv_64",
        "cublasDscal_v2_64",
        "cublasDscal_64",
        "cublasDsbmv_v2_64",
        "cublasDsbmv_64",
        "cublasDrotm_v2_64",
        "cublasDrotm_64",
        "cublasDrot_v2_64",
        "cublasDrot_64",
        "cublasDotcEx_64",
        "cublasDotEx_64",
        "cublasDnrm2_v2_64",
        "cublasDnrm2_64",
        "cublasDmatinvBatched",
        "cublasDgetrsBatched",
        "cublasDgetriBatched",
        "cublasDgetrfBatched",
        "cublasDger_v2_64",
        "cublasDger_64",
        "cublasDgeqrfBatched",
        "cublasDgemv_v2_64",
        "cublasDgemv_64",
        "cublasDgemvStridedBatched_64",
        "cublasDgemvStridedBatched",
        "cublasDgemvBatched_64",
        "cublasDgemvBatched",
        "cublasDgemm_v2_64",
        "cublasDgemm_64",
        "cublasDgemmStridedBatched_64",
        "cublasDgemmBatched_64",
        "cublasDgelsBatched",
        "cublasDgeam_64",
        "cublasDgbmv_v2_64",
        "cublasDgbmv_64",
        "cublasDdot_v2_64",
        "cublasDdot_64",
        "cublasDdgmm_64",
        "cublasDcopy_v2_64",
        "cublasDcopy_64",
        "cublasDaxpy_v2_64",
        "cublasDaxpy_64",
        "cublasDasum_v2_64",
        "cublasDasum_64",
        "cublasCtrttp",
        "cublasCtrsv_v2_64",
        "cublasCtrsv_64",
        "cublasCtrsm_v2_64",
        "cublasCtrsm_64",
        "cublasCtrsmBatched_64",
        "cublasCtrmv_v2_64",
        "cublasCtrmv_64",
        "cublasCtrmm_v2_64",
        "cublasCtrmm_64",
        "cublasCtpttr",
        "cublasCtpsv_v2_64",
        "cublasCtpsv_64",
        "cublasCtpmv_v2_64",
        "cublasCtpmv_64",
        "cublasCtbsv_v2_64",
        "cublasCtbsv_64",
        "cublasCtbmv_v2_64",
        "cublasCtbmv_64",
        "cublasCsyrkx_64",
        "cublasCsyrk_v2_64",
        "cublasCsyrk_64",
        "cublasCsyrkEx_64",
        "cublasCsyrkEx",
        "cublasCsyrk3mEx_64",
        "cublasCsyrk3mEx",
        "cublasCsyr_v2_64",
        "cublasCsyr_64",
        "cublasCsyr2k_v2_64",
        "cublasCsyr2k_64",
        "cublasCsyr2_v2_64",
        "cublasCsyr2_64",
        "cublasCsymv_v2_64",
        "cublasCsymv_64",
        "cublasCsymm_v2_64",
        "cublasCsymm_64",
        "cublasCswap_v2_64",
        "cublasCswap_64",
        "cublasCsscal_v2_64",
        "cublasCsscal_64",
        "cublasCsrot_v2_64",
        "cublasCsrot_64",
        "cublasCscal_v2_64",
        "cublasCscal_64",
        "cublasCrot_v2_64",
        "cublasCrot_64",
        "cublasCopyEx_64",
        "cublasCopyEx",
        "cublasCmatinvBatched",
        "cublasChpr_v2_64",
        "cublasChpr_64",
        "cublasChpr2_v2_64",
        "cublasChpr2_64",
        "cublasChpmv_v2_64",
        "cublasChpmv_64",
        "cublasCherkx_64",
        "cublasCherk_v2_64",
        "cublasCherk_64",
        "cublasCherkEx_64",
        "cublasCherkEx",
        "cublasCherk3mEx_64",
        "cublasCherk3mEx",
        "cublasCher_v2_64",
        "cublasCher_64",
        "cublasCher2k_v2_64",
        "cublasCher2k_64",
        "cublasCher2_v2_64",
        "cublasCher2_64",
        "cublasChemv_v2_64",
        "cublasChemv_64",
        "cublasChemm_v2_64",
        "cublasChemm_64",
        "cublasChbmv_v2_64",
        "cublasChbmv_64",
        "cublasCgetrsBatched",
        "cublasCgetriBatched",
        "cublasCgetrfBatched",
        "cublasCgeru_v2_64",
        "cublasCgeru_64",
        "cublasCgerc_v2_64",
        "cublasCgerc_64",
        "cublasCgeqrfBatched",
        "cublasCgemv_v2_64",
        "cublasCgemv_64",
        "cublasCgemvStridedBatched_64",
        "cublasCgemvStridedBatched",
        "cublasCgemvBatched_64",
        "cublasCgemvBatched",
        "cublasCgemm_v2_64",
        "cublasCgemm_64",
        "cublasCgemmStridedBatched_64",
        "cublasCgemmEx_64",
        "cublasCgemmEx",
        "cublasCgemmBatched_64",
        "cublasCgemm3m_64",
        "cublasCgemm3mStridedBatched_64",
        "cublasCgemm3mStridedBatched",
        "cublasCgemm3mEx_64",
        "cublasCgemm3mEx",
        "cublasCgemm3mBatched_64",
        "cublasCgemm3mBatched",
        "cublasCgemm3m",
        "cublasCgelsBatched",
        "cublasCgeam_64",
        "cublasCgbmv_v2_64",
        "cublasCgbmv_64",
        "cublasCdotu_v2_64",
        "cublasCdotu_64",
        "cublasCdotc_v2_64",
        "cublasCdotc_64",
        "cublasCdgmm_64",
        "cublasCcopy_v2_64",
        "cublasCcopy_64",
        "cublasCaxpy_v2_64",
        "cublasCaxpy_64",
        "cublasAxpyEx_64",
        "cublasAsumEx_64",
        "cublasAsumEx",
        "cublasAlloc",
        "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_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"
    )
    {
        my $mt = m/($func)/g;
        if ($mt) {
            $k += $mt;
            print STDERR "  warning: $fileName:$line_num: unsupported by ROC 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 5.7.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;
                    $s = warnUnsupportedFunctions($line_num);
                    $warnings += $s;
                    if ($roc) {
                        $s = warnRocOnlyUnsupportedFunctions($line_num);
                        $warnings += $s;
                    } else {
                        $s = warnHipOnlyUnsupportedFunctions($line_num);
                        $warnings += $s;
                    }
                    $s = warnUnsupportedDeviceFunctions($line_num);
                    $warnings += $s;
                }
                $_ = $tmp;
            }
            if ($roc) {
                rocSubstitutions();
            }
            if ($experimental) {
                experimentalSubstitutions();
            }
            simpleSubstitutions();
            if (!$cuda_kernel_execution_syntax || $hip_kernel_execution_syntax) {
                transformKernelLaunch();
            }
            transformCubNamespace();
            my $hasDeviceCode = $countKeywords + $ft{'device_function'};
            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();
            }
            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'};
                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";
}
