https://www.cdslab.org/paramonte/fortran/2
Current view: top level - main - pm_val2str@routines.F90 (source / functions) Hit Total Coverage
Test: ParaMonte 2.0.0 :: Serial Fortran - Code Coverage Report Lines: 57 132 43.2 %
Date: 2024-04-08 03:18:57 Functions: 56 123 45.5 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
       2             : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
       3             : !!!!                                                                                                                            !!!!
       4             : !!!!    ParaMonte: Parallel Monte Carlo and Machine Learning Library.                                                           !!!!
       5             : !!!!                                                                                                                            !!!!
       6             : !!!!    Copyright (C) 2012-present, The Computational Data Science Lab                                                          !!!!
       7             : !!!!                                                                                                                            !!!!
       8             : !!!!    This file is part of the ParaMonte library.                                                                             !!!!
       9             : !!!!                                                                                                                            !!!!
      10             : !!!!    LICENSE                                                                                                                 !!!!
      11             : !!!!                                                                                                                            !!!!
      12             : !!!!       https://github.com/cdslaborg/paramonte/blob/main/LICENSE.md                                                          !!!!
      13             : !!!!                                                                                                                            !!!!
      14             : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      15             : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      16             : 
      17             : !>  \brief
      18             : !>  This file contains procedure implementations of [pm_val2Str](@ref pm_val2str).
      19             : !>
      20             : !>  \finmain
      21             : !>
      22             : !>  \author
      23             : !>  \AmirShahmoradi, September 1, 2017, 12:00 AM, Institute for Computational Engineering and Sciences (ICES), The University of Texas at Austin
      24             : 
      25             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      26             : 
      27             : submodule (pm_val2str) routines ! LCOV_EXCL_LINE
      28             : 
      29             : #if CHECK_ENABLED
      30             :     use pm_err, only: setAsserted
      31             : #define CHECK_ASSERTION(LINE,ASSERTION,MSG) \
      32             : call setAsserted(ASSERTION,SK_"@file::"//__FILE__//SK_"@line::"//getStr(LINE)//MODULE_NAME//MSG);
      33             : #else
      34             : #define CHECK_ASSERTION(LINE,ASSERTION,MSG) continue;
      35             : #endif
      36             : 
      37             :     use pm_arrayResize, only: setResized
      38             : 
      39             :     implicit none
      40             : 
      41             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      42             : 
      43             : contains
      44             : 
      45             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      46             : 
      47             : #define getStr_ENABLED 1
      48             : 
      49             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      50             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      51             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      52             : 
      53             : #define D0_ENABLED 1
      54             : 
      55             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      56             : 
      57             : #define SK_ENABLED 1
      58             : 
      59             : #if SK5_ENABLED
      60             :     module procedure getStr_D0_SK5_SK
      61             :         use pm_kind, only: SKO => SK, SKC => SK5
      62             : #include "pm_val2str@routines.inc.F90"
      63             :     end procedure
      64             : #endif
      65             : 
      66             : #if SK4_ENABLED
      67             :     module procedure getStr_D0_SK4_SK
      68             :         use pm_kind, only: SKO => SK, SKC => SK4
      69             : #include "pm_val2str@routines.inc.F90"
      70             :     end procedure
      71             : #endif
      72             : 
      73             : #if SK3_ENABLED
      74             :     module procedure getStr_D0_SK3_SK
      75             :         use pm_kind, only: SKO => SK, SKC => SK3
      76             : #include "pm_val2str@routines.inc.F90"
      77             :     end procedure
      78             : #endif
      79             : 
      80             : #if SK2_ENABLED
      81             :     module procedure getStr_D0_SK2_SK
      82             :         use pm_kind, only: SKO => SK, SKC => SK2
      83             : #include "pm_val2str@routines.inc.F90"
      84             :     end procedure
      85             : #endif
      86             : 
      87             : #if SK1_ENABLED
      88      789275 :     module procedure getStr_D0_SK1_SK
      89             :         use pm_kind, only: SKO => SK, SKC => SK1
      90             : #include "pm_val2str@routines.inc.F90"
      91             :     end procedure
      92             : #endif
      93             : 
      94             : #undef SK_ENABLED
      95             : 
      96             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      97             : 
      98             : #define IK_ENABLED 1
      99             : 
     100             : #if IK5_ENABLED
     101        4930 :     module procedure getStr_D0_IK5_SK
     102             :         use pm_kind, only: SKO => SK, IKC => IK5
     103             : #include "pm_val2str@routines.inc.F90"
     104             :     end procedure
     105             : #endif
     106             : 
     107             : #if IK4_ENABLED
     108        4931 :     module procedure getStr_D0_IK4_SK
     109             :         use pm_kind, only: SKO => SK, IKC => IK4
     110             : #include "pm_val2str@routines.inc.F90"
     111             :     end procedure
     112             : #endif
     113             : 
     114             : #if IK3_ENABLED
     115    17762570 :     module procedure getStr_D0_IK3_SK
     116             :         use pm_kind, only: SKO => SK, IKC => IK3
     117             : #include "pm_val2str@routines.inc.F90"
     118             :     end procedure
     119             : #endif
     120             : 
     121             : #if IK2_ENABLED
     122        4912 :     module procedure getStr_D0_IK2_SK
     123             :         use pm_kind, only: SKO => SK, IKC => IK2
     124             : #include "pm_val2str@routines.inc.F90"
     125             :     end procedure
     126             : #endif
     127             : 
     128             : #if IK1_ENABLED
     129        4940 :     module procedure getStr_D0_IK1_SK
     130             :         use pm_kind, only: SKO => SK, IKC => IK1
     131             : #include "pm_val2str@routines.inc.F90"
     132             :     end procedure
     133             : #endif
     134             : 
     135             : #undef IK_ENABLED
     136             : 
     137             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     138             : 
     139             : #define LK_ENABLED 1
     140             : 
     141             : #if LK5_ENABLED
     142           0 :     module procedure getStr_D0_LK5_SK
     143             :         use pm_kind, only: SKO => SK, LKC => LK5
     144             : #include "pm_val2str@routines.inc.F90"
     145             :     end procedure
     146             : #endif
     147             : 
     148             : #if LK4_ENABLED
     149           0 :     module procedure getStr_D0_LK4_SK
     150             :         use pm_kind, only: SKO => SK, LKC => LK4
     151             : #include "pm_val2str@routines.inc.F90"
     152             :     end procedure
     153             : #endif
     154             : 
     155             : #if LK3_ENABLED
     156      158073 :     module procedure getStr_D0_LK3_SK
     157             :         use pm_kind, only: SKO => SK, LKC => LK3
     158             : #include "pm_val2str@routines.inc.F90"
     159             :     end procedure
     160             : #endif
     161             : 
     162             : #if LK2_ENABLED
     163           0 :     module procedure getStr_D0_LK2_SK
     164             :         use pm_kind, only: SKO => SK, LKC => LK2
     165             : #include "pm_val2str@routines.inc.F90"
     166             :     end procedure
     167             : #endif
     168             : 
     169             : #if LK1_ENABLED
     170           0 :     module procedure getStr_D0_LK1_SK
     171             :         use pm_kind, only: SKO => SK, LKC => LK1
     172             : #include "pm_val2str@routines.inc.F90"
     173             :     end procedure
     174             : #endif
     175             : 
     176             : #undef LK_ENABLED
     177             : 
     178             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     179             : 
     180             : #define CK_ENABLED 1
     181             : 
     182             : #if CK5_ENABLED
     183             :     module procedure getStr_D0_CK5_SK
     184             :         use pm_kind, only: SKO => SK, CKC => CK5
     185             : #include "pm_val2str@routines.inc.F90"
     186             :     end procedure
     187             : #endif
     188             : 
     189             : #if CK4_ENABLED
     190        1909 :     module procedure getStr_D0_CK4_SK
     191             :         use pm_kind, only: SKO => SK, CKC => CK4
     192             : #include "pm_val2str@routines.inc.F90"
     193             :     end procedure
     194             : #endif
     195             : 
     196             : #if CK3_ENABLED
     197        1900 :     module procedure getStr_D0_CK3_SK
     198             :         use pm_kind, only: SKO => SK, CKC => CK3
     199             : #include "pm_val2str@routines.inc.F90"
     200             :     end procedure
     201             : #endif
     202             : 
     203             : #if CK2_ENABLED
     204        1906 :     module procedure getStr_D0_CK2_SK
     205             :         use pm_kind, only: SKO => SK, CKC => CK2
     206             : #include "pm_val2str@routines.inc.F90"
     207             :     end procedure
     208             : #endif
     209             : 
     210             : #if CK1_ENABLED
     211        1922 :     module procedure getStr_D0_CK1_SK
     212             :         use pm_kind, only: SKO => SK, CKC => CK1
     213             : #include "pm_val2str@routines.inc.F90"
     214             :     end procedure
     215             : #endif
     216             : 
     217             : #undef CK_ENABLED
     218             : 
     219             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     220             : 
     221             : #define RK_ENABLED 1
     222             : 
     223             : #if RK5_ENABLED
     224             :     module procedure getStr_D0_RK5_SK
     225             :         use pm_kind, only: SKO => SK, RKC => RK5
     226             : #include "pm_val2str@routines.inc.F90"
     227             :     end procedure
     228             : #endif
     229             : 
     230             : #if RK4_ENABLED
     231    42747419 :     module procedure getStr_D0_RK4_SK
     232             :         use pm_kind, only: SKO => SK, RKC => RK4
     233             : #include "pm_val2str@routines.inc.F90"
     234             :     end procedure
     235             : #endif
     236             : 
     237             : #if RK3_ENABLED
     238     4692005 :     module procedure getStr_D0_RK3_SK
     239             :         use pm_kind, only: SKO => SK, RKC => RK3
     240             : #include "pm_val2str@routines.inc.F90"
     241             :     end procedure
     242             : #endif
     243             : 
     244             : #if RK2_ENABLED
     245    11043950 :     module procedure getStr_D0_RK2_SK
     246             :         use pm_kind, only: SKO => SK, RKC => RK2
     247             : #include "pm_val2str@routines.inc.F90"
     248             :     end procedure
     249             : #endif
     250             : 
     251             : #if RK1_ENABLED
     252    16232400 :     module procedure getStr_D0_RK1_SK
     253             :         use pm_kind, only: SKO => SK, RKC => RK1
     254             : #include "pm_val2str@routines.inc.F90"
     255             :     end procedure
     256             : #endif
     257             : 
     258             : #undef RK_ENABLED
     259             : 
     260             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     261             : 
     262             : #define PSSK_ENABLED 1
     263             : 
     264             : #if SK5_ENABLED
     265             :     module procedure getStr_D0_PSSK5_SK
     266             :         use pm_kind, only: SKO => SK, SKC => SK5
     267             : #include "pm_val2str@routines.inc.F90"
     268             :     end procedure
     269             : #endif
     270             : 
     271             : #if SK4_ENABLED
     272             :     module procedure getStr_D0_PSSK4_SK
     273             :         use pm_kind, only: SKO => SK, SKC => SK4
     274             : #include "pm_val2str@routines.inc.F90"
     275             :     end procedure
     276             : #endif
     277             : 
     278             : #if SK3_ENABLED
     279             :     module procedure getStr_D0_PSSK3_SK
     280             :         use pm_kind, only: SKO => SK, SKC => SK3
     281             : #include "pm_val2str@routines.inc.F90"
     282             :     end procedure
     283             : #endif
     284             : 
     285             : #if SK2_ENABLED
     286             :     module procedure getStr_D0_PSSK2_SK
     287             :         use pm_kind, only: SKO => SK, SKC => SK2
     288             : #include "pm_val2str@routines.inc.F90"
     289             :     end procedure
     290             : #endif
     291             : 
     292             : #if SK1_ENABLED
     293           0 :     module procedure getStr_D0_PSSK1_SK
     294             :         use pm_kind, only: SKO => SK, SKC => SK1
     295             : #include "pm_val2str@routines.inc.F90"
     296           0 :     end procedure
     297             : #endif
     298             : 
     299             : #undef PSSK_ENABLED
     300             : 
     301             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     302             : 
     303             : #define BSSK_ENABLED 1
     304           0 :     module procedure getStr_D0_BSSK_SK
     305             :         use pm_kind, only: SKO => SK, SKC => SK
     306             : #include "pm_val2str@routines.inc.F90"
     307           0 :     end procedure
     308             : #undef BSSK_ENABLED
     309             : 
     310             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     311             : 
     312             : #undef D0_ENABLED
     313             : 
     314             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     315             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     316             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     317             : 
     318             : #define D1_ENABLED 1
     319             : 
     320             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     321             : 
     322             : #define SK_ENABLED 1
     323             : 
     324             : #if SK5_ENABLED
     325             :     module procedure getStr_D1_SK5_SK
     326             :         use pm_kind, only: SKO => SK, SKC => SK5
     327             : #include "pm_val2str@routines.inc.F90"
     328             :     end procedure
     329             : #endif
     330             : 
     331             : #if SK4_ENABLED
     332             :     module procedure getStr_D1_SK4_SK
     333             :         use pm_kind, only: SKO => SK, SKC => SK4
     334             : #include "pm_val2str@routines.inc.F90"
     335             :     end procedure
     336             : #endif
     337             : 
     338             : #if SK3_ENABLED
     339             :     module procedure getStr_D1_SK3_SK
     340             :         use pm_kind, only: SKO => SK, SKC => SK3
     341             : #include "pm_val2str@routines.inc.F90"
     342             :     end procedure
     343             : #endif
     344             : 
     345             : #if SK2_ENABLED
     346             :     module procedure getStr_D1_SK2_SK
     347             :         use pm_kind, only: SKO => SK, SKC => SK2
     348             : #include "pm_val2str@routines.inc.F90"
     349             :     end procedure
     350             : #endif
     351             : 
     352             : #if SK1_ENABLED
     353     1249435 :     module procedure getStr_D1_SK1_SK
     354             :         use pm_kind, only: SKO => SK, SKC => SK1
     355             : #include "pm_val2str@routines.inc.F90"
     356             :     end procedure
     357             : #endif
     358             : 
     359             : #undef SK_ENABLED
     360             : 
     361             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     362             : 
     363             : #define IK_ENABLED 1
     364             : 
     365             : #if IK5_ENABLED
     366     1057605 :     module procedure getStr_D1_IK5_SK
     367             :         use pm_kind, only: SKO => SK, IKC => IK5
     368             : #include "pm_val2str@routines.inc.F90"
     369             :     end procedure
     370             : #endif
     371             : 
     372             : #if IK4_ENABLED
     373     1056669 :     module procedure getStr_D1_IK4_SK
     374             :         use pm_kind, only: SKO => SK, IKC => IK4
     375             : #include "pm_val2str@routines.inc.F90"
     376             :     end procedure
     377             : #endif
     378             : 
     379             : #if IK3_ENABLED
     380    55012573 :     module procedure getStr_D1_IK3_SK
     381             :         use pm_kind, only: SKO => SK, IKC => IK3
     382             : #include "pm_val2str@routines.inc.F90"
     383             :     end procedure
     384             : #endif
     385             : 
     386             : #if IK2_ENABLED
     387     1037784 :     module procedure getStr_D1_IK2_SK
     388             :         use pm_kind, only: SKO => SK, IKC => IK2
     389             : #include "pm_val2str@routines.inc.F90"
     390             :     end procedure
     391             : #endif
     392             : 
     393             : #if IK1_ENABLED
     394     1060023 :     module procedure getStr_D1_IK1_SK
     395             :         use pm_kind, only: SKO => SK, IKC => IK1
     396             : #include "pm_val2str@routines.inc.F90"
     397             :     end procedure
     398             : #endif
     399             : 
     400             : #undef IK_ENABLED
     401             : 
     402             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     403             : 
     404             : #define LK_ENABLED 1
     405             : 
     406             : #if LK5_ENABLED
     407       10630 :     module procedure getStr_D1_LK5_SK
     408             :         use pm_kind, only: SKO => SK, LKC => LK5
     409             : #include "pm_val2str@routines.inc.F90"
     410             :     end procedure
     411             : #endif
     412             : 
     413             : #if LK4_ENABLED
     414       10736 :     module procedure getStr_D1_LK4_SK
     415             :         use pm_kind, only: SKO => SK, LKC => LK4
     416             : #include "pm_val2str@routines.inc.F90"
     417             :     end procedure
     418             : #endif
     419             : 
     420             : #if LK3_ENABLED
     421      756481 :     module procedure getStr_D1_LK3_SK
     422             :         use pm_kind, only: SKO => SK, LKC => LK3
     423             : #include "pm_val2str@routines.inc.F90"
     424             :     end procedure
     425             : #endif
     426             : 
     427             : #if LK2_ENABLED
     428        9742 :     module procedure getStr_D1_LK2_SK
     429             :         use pm_kind, only: SKO => SK, LKC => LK2
     430             : #include "pm_val2str@routines.inc.F90"
     431             :     end procedure
     432             : #endif
     433             : 
     434             : #if LK1_ENABLED
     435       10558 :     module procedure getStr_D1_LK1_SK
     436             :         use pm_kind, only: SKO => SK, LKC => LK1
     437             : #include "pm_val2str@routines.inc.F90"
     438             :     end procedure
     439             : #endif
     440             : 
     441             : #undef LK_ENABLED
     442             : 
     443             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     444             : 
     445             : #define CK_ENABLED 1
     446             : 
     447             : #if CK5_ENABLED
     448             :     module procedure getStr_D1_CK5_SK
     449             :         use pm_kind, only: SKO => SK, CKC => CK5
     450             : #include "pm_val2str@routines.inc.F90"
     451             :     end procedure
     452             : #endif
     453             : 
     454             : #if CK4_ENABLED
     455       26738 :     module procedure getStr_D1_CK4_SK
     456             :         use pm_kind, only: SKO => SK, CKC => CK4
     457             : #include "pm_val2str@routines.inc.F90"
     458             :     end procedure
     459             : #endif
     460             : 
     461             : #if CK3_ENABLED
     462       26117 :     module procedure getStr_D1_CK3_SK
     463             :         use pm_kind, only: SKO => SK, CKC => CK3
     464             : #include "pm_val2str@routines.inc.F90"
     465             :     end procedure
     466             : #endif
     467             : 
     468             : #if CK2_ENABLED
     469       26094 :     module procedure getStr_D1_CK2_SK
     470             :         use pm_kind, only: SKO => SK, CKC => CK2
     471             : #include "pm_val2str@routines.inc.F90"
     472             :     end procedure
     473             : #endif
     474             : 
     475             : #if CK1_ENABLED
     476       25447 :     module procedure getStr_D1_CK1_SK
     477             :         use pm_kind, only: SKO => SK, CKC => CK1
     478             : #include "pm_val2str@routines.inc.F90"
     479             :     end procedure
     480             : #endif
     481             : 
     482             : #undef CK_ENABLED
     483             : 
     484             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     485             : 
     486             : #define RK_ENABLED 1
     487             : 
     488             : #if RK5_ENABLED
     489             :     module procedure getStr_D1_RK5_SK
     490             :         use pm_kind, only: SKO => SK, RKC => RK5
     491             : #include "pm_val2str@routines.inc.F90"
     492             :     end procedure
     493             : #endif
     494             : 
     495             : #if RK4_ENABLED
     496    14021030 :     module procedure getStr_D1_RK4_SK
     497             :         use pm_kind, only: SKO => SK, RKC => RK4
     498             : #include "pm_val2str@routines.inc.F90"
     499             :     end procedure
     500             : #endif
     501             : 
     502             : #if RK3_ENABLED
     503     5639000 :     module procedure getStr_D1_RK3_SK
     504             :         use pm_kind, only: SKO => SK, RKC => RK3
     505             : #include "pm_val2str@routines.inc.F90"
     506             :     end procedure
     507             : #endif
     508             : 
     509             : #if RK2_ENABLED
     510    10595583 :     module procedure getStr_D1_RK2_SK
     511             :         use pm_kind, only: SKO => SK, RKC => RK2
     512             : #include "pm_val2str@routines.inc.F90"
     513             :     end procedure
     514             : #endif
     515             : 
     516             : #if RK1_ENABLED
     517     8267598 :     module procedure getStr_D1_RK1_SK
     518             :         use pm_kind, only: SKO => SK, RKC => RK1
     519             : #include "pm_val2str@routines.inc.F90"
     520             :     end procedure
     521             : #endif
     522             : 
     523             : #undef RK_ENABLED
     524             : 
     525             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     526             : 
     527             : #define PSSK_ENABLED 1
     528             : 
     529             : #if SK5_ENABLED
     530             :     module procedure getStr_D1_PSSK5_SK
     531             :         use pm_kind, only: SKO => SK, SKC => SK5
     532             : #include "pm_val2str@routines.inc.F90"
     533             :     end procedure
     534             : #endif
     535             : 
     536             : #if SK4_ENABLED
     537             :     module procedure getStr_D1_PSSK4_SK
     538             :         use pm_kind, only: SKO => SK, SKC => SK4
     539             : #include "pm_val2str@routines.inc.F90"
     540             :     end procedure
     541             : #endif
     542             : 
     543             : #if SK3_ENABLED
     544             :     module procedure getStr_D1_PSSK3_SK
     545             :         use pm_kind, only: SKO => SK, SKC => SK3
     546             : #include "pm_val2str@routines.inc.F90"
     547             :     end procedure
     548             : #endif
     549             : 
     550             : #if SK2_ENABLED
     551             :     module procedure getStr_D1_PSSK2_SK
     552             :         use pm_kind, only: SKO => SK, SKC => SK2
     553             : #include "pm_val2str@routines.inc.F90"
     554             :     end procedure
     555             : #endif
     556             : 
     557             : #if SK1_ENABLED
     558           0 :     module procedure getStr_D1_PSSK1_SK
     559             :         use pm_kind, only: SKO => SK, SKC => SK1
     560             : #include "pm_val2str@routines.inc.F90"
     561           0 :     end procedure
     562             : #endif
     563             : 
     564             : #undef PSSK_ENABLED
     565             : 
     566             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     567             : 
     568             : #define BSSK_ENABLED 1
     569          13 :     module procedure getStr_D1_BSSK_SK
     570             :         use pm_kind, only: SKO => SK, SKC => SK
     571             : #include "pm_val2str@routines.inc.F90"
     572          13 :     end procedure
     573             : #undef BSSK_ENABLED
     574             : 
     575             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     576             : 
     577             : #undef D1_ENABLED
     578             : 
     579             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     580             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     581             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     582             : 
     583             : #define D2_ENABLED 1
     584             : 
     585             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     586             : 
     587             : #define SK_ENABLED 1
     588             : 
     589             : #if SK5_ENABLED
     590             :     module procedure getStr_D2_SK5_SK
     591             :         use pm_kind, only: SKO => SK, SKC => SK5
     592             : #include "pm_val2str@routines.inc.F90"
     593             :     end procedure
     594             : #endif
     595             : 
     596             : #if SK4_ENABLED
     597             :     module procedure getStr_D2_SK4_SK
     598             :         use pm_kind, only: SKO => SK, SKC => SK4
     599             : #include "pm_val2str@routines.inc.F90"
     600             :     end procedure
     601             : #endif
     602             : 
     603             : #if SK3_ENABLED
     604             :     module procedure getStr_D2_SK3_SK
     605             :         use pm_kind, only: SKO => SK, SKC => SK3
     606             : #include "pm_val2str@routines.inc.F90"
     607             :     end procedure
     608             : #endif
     609             : 
     610             : #if SK2_ENABLED
     611             :     module procedure getStr_D2_SK2_SK
     612             :         use pm_kind, only: SKO => SK, SKC => SK2
     613             : #include "pm_val2str@routines.inc.F90"
     614             :     end procedure
     615             : #endif
     616             : 
     617             : #if SK1_ENABLED
     618           0 :     module procedure getStr_D2_SK1_SK
     619             :         use pm_kind, only: SKO => SK, SKC => SK1
     620             : #include "pm_val2str@routines.inc.F90"
     621             :     end procedure
     622             : #endif
     623             : 
     624             : #undef SK_ENABLED
     625             : 
     626             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     627             : 
     628             : #define IK_ENABLED 1
     629             : 
     630             : #if IK5_ENABLED
     631           0 :     module procedure getStr_D2_IK5_SK
     632             :         use pm_kind, only: SKO => SK, IKC => IK5
     633             : #include "pm_val2str@routines.inc.F90"
     634             :     end procedure
     635             : #endif
     636             : 
     637             : #if IK4_ENABLED
     638           0 :     module procedure getStr_D2_IK4_SK
     639             :         use pm_kind, only: SKO => SK, IKC => IK4
     640             : #include "pm_val2str@routines.inc.F90"
     641             :     end procedure
     642             : #endif
     643             : 
     644             : #if IK3_ENABLED
     645           0 :     module procedure getStr_D2_IK3_SK
     646             :         use pm_kind, only: SKO => SK, IKC => IK3
     647             : #include "pm_val2str@routines.inc.F90"
     648             :     end procedure
     649             : #endif
     650             : 
     651             : #if IK2_ENABLED
     652           0 :     module procedure getStr_D2_IK2_SK
     653             :         use pm_kind, only: SKO => SK, IKC => IK2
     654             : #include "pm_val2str@routines.inc.F90"
     655             :     end procedure
     656             : #endif
     657             : 
     658             : #if IK1_ENABLED
     659           0 :     module procedure getStr_D2_IK1_SK
     660             :         use pm_kind, only: SKO => SK, IKC => IK1
     661             : #include "pm_val2str@routines.inc.F90"
     662             :     end procedure
     663             : #endif
     664             : 
     665             : #undef IK_ENABLED
     666             : 
     667             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     668             : 
     669             : #define LK_ENABLED 1
     670             : 
     671             : #if LK5_ENABLED
     672           0 :     module procedure getStr_D2_LK5_SK
     673             :         use pm_kind, only: SKO => SK, LKC => LK5
     674             : #include "pm_val2str@routines.inc.F90"
     675             :     end procedure
     676             : #endif
     677             : 
     678             : #if LK4_ENABLED
     679           0 :     module procedure getStr_D2_LK4_SK
     680             :         use pm_kind, only: SKO => SK, LKC => LK4
     681             : #include "pm_val2str@routines.inc.F90"
     682             :     end procedure
     683             : #endif
     684             : 
     685             : #if LK3_ENABLED
     686           0 :     module procedure getStr_D2_LK3_SK
     687             :         use pm_kind, only: SKO => SK, LKC => LK3
     688             : #include "pm_val2str@routines.inc.F90"
     689             :     end procedure
     690             : #endif
     691             : 
     692             : #if LK2_ENABLED
     693           0 :     module procedure getStr_D2_LK2_SK
     694             :         use pm_kind, only: SKO => SK, LKC => LK2
     695             : #include "pm_val2str@routines.inc.F90"
     696             :     end procedure
     697             : #endif
     698             : 
     699             : #if LK1_ENABLED
     700           0 :     module procedure getStr_D2_LK1_SK
     701             :         use pm_kind, only: SKO => SK, LKC => LK1
     702             : #include "pm_val2str@routines.inc.F90"
     703             :     end procedure
     704             : #endif
     705             : 
     706             : #undef LK_ENABLED
     707             : 
     708             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     709             : 
     710             : #define CK_ENABLED 1
     711             : 
     712             : #if CK5_ENABLED
     713             :     module procedure getStr_D2_CK5_SK
     714             :         use pm_kind, only: SKO => SK, CKC => CK5
     715             : #include "pm_val2str@routines.inc.F90"
     716             :     end procedure
     717             : #endif
     718             : 
     719             : #if CK4_ENABLED
     720        3420 :     module procedure getStr_D2_CK4_SK
     721             :         use pm_kind, only: SKO => SK, CKC => CK4
     722             : #include "pm_val2str@routines.inc.F90"
     723             :     end procedure
     724             : #endif
     725             : 
     726             : #if CK3_ENABLED
     727        2979 :     module procedure getStr_D2_CK3_SK
     728             :         use pm_kind, only: SKO => SK, CKC => CK3
     729             : #include "pm_val2str@routines.inc.F90"
     730             :     end procedure
     731             : #endif
     732             : 
     733             : #if CK2_ENABLED
     734        3378 :     module procedure getStr_D2_CK2_SK
     735             :         use pm_kind, only: SKO => SK, CKC => CK2
     736             : #include "pm_val2str@routines.inc.F90"
     737             :     end procedure
     738             : #endif
     739             : 
     740             : #if CK1_ENABLED
     741        3098 :     module procedure getStr_D2_CK1_SK
     742             :         use pm_kind, only: SKO => SK, CKC => CK1
     743             : #include "pm_val2str@routines.inc.F90"
     744             :     end procedure
     745             : #endif
     746             : 
     747             : #undef CK_ENABLED
     748             : 
     749             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     750             : 
     751             : #define RK_ENABLED 1
     752             : 
     753             : #if RK5_ENABLED
     754             :     module procedure getStr_D2_RK5_SK
     755             :         use pm_kind, only: SKO => SK, RKC => RK5
     756             : #include "pm_val2str@routines.inc.F90"
     757             :     end procedure
     758             : #endif
     759             : 
     760             : #if RK4_ENABLED
     761        3033 :     module procedure getStr_D2_RK4_SK
     762             :         use pm_kind, only: SKO => SK, RKC => RK4
     763             : #include "pm_val2str@routines.inc.F90"
     764             :     end procedure
     765             : #endif
     766             : 
     767             : #if RK3_ENABLED
     768        3375 :     module procedure getStr_D2_RK3_SK
     769             :         use pm_kind, only: SKO => SK, RKC => RK3
     770             : #include "pm_val2str@routines.inc.F90"
     771             :     end procedure
     772             : #endif
     773             : 
     774             : #if RK2_ENABLED
     775     1409567 :     module procedure getStr_D2_RK2_SK
     776             :         use pm_kind, only: SKO => SK, RKC => RK2
     777             : #include "pm_val2str@routines.inc.F90"
     778             :     end procedure
     779             : #endif
     780             : 
     781             : #if RK1_ENABLED
     782       17865 :     module procedure getStr_D2_RK1_SK
     783             :         use pm_kind, only: SKO => SK, RKC => RK1
     784             : #include "pm_val2str@routines.inc.F90"
     785             :     end procedure
     786             : #endif
     787             : 
     788             : #undef RK_ENABLED
     789             : 
     790             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     791             : 
     792             : #define PSSK_ENABLED 1
     793             : 
     794             : #if SK5_ENABLED
     795             :     module procedure getStr_D2_PSSK5_SK
     796             :         use pm_kind, only: SKO => SK, SKC => SK5
     797             : #include "pm_val2str@routines.inc.F90"
     798             :     end procedure
     799             : #endif
     800             : 
     801             : #if SK4_ENABLED
     802             :     module procedure getStr_D2_PSSK4_SK
     803             :         use pm_kind, only: SKO => SK, SKC => SK4
     804             : #include "pm_val2str@routines.inc.F90"
     805             :     end procedure
     806             : #endif
     807             : 
     808             : #if SK3_ENABLED
     809             :     module procedure getStr_D2_PSSK3_SK
     810             :         use pm_kind, only: SKO => SK, SKC => SK3
     811             : #include "pm_val2str@routines.inc.F90"
     812             :     end procedure
     813             : #endif
     814             : 
     815             : #if SK2_ENABLED
     816             :     module procedure getStr_D2_PSSK2_SK
     817             :         use pm_kind, only: SKO => SK, SKC => SK2
     818             : #include "pm_val2str@routines.inc.F90"
     819             :     end procedure
     820             : #endif
     821             : 
     822             : #if SK1_ENABLED
     823           0 :     module procedure getStr_D2_PSSK1_SK
     824             :         use pm_kind, only: SKO => SK, SKC => SK1
     825             : #include "pm_val2str@routines.inc.F90"
     826           0 :     end procedure
     827             : #endif
     828             : 
     829             : #undef PSSK_ENABLED
     830             : 
     831             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     832             : 
     833             : #define BSSK_ENABLED 1
     834           0 :     module procedure getStr_D2_BSSK_SK
     835             :         use pm_kind, only: SKO => SK, SKC => SK
     836             : #include "pm_val2str@routines.inc.F90"
     837           0 :     end procedure
     838             : #undef BSSK_ENABLED
     839             : 
     840             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     841             : 
     842             : #undef D2_ENABLED
     843             : 
     844             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     845             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     846             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     847             : 
     848             : #undef getStr_ENABLED
     849             : 
     850             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     851             : 
     852             : #define setStr_ENABLED 1
     853             : 
     854             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     855             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     856             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     857             : 
     858             : #define D0_ENABLED 1
     859             : 
     860             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     861             : 
     862             : #define SK_ENABLED 1
     863             : 
     864             : #if SK1_ENABLED && SK5_ENABLED
     865             :     module procedure setStr_D0_SK5_SK1
     866             :         use pm_kind, only: SKO => SK1, SKC => SK5
     867             : #include "pm_val2str@routines.inc.F90"
     868             :     end procedure
     869             : #endif
     870             : 
     871             : #if SK1_ENABLED && SK4_ENABLED
     872             :     module procedure setStr_D0_SK4_SK1
     873             :         use pm_kind, only: SKO => SK1, SKC => SK4
     874             : #include "pm_val2str@routines.inc.F90"
     875             :     end procedure
     876             : #endif
     877             : 
     878             : #if SK1_ENABLED && SK3_ENABLED
     879             :     module procedure setStr_D0_SK3_SK1
     880             :         use pm_kind, only: SKO => SK1, SKC => SK3
     881             : #include "pm_val2str@routines.inc.F90"
     882             :     end procedure
     883             : #endif
     884             : 
     885             : #if SK1_ENABLED && SK2_ENABLED
     886             :     module procedure setStr_D0_SK2_SK1
     887             :         use pm_kind, only: SKO => SK1, SKC => SK2
     888             : #include "pm_val2str@routines.inc.F90"
     889             :     end procedure
     890             : #endif
     891             : 
     892             : #if SK1_ENABLED && SK1_ENABLED
     893           3 :     module procedure setStr_D0_SK1_SK1
     894             :         use pm_kind, only: SKO => SK1, SKC => SK1
     895             : #include "pm_val2str@routines.inc.F90"
     896             :     end procedure
     897             : #endif
     898             : 
     899             : #undef SK_ENABLED
     900             : 
     901             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     902             : 
     903             : #define SK_ENABLED 1
     904             : 
     905             : #if SK2_ENABLED && SK5_ENABLED
     906             :     module procedure setStr_D0_SK5_SK2
     907             :         use pm_kind, only: SKO => SK2, SKC => SK5
     908             : #include "pm_val2str@routines.inc.F90"
     909             :     end procedure
     910             : #endif
     911             : 
     912             : #if SK2_ENABLED && SK4_ENABLED
     913             :     module procedure setStr_D0_SK4_SK2
     914             :         use pm_kind, only: SKO => SK2, SKC => SK4
     915             : #include "pm_val2str@routines.inc.F90"
     916             :     end procedure
     917             : #endif
     918             : 
     919             : #if SK2_ENABLED && SK3_ENABLED
     920             :     module procedure setStr_D0_SK3_SK2
     921             :         use pm_kind, only: SKO => SK2, SKC => SK3
     922             : #include "pm_val2str@routines.inc.F90"
     923             :     end procedure
     924             : #endif
     925             : 
     926             : #if SK2_ENABLED && SK2_ENABLED
     927             :     module procedure setStr_D0_SK2_SK2
     928             :         use pm_kind, only: SKO => SK2, SKC => SK2
     929             : #include "pm_val2str@routines.inc.F90"
     930             :     end procedure
     931             : #endif
     932             : 
     933             : #if SK2_ENABLED && SK1_ENABLED
     934             :     module procedure setStr_D0_SK1_SK2
     935             :         use pm_kind, only: SKO => SK2, SKC => SK1
     936             : #include "pm_val2str@routines.inc.F90"
     937             :     end procedure
     938             : #endif
     939             : 
     940             : #undef SK_ENABLED
     941             : 
     942             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     943             : 
     944             : #define SK_ENABLED 1
     945             : 
     946             : #if SK3_ENABLED && SK5_ENABLED
     947             :     module procedure setStr_D0_SK5_SK3
     948             :         use pm_kind, only: SKO => SK3, SKC => SK5
     949             : #include "pm_val2str@routines.inc.F90"
     950             :     end procedure
     951             : #endif
     952             : 
     953             : #if SK3_ENABLED && SK4_ENABLED
     954             :     module procedure setStr_D0_SK4_SK3
     955             :         use pm_kind, only: SKO => SK3, SKC => SK4
     956             : #include "pm_val2str@routines.inc.F90"
     957             :     end procedure
     958             : #endif
     959             : 
     960             : #if SK3_ENABLED && SK3_ENABLED
     961             :     module procedure setStr_D0_SK3_SK3
     962             :         use pm_kind, only: SKO => SK3, SKC => SK3
     963             : #include "pm_val2str@routines.inc.F90"
     964             :     end procedure
     965             : #endif
     966             : 
     967             : #if SK3_ENABLED && SK2_ENABLED
     968             :     module procedure setStr_D0_SK2_SK3
     969             :         use pm_kind, only: SKO => SK3, SKC => SK2
     970             : #include "pm_val2str@routines.inc.F90"
     971             :     end procedure
     972             : #endif
     973             : 
     974             : #if SK3_ENABLED && SK1_ENABLED
     975             :     module procedure setStr_D0_SK1_SK3
     976             :         use pm_kind, only: SKO => SK3, SKC => SK1
     977             : #include "pm_val2str@routines.inc.F90"
     978             :     end procedure
     979             : #endif
     980             : 
     981             : #undef SK_ENABLED
     982             : 
     983             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     984             : 
     985             : #define SK_ENABLED 1
     986             : 
     987             : #if SK4_ENABLED && SK5_ENABLED
     988             :     module procedure setStr_D0_SK5_SK4
     989             :         use pm_kind, only: SKO => SK4, SKC => SK5
     990             : #include "pm_val2str@routines.inc.F90"
     991             :     end procedure
     992             : #endif
     993             : 
     994             : #if SK4_ENABLED && SK4_ENABLED
     995             :     module procedure setStr_D0_SK4_SK4
     996             :         use pm_kind, only: SKO => SK4, SKC => SK4
     997             : #include "pm_val2str@routines.inc.F90"
     998             :     end procedure
     999             : #endif
    1000             : 
    1001             : #if SK4_ENABLED && SK3_ENABLED
    1002             :     module procedure setStr_D0_SK3_SK4
    1003             :         use pm_kind, only: SKO => SK4, SKC => SK3
    1004             : #include "pm_val2str@routines.inc.F90"
    1005             :     end procedure
    1006             : #endif
    1007             : 
    1008             : #if SK4_ENABLED && SK2_ENABLED
    1009             :     module procedure setStr_D0_SK2_SK4
    1010             :         use pm_kind, only: SKO => SK4, SKC => SK2
    1011             : #include "pm_val2str@routines.inc.F90"
    1012             :     end procedure
    1013             : #endif
    1014             : 
    1015             : #if SK4_ENABLED && SK1_ENABLED
    1016             :     module procedure setStr_D0_SK1_SK4
    1017             :         use pm_kind, only: SKO => SK4, SKC => SK1
    1018             : #include "pm_val2str@routines.inc.F90"
    1019             :     end procedure
    1020             : #endif
    1021             : 
    1022             : #undef SK_ENABLED
    1023             : 
    1024             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1025             : 
    1026             : #define SK_ENABLED 1
    1027             : 
    1028             : #if SK5_ENABLED && SK5_ENABLED
    1029             :     module procedure setStr_D0_SK5_SK5
    1030             :         use pm_kind, only: SKO => SK5, SKC => SK5
    1031             : #include "pm_val2str@routines.inc.F90"
    1032             :     end procedure
    1033             : #endif
    1034             : 
    1035             : #if SK5_ENABLED && SK4_ENABLED
    1036             :     module procedure setStr_D0_SK4_SK5
    1037             :         use pm_kind, only: SKO => SK5, SKC => SK4
    1038             : #include "pm_val2str@routines.inc.F90"
    1039             :     end procedure
    1040             : #endif
    1041             : 
    1042             : #if SK5_ENABLED && SK3_ENABLED
    1043             :     module procedure setStr_D0_SK3_SK5
    1044             :         use pm_kind, only: SKO => SK5, SKC => SK3
    1045             : #include "pm_val2str@routines.inc.F90"
    1046             :     end procedure
    1047             : #endif
    1048             : 
    1049             : #if SK5_ENABLED && SK2_ENABLED
    1050             :     module procedure setStr_D0_SK2_SK5
    1051             :         use pm_kind, only: SKO => SK5, SKC => SK2
    1052             : #include "pm_val2str@routines.inc.F90"
    1053             :     end procedure
    1054             : #endif
    1055             : 
    1056             : #if SK5_ENABLED && SK1_ENABLED
    1057             :     module procedure setStr_D0_SK1_SK5
    1058             :         use pm_kind, only: SKO => SK5, SKC => SK1
    1059             : #include "pm_val2str@routines.inc.F90"
    1060             :     end procedure
    1061             : #endif
    1062             : 
    1063             : #undef SK_ENABLED
    1064             : 
    1065             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1066             : 
    1067             : #define IK_ENABLED 1
    1068             : 
    1069             : #if SK1_ENABLED && IK5_ENABLED
    1070           1 :     module procedure setStr_D0_IK5_SK1
    1071             :         use pm_kind, only: SKO => SK1, IKC => IK5
    1072             : #include "pm_val2str@routines.inc.F90"
    1073             :     end procedure
    1074             : #endif
    1075             : 
    1076             : #if SK1_ENABLED && IK4_ENABLED
    1077           2 :     module procedure setStr_D0_IK4_SK1
    1078             :         use pm_kind, only: SKO => SK1, IKC => IK4
    1079             : #include "pm_val2str@routines.inc.F90"
    1080             :     end procedure
    1081             : #endif
    1082             : 
    1083             : #if SK1_ENABLED && IK3_ENABLED
    1084           1 :     module procedure setStr_D0_IK3_SK1
    1085             :         use pm_kind, only: SKO => SK1, IKC => IK3
    1086             : #include "pm_val2str@routines.inc.F90"
    1087             :     end procedure
    1088             : #endif
    1089             : 
    1090             : #if SK1_ENABLED && IK2_ENABLED
    1091           0 :     module procedure setStr_D0_IK2_SK1
    1092             :         use pm_kind, only: SKO => SK1, IKC => IK2
    1093             : #include "pm_val2str@routines.inc.F90"
    1094             :     end procedure
    1095             : #endif
    1096             : 
    1097             : #if SK1_ENABLED && IK1_ENABLED
    1098           1 :     module procedure setStr_D0_IK1_SK1
    1099             :         use pm_kind, only: SKO => SK1, IKC => IK1
    1100             : #include "pm_val2str@routines.inc.F90"
    1101             :     end procedure
    1102             : #endif
    1103             : 
    1104             : #undef IK_ENABLED
    1105             : 
    1106             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1107             : 
    1108             : #define IK_ENABLED 1
    1109             : 
    1110             : #if SK2_ENABLED && IK5_ENABLED
    1111             :     module procedure setStr_D0_IK5_SK2
    1112             :         use pm_kind, only: SKO => SK2, IKC => IK5
    1113             : #include "pm_val2str@routines.inc.F90"
    1114             :     end procedure
    1115             : #endif
    1116             : 
    1117             : #if SK2_ENABLED && IK4_ENABLED
    1118             :     module procedure setStr_D0_IK4_SK2
    1119             :         use pm_kind, only: SKO => SK2, IKC => IK4
    1120             : #include "pm_val2str@routines.inc.F90"
    1121             :     end procedure
    1122             : #endif
    1123             : 
    1124             : #if SK2_ENABLED && IK3_ENABLED
    1125             :     module procedure setStr_D0_IK3_SK2
    1126             :         use pm_kind, only: SKO => SK2, IKC => IK3
    1127             : #include "pm_val2str@routines.inc.F90"
    1128             :     end procedure
    1129             : #endif
    1130             : 
    1131             : #if SK2_ENABLED && IK2_ENABLED
    1132             :     module procedure setStr_D0_IK2_SK2
    1133             :         use pm_kind, only: SKO => SK2, IKC => IK2
    1134             : #include "pm_val2str@routines.inc.F90"
    1135             :     end procedure
    1136             : #endif
    1137             : 
    1138             : #if SK2_ENABLED && IK1_ENABLED
    1139             :     module procedure setStr_D0_IK1_SK2
    1140             :         use pm_kind, only: SKO => SK2, IKC => IK1
    1141             : #include "pm_val2str@routines.inc.F90"
    1142             :     end procedure
    1143             : #endif
    1144             : 
    1145             : #undef IK_ENABLED
    1146             : 
    1147             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1148             : 
    1149             : #define IK_ENABLED 1
    1150             : 
    1151             : #if SK3_ENABLED && IK5_ENABLED
    1152             :     module procedure setStr_D0_IK5_SK3
    1153             :         use pm_kind, only: SKO => SK3, IKC => IK5
    1154             : #include "pm_val2str@routines.inc.F90"
    1155             :     end procedure
    1156             : #endif
    1157             : 
    1158             : #if SK3_ENABLED && IK4_ENABLED
    1159             :     module procedure setStr_D0_IK4_SK3
    1160             :         use pm_kind, only: SKO => SK3, IKC => IK4
    1161             : #include "pm_val2str@routines.inc.F90"
    1162             :     end procedure
    1163             : #endif
    1164             : 
    1165             : #if SK3_ENABLED && IK3_ENABLED
    1166             :     module procedure setStr_D0_IK3_SK3
    1167             :         use pm_kind, only: SKO => SK3, IKC => IK3
    1168             : #include "pm_val2str@routines.inc.F90"
    1169             :     end procedure
    1170             : #endif
    1171             : 
    1172             : #if SK3_ENABLED && IK2_ENABLED
    1173             :     module procedure setStr_D0_IK2_SK3
    1174             :         use pm_kind, only: SKO => SK3, IKC => IK2
    1175             : #include "pm_val2str@routines.inc.F90"
    1176             :     end procedure
    1177             : #endif
    1178             : 
    1179             : #if SK3_ENABLED && IK1_ENABLED
    1180             :     module procedure setStr_D0_IK1_SK3
    1181             :         use pm_kind, only: SKO => SK3, IKC => IK1
    1182             : #include "pm_val2str@routines.inc.F90"
    1183             :     end procedure
    1184             : #endif
    1185             : 
    1186             : #undef IK_ENABLED
    1187             : 
    1188             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1189             : 
    1190             : #define IK_ENABLED 1
    1191             : 
    1192             : #if SK4_ENABLED && IK5_ENABLED
    1193             :     module procedure setStr_D0_IK5_SK4
    1194             :         use pm_kind, only: SKO => SK4, IKC => IK5
    1195             : #include "pm_val2str@routines.inc.F90"
    1196             :     end procedure
    1197             : #endif
    1198             : 
    1199             : #if SK4_ENABLED && IK4_ENABLED
    1200             :     module procedure setStr_D0_IK4_SK4
    1201             :         use pm_kind, only: SKO => SK4, IKC => IK4
    1202             : #include "pm_val2str@routines.inc.F90"
    1203             :     end procedure
    1204             : #endif
    1205             : 
    1206             : #if SK4_ENABLED && IK3_ENABLED
    1207             :     module procedure setStr_D0_IK3_SK4
    1208             :         use pm_kind, only: SKO => SK4, IKC => IK3
    1209             : #include "pm_val2str@routines.inc.F90"
    1210             :     end procedure
    1211             : #endif
    1212             : 
    1213             : #if SK4_ENABLED && IK2_ENABLED
    1214             :     module procedure setStr_D0_IK2_SK4
    1215             :         use pm_kind, only: SKO => SK4, IKC => IK2
    1216             : #include "pm_val2str@routines.inc.F90"
    1217             :     end procedure
    1218             : #endif
    1219             : 
    1220             : #if SK4_ENABLED && IK1_ENABLED
    1221             :     module procedure setStr_D0_IK1_SK4
    1222             :         use pm_kind, only: SKO => SK4, IKC => IK1
    1223             : #include "pm_val2str@routines.inc.F90"
    1224             :     end procedure
    1225             : #endif
    1226             : 
    1227             : #undef IK_ENABLED
    1228             : 
    1229             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1230             : 
    1231             : #define IK_ENABLED 1
    1232             : 
    1233             : #if SK5_ENABLED && IK5_ENABLED
    1234             :     module procedure setStr_D0_IK5_SK5
    1235             :         use pm_kind, only: SKO => SK5, IKC => IK5
    1236             : #include "pm_val2str@routines.inc.F90"
    1237             :     end procedure
    1238             : #endif
    1239             : 
    1240             : #if SK5_ENABLED && IK4_ENABLED
    1241             :     module procedure setStr_D0_IK4_SK5
    1242             :         use pm_kind, only: SKO => SK5, IKC => IK4
    1243             : #include "pm_val2str@routines.inc.F90"
    1244             :     end procedure
    1245             : #endif
    1246             : 
    1247             : #if SK5_ENABLED && IK3_ENABLED
    1248             :     module procedure setStr_D0_IK3_SK5
    1249             :         use pm_kind, only: SKO => SK5, IKC => IK3
    1250             : #include "pm_val2str@routines.inc.F90"
    1251             :     end procedure
    1252             : #endif
    1253             : 
    1254             : #if SK5_ENABLED && IK2_ENABLED
    1255             :     module procedure setStr_D0_IK2_SK5
    1256             :         use pm_kind, only: SKO => SK5, IKC => IK2
    1257             : #include "pm_val2str@routines.inc.F90"
    1258             :     end procedure
    1259             : #endif
    1260             : 
    1261             : #if SK5_ENABLED && IK1_ENABLED
    1262             :     module procedure setStr_D0_IK1_SK5
    1263             :         use pm_kind, only: SKO => SK5, IKC => IK1
    1264             : #include "pm_val2str@routines.inc.F90"
    1265             :     end procedure
    1266             : #endif
    1267             : 
    1268             : #undef IK_ENABLED
    1269             : 
    1270             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1271             : 
    1272             : #define LK_ENABLED 1
    1273             : 
    1274             : #if SK1_ENABLED && LK5_ENABLED
    1275           0 :     module procedure setStr_D0_LK5_SK1
    1276             :         use pm_kind, only: SKO => SK1, LKC => LK5
    1277             : #include "pm_val2str@routines.inc.F90"
    1278             :     end procedure
    1279             : #endif
    1280             : 
    1281             : #if SK1_ENABLED && LK4_ENABLED
    1282           0 :     module procedure setStr_D0_LK4_SK1
    1283             :         use pm_kind, only: SKO => SK1, LKC => LK4
    1284             : #include "pm_val2str@routines.inc.F90"
    1285             :     end procedure
    1286             : #endif
    1287             : 
    1288             : #if SK1_ENABLED && LK3_ENABLED
    1289           2 :     module procedure setStr_D0_LK3_SK1
    1290             :         use pm_kind, only: SKO => SK1, LKC => LK3
    1291             : #include "pm_val2str@routines.inc.F90"
    1292             :     end procedure
    1293             : #endif
    1294             : 
    1295             : #if SK1_ENABLED && LK2_ENABLED
    1296           0 :     module procedure setStr_D0_LK2_SK1
    1297             :         use pm_kind, only: SKO => SK1, LKC => LK2
    1298             : #include "pm_val2str@routines.inc.F90"
    1299             :     end procedure
    1300             : #endif
    1301             : 
    1302             : #if SK1_ENABLED && LK1_ENABLED
    1303           0 :     module procedure setStr_D0_LK1_SK1
    1304             :         use pm_kind, only: SKO => SK1, LKC => LK1
    1305             : #include "pm_val2str@routines.inc.F90"
    1306             :     end procedure
    1307             : #endif
    1308             : 
    1309             : #undef LK_ENABLED
    1310             : 
    1311             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1312             : 
    1313             : #define LK_ENABLED 1
    1314             : 
    1315             : #if SK2_ENABLED && LK5_ENABLED
    1316             :     module procedure setStr_D0_LK5_SK2
    1317             :         use pm_kind, only: SKO => SK2, LKC => LK5
    1318             : #include "pm_val2str@routines.inc.F90"
    1319             :     end procedure
    1320             : #endif
    1321             : 
    1322             : #if SK2_ENABLED && LK4_ENABLED
    1323             :     module procedure setStr_D0_LK4_SK2
    1324             :         use pm_kind, only: SKO => SK2, LKC => LK4
    1325             : #include "pm_val2str@routines.inc.F90"
    1326             :     end procedure
    1327             : #endif
    1328             : 
    1329             : #if SK2_ENABLED && LK3_ENABLED
    1330             :     module procedure setStr_D0_LK3_SK2
    1331             :         use pm_kind, only: SKO => SK2, LKC => LK3
    1332             : #include "pm_val2str@routines.inc.F90"
    1333             :     end procedure
    1334             : #endif
    1335             : 
    1336             : #if SK2_ENABLED && LK2_ENABLED
    1337             :     module procedure setStr_D0_LK2_SK2
    1338             :         use pm_kind, only: SKO => SK2, LKC => LK2
    1339             : #include "pm_val2str@routines.inc.F90"
    1340             :     end procedure
    1341             : #endif
    1342             : 
    1343             : #if SK2_ENABLED && LK1_ENABLED
    1344             :     module procedure setStr_D0_LK1_SK2
    1345             :         use pm_kind, only: SKO => SK2, LKC => LK1
    1346             : #include "pm_val2str@routines.inc.F90"
    1347             :     end procedure
    1348             : #endif
    1349             : 
    1350             : #undef LK_ENABLED
    1351             : 
    1352             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1353             : 
    1354             : #define LK_ENABLED 1
    1355             : 
    1356             : #if SK3_ENABLED && LK5_ENABLED
    1357             :     module procedure setStr_D0_LK5_SK3
    1358             :         use pm_kind, only: SKO => SK3, LKC => LK5
    1359             : #include "pm_val2str@routines.inc.F90"
    1360             :     end procedure
    1361             : #endif
    1362             : 
    1363             : #if SK3_ENABLED && LK4_ENABLED
    1364             :     module procedure setStr_D0_LK4_SK3
    1365             :         use pm_kind, only: SKO => SK3, LKC => LK4
    1366             : #include "pm_val2str@routines.inc.F90"
    1367             :     end procedure
    1368             : #endif
    1369             : 
    1370             : #if SK3_ENABLED && LK3_ENABLED
    1371             :     module procedure setStr_D0_LK3_SK3
    1372             :         use pm_kind, only: SKO => SK3, LKC => LK3
    1373             : #include "pm_val2str@routines.inc.F90"
    1374             :     end procedure
    1375             : #endif
    1376             : 
    1377             : #if SK3_ENABLED && LK2_ENABLED
    1378             :     module procedure setStr_D0_LK2_SK3
    1379             :         use pm_kind, only: SKO => SK3, LKC => LK2
    1380             : #include "pm_val2str@routines.inc.F90"
    1381             :     end procedure
    1382             : #endif
    1383             : 
    1384             : #if SK3_ENABLED && LK1_ENABLED
    1385             :     module procedure setStr_D0_LK1_SK3
    1386             :         use pm_kind, only: SKO => SK3, LKC => LK1
    1387             : #include "pm_val2str@routines.inc.F90"
    1388             :     end procedure
    1389             : #endif
    1390             : 
    1391             : #undef LK_ENABLED
    1392             : 
    1393             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1394             : 
    1395             : #define LK_ENABLED 1
    1396             : 
    1397             : #if SK4_ENABLED && LK5_ENABLED
    1398             :     module procedure setStr_D0_LK5_SK4
    1399             :         use pm_kind, only: SKO => SK4, LKC => LK5
    1400             : #include "pm_val2str@routines.inc.F90"
    1401             :     end procedure
    1402             : #endif
    1403             : 
    1404             : #if SK4_ENABLED && LK4_ENABLED
    1405             :     module procedure setStr_D0_LK4_SK4
    1406             :         use pm_kind, only: SKO => SK4, LKC => LK4
    1407             : #include "pm_val2str@routines.inc.F90"
    1408             :     end procedure
    1409             : #endif
    1410             : 
    1411             : #if SK4_ENABLED && LK3_ENABLED
    1412             :     module procedure setStr_D0_LK3_SK4
    1413             :         use pm_kind, only: SKO => SK4, LKC => LK3
    1414             : #include "pm_val2str@routines.inc.F90"
    1415             :     end procedure
    1416             : #endif
    1417             : 
    1418             : #if SK4_ENABLED && LK2_ENABLED
    1419             :     module procedure setStr_D0_LK2_SK4
    1420             :         use pm_kind, only: SKO => SK4, LKC => LK2
    1421             : #include "pm_val2str@routines.inc.F90"
    1422             :     end procedure
    1423             : #endif
    1424             : 
    1425             : #if SK4_ENABLED && LK1_ENABLED
    1426             :     module procedure setStr_D0_LK1_SK4
    1427             :         use pm_kind, only: SKO => SK4, LKC => LK1
    1428             : #include "pm_val2str@routines.inc.F90"
    1429             :     end procedure
    1430             : #endif
    1431             : 
    1432             : #undef LK_ENABLED
    1433             : 
    1434             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1435             : 
    1436             : #define LK_ENABLED 1
    1437             : 
    1438             : #if SK5_ENABLED && LK5_ENABLED
    1439             :     module procedure setStr_D0_LK5_SK5
    1440             :         use pm_kind, only: SKO => SK5, LKC => LK5
    1441             : #include "pm_val2str@routines.inc.F90"
    1442             :     end procedure
    1443             : #endif
    1444             : 
    1445             : #if SK5_ENABLED && LK4_ENABLED
    1446             :     module procedure setStr_D0_LK4_SK5
    1447             :         use pm_kind, only: SKO => SK5, LKC => LK4
    1448             : #include "pm_val2str@routines.inc.F90"
    1449             :     end procedure
    1450             : #endif
    1451             : 
    1452             : #if SK5_ENABLED && LK3_ENABLED
    1453             :     module procedure setStr_D0_LK3_SK5
    1454             :         use pm_kind, only: SKO => SK5, LKC => LK3
    1455             : #include "pm_val2str@routines.inc.F90"
    1456             :     end procedure
    1457             : #endif
    1458             : 
    1459             : #if SK5_ENABLED && LK2_ENABLED
    1460             :     module procedure setStr_D0_LK2_SK5
    1461             :         use pm_kind, only: SKO => SK5, LKC => LK2
    1462             : #include "pm_val2str@routines.inc.F90"
    1463             :     end procedure
    1464             : #endif
    1465             : 
    1466             : #if SK5_ENABLED && LK1_ENABLED
    1467             :     module procedure setStr_D0_LK1_SK5
    1468             :         use pm_kind, only: SKO => SK5, LKC => LK1
    1469             : #include "pm_val2str@routines.inc.F90"
    1470             :     end procedure
    1471             : #endif
    1472             : 
    1473             : #undef LK_ENABLED
    1474             : 
    1475             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1476             : 
    1477             : #define CK_ENABLED 1
    1478             : 
    1479             : #if SK1_ENABLED && CK5_ENABLED
    1480             :     module procedure setStr_D0_CK5_SK1
    1481             :         use pm_kind, only: SKO => SK1, CKC => CK5
    1482             : #include "pm_val2str@routines.inc.F90"
    1483             :     end procedure
    1484             : #endif
    1485             : 
    1486             : #if SK1_ENABLED && CK4_ENABLED
    1487           1 :     module procedure setStr_D0_CK4_SK1
    1488             :         use pm_kind, only: SKO => SK1, CKC => CK4
    1489             : #include "pm_val2str@routines.inc.F90"
    1490             :     end procedure
    1491             : #endif
    1492             : 
    1493             : #if SK1_ENABLED && CK3_ENABLED
    1494           0 :     module procedure setStr_D0_CK3_SK1
    1495             :         use pm_kind, only: SKO => SK1, CKC => CK3
    1496             : #include "pm_val2str@routines.inc.F90"
    1497             :     end procedure
    1498             : #endif
    1499             : 
    1500             : #if SK1_ENABLED && CK2_ENABLED
    1501           0 :     module procedure setStr_D0_CK2_SK1
    1502             :         use pm_kind, only: SKO => SK1, CKC => CK2
    1503             : #include "pm_val2str@routines.inc.F90"
    1504             :     end procedure
    1505             : #endif
    1506             : 
    1507             : #if SK1_ENABLED && CK1_ENABLED
    1508           0 :     module procedure setStr_D0_CK1_SK1
    1509             :         use pm_kind, only: SKO => SK1, CKC => CK1
    1510             : #include "pm_val2str@routines.inc.F90"
    1511             :     end procedure
    1512             : #endif
    1513             : 
    1514             : #undef CK_ENABLED
    1515             : 
    1516             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1517             : 
    1518             : #define CK_ENABLED 1
    1519             : 
    1520             : #if SK2_ENABLED && CK5_ENABLED
    1521             :     module procedure setStr_D0_CK5_SK2
    1522             :         use pm_kind, only: SKO => SK2, CKC => CK5
    1523             : #include "pm_val2str@routines.inc.F90"
    1524             :     end procedure
    1525             : #endif
    1526             : 
    1527             : #if SK2_ENABLED && CK4_ENABLED
    1528             :     module procedure setStr_D0_CK4_SK2
    1529             :         use pm_kind, only: SKO => SK2, CKC => CK4
    1530             : #include "pm_val2str@routines.inc.F90"
    1531             :     end procedure
    1532             : #endif
    1533             : 
    1534             : #if SK2_ENABLED && CK3_ENABLED
    1535             :     module procedure setStr_D0_CK3_SK2
    1536             :         use pm_kind, only: SKO => SK2, CKC => CK3
    1537             : #include "pm_val2str@routines.inc.F90"
    1538             :     end procedure
    1539             : #endif
    1540             : 
    1541             : #if SK2_ENABLED && CK2_ENABLED
    1542             :     module procedure setStr_D0_CK2_SK2
    1543             :         use pm_kind, only: SKO => SK2, CKC => CK2
    1544             : #include "pm_val2str@routines.inc.F90"
    1545             :     end procedure
    1546             : #endif
    1547             : 
    1548             : #if SK2_ENABLED && CK1_ENABLED
    1549             :     module procedure setStr_D0_CK1_SK2
    1550             :         use pm_kind, only: SKO => SK2, CKC => CK1
    1551             : #include "pm_val2str@routines.inc.F90"
    1552             :     end procedure
    1553             : #endif
    1554             : 
    1555             : #undef CK_ENABLED
    1556             : 
    1557             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1558             : 
    1559             : #define CK_ENABLED 1
    1560             : 
    1561             : #if SK3_ENABLED && CK5_ENABLED
    1562             :     module procedure setStr_D0_CK5_SK3
    1563             :         use pm_kind, only: SKO => SK3, CKC => CK5
    1564             : #include "pm_val2str@routines.inc.F90"
    1565             :     end procedure
    1566             : #endif
    1567             : 
    1568             : #if SK3_ENABLED && CK4_ENABLED
    1569             :     module procedure setStr_D0_CK4_SK3
    1570             :         use pm_kind, only: SKO => SK3, CKC => CK4
    1571             : #include "pm_val2str@routines.inc.F90"
    1572             :     end procedure
    1573             : #endif
    1574             : 
    1575             : #if SK3_ENABLED && CK3_ENABLED
    1576             :     module procedure setStr_D0_CK3_SK3
    1577             :         use pm_kind, only: SKO => SK3, CKC => CK3
    1578             : #include "pm_val2str@routines.inc.F90"
    1579             :     end procedure
    1580             : #endif
    1581             : 
    1582             : #if SK3_ENABLED && CK2_ENABLED
    1583             :     module procedure setStr_D0_CK2_SK3
    1584             :         use pm_kind, only: SKO => SK3, CKC => CK2
    1585             : #include "pm_val2str@routines.inc.F90"
    1586             :     end procedure
    1587             : #endif
    1588             : 
    1589             : #if SK3_ENABLED && CK1_ENABLED
    1590             :     module procedure setStr_D0_CK1_SK3
    1591             :         use pm_kind, only: SKO => SK3, CKC => CK1
    1592             : #include "pm_val2str@routines.inc.F90"
    1593             :     end procedure
    1594             : #endif
    1595             : 
    1596             : #undef CK_ENABLED
    1597             : 
    1598             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1599             : 
    1600             : #define CK_ENABLED 1
    1601             : 
    1602             : #if SK4_ENABLED && CK5_ENABLED
    1603             :     module procedure setStr_D0_CK5_SK4
    1604             :         use pm_kind, only: SKO => SK4, CKC => CK5
    1605             : #include "pm_val2str@routines.inc.F90"
    1606             :     end procedure
    1607             : #endif
    1608             : 
    1609             : #if SK4_ENABLED && CK4_ENABLED
    1610             :     module procedure setStr_D0_CK4_SK4
    1611             :         use pm_kind, only: SKO => SK4, CKC => CK4
    1612             : #include "pm_val2str@routines.inc.F90"
    1613             :     end procedure
    1614             : #endif
    1615             : 
    1616             : #if SK4_ENABLED && CK3_ENABLED
    1617             :     module procedure setStr_D0_CK3_SK4
    1618             :         use pm_kind, only: SKO => SK4, CKC => CK3
    1619             : #include "pm_val2str@routines.inc.F90"
    1620             :     end procedure
    1621             : #endif
    1622             : 
    1623             : #if SK4_ENABLED && CK2_ENABLED
    1624             :     module procedure setStr_D0_CK2_SK4
    1625             :         use pm_kind, only: SKO => SK4, CKC => CK2
    1626             : #include "pm_val2str@routines.inc.F90"
    1627             :     end procedure
    1628             : #endif
    1629             : 
    1630             : #if SK4_ENABLED && CK1_ENABLED
    1631             :     module procedure setStr_D0_CK1_SK4
    1632             :         use pm_kind, only: SKO => SK4, CKC => CK1
    1633             : #include "pm_val2str@routines.inc.F90"
    1634             :     end procedure
    1635             : #endif
    1636             : 
    1637             : #undef CK_ENABLED
    1638             : 
    1639             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1640             : 
    1641             : #define CK_ENABLED 1
    1642             : 
    1643             : #if SK5_ENABLED && CK5_ENABLED
    1644             :     module procedure setStr_D0_CK5_SK5
    1645             :         use pm_kind, only: SKO => SK5, CKC => CK5
    1646             : #include "pm_val2str@routines.inc.F90"
    1647             :     end procedure
    1648             : #endif
    1649             : 
    1650             : #if SK5_ENABLED && CK4_ENABLED
    1651             :     module procedure setStr_D0_CK4_SK5
    1652             :         use pm_kind, only: SKO => SK5, CKC => CK4
    1653             : #include "pm_val2str@routines.inc.F90"
    1654             :     end procedure
    1655             : #endif
    1656             : 
    1657             : #if SK5_ENABLED && CK3_ENABLED
    1658             :     module procedure setStr_D0_CK3_SK5
    1659             :         use pm_kind, only: SKO => SK5, CKC => CK3
    1660             : #include "pm_val2str@routines.inc.F90"
    1661             :     end procedure
    1662             : #endif
    1663             : 
    1664             : #if SK5_ENABLED && CK2_ENABLED
    1665             :     module procedure setStr_D0_CK2_SK5
    1666             :         use pm_kind, only: SKO => SK5, CKC => CK2
    1667             : #include "pm_val2str@routines.inc.F90"
    1668             :     end procedure
    1669             : #endif
    1670             : 
    1671             : #if SK5_ENABLED && CK1_ENABLED
    1672             :     module procedure setStr_D0_CK1_SK5
    1673             :         use pm_kind, only: SKO => SK5, CKC => CK1
    1674             : #include "pm_val2str@routines.inc.F90"
    1675             :     end procedure
    1676             : #endif
    1677             : 
    1678             : #undef CK_ENABLED
    1679             : 
    1680             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1681             : 
    1682             : #define RK_ENABLED 1
    1683             : 
    1684             : #if SK1_ENABLED && RK5_ENABLED
    1685             :     module procedure setStr_D0_RK5_SK1
    1686             :         use pm_kind, only: SKO => SK1, RKC => RK5
    1687             : #include "pm_val2str@routines.inc.F90"
    1688             :     end procedure
    1689             : #endif
    1690             : 
    1691             : #if SK1_ENABLED && RK4_ENABLED
    1692           0 :     module procedure setStr_D0_RK4_SK1
    1693             :         use pm_kind, only: SKO => SK1, RKC => RK4
    1694             : #include "pm_val2str@routines.inc.F90"
    1695             :     end procedure
    1696             : #endif
    1697             : 
    1698             : #if SK1_ENABLED && RK3_ENABLED
    1699           0 :     module procedure setStr_D0_RK3_SK1
    1700             :         use pm_kind, only: SKO => SK1, RKC => RK3
    1701             : #include "pm_val2str@routines.inc.F90"
    1702             :     end procedure
    1703             : #endif
    1704             : 
    1705             : #if SK1_ENABLED && RK2_ENABLED
    1706           1 :     module procedure setStr_D0_RK2_SK1
    1707             :         use pm_kind, only: SKO => SK1, RKC => RK2
    1708             : #include "pm_val2str@routines.inc.F90"
    1709             :     end procedure
    1710             : #endif
    1711             : 
    1712             : #if SK1_ENABLED && RK1_ENABLED
    1713           2 :     module procedure setStr_D0_RK1_SK1
    1714             :         use pm_kind, only: SKO => SK1, RKC => RK1
    1715             : #include "pm_val2str@routines.inc.F90"
    1716             :     end procedure
    1717             : #endif
    1718             : 
    1719             : #undef RK_ENABLED
    1720             : 
    1721             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1722             : 
    1723             : #define RK_ENABLED 1
    1724             : 
    1725             : #if SK2_ENABLED && RK5_ENABLED
    1726             :     module procedure setStr_D0_RK5_SK2
    1727             :         use pm_kind, only: SKO => SK2, RKC => RK5
    1728             : #include "pm_val2str@routines.inc.F90"
    1729             :     end procedure
    1730             : #endif
    1731             : 
    1732             : #if SK2_ENABLED && RK4_ENABLED
    1733             :     module procedure setStr_D0_RK4_SK2
    1734             :         use pm_kind, only: SKO => SK2, RKC => RK4
    1735             : #include "pm_val2str@routines.inc.F90"
    1736             :     end procedure
    1737             : #endif
    1738             : 
    1739             : #if SK2_ENABLED && RK3_ENABLED
    1740             :     module procedure setStr_D0_RK3_SK2
    1741             :         use pm_kind, only: SKO => SK2, RKC => RK3
    1742             : #include "pm_val2str@routines.inc.F90"
    1743             :     end procedure
    1744             : #endif
    1745             : 
    1746             : #if SK2_ENABLED && RK2_ENABLED
    1747             :     module procedure setStr_D0_RK2_SK2
    1748             :         use pm_kind, only: SKO => SK2, RKC => RK2
    1749             : #include "pm_val2str@routines.inc.F90"
    1750             :     end procedure
    1751             : #endif
    1752             : 
    1753             : #if SK2_ENABLED && RK1_ENABLED
    1754             :     module procedure setStr_D0_RK1_SK2
    1755             :         use pm_kind, only: SKO => SK2, RKC => RK1
    1756             : #include "pm_val2str@routines.inc.F90"
    1757             :     end procedure
    1758             : #endif
    1759             : 
    1760             : #undef RK_ENABLED
    1761             : 
    1762             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1763             : 
    1764             : #define RK_ENABLED 1
    1765             : 
    1766             : #if SK3_ENABLED && RK5_ENABLED
    1767             :     module procedure setStr_D0_RK5_SK3
    1768             :         use pm_kind, only: SKO => SK3, RKC => RK5
    1769             : #include "pm_val2str@routines.inc.F90"
    1770             :     end procedure
    1771             : #endif
    1772             : 
    1773             : #if SK3_ENABLED && RK4_ENABLED
    1774             :     module procedure setStr_D0_RK4_SK3
    1775             :         use pm_kind, only: SKO => SK3, RKC => RK4
    1776             : #include "pm_val2str@routines.inc.F90"
    1777             :     end procedure
    1778             : #endif
    1779             : 
    1780             : #if SK3_ENABLED && RK3_ENABLED
    1781             :     module procedure setStr_D0_RK3_SK3
    1782             :         use pm_kind, only: SKO => SK3, RKC => RK3
    1783             : #include "pm_val2str@routines.inc.F90"
    1784             :     end procedure
    1785             : #endif
    1786             : 
    1787             : #if SK3_ENABLED && RK2_ENABLED
    1788             :     module procedure setStr_D0_RK2_SK3
    1789             :         use pm_kind, only: SKO => SK3, RKC => RK2
    1790             : #include "pm_val2str@routines.inc.F90"
    1791             :     end procedure
    1792             : #endif
    1793             : 
    1794             : #if SK3_ENABLED && RK1_ENABLED
    1795             :     module procedure setStr_D0_RK1_SK3
    1796             :         use pm_kind, only: SKO => SK3, RKC => RK1
    1797             : #include "pm_val2str@routines.inc.F90"
    1798             :     end procedure
    1799             : #endif
    1800             : 
    1801             : #undef RK_ENABLED
    1802             : 
    1803             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1804             : 
    1805             : #define RK_ENABLED 1
    1806             : 
    1807             : #if SK4_ENABLED && RK5_ENABLED
    1808             :     module procedure setStr_D0_RK5_SK4
    1809             :         use pm_kind, only: SKO => SK4, RKC => RK5
    1810             : #include "pm_val2str@routines.inc.F90"
    1811             :     end procedure
    1812             : #endif
    1813             : 
    1814             : #if SK4_ENABLED && RK4_ENABLED
    1815             :     module procedure setStr_D0_RK4_SK4
    1816             :         use pm_kind, only: SKO => SK4, RKC => RK4
    1817             : #include "pm_val2str@routines.inc.F90"
    1818             :     end procedure
    1819             : #endif
    1820             : 
    1821             : #if SK4_ENABLED && RK3_ENABLED
    1822             :     module procedure setStr_D0_RK3_SK4
    1823             :         use pm_kind, only: SKO => SK4, RKC => RK3
    1824             : #include "pm_val2str@routines.inc.F90"
    1825             :     end procedure
    1826             : #endif
    1827             : 
    1828             : #if SK4_ENABLED && RK2_ENABLED
    1829             :     module procedure setStr_D0_RK2_SK4
    1830             :         use pm_kind, only: SKO => SK4, RKC => RK2
    1831             : #include "pm_val2str@routines.inc.F90"
    1832             :     end procedure
    1833             : #endif
    1834             : 
    1835             : #if SK4_ENABLED && RK1_ENABLED
    1836             :     module procedure setStr_D0_RK1_SK4
    1837             :         use pm_kind, only: SKO => SK4, RKC => RK1
    1838             : #include "pm_val2str@routines.inc.F90"
    1839             :     end procedure
    1840             : #endif
    1841             : 
    1842             : #undef RK_ENABLED
    1843             : 
    1844             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1845             : 
    1846             : #define RK_ENABLED 1
    1847             : 
    1848             : #if SK5_ENABLED && RK5_ENABLED
    1849             :     module procedure setStr_D0_RK5_SK5
    1850             :         use pm_kind, only: SKO => SK5, RKC => RK5
    1851             : #include "pm_val2str@routines.inc.F90"
    1852             :     end procedure
    1853             : #endif
    1854             : 
    1855             : #if SK5_ENABLED && RK4_ENABLED
    1856             :     module procedure setStr_D0_RK4_SK5
    1857             :         use pm_kind, only: SKO => SK5, RKC => RK4
    1858             : #include "pm_val2str@routines.inc.F90"
    1859             :     end procedure
    1860             : #endif
    1861             : 
    1862             : #if SK5_ENABLED && RK3_ENABLED
    1863             :     module procedure setStr_D0_RK3_SK5
    1864             :         use pm_kind, only: SKO => SK5, RKC => RK3
    1865             : #include "pm_val2str@routines.inc.F90"
    1866             :     end procedure
    1867             : #endif
    1868             : 
    1869             : #if SK5_ENABLED && RK2_ENABLED
    1870             :     module procedure setStr_D0_RK2_SK5
    1871             :         use pm_kind, only: SKO => SK5, RKC => RK2
    1872             : #include "pm_val2str@routines.inc.F90"
    1873             :     end procedure
    1874             : #endif
    1875             : 
    1876             : #if SK5_ENABLED && RK1_ENABLED
    1877             :     module procedure setStr_D0_RK1_SK5
    1878             :         use pm_kind, only: SKO => SK5, RKC => RK1
    1879             : #include "pm_val2str@routines.inc.F90"
    1880             :     end procedure
    1881             : #endif
    1882             : 
    1883             : #undef RK_ENABLED
    1884             : 
    1885             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1886             : 
    1887             : #define PSSK_ENABLED 1
    1888             : 
    1889             : #if SK1_ENABLED && SK5_ENABLED
    1890             :     module procedure setStr_D0_PSSK5_SK1
    1891             :         use pm_kind, only: SKO => SK1, SKC => SK5
    1892             : #include "pm_val2str@routines.inc.F90"
    1893             :     end procedure
    1894             : #endif
    1895             : 
    1896             : #if SK1_ENABLED && SK4_ENABLED
    1897             :     module procedure setStr_D0_PSSK4_SK1
    1898             :         use pm_kind, only: SKO => SK1, SKC => SK4
    1899             : #include "pm_val2str@routines.inc.F90"
    1900             :     end procedure
    1901             : #endif
    1902             : 
    1903             : #if SK1_ENABLED && SK3_ENABLED
    1904             :     module procedure setStr_D0_PSSK3_SK1
    1905             :         use pm_kind, only: SKO => SK1, SKC => SK3
    1906             : #include "pm_val2str@routines.inc.F90"
    1907             :     end procedure
    1908             : #endif
    1909             : 
    1910             : #if SK1_ENABLED && SK2_ENABLED
    1911             :     module procedure setStr_D0_PSSK2_SK1
    1912             :         use pm_kind, only: SKO => SK1, SKC => SK2
    1913             : #include "pm_val2str@routines.inc.F90"
    1914             :     end procedure
    1915             : #endif
    1916             : 
    1917             : #if SK1_ENABLED && SK1_ENABLED
    1918           0 :     module procedure setStr_D0_PSSK1_SK1
    1919             :         use pm_kind, only: SKO => SK1, SKC => SK1
    1920             : #include "pm_val2str@routines.inc.F90"
    1921           0 :     end procedure
    1922             : #endif
    1923             : 
    1924             : #undef PSSK_ENABLED
    1925             : 
    1926             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1927             : 
    1928             : #define PSSK_ENABLED 1
    1929             : 
    1930             : #if SK2_ENABLED && SK5_ENABLED
    1931             :     module procedure setStr_D0_PSSK5_SK2
    1932             :         use pm_kind, only: SKO => SK2, SKC => SK5
    1933             : #include "pm_val2str@routines.inc.F90"
    1934             :     end procedure
    1935             : #endif
    1936             : 
    1937             : #if SK2_ENABLED && SK4_ENABLED
    1938             :     module procedure setStr_D0_PSSK4_SK2
    1939             :         use pm_kind, only: SKO => SK2, SKC => SK4
    1940             : #include "pm_val2str@routines.inc.F90"
    1941             :     end procedure
    1942             : #endif
    1943             : 
    1944             : #if SK2_ENABLED && SK3_ENABLED
    1945             :     module procedure setStr_D0_PSSK3_SK2
    1946             :         use pm_kind, only: SKO => SK2, SKC => SK3
    1947             : #include "pm_val2str@routines.inc.F90"
    1948             :     end procedure
    1949             : #endif
    1950             : 
    1951             : #if SK2_ENABLED && SK2_ENABLED
    1952             :     module procedure setStr_D0_PSSK2_SK2
    1953             :         use pm_kind, only: SKO => SK2, SKC => SK2
    1954             : #include "pm_val2str@routines.inc.F90"
    1955             :     end procedure
    1956             : #endif
    1957             : 
    1958             : #if SK2_ENABLED && SK1_ENABLED
    1959             :     module procedure setStr_D0_PSSK1_SK2
    1960             :         use pm_kind, only: SKO => SK2, SKC => SK1
    1961             : #include "pm_val2str@routines.inc.F90"
    1962             :     end procedure
    1963             : #endif
    1964             : 
    1965             : #undef PSSK_ENABLED
    1966             : 
    1967             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    1968             : 
    1969             : #define PSSK_ENABLED 1
    1970             : 
    1971             : #if SK3_ENABLED && SK5_ENABLED
    1972             :     module procedure setStr_D0_PSSK5_SK3
    1973             :         use pm_kind, only: SKO => SK3, SKC => SK5
    1974             : #include "pm_val2str@routines.inc.F90"
    1975             :     end procedure
    1976             : #endif
    1977             : 
    1978             : #if SK3_ENABLED && SK4_ENABLED
    1979             :     module procedure setStr_D0_PSSK4_SK3
    1980             :         use pm_kind, only: SKO => SK3, SKC => SK4
    1981             : #include "pm_val2str@routines.inc.F90"
    1982             :     end procedure
    1983             : #endif
    1984             : 
    1985             : #if SK3_ENABLED && SK3_ENABLED
    1986             :     module procedure setStr_D0_PSSK3_SK3
    1987             :         use pm_kind, only: SKO => SK3, SKC => SK3
    1988             : #include "pm_val2str@routines.inc.F90"
    1989             :     end procedure
    1990             : #endif
    1991             : 
    1992             : #if SK3_ENABLED && SK2_ENABLED
    1993             :     module procedure setStr_D0_PSSK2_SK3
    1994             :         use pm_kind, only: SKO => SK3, SKC => SK2
    1995             : #include "pm_val2str@routines.inc.F90"
    1996             :     end procedure
    1997             : #endif
    1998             : 
    1999             : #if SK3_ENABLED && SK1_ENABLED
    2000             :     module procedure setStr_D0_PSSK1_SK3
    2001             :         use pm_kind, only: SKO => SK3, SKC => SK1
    2002             : #include "pm_val2str@routines.inc.F90"
    2003             :     end procedure
    2004             : #endif
    2005             : 
    2006             : #undef PSSK_ENABLED
    2007             : 
    2008             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2009             : 
    2010             : #define PSSK_ENABLED 1
    2011             : 
    2012             : #if SK4_ENABLED && SK5_ENABLED
    2013             :     module procedure setStr_D0_PSSK5_SK4
    2014             :         use pm_kind, only: SKO => SK4, SKC => SK5
    2015             : #include "pm_val2str@routines.inc.F90"
    2016             :     end procedure
    2017             : #endif
    2018             : 
    2019             : #if SK4_ENABLED && SK4_ENABLED
    2020             :     module procedure setStr_D0_PSSK4_SK4
    2021             :         use pm_kind, only: SKO => SK4, SKC => SK4
    2022             : #include "pm_val2str@routines.inc.F90"
    2023             :     end procedure
    2024             : #endif
    2025             : 
    2026             : #if SK4_ENABLED && SK3_ENABLED
    2027             :     module procedure setStr_D0_PSSK3_SK4
    2028             :         use pm_kind, only: SKO => SK4, SKC => SK3
    2029             : #include "pm_val2str@routines.inc.F90"
    2030             :     end procedure
    2031             : #endif
    2032             : 
    2033             : #if SK4_ENABLED && SK2_ENABLED
    2034             :     module procedure setStr_D0_PSSK2_SK4
    2035             :         use pm_kind, only: SKO => SK4, SKC => SK2
    2036             : #include "pm_val2str@routines.inc.F90"
    2037             :     end procedure
    2038             : #endif
    2039             : 
    2040             : #if SK4_ENABLED && SK1_ENABLED
    2041             :     module procedure setStr_D0_PSSK1_SK4
    2042             :         use pm_kind, only: SKO => SK4, SKC => SK1
    2043             : #include "pm_val2str@routines.inc.F90"
    2044             :     end procedure
    2045             : #endif
    2046             : 
    2047             : #undef PSSK_ENABLED
    2048             : 
    2049             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2050             : 
    2051             : #define PSSK_ENABLED 1
    2052             : 
    2053             : #if SK5_ENABLED && SK5_ENABLED
    2054             :     module procedure setStr_D0_PSSK5_SK5
    2055             :         use pm_kind, only: SKO => SK5, SKC => SK5
    2056             : #include "pm_val2str@routines.inc.F90"
    2057             :     end procedure
    2058             : #endif
    2059             : 
    2060             : #if SK5_ENABLED && SK4_ENABLED
    2061             :     module procedure setStr_D0_PSSK4_SK5
    2062             :         use pm_kind, only: SKO => SK5, SKC => SK4
    2063             : #include "pm_val2str@routines.inc.F90"
    2064             :     end procedure
    2065             : #endif
    2066             : 
    2067             : #if SK5_ENABLED && SK3_ENABLED
    2068             :     module procedure setStr_D0_PSSK3_SK5
    2069             :         use pm_kind, only: SKO => SK5, SKC => SK3
    2070             : #include "pm_val2str@routines.inc.F90"
    2071             :     end procedure
    2072             : #endif
    2073             : 
    2074             : #if SK5_ENABLED && SK2_ENABLED
    2075             :     module procedure setStr_D0_PSSK2_SK5
    2076             :         use pm_kind, only: SKO => SK5, SKC => SK2
    2077             : #include "pm_val2str@routines.inc.F90"
    2078             :     end procedure
    2079             : #endif
    2080             : 
    2081             : #if SK5_ENABLED && SK1_ENABLED
    2082             :     module procedure setStr_D0_PSSK1_SK5
    2083             :         use pm_kind, only: SKO => SK5, SKC => SK1
    2084             : #include "pm_val2str@routines.inc.F90"
    2085             :     end procedure
    2086             : #endif
    2087             : 
    2088             : #undef PSSK_ENABLED
    2089             : 
    2090             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2091             : 
    2092             : #define BSSK_ENABLED 1
    2093             : 
    2094             : #if SK5_ENABLED
    2095             :     module procedure setStr_D0_BSSK5_SK5
    2096             :         use pm_kind, only: SKO => SK5, SKC => SK5
    2097             : #include "pm_val2str@routines.inc.F90"
    2098             :     end procedure
    2099             : #endif
    2100             : 
    2101             : #if SK5_ENABLED
    2102             :     module procedure setStr_D0_BSSK4_SK5
    2103             :         use pm_kind, only: SKO => SK5, SKC => SK4
    2104             : #include "pm_val2str@routines.inc.F90"
    2105             :     end procedure
    2106             : #endif
    2107             : 
    2108             : #if SK5_ENABLED
    2109             :     module procedure setStr_D0_BSSK3_SK5
    2110             :         use pm_kind, only: SKO => SK5, SKC => SK3
    2111             : #include "pm_val2str@routines.inc.F90"
    2112             :     end procedure
    2113             : #endif
    2114             : 
    2115             : #if SK5_ENABLED
    2116             :     module procedure setStr_D0_BSSK2_SK5
    2117             :         use pm_kind, only: SKO => SK5, SKC => SK2
    2118             : #include "pm_val2str@routines.inc.F90"
    2119             :     end procedure
    2120             : #endif
    2121             : 
    2122             : #if SK5_ENABLED
    2123             :     module procedure setStr_D0_BSSK1_SK5
    2124             :         use pm_kind, only: SKO => SK5, SKC => SK1
    2125             : #include "pm_val2str@routines.inc.F90"
    2126             :     end procedure
    2127             : #endif
    2128             : 
    2129             : #undef BSSK_ENABLED
    2130             : 
    2131             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2132             : 
    2133             : #undef D0_ENABLED
    2134             : 
    2135             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2136             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2137             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2138             : 
    2139             : #define D1_ENABLED 1
    2140             : 
    2141             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2142             : 
    2143             : #define SK_ENABLED 1
    2144             : 
    2145             : #if SK1_ENABLED && SK5_ENABLED
    2146             :     module procedure setStr_D1_SK5_SK1
    2147             :         use pm_kind, only: SKO => SK1, SKC => SK5
    2148             : #include "pm_val2str@routines.inc.F90"
    2149             :     end procedure
    2150             : #endif
    2151             : 
    2152             : #if SK1_ENABLED && SK4_ENABLED
    2153             :     module procedure setStr_D1_SK4_SK1
    2154             :         use pm_kind, only: SKO => SK1, SKC => SK4
    2155             : #include "pm_val2str@routines.inc.F90"
    2156             :     end procedure
    2157             : #endif
    2158             : 
    2159             : #if SK1_ENABLED && SK3_ENABLED
    2160             :     module procedure setStr_D1_SK3_SK1
    2161             :         use pm_kind, only: SKO => SK1, SKC => SK3
    2162             : #include "pm_val2str@routines.inc.F90"
    2163             :     end procedure
    2164             : #endif
    2165             : 
    2166             : #if SK1_ENABLED && SK2_ENABLED
    2167             :     module procedure setStr_D1_SK2_SK1
    2168             :         use pm_kind, only: SKO => SK1, SKC => SK2
    2169             : #include "pm_val2str@routines.inc.F90"
    2170             :     end procedure
    2171             : #endif
    2172             : 
    2173             : #if SK1_ENABLED && SK1_ENABLED
    2174           2 :     module procedure setStr_D1_SK1_SK1
    2175             :         use pm_kind, only: SKO => SK1, SKC => SK1
    2176             : #include "pm_val2str@routines.inc.F90"
    2177             :     end procedure
    2178             : #endif
    2179             : 
    2180             : #undef SK_ENABLED
    2181             : 
    2182             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2183             : 
    2184             : #define SK_ENABLED 1
    2185             : 
    2186             : #if SK2_ENABLED && SK5_ENABLED
    2187             :     module procedure setStr_D1_SK5_SK2
    2188             :         use pm_kind, only: SKO => SK2, SKC => SK5
    2189             : #include "pm_val2str@routines.inc.F90"
    2190             :     end procedure
    2191             : #endif
    2192             : 
    2193             : #if SK2_ENABLED && SK4_ENABLED
    2194             :     module procedure setStr_D1_SK4_SK2
    2195             :         use pm_kind, only: SKO => SK2, SKC => SK4
    2196             : #include "pm_val2str@routines.inc.F90"
    2197             :     end procedure
    2198             : #endif
    2199             : 
    2200             : #if SK2_ENABLED && SK3_ENABLED
    2201             :     module procedure setStr_D1_SK3_SK2
    2202             :         use pm_kind, only: SKO => SK2, SKC => SK3
    2203             : #include "pm_val2str@routines.inc.F90"
    2204             :     end procedure
    2205             : #endif
    2206             : 
    2207             : #if SK2_ENABLED && SK2_ENABLED
    2208             :     module procedure setStr_D1_SK2_SK2
    2209             :         use pm_kind, only: SKO => SK2, SKC => SK2
    2210             : #include "pm_val2str@routines.inc.F90"
    2211             :     end procedure
    2212             : #endif
    2213             : 
    2214             : #if SK2_ENABLED && SK1_ENABLED
    2215             :     module procedure setStr_D1_SK1_SK2
    2216             :         use pm_kind, only: SKO => SK2, SKC => SK1
    2217             : #include "pm_val2str@routines.inc.F90"
    2218             :     end procedure
    2219             : #endif
    2220             : 
    2221             : #undef SK_ENABLED
    2222             : 
    2223             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2224             : 
    2225             : #define SK_ENABLED 1
    2226             : 
    2227             : #if SK3_ENABLED && SK5_ENABLED
    2228             :     module procedure setStr_D1_SK5_SK3
    2229             :         use pm_kind, only: SKO => SK3, SKC => SK5
    2230             : #include "pm_val2str@routines.inc.F90"
    2231             :     end procedure
    2232             : #endif
    2233             : 
    2234             : #if SK3_ENABLED && SK4_ENABLED
    2235             :     module procedure setStr_D1_SK4_SK3
    2236             :         use pm_kind, only: SKO => SK3, SKC => SK4
    2237             : #include "pm_val2str@routines.inc.F90"
    2238             :     end procedure
    2239             : #endif
    2240             : 
    2241             : #if SK3_ENABLED && SK3_ENABLED
    2242             :     module procedure setStr_D1_SK3_SK3
    2243             :         use pm_kind, only: SKO => SK3, SKC => SK3
    2244             : #include "pm_val2str@routines.inc.F90"
    2245             :     end procedure
    2246             : #endif
    2247             : 
    2248             : #if SK3_ENABLED && SK2_ENABLED
    2249             :     module procedure setStr_D1_SK2_SK3
    2250             :         use pm_kind, only: SKO => SK3, SKC => SK2
    2251             : #include "pm_val2str@routines.inc.F90"
    2252             :     end procedure
    2253             : #endif
    2254             : 
    2255             : #if SK3_ENABLED && SK1_ENABLED
    2256             :     module procedure setStr_D1_SK1_SK3
    2257             :         use pm_kind, only: SKO => SK3, SKC => SK1
    2258             : #include "pm_val2str@routines.inc.F90"
    2259             :     end procedure
    2260             : #endif
    2261             : 
    2262             : #undef SK_ENABLED
    2263             : 
    2264             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2265             : 
    2266             : #define SK_ENABLED 1
    2267             : 
    2268             : #if SK4_ENABLED && SK5_ENABLED
    2269             :     module procedure setStr_D1_SK5_SK4
    2270             :         use pm_kind, only: SKO => SK4, SKC => SK5
    2271             : #include "pm_val2str@routines.inc.F90"
    2272             :     end procedure
    2273             : #endif
    2274             : 
    2275             : #if SK4_ENABLED && SK4_ENABLED
    2276             :     module procedure setStr_D1_SK4_SK4
    2277             :         use pm_kind, only: SKO => SK4, SKC => SK4
    2278             : #include "pm_val2str@routines.inc.F90"
    2279             :     end procedure
    2280             : #endif
    2281             : 
    2282             : #if SK4_ENABLED && SK3_ENABLED
    2283             :     module procedure setStr_D1_SK3_SK4
    2284             :         use pm_kind, only: SKO => SK4, SKC => SK3
    2285             : #include "pm_val2str@routines.inc.F90"
    2286             :     end procedure
    2287             : #endif
    2288             : 
    2289             : #if SK4_ENABLED && SK2_ENABLED
    2290             :     module procedure setStr_D1_SK2_SK4
    2291             :         use pm_kind, only: SKO => SK4, SKC => SK2
    2292             : #include "pm_val2str@routines.inc.F90"
    2293             :     end procedure
    2294             : #endif
    2295             : 
    2296             : #if SK4_ENABLED && SK1_ENABLED
    2297             :     module procedure setStr_D1_SK1_SK4
    2298             :         use pm_kind, only: SKO => SK4, SKC => SK1
    2299             : #include "pm_val2str@routines.inc.F90"
    2300             :     end procedure
    2301             : #endif
    2302             : 
    2303             : #undef SK_ENABLED
    2304             : 
    2305             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2306             : 
    2307             : #define SK_ENABLED 1
    2308             : 
    2309             : #if SK5_ENABLED && SK5_ENABLED
    2310             :     module procedure setStr_D1_SK5_SK5
    2311             :         use pm_kind, only: SKO => SK5, SKC => SK5
    2312             : #include "pm_val2str@routines.inc.F90"
    2313             :     end procedure
    2314             : #endif
    2315             : 
    2316             : #if SK5_ENABLED && SK4_ENABLED
    2317             :     module procedure setStr_D1_SK4_SK5
    2318             :         use pm_kind, only: SKO => SK5, SKC => SK4
    2319             : #include "pm_val2str@routines.inc.F90"
    2320             :     end procedure
    2321             : #endif
    2322             : 
    2323             : #if SK5_ENABLED && SK3_ENABLED
    2324             :     module procedure setStr_D1_SK3_SK5
    2325             :         use pm_kind, only: SKO => SK5, SKC => SK3
    2326             : #include "pm_val2str@routines.inc.F90"
    2327             :     end procedure
    2328             : #endif
    2329             : 
    2330             : #if SK5_ENABLED && SK2_ENABLED
    2331             :     module procedure setStr_D1_SK2_SK5
    2332             :         use pm_kind, only: SKO => SK5, SKC => SK2
    2333             : #include "pm_val2str@routines.inc.F90"
    2334             :     end procedure
    2335             : #endif
    2336             : 
    2337             : #if SK5_ENABLED && SK1_ENABLED
    2338             :     module procedure setStr_D1_SK1_SK5
    2339             :         use pm_kind, only: SKO => SK5, SKC => SK1
    2340             : #include "pm_val2str@routines.inc.F90"
    2341             :     end procedure
    2342             : #endif
    2343             : 
    2344             : #undef SK_ENABLED
    2345             : 
    2346             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2347             : 
    2348             : #define IK_ENABLED 1
    2349             : 
    2350             : #if SK1_ENABLED && IK5_ENABLED
    2351           0 :     module procedure setStr_D1_IK5_SK1
    2352             :         use pm_kind, only: SKO => SK1, IKC => IK5
    2353             : #include "pm_val2str@routines.inc.F90"
    2354             :     end procedure
    2355             : #endif
    2356             : 
    2357             : #if SK1_ENABLED && IK4_ENABLED
    2358           0 :     module procedure setStr_D1_IK4_SK1
    2359             :         use pm_kind, only: SKO => SK1, IKC => IK4
    2360             : #include "pm_val2str@routines.inc.F90"
    2361             :     end procedure
    2362             : #endif
    2363             : 
    2364             : #if SK1_ENABLED && IK3_ENABLED
    2365           0 :     module procedure setStr_D1_IK3_SK1
    2366             :         use pm_kind, only: SKO => SK1, IKC => IK3
    2367             : #include "pm_val2str@routines.inc.F90"
    2368             :     end procedure
    2369             : #endif
    2370             : 
    2371             : #if SK1_ENABLED && IK2_ENABLED
    2372           0 :     module procedure setStr_D1_IK2_SK1
    2373             :         use pm_kind, only: SKO => SK1, IKC => IK2
    2374             : #include "pm_val2str@routines.inc.F90"
    2375             :     end procedure
    2376             : #endif
    2377             : 
    2378             : #if SK1_ENABLED && IK1_ENABLED
    2379           0 :     module procedure setStr_D1_IK1_SK1
    2380             :         use pm_kind, only: SKO => SK1, IKC => IK1
    2381             : #include "pm_val2str@routines.inc.F90"
    2382             :     end procedure
    2383             : #endif
    2384             : 
    2385             : #undef IK_ENABLED
    2386             : 
    2387             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2388             : 
    2389             : #define IK_ENABLED 1
    2390             : 
    2391             : #if SK2_ENABLED && IK5_ENABLED
    2392             :     module procedure setStr_D1_IK5_SK2
    2393             :         use pm_kind, only: SKO => SK2, IKC => IK5
    2394             : #include "pm_val2str@routines.inc.F90"
    2395             :     end procedure
    2396             : #endif
    2397             : 
    2398             : #if SK2_ENABLED && IK4_ENABLED
    2399             :     module procedure setStr_D1_IK4_SK2
    2400             :         use pm_kind, only: SKO => SK2, IKC => IK4
    2401             : #include "pm_val2str@routines.inc.F90"
    2402             :     end procedure
    2403             : #endif
    2404             : 
    2405             : #if SK2_ENABLED && IK3_ENABLED
    2406             :     module procedure setStr_D1_IK3_SK2
    2407             :         use pm_kind, only: SKO => SK2, IKC => IK3
    2408             : #include "pm_val2str@routines.inc.F90"
    2409             :     end procedure
    2410             : #endif
    2411             : 
    2412             : #if SK2_ENABLED && IK2_ENABLED
    2413             :     module procedure setStr_D1_IK2_SK2
    2414             :         use pm_kind, only: SKO => SK2, IKC => IK2
    2415             : #include "pm_val2str@routines.inc.F90"
    2416             :     end procedure
    2417             : #endif
    2418             : 
    2419             : #if SK2_ENABLED && IK1_ENABLED
    2420             :     module procedure setStr_D1_IK1_SK2
    2421             :         use pm_kind, only: SKO => SK2, IKC => IK1
    2422             : #include "pm_val2str@routines.inc.F90"
    2423             :     end procedure
    2424             : #endif
    2425             : 
    2426             : #undef IK_ENABLED
    2427             : 
    2428             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2429             : 
    2430             : #define IK_ENABLED 1
    2431             : 
    2432             : #if SK3_ENABLED && IK5_ENABLED
    2433             :     module procedure setStr_D1_IK5_SK3
    2434             :         use pm_kind, only: SKO => SK3, IKC => IK5
    2435             : #include "pm_val2str@routines.inc.F90"
    2436             :     end procedure
    2437             : #endif
    2438             : 
    2439             : #if SK3_ENABLED && IK4_ENABLED
    2440             :     module procedure setStr_D1_IK4_SK3
    2441             :         use pm_kind, only: SKO => SK3, IKC => IK4
    2442             : #include "pm_val2str@routines.inc.F90"
    2443             :     end procedure
    2444             : #endif
    2445             : 
    2446             : #if SK3_ENABLED && IK3_ENABLED
    2447             :     module procedure setStr_D1_IK3_SK3
    2448             :         use pm_kind, only: SKO => SK3, IKC => IK3
    2449             : #include "pm_val2str@routines.inc.F90"
    2450             :     end procedure
    2451             : #endif
    2452             : 
    2453             : #if SK3_ENABLED && IK2_ENABLED
    2454             :     module procedure setStr_D1_IK2_SK3
    2455             :         use pm_kind, only: SKO => SK3, IKC => IK2
    2456             : #include "pm_val2str@routines.inc.F90"
    2457             :     end procedure
    2458             : #endif
    2459             : 
    2460             : #if SK3_ENABLED && IK1_ENABLED
    2461             :     module procedure setStr_D1_IK1_SK3
    2462             :         use pm_kind, only: SKO => SK3, IKC => IK1
    2463             : #include "pm_val2str@routines.inc.F90"
    2464             :     end procedure
    2465             : #endif
    2466             : 
    2467             : #undef IK_ENABLED
    2468             : 
    2469             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2470             : 
    2471             : #define IK_ENABLED 1
    2472             : 
    2473             : #if SK4_ENABLED && IK5_ENABLED
    2474             :     module procedure setStr_D1_IK5_SK4
    2475             :         use pm_kind, only: SKO => SK4, IKC => IK5
    2476             : #include "pm_val2str@routines.inc.F90"
    2477             :     end procedure
    2478             : #endif
    2479             : 
    2480             : #if SK4_ENABLED && IK4_ENABLED
    2481             :     module procedure setStr_D1_IK4_SK4
    2482             :         use pm_kind, only: SKO => SK4, IKC => IK4
    2483             : #include "pm_val2str@routines.inc.F90"
    2484             :     end procedure
    2485             : #endif
    2486             : 
    2487             : #if SK4_ENABLED && IK3_ENABLED
    2488             :     module procedure setStr_D1_IK3_SK4
    2489             :         use pm_kind, only: SKO => SK4, IKC => IK3
    2490             : #include "pm_val2str@routines.inc.F90"
    2491             :     end procedure
    2492             : #endif
    2493             : 
    2494             : #if SK4_ENABLED && IK2_ENABLED
    2495             :     module procedure setStr_D1_IK2_SK4
    2496             :         use pm_kind, only: SKO => SK4, IKC => IK2
    2497             : #include "pm_val2str@routines.inc.F90"
    2498             :     end procedure
    2499             : #endif
    2500             : 
    2501             : #if SK4_ENABLED && IK1_ENABLED
    2502             :     module procedure setStr_D1_IK1_SK4
    2503             :         use pm_kind, only: SKO => SK4, IKC => IK1
    2504             : #include "pm_val2str@routines.inc.F90"
    2505             :     end procedure
    2506             : #endif
    2507             : 
    2508             : #undef IK_ENABLED
    2509             : 
    2510             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2511             : 
    2512             : #define IK_ENABLED 1
    2513             : 
    2514             : #if SK5_ENABLED && IK5_ENABLED
    2515             :     module procedure setStr_D1_IK5_SK5
    2516             :         use pm_kind, only: SKO => SK5, IKC => IK5
    2517             : #include "pm_val2str@routines.inc.F90"
    2518             :     end procedure
    2519             : #endif
    2520             : 
    2521             : #if SK5_ENABLED && IK4_ENABLED
    2522             :     module procedure setStr_D1_IK4_SK5
    2523             :         use pm_kind, only: SKO => SK5, IKC => IK4
    2524             : #include "pm_val2str@routines.inc.F90"
    2525             :     end procedure
    2526             : #endif
    2527             : 
    2528             : #if SK5_ENABLED && IK3_ENABLED
    2529             :     module procedure setStr_D1_IK3_SK5
    2530             :         use pm_kind, only: SKO => SK5, IKC => IK3
    2531             : #include "pm_val2str@routines.inc.F90"
    2532             :     end procedure
    2533             : #endif
    2534             : 
    2535             : #if SK5_ENABLED && IK2_ENABLED
    2536             :     module procedure setStr_D1_IK2_SK5
    2537             :         use pm_kind, only: SKO => SK5, IKC => IK2
    2538             : #include "pm_val2str@routines.inc.F90"
    2539             :     end procedure
    2540             : #endif
    2541             : 
    2542             : #if SK5_ENABLED && IK1_ENABLED
    2543             :     module procedure setStr_D1_IK1_SK5
    2544             :         use pm_kind, only: SKO => SK5, IKC => IK1
    2545             : #include "pm_val2str@routines.inc.F90"
    2546             :     end procedure
    2547             : #endif
    2548             : 
    2549             : #undef IK_ENABLED
    2550             : 
    2551             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2552             : 
    2553             : #define LK_ENABLED 1
    2554             : 
    2555             : #if SK1_ENABLED && LK5_ENABLED
    2556           0 :     module procedure setStr_D1_LK5_SK1
    2557             :         use pm_kind, only: SKO => SK1, LKC => LK5
    2558             : #include "pm_val2str@routines.inc.F90"
    2559             :     end procedure
    2560             : #endif
    2561             : 
    2562             : #if SK1_ENABLED && LK4_ENABLED
    2563           0 :     module procedure setStr_D1_LK4_SK1
    2564             :         use pm_kind, only: SKO => SK1, LKC => LK4
    2565             : #include "pm_val2str@routines.inc.F90"
    2566             :     end procedure
    2567             : #endif
    2568             : 
    2569             : #if SK1_ENABLED && LK3_ENABLED
    2570           0 :     module procedure setStr_D1_LK3_SK1
    2571             :         use pm_kind, only: SKO => SK1, LKC => LK3
    2572             : #include "pm_val2str@routines.inc.F90"
    2573             :     end procedure
    2574             : #endif
    2575             : 
    2576             : #if SK1_ENABLED && LK2_ENABLED
    2577           0 :     module procedure setStr_D1_LK2_SK1
    2578             :         use pm_kind, only: SKO => SK1, LKC => LK2
    2579             : #include "pm_val2str@routines.inc.F90"
    2580             :     end procedure
    2581             : #endif
    2582             : 
    2583             : #if SK1_ENABLED && LK1_ENABLED
    2584           0 :     module procedure setStr_D1_LK1_SK1
    2585             :         use pm_kind, only: SKO => SK1, LKC => LK1
    2586             : #include "pm_val2str@routines.inc.F90"
    2587             :     end procedure
    2588             : #endif
    2589             : 
    2590             : #undef LK_ENABLED
    2591             : 
    2592             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2593             : 
    2594             : #define LK_ENABLED 1
    2595             : 
    2596             : #if SK2_ENABLED && LK5_ENABLED
    2597             :     module procedure setStr_D1_LK5_SK2
    2598             :         use pm_kind, only: SKO => SK2, LKC => LK5
    2599             : #include "pm_val2str@routines.inc.F90"
    2600             :     end procedure
    2601             : #endif
    2602             : 
    2603             : #if SK2_ENABLED && LK4_ENABLED
    2604             :     module procedure setStr_D1_LK4_SK2
    2605             :         use pm_kind, only: SKO => SK2, LKC => LK4
    2606             : #include "pm_val2str@routines.inc.F90"
    2607             :     end procedure
    2608             : #endif
    2609             : 
    2610             : #if SK2_ENABLED && LK3_ENABLED
    2611             :     module procedure setStr_D1_LK3_SK2
    2612             :         use pm_kind, only: SKO => SK2, LKC => LK3
    2613             : #include "pm_val2str@routines.inc.F90"
    2614             :     end procedure
    2615             : #endif
    2616             : 
    2617             : #if SK2_ENABLED && LK2_ENABLED
    2618             :     module procedure setStr_D1_LK2_SK2
    2619             :         use pm_kind, only: SKO => SK2, LKC => LK2
    2620             : #include "pm_val2str@routines.inc.F90"
    2621             :     end procedure
    2622             : #endif
    2623             : 
    2624             : #if SK2_ENABLED && LK1_ENABLED
    2625             :     module procedure setStr_D1_LK1_SK2
    2626             :         use pm_kind, only: SKO => SK2, LKC => LK1
    2627             : #include "pm_val2str@routines.inc.F90"
    2628             :     end procedure
    2629             : #endif
    2630             : 
    2631             : #undef LK_ENABLED
    2632             : 
    2633             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2634             : 
    2635             : #define LK_ENABLED 1
    2636             : 
    2637             : #if SK3_ENABLED && LK5_ENABLED
    2638             :     module procedure setStr_D1_LK5_SK3
    2639             :         use pm_kind, only: SKO => SK3, LKC => LK5
    2640             : #include "pm_val2str@routines.inc.F90"
    2641             :     end procedure
    2642             : #endif
    2643             : 
    2644             : #if SK3_ENABLED && LK4_ENABLED
    2645             :     module procedure setStr_D1_LK4_SK3
    2646             :         use pm_kind, only: SKO => SK3, LKC => LK4
    2647             : #include "pm_val2str@routines.inc.F90"
    2648             :     end procedure
    2649             : #endif
    2650             : 
    2651             : #if SK3_ENABLED && LK3_ENABLED
    2652             :     module procedure setStr_D1_LK3_SK3
    2653             :         use pm_kind, only: SKO => SK3, LKC => LK3
    2654             : #include "pm_val2str@routines.inc.F90"
    2655             :     end procedure
    2656             : #endif
    2657             : 
    2658             : #if SK3_ENABLED && LK2_ENABLED
    2659             :     module procedure setStr_D1_LK2_SK3
    2660             :         use pm_kind, only: SKO => SK3, LKC => LK2
    2661             : #include "pm_val2str@routines.inc.F90"
    2662             :     end procedure
    2663             : #endif
    2664             : 
    2665             : #if SK3_ENABLED && LK1_ENABLED
    2666             :     module procedure setStr_D1_LK1_SK3
    2667             :         use pm_kind, only: SKO => SK3, LKC => LK1
    2668             : #include "pm_val2str@routines.inc.F90"
    2669             :     end procedure
    2670             : #endif
    2671             : 
    2672             : #undef LK_ENABLED
    2673             : 
    2674             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2675             : 
    2676             : #define LK_ENABLED 1
    2677             : 
    2678             : #if SK4_ENABLED && LK5_ENABLED
    2679             :     module procedure setStr_D1_LK5_SK4
    2680             :         use pm_kind, only: SKO => SK4, LKC => LK5
    2681             : #include "pm_val2str@routines.inc.F90"
    2682             :     end procedure
    2683             : #endif
    2684             : 
    2685             : #if SK4_ENABLED && LK4_ENABLED
    2686             :     module procedure setStr_D1_LK4_SK4
    2687             :         use pm_kind, only: SKO => SK4, LKC => LK4
    2688             : #include "pm_val2str@routines.inc.F90"
    2689             :     end procedure
    2690             : #endif
    2691             : 
    2692             : #if SK4_ENABLED && LK3_ENABLED
    2693             :     module procedure setStr_D1_LK3_SK4
    2694             :         use pm_kind, only: SKO => SK4, LKC => LK3
    2695             : #include "pm_val2str@routines.inc.F90"
    2696             :     end procedure
    2697             : #endif
    2698             : 
    2699             : #if SK4_ENABLED && LK2_ENABLED
    2700             :     module procedure setStr_D1_LK2_SK4
    2701             :         use pm_kind, only: SKO => SK4, LKC => LK2
    2702             : #include "pm_val2str@routines.inc.F90"
    2703             :     end procedure
    2704             : #endif
    2705             : 
    2706             : #if SK4_ENABLED && LK1_ENABLED
    2707             :     module procedure setStr_D1_LK1_SK4
    2708             :         use pm_kind, only: SKO => SK4, LKC => LK1
    2709             : #include "pm_val2str@routines.inc.F90"
    2710             :     end procedure
    2711             : #endif
    2712             : 
    2713             : #undef LK_ENABLED
    2714             : 
    2715             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2716             : 
    2717             : #define LK_ENABLED 1
    2718             : 
    2719             : #if SK5_ENABLED && LK5_ENABLED
    2720             :     module procedure setStr_D1_LK5_SK5
    2721             :         use pm_kind, only: SKO => SK5, LKC => LK5
    2722             : #include "pm_val2str@routines.inc.F90"
    2723             :     end procedure
    2724             : #endif
    2725             : 
    2726             : #if SK5_ENABLED && LK4_ENABLED
    2727             :     module procedure setStr_D1_LK4_SK5
    2728             :         use pm_kind, only: SKO => SK5, LKC => LK4
    2729             : #include "pm_val2str@routines.inc.F90"
    2730             :     end procedure
    2731             : #endif
    2732             : 
    2733             : #if SK5_ENABLED && LK3_ENABLED
    2734             :     module procedure setStr_D1_LK3_SK5
    2735             :         use pm_kind, only: SKO => SK5, LKC => LK3
    2736             : #include "pm_val2str@routines.inc.F90"
    2737             :     end procedure
    2738             : #endif
    2739             : 
    2740             : #if SK5_ENABLED && LK2_ENABLED
    2741             :     module procedure setStr_D1_LK2_SK5
    2742             :         use pm_kind, only: SKO => SK5, LKC => LK2
    2743             : #include "pm_val2str@routines.inc.F90"
    2744             :     end procedure
    2745             : #endif
    2746             : 
    2747             : #if SK5_ENABLED && LK1_ENABLED
    2748             :     module procedure setStr_D1_LK1_SK5
    2749             :         use pm_kind, only: SKO => SK5, LKC => LK1
    2750             : #include "pm_val2str@routines.inc.F90"
    2751             :     end procedure
    2752             : #endif
    2753             : 
    2754             : #undef LK_ENABLED
    2755             : 
    2756             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2757             : 
    2758             : #define CK_ENABLED 1
    2759             : 
    2760             : #if SK1_ENABLED && CK5_ENABLED
    2761             :     module procedure setStr_D1_CK5_SK1
    2762             :         use pm_kind, only: SKO => SK1, CKC => CK5
    2763             : #include "pm_val2str@routines.inc.F90"
    2764             :     end procedure
    2765             : #endif
    2766             : 
    2767             : #if SK1_ENABLED && CK4_ENABLED
    2768           0 :     module procedure setStr_D1_CK4_SK1
    2769             :         use pm_kind, only: SKO => SK1, CKC => CK4
    2770             : #include "pm_val2str@routines.inc.F90"
    2771             :     end procedure
    2772             : #endif
    2773             : 
    2774             : #if SK1_ENABLED && CK3_ENABLED
    2775           0 :     module procedure setStr_D1_CK3_SK1
    2776             :         use pm_kind, only: SKO => SK1, CKC => CK3
    2777             : #include "pm_val2str@routines.inc.F90"
    2778             :     end procedure
    2779             : #endif
    2780             : 
    2781             : #if SK1_ENABLED && CK2_ENABLED
    2782           1 :     module procedure setStr_D1_CK2_SK1
    2783             :         use pm_kind, only: SKO => SK1, CKC => CK2
    2784             : #include "pm_val2str@routines.inc.F90"
    2785             :     end procedure
    2786             : #endif
    2787             : 
    2788             : #if SK1_ENABLED && CK1_ENABLED
    2789           0 :     module procedure setStr_D1_CK1_SK1
    2790             :         use pm_kind, only: SKO => SK1, CKC => CK1
    2791             : #include "pm_val2str@routines.inc.F90"
    2792             :     end procedure
    2793             : #endif
    2794             : 
    2795             : #undef CK_ENABLED
    2796             : 
    2797             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2798             : 
    2799             : #define CK_ENABLED 1
    2800             : 
    2801             : #if SK2_ENABLED && CK5_ENABLED
    2802             :     module procedure setStr_D1_CK5_SK2
    2803             :         use pm_kind, only: SKO => SK2, CKC => CK5
    2804             : #include "pm_val2str@routines.inc.F90"
    2805             :     end procedure
    2806             : #endif
    2807             : 
    2808             : #if SK2_ENABLED && CK4_ENABLED
    2809             :     module procedure setStr_D1_CK4_SK2
    2810             :         use pm_kind, only: SKO => SK2, CKC => CK4
    2811             : #include "pm_val2str@routines.inc.F90"
    2812             :     end procedure
    2813             : #endif
    2814             : 
    2815             : #if SK2_ENABLED && CK3_ENABLED
    2816             :     module procedure setStr_D1_CK3_SK2
    2817             :         use pm_kind, only: SKO => SK2, CKC => CK3
    2818             : #include "pm_val2str@routines.inc.F90"
    2819             :     end procedure
    2820             : #endif
    2821             : 
    2822             : #if SK2_ENABLED && CK2_ENABLED
    2823             :     module procedure setStr_D1_CK2_SK2
    2824             :         use pm_kind, only: SKO => SK2, CKC => CK2
    2825             : #include "pm_val2str@routines.inc.F90"
    2826             :     end procedure
    2827             : #endif
    2828             : 
    2829             : #if SK2_ENABLED && CK1_ENABLED
    2830             :     module procedure setStr_D1_CK1_SK2
    2831             :         use pm_kind, only: SKO => SK2, CKC => CK1
    2832             : #include "pm_val2str@routines.inc.F90"
    2833             :     end procedure
    2834             : #endif
    2835             : 
    2836             : #undef CK_ENABLED
    2837             : 
    2838             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2839             : 
    2840             : #define CK_ENABLED 1
    2841             : 
    2842             : #if SK3_ENABLED && CK5_ENABLED
    2843             :     module procedure setStr_D1_CK5_SK3
    2844             :         use pm_kind, only: SKO => SK3, CKC => CK5
    2845             : #include "pm_val2str@routines.inc.F90"
    2846             :     end procedure
    2847             : #endif
    2848             : 
    2849             : #if SK3_ENABLED && CK4_ENABLED
    2850             :     module procedure setStr_D1_CK4_SK3
    2851             :         use pm_kind, only: SKO => SK3, CKC => CK4
    2852             : #include "pm_val2str@routines.inc.F90"
    2853             :     end procedure
    2854             : #endif
    2855             : 
    2856             : #if SK3_ENABLED && CK3_ENABLED
    2857             :     module procedure setStr_D1_CK3_SK3
    2858             :         use pm_kind, only: SKO => SK3, CKC => CK3
    2859             : #include "pm_val2str@routines.inc.F90"
    2860             :     end procedure
    2861             : #endif
    2862             : 
    2863             : #if SK3_ENABLED && CK2_ENABLED
    2864             :     module procedure setStr_D1_CK2_SK3
    2865             :         use pm_kind, only: SKO => SK3, CKC => CK2
    2866             : #include "pm_val2str@routines.inc.F90"
    2867             :     end procedure
    2868             : #endif
    2869             : 
    2870             : #if SK3_ENABLED && CK1_ENABLED
    2871             :     module procedure setStr_D1_CK1_SK3
    2872             :         use pm_kind, only: SKO => SK3, CKC => CK1
    2873             : #include "pm_val2str@routines.inc.F90"
    2874             :     end procedure
    2875             : #endif
    2876             : 
    2877             : #undef CK_ENABLED
    2878             : 
    2879             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2880             : 
    2881             : #define CK_ENABLED 1
    2882             : 
    2883             : #if SK4_ENABLED && CK5_ENABLED
    2884             :     module procedure setStr_D1_CK5_SK4
    2885             :         use pm_kind, only: SKO => SK4, CKC => CK5
    2886             : #include "pm_val2str@routines.inc.F90"
    2887             :     end procedure
    2888             : #endif
    2889             : 
    2890             : #if SK4_ENABLED && CK4_ENABLED
    2891             :     module procedure setStr_D1_CK4_SK4
    2892             :         use pm_kind, only: SKO => SK4, CKC => CK4
    2893             : #include "pm_val2str@routines.inc.F90"
    2894             :     end procedure
    2895             : #endif
    2896             : 
    2897             : #if SK4_ENABLED && CK3_ENABLED
    2898             :     module procedure setStr_D1_CK3_SK4
    2899             :         use pm_kind, only: SKO => SK4, CKC => CK3
    2900             : #include "pm_val2str@routines.inc.F90"
    2901             :     end procedure
    2902             : #endif
    2903             : 
    2904             : #if SK4_ENABLED && CK2_ENABLED
    2905             :     module procedure setStr_D1_CK2_SK4
    2906             :         use pm_kind, only: SKO => SK4, CKC => CK2
    2907             : #include "pm_val2str@routines.inc.F90"
    2908             :     end procedure
    2909             : #endif
    2910             : 
    2911             : #if SK4_ENABLED && CK1_ENABLED
    2912             :     module procedure setStr_D1_CK1_SK4
    2913             :         use pm_kind, only: SKO => SK4, CKC => CK1
    2914             : #include "pm_val2str@routines.inc.F90"
    2915             :     end procedure
    2916             : #endif
    2917             : 
    2918             : #undef CK_ENABLED
    2919             : 
    2920             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2921             : 
    2922             : #define CK_ENABLED 1
    2923             : 
    2924             : #if SK5_ENABLED && CK5_ENABLED
    2925             :     module procedure setStr_D1_CK5_SK5
    2926             :         use pm_kind, only: SKO => SK5, CKC => CK5
    2927             : #include "pm_val2str@routines.inc.F90"
    2928             :     end procedure
    2929             : #endif
    2930             : 
    2931             : #if SK5_ENABLED && CK4_ENABLED
    2932             :     module procedure setStr_D1_CK4_SK5
    2933             :         use pm_kind, only: SKO => SK5, CKC => CK4
    2934             : #include "pm_val2str@routines.inc.F90"
    2935             :     end procedure
    2936             : #endif
    2937             : 
    2938             : #if SK5_ENABLED && CK3_ENABLED
    2939             :     module procedure setStr_D1_CK3_SK5
    2940             :         use pm_kind, only: SKO => SK5, CKC => CK3
    2941             : #include "pm_val2str@routines.inc.F90"
    2942             :     end procedure
    2943             : #endif
    2944             : 
    2945             : #if SK5_ENABLED && CK2_ENABLED
    2946             :     module procedure setStr_D1_CK2_SK5
    2947             :         use pm_kind, only: SKO => SK5, CKC => CK2
    2948             : #include "pm_val2str@routines.inc.F90"
    2949             :     end procedure
    2950             : #endif
    2951             : 
    2952             : #if SK5_ENABLED && CK1_ENABLED
    2953             :     module procedure setStr_D1_CK1_SK5
    2954             :         use pm_kind, only: SKO => SK5, CKC => CK1
    2955             : #include "pm_val2str@routines.inc.F90"
    2956             :     end procedure
    2957             : #endif
    2958             : 
    2959             : #undef CK_ENABLED
    2960             : 
    2961             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    2962             : 
    2963             : #define RK_ENABLED 1
    2964             : 
    2965             : #if SK1_ENABLED && RK5_ENABLED
    2966             :     module procedure setStr_D1_RK5_SK1
    2967             :         use pm_kind, only: SKO => SK1, RKC => RK5
    2968             : #include "pm_val2str@routines.inc.F90"
    2969             :     end procedure
    2970             : #endif
    2971             : 
    2972             : #if SK1_ENABLED && RK4_ENABLED
    2973           1 :     module procedure setStr_D1_RK4_SK1
    2974             :         use pm_kind, only: SKO => SK1, RKC => RK4
    2975             : #include "pm_val2str@routines.inc.F90"
    2976             :     end procedure
    2977             : #endif
    2978             : 
    2979             : #if SK1_ENABLED && RK3_ENABLED
    2980           0 :     module procedure setStr_D1_RK3_SK1
    2981             :         use pm_kind, only: SKO => SK1, RKC => RK3
    2982             : #include "pm_val2str@routines.inc.F90"
    2983             :     end procedure
    2984             : #endif
    2985             : 
    2986             : #if SK1_ENABLED && RK2_ENABLED
    2987           0 :     module procedure setStr_D1_RK2_SK1
    2988             :         use pm_kind, only: SKO => SK1, RKC => RK2
    2989             : #include "pm_val2str@routines.inc.F90"
    2990             :     end procedure
    2991             : #endif
    2992             : 
    2993             : #if SK1_ENABLED && RK1_ENABLED
    2994           0 :     module procedure setStr_D1_RK1_SK1
    2995             :         use pm_kind, only: SKO => SK1, RKC => RK1
    2996             : #include "pm_val2str@routines.inc.F90"
    2997             :     end procedure
    2998             : #endif
    2999             : 
    3000             : #undef RK_ENABLED
    3001             : 
    3002             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3003             : 
    3004             : #define RK_ENABLED 1
    3005             : 
    3006             : #if SK2_ENABLED && RK5_ENABLED
    3007             :     module procedure setStr_D1_RK5_SK2
    3008             :         use pm_kind, only: SKO => SK2, RKC => RK5
    3009             : #include "pm_val2str@routines.inc.F90"
    3010             :     end procedure
    3011             : #endif
    3012             : 
    3013             : #if SK2_ENABLED && RK4_ENABLED
    3014             :     module procedure setStr_D1_RK4_SK2
    3015             :         use pm_kind, only: SKO => SK2, RKC => RK4
    3016             : #include "pm_val2str@routines.inc.F90"
    3017             :     end procedure
    3018             : #endif
    3019             : 
    3020             : #if SK2_ENABLED && RK3_ENABLED
    3021             :     module procedure setStr_D1_RK3_SK2
    3022             :         use pm_kind, only: SKO => SK2, RKC => RK3
    3023             : #include "pm_val2str@routines.inc.F90"
    3024             :     end procedure
    3025             : #endif
    3026             : 
    3027             : #if SK2_ENABLED && RK2_ENABLED
    3028             :     module procedure setStr_D1_RK2_SK2
    3029             :         use pm_kind, only: SKO => SK2, RKC => RK2
    3030             : #include "pm_val2str@routines.inc.F90"
    3031             :     end procedure
    3032             : #endif
    3033             : 
    3034             : #if SK2_ENABLED && RK1_ENABLED
    3035             :     module procedure setStr_D1_RK1_SK2
    3036             :         use pm_kind, only: SKO => SK2, RKC => RK1
    3037             : #include "pm_val2str@routines.inc.F90"
    3038             :     end procedure
    3039             : #endif
    3040             : 
    3041             : #undef RK_ENABLED
    3042             : 
    3043             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3044             : 
    3045             : #define RK_ENABLED 1
    3046             : 
    3047             : #if SK3_ENABLED && RK5_ENABLED
    3048             :     module procedure setStr_D1_RK5_SK3
    3049             :         use pm_kind, only: SKO => SK3, RKC => RK5
    3050             : #include "pm_val2str@routines.inc.F90"
    3051             :     end procedure
    3052             : #endif
    3053             : 
    3054             : #if SK3_ENABLED && RK4_ENABLED
    3055             :     module procedure setStr_D1_RK4_SK3
    3056             :         use pm_kind, only: SKO => SK3, RKC => RK4
    3057             : #include "pm_val2str@routines.inc.F90"
    3058             :     end procedure
    3059             : #endif
    3060             : 
    3061             : #if SK3_ENABLED && RK3_ENABLED
    3062             :     module procedure setStr_D1_RK3_SK3
    3063             :         use pm_kind, only: SKO => SK3, RKC => RK3
    3064             : #include "pm_val2str@routines.inc.F90"
    3065             :     end procedure
    3066             : #endif
    3067             : 
    3068             : #if SK3_ENABLED && RK2_ENABLED
    3069             :     module procedure setStr_D1_RK2_SK3
    3070             :         use pm_kind, only: SKO => SK3, RKC => RK2
    3071             : #include "pm_val2str@routines.inc.F90"
    3072             :     end procedure
    3073             : #endif
    3074             : 
    3075             : #if SK3_ENABLED && RK1_ENABLED
    3076             :     module procedure setStr_D1_RK1_SK3
    3077             :         use pm_kind, only: SKO => SK3, RKC => RK1
    3078             : #include "pm_val2str@routines.inc.F90"
    3079             :     end procedure
    3080             : #endif
    3081             : 
    3082             : #undef RK_ENABLED
    3083             : 
    3084             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3085             : 
    3086             : #define RK_ENABLED 1
    3087             : 
    3088             : #if SK4_ENABLED && RK5_ENABLED
    3089             :     module procedure setStr_D1_RK5_SK4
    3090             :         use pm_kind, only: SKO => SK4, RKC => RK5
    3091             : #include "pm_val2str@routines.inc.F90"
    3092             :     end procedure
    3093             : #endif
    3094             : 
    3095             : #if SK4_ENABLED && RK4_ENABLED
    3096             :     module procedure setStr_D1_RK4_SK4
    3097             :         use pm_kind, only: SKO => SK4, RKC => RK4
    3098             : #include "pm_val2str@routines.inc.F90"
    3099             :     end procedure
    3100             : #endif
    3101             : 
    3102             : #if SK4_ENABLED && RK3_ENABLED
    3103             :     module procedure setStr_D1_RK3_SK4
    3104             :         use pm_kind, only: SKO => SK4, RKC => RK3
    3105             : #include "pm_val2str@routines.inc.F90"
    3106             :     end procedure
    3107             : #endif
    3108             : 
    3109             : #if SK4_ENABLED && RK2_ENABLED
    3110             :     module procedure setStr_D1_RK2_SK4
    3111             :         use pm_kind, only: SKO => SK4, RKC => RK2
    3112             : #include "pm_val2str@routines.inc.F90"
    3113             :     end procedure
    3114             : #endif
    3115             : 
    3116             : #if SK4_ENABLED && RK1_ENABLED
    3117             :     module procedure setStr_D1_RK1_SK4
    3118             :         use pm_kind, only: SKO => SK4, RKC => RK1
    3119             : #include "pm_val2str@routines.inc.F90"
    3120             :     end procedure
    3121             : #endif
    3122             : 
    3123             : #undef RK_ENABLED
    3124             : 
    3125             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3126             : 
    3127             : #define RK_ENABLED 1
    3128             : 
    3129             : #if SK5_ENABLED && RK5_ENABLED
    3130             :     module procedure setStr_D1_RK5_SK5
    3131             :         use pm_kind, only: SKO => SK5, RKC => RK5
    3132             : #include "pm_val2str@routines.inc.F90"
    3133             :     end procedure
    3134             : #endif
    3135             : 
    3136             : #if SK5_ENABLED && RK4_ENABLED
    3137             :     module procedure setStr_D1_RK4_SK5
    3138             :         use pm_kind, only: SKO => SK5, RKC => RK4
    3139             : #include "pm_val2str@routines.inc.F90"
    3140             :     end procedure
    3141             : #endif
    3142             : 
    3143             : #if SK5_ENABLED && RK3_ENABLED
    3144             :     module procedure setStr_D1_RK3_SK5
    3145             :         use pm_kind, only: SKO => SK5, RKC => RK3
    3146             : #include "pm_val2str@routines.inc.F90"
    3147             :     end procedure
    3148             : #endif
    3149             : 
    3150             : #if SK5_ENABLED && RK2_ENABLED
    3151             :     module procedure setStr_D1_RK2_SK5
    3152             :         use pm_kind, only: SKO => SK5, RKC => RK2
    3153             : #include "pm_val2str@routines.inc.F90"
    3154             :     end procedure
    3155             : #endif
    3156             : 
    3157             : #if SK5_ENABLED && RK1_ENABLED
    3158             :     module procedure setStr_D1_RK1_SK5
    3159             :         use pm_kind, only: SKO => SK5, RKC => RK1
    3160             : #include "pm_val2str@routines.inc.F90"
    3161             :     end procedure
    3162             : #endif
    3163             : 
    3164             : #undef RK_ENABLED
    3165             : 
    3166             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3167             : 
    3168             : #define PSSK_ENABLED 1
    3169             : 
    3170             : #if SK1_ENABLED && SK5_ENABLED
    3171             :     module procedure setStr_D1_PSSK5_SK1
    3172             :         use pm_kind, only: SKO => SK1, SKC => SK5
    3173             : #include "pm_val2str@routines.inc.F90"
    3174             :     end procedure
    3175             : #endif
    3176             : 
    3177             : #if SK1_ENABLED && SK4_ENABLED
    3178             :     module procedure setStr_D1_PSSK4_SK1
    3179             :         use pm_kind, only: SKO => SK1, SKC => SK4
    3180             : #include "pm_val2str@routines.inc.F90"
    3181             :     end procedure
    3182             : #endif
    3183             : 
    3184             : #if SK1_ENABLED && SK3_ENABLED
    3185             :     module procedure setStr_D1_PSSK3_SK1
    3186             :         use pm_kind, only: SKO => SK1, SKC => SK3
    3187             : #include "pm_val2str@routines.inc.F90"
    3188             :     end procedure
    3189             : #endif
    3190             : 
    3191             : #if SK1_ENABLED && SK2_ENABLED
    3192             :     module procedure setStr_D1_PSSK2_SK1
    3193             :         use pm_kind, only: SKO => SK1, SKC => SK2
    3194             : #include "pm_val2str@routines.inc.F90"
    3195             :     end procedure
    3196             : #endif
    3197             : 
    3198             : #if SK1_ENABLED && SK1_ENABLED
    3199           0 :     module procedure setStr_D1_PSSK1_SK1
    3200             :         use pm_kind, only: SKO => SK1, SKC => SK1
    3201             : #include "pm_val2str@routines.inc.F90"
    3202           0 :     end procedure
    3203             : #endif
    3204             : 
    3205             : #undef PSSK_ENABLED
    3206             : 
    3207             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3208             : 
    3209             : #define PSSK_ENABLED 1
    3210             : 
    3211             : #if SK2_ENABLED && SK5_ENABLED
    3212             :     module procedure setStr_D1_PSSK5_SK2
    3213             :         use pm_kind, only: SKO => SK2, SKC => SK5
    3214             : #include "pm_val2str@routines.inc.F90"
    3215             :     end procedure
    3216             : #endif
    3217             : 
    3218             : #if SK2_ENABLED && SK4_ENABLED
    3219             :     module procedure setStr_D1_PSSK4_SK2
    3220             :         use pm_kind, only: SKO => SK2, SKC => SK4
    3221             : #include "pm_val2str@routines.inc.F90"
    3222             :     end procedure
    3223             : #endif
    3224             : 
    3225             : #if SK2_ENABLED && SK3_ENABLED
    3226             :     module procedure setStr_D1_PSSK3_SK2
    3227             :         use pm_kind, only: SKO => SK2, SKC => SK3
    3228             : #include "pm_val2str@routines.inc.F90"
    3229             :     end procedure
    3230             : #endif
    3231             : 
    3232             : #if SK2_ENABLED && SK2_ENABLED
    3233             :     module procedure setStr_D1_PSSK2_SK2
    3234             :         use pm_kind, only: SKO => SK2, SKC => SK2
    3235             : #include "pm_val2str@routines.inc.F90"
    3236             :     end procedure
    3237             : #endif
    3238             : 
    3239             : #if SK2_ENABLED && SK1_ENABLED
    3240             :     module procedure setStr_D1_PSSK1_SK2
    3241             :         use pm_kind, only: SKO => SK2, SKC => SK1
    3242             : #include "pm_val2str@routines.inc.F90"
    3243             :     end procedure
    3244             : #endif
    3245             : 
    3246             : #undef PSSK_ENABLED
    3247             : 
    3248             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3249             : 
    3250             : #define PSSK_ENABLED 1
    3251             : 
    3252             : #if SK3_ENABLED && SK5_ENABLED
    3253             :     module procedure setStr_D1_PSSK5_SK3
    3254             :         use pm_kind, only: SKO => SK3, SKC => SK5
    3255             : #include "pm_val2str@routines.inc.F90"
    3256             :     end procedure
    3257             : #endif
    3258             : 
    3259             : #if SK3_ENABLED && SK4_ENABLED
    3260             :     module procedure setStr_D1_PSSK4_SK3
    3261             :         use pm_kind, only: SKO => SK3, SKC => SK4
    3262             : #include "pm_val2str@routines.inc.F90"
    3263             :     end procedure
    3264             : #endif
    3265             : 
    3266             : #if SK3_ENABLED && SK3_ENABLED
    3267             :     module procedure setStr_D1_PSSK3_SK3
    3268             :         use pm_kind, only: SKO => SK3, SKC => SK3
    3269             : #include "pm_val2str@routines.inc.F90"
    3270             :     end procedure
    3271             : #endif
    3272             : 
    3273             : #if SK3_ENABLED && SK2_ENABLED
    3274             :     module procedure setStr_D1_PSSK2_SK3
    3275             :         use pm_kind, only: SKO => SK3, SKC => SK2
    3276             : #include "pm_val2str@routines.inc.F90"
    3277             :     end procedure
    3278             : #endif
    3279             : 
    3280             : #if SK3_ENABLED && SK1_ENABLED
    3281             :     module procedure setStr_D1_PSSK1_SK3
    3282             :         use pm_kind, only: SKO => SK3, SKC => SK1
    3283             : #include "pm_val2str@routines.inc.F90"
    3284             :     end procedure
    3285             : #endif
    3286             : 
    3287             : #undef PSSK_ENABLED
    3288             : 
    3289             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3290             : 
    3291             : #define PSSK_ENABLED 1
    3292             : 
    3293             : #if SK4_ENABLED && SK5_ENABLED
    3294             :     module procedure setStr_D1_PSSK5_SK4
    3295             :         use pm_kind, only: SKO => SK4, SKC => SK5
    3296             : #include "pm_val2str@routines.inc.F90"
    3297             :     end procedure
    3298             : #endif
    3299             : 
    3300             : #if SK4_ENABLED && SK4_ENABLED
    3301             :     module procedure setStr_D1_PSSK4_SK4
    3302             :         use pm_kind, only: SKO => SK4, SKC => SK4
    3303             : #include "pm_val2str@routines.inc.F90"
    3304             :     end procedure
    3305             : #endif
    3306             : 
    3307             : #if SK4_ENABLED && SK3_ENABLED
    3308             :     module procedure setStr_D1_PSSK3_SK4
    3309             :         use pm_kind, only: SKO => SK4, SKC => SK3
    3310             : #include "pm_val2str@routines.inc.F90"
    3311             :     end procedure
    3312             : #endif
    3313             : 
    3314             : #if SK4_ENABLED && SK2_ENABLED
    3315             :     module procedure setStr_D1_PSSK2_SK4
    3316             :         use pm_kind, only: SKO => SK4, SKC => SK2
    3317             : #include "pm_val2str@routines.inc.F90"
    3318             :     end procedure
    3319             : #endif
    3320             : 
    3321             : #if SK4_ENABLED && SK1_ENABLED
    3322             :     module procedure setStr_D1_PSSK1_SK4
    3323             :         use pm_kind, only: SKO => SK4, SKC => SK1
    3324             : #include "pm_val2str@routines.inc.F90"
    3325             :     end procedure
    3326             : #endif
    3327             : 
    3328             : #undef PSSK_ENABLED
    3329             : 
    3330             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3331             : 
    3332             : #define PSSK_ENABLED 1
    3333             : 
    3334             : #if SK5_ENABLED && SK5_ENABLED
    3335             :     module procedure setStr_D1_PSSK5_SK5
    3336             :         use pm_kind, only: SKO => SK5, SKC => SK5
    3337             : #include "pm_val2str@routines.inc.F90"
    3338             :     end procedure
    3339             : #endif
    3340             : 
    3341             : #if SK5_ENABLED && SK4_ENABLED
    3342             :     module procedure setStr_D1_PSSK4_SK5
    3343             :         use pm_kind, only: SKO => SK5, SKC => SK4
    3344             : #include "pm_val2str@routines.inc.F90"
    3345             :     end procedure
    3346             : #endif
    3347             : 
    3348             : #if SK5_ENABLED && SK3_ENABLED
    3349             :     module procedure setStr_D1_PSSK3_SK5
    3350             :         use pm_kind, only: SKO => SK5, SKC => SK3
    3351             : #include "pm_val2str@routines.inc.F90"
    3352             :     end procedure
    3353             : #endif
    3354             : 
    3355             : #if SK5_ENABLED && SK2_ENABLED
    3356             :     module procedure setStr_D1_PSSK2_SK5
    3357             :         use pm_kind, only: SKO => SK5, SKC => SK2
    3358             : #include "pm_val2str@routines.inc.F90"
    3359             :     end procedure
    3360             : #endif
    3361             : 
    3362             : #if SK5_ENABLED && SK1_ENABLED
    3363             :     module procedure setStr_D1_PSSK1_SK5
    3364             :         use pm_kind, only: SKO => SK5, SKC => SK1
    3365             : #include "pm_val2str@routines.inc.F90"
    3366             :     end procedure
    3367             : #endif
    3368             : 
    3369             : #undef PSSK_ENABLED
    3370             : 
    3371             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3372             : 
    3373             : #define BSSK_ENABLED 1
    3374             : 
    3375             : #if SK5_ENABLED
    3376             :     module procedure setStr_D1_BSSK5_SK5
    3377             :         use pm_kind, only: SKO => SK5, SKC => SK5
    3378             : #include "pm_val2str@routines.inc.F90"
    3379             :     end procedure
    3380             : #endif
    3381             : 
    3382             : #if SK5_ENABLED
    3383             :     module procedure setStr_D1_BSSK4_SK5
    3384             :         use pm_kind, only: SKO => SK5, SKC => SK4
    3385             : #include "pm_val2str@routines.inc.F90"
    3386             :     end procedure
    3387             : #endif
    3388             : 
    3389             : #if SK5_ENABLED
    3390             :     module procedure setStr_D1_BSSK3_SK5
    3391             :         use pm_kind, only: SKO => SK5, SKC => SK3
    3392             : #include "pm_val2str@routines.inc.F90"
    3393             :     end procedure
    3394             : #endif
    3395             : 
    3396             : #if SK5_ENABLED
    3397             :     module procedure setStr_D1_BSSK2_SK5
    3398             :         use pm_kind, only: SKO => SK5, SKC => SK2
    3399             : #include "pm_val2str@routines.inc.F90"
    3400             :     end procedure
    3401             : #endif
    3402             : 
    3403             : #if SK5_ENABLED
    3404             :     module procedure setStr_D1_BSSK1_SK5
    3405             :         use pm_kind, only: SKO => SK5, SKC => SK1
    3406             : #include "pm_val2str@routines.inc.F90"
    3407             :     end procedure
    3408             : #endif
    3409             : 
    3410             : #undef BSSK_ENABLED
    3411             : 
    3412             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3413             : 
    3414             : #undef D1_ENABLED
    3415             : 
    3416             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3417             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3418             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3419             : 
    3420             : #define D2_ENABLED 1
    3421             : 
    3422             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3423             : 
    3424             : #define SK_ENABLED 1
    3425             : 
    3426             : #if SK1_ENABLED && SK5_ENABLED
    3427             :     module procedure setStr_D2_SK5_SK1
    3428             :         use pm_kind, only: SKO => SK1, SKC => SK5
    3429             : #include "pm_val2str@routines.inc.F90"
    3430             :     end procedure
    3431             : #endif
    3432             : 
    3433             : #if SK1_ENABLED && SK4_ENABLED
    3434             :     module procedure setStr_D2_SK4_SK1
    3435             :         use pm_kind, only: SKO => SK1, SKC => SK4
    3436             : #include "pm_val2str@routines.inc.F90"
    3437             :     end procedure
    3438             : #endif
    3439             : 
    3440             : #if SK1_ENABLED && SK3_ENABLED
    3441             :     module procedure setStr_D2_SK3_SK1
    3442             :         use pm_kind, only: SKO => SK1, SKC => SK3
    3443             : #include "pm_val2str@routines.inc.F90"
    3444             :     end procedure
    3445             : #endif
    3446             : 
    3447             : #if SK1_ENABLED && SK2_ENABLED
    3448             :     module procedure setStr_D2_SK2_SK1
    3449             :         use pm_kind, only: SKO => SK1, SKC => SK2
    3450             : #include "pm_val2str@routines.inc.F90"
    3451             :     end procedure
    3452             : #endif
    3453             : 
    3454             : #if SK1_ENABLED && SK1_ENABLED
    3455           0 :     module procedure setStr_D2_SK1_SK1
    3456             :         use pm_kind, only: SKO => SK1, SKC => SK1
    3457             : #include "pm_val2str@routines.inc.F90"
    3458             :     end procedure
    3459             : #endif
    3460             : 
    3461             : #undef SK_ENABLED
    3462             : 
    3463             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3464             : 
    3465             : #define SK_ENABLED 1
    3466             : 
    3467             : #if SK2_ENABLED && SK5_ENABLED
    3468             :     module procedure setStr_D2_SK5_SK2
    3469             :         use pm_kind, only: SKO => SK2, SKC => SK5
    3470             : #include "pm_val2str@routines.inc.F90"
    3471             :     end procedure
    3472             : #endif
    3473             : 
    3474             : #if SK2_ENABLED && SK4_ENABLED
    3475             :     module procedure setStr_D2_SK4_SK2
    3476             :         use pm_kind, only: SKO => SK2, SKC => SK4
    3477             : #include "pm_val2str@routines.inc.F90"
    3478             :     end procedure
    3479             : #endif
    3480             : 
    3481             : #if SK2_ENABLED && SK3_ENABLED
    3482             :     module procedure setStr_D2_SK3_SK2
    3483             :         use pm_kind, only: SKO => SK2, SKC => SK3
    3484             : #include "pm_val2str@routines.inc.F90"
    3485             :     end procedure
    3486             : #endif
    3487             : 
    3488             : #if SK2_ENABLED && SK2_ENABLED
    3489             :     module procedure setStr_D2_SK2_SK2
    3490             :         use pm_kind, only: SKO => SK2, SKC => SK2
    3491             : #include "pm_val2str@routines.inc.F90"
    3492             :     end procedure
    3493             : #endif
    3494             : 
    3495             : #if SK2_ENABLED && SK1_ENABLED
    3496             :     module procedure setStr_D2_SK1_SK2
    3497             :         use pm_kind, only: SKO => SK2, SKC => SK1
    3498             : #include "pm_val2str@routines.inc.F90"
    3499             :     end procedure
    3500             : #endif
    3501             : 
    3502             : #undef SK_ENABLED
    3503             : 
    3504             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3505             : 
    3506             : #define SK_ENABLED 1
    3507             : 
    3508             : #if SK3_ENABLED && SK5_ENABLED
    3509             :     module procedure setStr_D2_SK5_SK3
    3510             :         use pm_kind, only: SKO => SK3, SKC => SK5
    3511             : #include "pm_val2str@routines.inc.F90"
    3512             :     end procedure
    3513             : #endif
    3514             : 
    3515             : #if SK3_ENABLED && SK4_ENABLED
    3516             :     module procedure setStr_D2_SK4_SK3
    3517             :         use pm_kind, only: SKO => SK3, SKC => SK4
    3518             : #include "pm_val2str@routines.inc.F90"
    3519             :     end procedure
    3520             : #endif
    3521             : 
    3522             : #if SK3_ENABLED && SK3_ENABLED
    3523             :     module procedure setStr_D2_SK3_SK3
    3524             :         use pm_kind, only: SKO => SK3, SKC => SK3
    3525             : #include "pm_val2str@routines.inc.F90"
    3526             :     end procedure
    3527             : #endif
    3528             : 
    3529             : #if SK3_ENABLED && SK2_ENABLED
    3530             :     module procedure setStr_D2_SK2_SK3
    3531             :         use pm_kind, only: SKO => SK3, SKC => SK2
    3532             : #include "pm_val2str@routines.inc.F90"
    3533             :     end procedure
    3534             : #endif
    3535             : 
    3536             : #if SK3_ENABLED && SK1_ENABLED
    3537             :     module procedure setStr_D2_SK1_SK3
    3538             :         use pm_kind, only: SKO => SK3, SKC => SK1
    3539             : #include "pm_val2str@routines.inc.F90"
    3540             :     end procedure
    3541             : #endif
    3542             : 
    3543             : #undef SK_ENABLED
    3544             : 
    3545             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3546             : 
    3547             : #define SK_ENABLED 1
    3548             : 
    3549             : #if SK4_ENABLED && SK5_ENABLED
    3550             :     module procedure setStr_D2_SK5_SK4
    3551             :         use pm_kind, only: SKO => SK4, SKC => SK5
    3552             : #include "pm_val2str@routines.inc.F90"
    3553             :     end procedure
    3554             : #endif
    3555             : 
    3556             : #if SK4_ENABLED && SK4_ENABLED
    3557             :     module procedure setStr_D2_SK4_SK4
    3558             :         use pm_kind, only: SKO => SK4, SKC => SK4
    3559             : #include "pm_val2str@routines.inc.F90"
    3560             :     end procedure
    3561             : #endif
    3562             : 
    3563             : #if SK4_ENABLED && SK3_ENABLED
    3564             :     module procedure setStr_D2_SK3_SK4
    3565             :         use pm_kind, only: SKO => SK4, SKC => SK3
    3566             : #include "pm_val2str@routines.inc.F90"
    3567             :     end procedure
    3568             : #endif
    3569             : 
    3570             : #if SK4_ENABLED && SK2_ENABLED
    3571             :     module procedure setStr_D2_SK2_SK4
    3572             :         use pm_kind, only: SKO => SK4, SKC => SK2
    3573             : #include "pm_val2str@routines.inc.F90"
    3574             :     end procedure
    3575             : #endif
    3576             : 
    3577             : #if SK4_ENABLED && SK1_ENABLED
    3578             :     module procedure setStr_D2_SK1_SK4
    3579             :         use pm_kind, only: SKO => SK4, SKC => SK1
    3580             : #include "pm_val2str@routines.inc.F90"
    3581             :     end procedure
    3582             : #endif
    3583             : 
    3584             : #undef SK_ENABLED
    3585             : 
    3586             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3587             : 
    3588             : #define SK_ENABLED 1
    3589             : 
    3590             : #if SK5_ENABLED && SK5_ENABLED
    3591             :     module procedure setStr_D2_SK5_SK5
    3592             :         use pm_kind, only: SKO => SK5, SKC => SK5
    3593             : #include "pm_val2str@routines.inc.F90"
    3594             :     end procedure
    3595             : #endif
    3596             : 
    3597             : #if SK5_ENABLED && SK4_ENABLED
    3598             :     module procedure setStr_D2_SK4_SK5
    3599             :         use pm_kind, only: SKO => SK5, SKC => SK4
    3600             : #include "pm_val2str@routines.inc.F90"
    3601             :     end procedure
    3602             : #endif
    3603             : 
    3604             : #if SK5_ENABLED && SK3_ENABLED
    3605             :     module procedure setStr_D2_SK3_SK5
    3606             :         use pm_kind, only: SKO => SK5, SKC => SK3
    3607             : #include "pm_val2str@routines.inc.F90"
    3608             :     end procedure
    3609             : #endif
    3610             : 
    3611             : #if SK5_ENABLED && SK2_ENABLED
    3612             :     module procedure setStr_D2_SK2_SK5
    3613             :         use pm_kind, only: SKO => SK5, SKC => SK2
    3614             : #include "pm_val2str@routines.inc.F90"
    3615             :     end procedure
    3616             : #endif
    3617             : 
    3618             : #if SK5_ENABLED && SK1_ENABLED
    3619             :     module procedure setStr_D2_SK1_SK5
    3620             :         use pm_kind, only: SKO => SK5, SKC => SK1
    3621             : #include "pm_val2str@routines.inc.F90"
    3622             :     end procedure
    3623             : #endif
    3624             : 
    3625             : #undef SK_ENABLED
    3626             : 
    3627             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3628             : 
    3629             : #define IK_ENABLED 1
    3630             : 
    3631             : #if SK1_ENABLED && IK5_ENABLED
    3632           0 :     module procedure setStr_D2_IK5_SK1
    3633             :         use pm_kind, only: SKO => SK1, IKC => IK5
    3634             : #include "pm_val2str@routines.inc.F90"
    3635             :     end procedure
    3636             : #endif
    3637             : 
    3638             : #if SK1_ENABLED && IK4_ENABLED
    3639           0 :     module procedure setStr_D2_IK4_SK1
    3640             :         use pm_kind, only: SKO => SK1, IKC => IK4
    3641             : #include "pm_val2str@routines.inc.F90"
    3642             :     end procedure
    3643             : #endif
    3644             : 
    3645             : #if SK1_ENABLED && IK3_ENABLED
    3646           0 :     module procedure setStr_D2_IK3_SK1
    3647             :         use pm_kind, only: SKO => SK1, IKC => IK3
    3648             : #include "pm_val2str@routines.inc.F90"
    3649             :     end procedure
    3650             : #endif
    3651             : 
    3652             : #if SK1_ENABLED && IK2_ENABLED
    3653           0 :     module procedure setStr_D2_IK2_SK1
    3654             :         use pm_kind, only: SKO => SK1, IKC => IK2
    3655             : #include "pm_val2str@routines.inc.F90"
    3656             :     end procedure
    3657             : #endif
    3658             : 
    3659             : #if SK1_ENABLED && IK1_ENABLED
    3660           0 :     module procedure setStr_D2_IK1_SK1
    3661             :         use pm_kind, only: SKO => SK1, IKC => IK1
    3662             : #include "pm_val2str@routines.inc.F90"
    3663             :     end procedure
    3664             : #endif
    3665             : 
    3666             : #undef IK_ENABLED
    3667             : 
    3668             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3669             : 
    3670             : #define IK_ENABLED 1
    3671             : 
    3672             : #if SK2_ENABLED && IK5_ENABLED
    3673             :     module procedure setStr_D2_IK5_SK2
    3674             :         use pm_kind, only: SKO => SK2, IKC => IK5
    3675             : #include "pm_val2str@routines.inc.F90"
    3676             :     end procedure
    3677             : #endif
    3678             : 
    3679             : #if SK2_ENABLED && IK4_ENABLED
    3680             :     module procedure setStr_D2_IK4_SK2
    3681             :         use pm_kind, only: SKO => SK2, IKC => IK4
    3682             : #include "pm_val2str@routines.inc.F90"
    3683             :     end procedure
    3684             : #endif
    3685             : 
    3686             : #if SK2_ENABLED && IK3_ENABLED
    3687             :     module procedure setStr_D2_IK3_SK2
    3688             :         use pm_kind, only: SKO => SK2, IKC => IK3
    3689             : #include "pm_val2str@routines.inc.F90"
    3690             :     end procedure
    3691             : #endif
    3692             : 
    3693             : #if SK2_ENABLED && IK2_ENABLED
    3694             :     module procedure setStr_D2_IK2_SK2
    3695             :         use pm_kind, only: SKO => SK2, IKC => IK2
    3696             : #include "pm_val2str@routines.inc.F90"
    3697             :     end procedure
    3698             : #endif
    3699             : 
    3700             : #if SK2_ENABLED && IK1_ENABLED
    3701             :     module procedure setStr_D2_IK1_SK2
    3702             :         use pm_kind, only: SKO => SK2, IKC => IK1
    3703             : #include "pm_val2str@routines.inc.F90"
    3704             :     end procedure
    3705             : #endif
    3706             : 
    3707             : #undef IK_ENABLED
    3708             : 
    3709             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3710             : 
    3711             : #define IK_ENABLED 1
    3712             : 
    3713             : #if SK3_ENABLED && IK5_ENABLED
    3714             :     module procedure setStr_D2_IK5_SK3
    3715             :         use pm_kind, only: SKO => SK3, IKC => IK5
    3716             : #include "pm_val2str@routines.inc.F90"
    3717             :     end procedure
    3718             : #endif
    3719             : 
    3720             : #if SK3_ENABLED && IK4_ENABLED
    3721             :     module procedure setStr_D2_IK4_SK3
    3722             :         use pm_kind, only: SKO => SK3, IKC => IK4
    3723             : #include "pm_val2str@routines.inc.F90"
    3724             :     end procedure
    3725             : #endif
    3726             : 
    3727             : #if SK3_ENABLED && IK3_ENABLED
    3728             :     module procedure setStr_D2_IK3_SK3
    3729             :         use pm_kind, only: SKO => SK3, IKC => IK3
    3730             : #include "pm_val2str@routines.inc.F90"
    3731             :     end procedure
    3732             : #endif
    3733             : 
    3734             : #if SK3_ENABLED && IK2_ENABLED
    3735             :     module procedure setStr_D2_IK2_SK3
    3736             :         use pm_kind, only: SKO => SK3, IKC => IK2
    3737             : #include "pm_val2str@routines.inc.F90"
    3738             :     end procedure
    3739             : #endif
    3740             : 
    3741             : #if SK3_ENABLED && IK1_ENABLED
    3742             :     module procedure setStr_D2_IK1_SK3
    3743             :         use pm_kind, only: SKO => SK3, IKC => IK1
    3744             : #include "pm_val2str@routines.inc.F90"
    3745             :     end procedure
    3746             : #endif
    3747             : 
    3748             : #undef IK_ENABLED
    3749             : 
    3750             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3751             : 
    3752             : #define IK_ENABLED 1
    3753             : 
    3754             : #if SK4_ENABLED && IK5_ENABLED
    3755             :     module procedure setStr_D2_IK5_SK4
    3756             :         use pm_kind, only: SKO => SK4, IKC => IK5
    3757             : #include "pm_val2str@routines.inc.F90"
    3758             :     end procedure
    3759             : #endif
    3760             : 
    3761             : #if SK4_ENABLED && IK4_ENABLED
    3762             :     module procedure setStr_D2_IK4_SK4
    3763             :         use pm_kind, only: SKO => SK4, IKC => IK4
    3764             : #include "pm_val2str@routines.inc.F90"
    3765             :     end procedure
    3766             : #endif
    3767             : 
    3768             : #if SK4_ENABLED && IK3_ENABLED
    3769             :     module procedure setStr_D2_IK3_SK4
    3770             :         use pm_kind, only: SKO => SK4, IKC => IK3
    3771             : #include "pm_val2str@routines.inc.F90"
    3772             :     end procedure
    3773             : #endif
    3774             : 
    3775             : #if SK4_ENABLED && IK2_ENABLED
    3776             :     module procedure setStr_D2_IK2_SK4
    3777             :         use pm_kind, only: SKO => SK4, IKC => IK2
    3778             : #include "pm_val2str@routines.inc.F90"
    3779             :     end procedure
    3780             : #endif
    3781             : 
    3782             : #if SK4_ENABLED && IK1_ENABLED
    3783             :     module procedure setStr_D2_IK1_SK4
    3784             :         use pm_kind, only: SKO => SK4, IKC => IK1
    3785             : #include "pm_val2str@routines.inc.F90"
    3786             :     end procedure
    3787             : #endif
    3788             : 
    3789             : #undef IK_ENABLED
    3790             : 
    3791             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3792             : 
    3793             : #define IK_ENABLED 1
    3794             : 
    3795             : #if SK5_ENABLED && IK5_ENABLED
    3796             :     module procedure setStr_D2_IK5_SK5
    3797             :         use pm_kind, only: SKO => SK5, IKC => IK5
    3798             : #include "pm_val2str@routines.inc.F90"
    3799             :     end procedure
    3800             : #endif
    3801             : 
    3802             : #if SK5_ENABLED && IK4_ENABLED
    3803             :     module procedure setStr_D2_IK4_SK5
    3804             :         use pm_kind, only: SKO => SK5, IKC => IK4
    3805             : #include "pm_val2str@routines.inc.F90"
    3806             :     end procedure
    3807             : #endif
    3808             : 
    3809             : #if SK5_ENABLED && IK3_ENABLED
    3810             :     module procedure setStr_D2_IK3_SK5
    3811             :         use pm_kind, only: SKO => SK5, IKC => IK3
    3812             : #include "pm_val2str@routines.inc.F90"
    3813             :     end procedure
    3814             : #endif
    3815             : 
    3816             : #if SK5_ENABLED && IK2_ENABLED
    3817             :     module procedure setStr_D2_IK2_SK5
    3818             :         use pm_kind, only: SKO => SK5, IKC => IK2
    3819             : #include "pm_val2str@routines.inc.F90"
    3820             :     end procedure
    3821             : #endif
    3822             : 
    3823             : #if SK5_ENABLED && IK1_ENABLED
    3824             :     module procedure setStr_D2_IK1_SK5
    3825             :         use pm_kind, only: SKO => SK5, IKC => IK1
    3826             : #include "pm_val2str@routines.inc.F90"
    3827             :     end procedure
    3828             : #endif
    3829             : 
    3830             : #undef IK_ENABLED
    3831             : 
    3832             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3833             : 
    3834             : #define LK_ENABLED 1
    3835             : 
    3836             : #if SK1_ENABLED && LK5_ENABLED
    3837           0 :     module procedure setStr_D2_LK5_SK1
    3838             :         use pm_kind, only: SKO => SK1, LKC => LK5
    3839             : #include "pm_val2str@routines.inc.F90"
    3840             :     end procedure
    3841             : #endif
    3842             : 
    3843             : #if SK1_ENABLED && LK4_ENABLED
    3844           0 :     module procedure setStr_D2_LK4_SK1
    3845             :         use pm_kind, only: SKO => SK1, LKC => LK4
    3846             : #include "pm_val2str@routines.inc.F90"
    3847             :     end procedure
    3848             : #endif
    3849             : 
    3850             : #if SK1_ENABLED && LK3_ENABLED
    3851           0 :     module procedure setStr_D2_LK3_SK1
    3852             :         use pm_kind, only: SKO => SK1, LKC => LK3
    3853             : #include "pm_val2str@routines.inc.F90"
    3854             :     end procedure
    3855             : #endif
    3856             : 
    3857             : #if SK1_ENABLED && LK2_ENABLED
    3858           0 :     module procedure setStr_D2_LK2_SK1
    3859             :         use pm_kind, only: SKO => SK1, LKC => LK2
    3860             : #include "pm_val2str@routines.inc.F90"
    3861             :     end procedure
    3862             : #endif
    3863             : 
    3864             : #if SK1_ENABLED && LK1_ENABLED
    3865           0 :     module procedure setStr_D2_LK1_SK1
    3866             :         use pm_kind, only: SKO => SK1, LKC => LK1
    3867             : #include "pm_val2str@routines.inc.F90"
    3868             :     end procedure
    3869             : #endif
    3870             : 
    3871             : #undef LK_ENABLED
    3872             : 
    3873             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3874             : 
    3875             : #define LK_ENABLED 1
    3876             : 
    3877             : #if SK2_ENABLED && LK5_ENABLED
    3878             :     module procedure setStr_D2_LK5_SK2
    3879             :         use pm_kind, only: SKO => SK2, LKC => LK5
    3880             : #include "pm_val2str@routines.inc.F90"
    3881             :     end procedure
    3882             : #endif
    3883             : 
    3884             : #if SK2_ENABLED && LK4_ENABLED
    3885             :     module procedure setStr_D2_LK4_SK2
    3886             :         use pm_kind, only: SKO => SK2, LKC => LK4
    3887             : #include "pm_val2str@routines.inc.F90"
    3888             :     end procedure
    3889             : #endif
    3890             : 
    3891             : #if SK2_ENABLED && LK3_ENABLED
    3892             :     module procedure setStr_D2_LK3_SK2
    3893             :         use pm_kind, only: SKO => SK2, LKC => LK3
    3894             : #include "pm_val2str@routines.inc.F90"
    3895             :     end procedure
    3896             : #endif
    3897             : 
    3898             : #if SK2_ENABLED && LK2_ENABLED
    3899             :     module procedure setStr_D2_LK2_SK2
    3900             :         use pm_kind, only: SKO => SK2, LKC => LK2
    3901             : #include "pm_val2str@routines.inc.F90"
    3902             :     end procedure
    3903             : #endif
    3904             : 
    3905             : #if SK2_ENABLED && LK1_ENABLED
    3906             :     module procedure setStr_D2_LK1_SK2
    3907             :         use pm_kind, only: SKO => SK2, LKC => LK1
    3908             : #include "pm_val2str@routines.inc.F90"
    3909             :     end procedure
    3910             : #endif
    3911             : 
    3912             : #undef LK_ENABLED
    3913             : 
    3914             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3915             : 
    3916             : #define LK_ENABLED 1
    3917             : 
    3918             : #if SK3_ENABLED && LK5_ENABLED
    3919             :     module procedure setStr_D2_LK5_SK3
    3920             :         use pm_kind, only: SKO => SK3, LKC => LK5
    3921             : #include "pm_val2str@routines.inc.F90"
    3922             :     end procedure
    3923             : #endif
    3924             : 
    3925             : #if SK3_ENABLED && LK4_ENABLED
    3926             :     module procedure setStr_D2_LK4_SK3
    3927             :         use pm_kind, only: SKO => SK3, LKC => LK4
    3928             : #include "pm_val2str@routines.inc.F90"
    3929             :     end procedure
    3930             : #endif
    3931             : 
    3932             : #if SK3_ENABLED && LK3_ENABLED
    3933             :     module procedure setStr_D2_LK3_SK3
    3934             :         use pm_kind, only: SKO => SK3, LKC => LK3
    3935             : #include "pm_val2str@routines.inc.F90"
    3936             :     end procedure
    3937             : #endif
    3938             : 
    3939             : #if SK3_ENABLED && LK2_ENABLED
    3940             :     module procedure setStr_D2_LK2_SK3
    3941             :         use pm_kind, only: SKO => SK3, LKC => LK2
    3942             : #include "pm_val2str@routines.inc.F90"
    3943             :     end procedure
    3944             : #endif
    3945             : 
    3946             : #if SK3_ENABLED && LK1_ENABLED
    3947             :     module procedure setStr_D2_LK1_SK3
    3948             :         use pm_kind, only: SKO => SK3, LKC => LK1
    3949             : #include "pm_val2str@routines.inc.F90"
    3950             :     end procedure
    3951             : #endif
    3952             : 
    3953             : #undef LK_ENABLED
    3954             : 
    3955             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3956             : 
    3957             : #define LK_ENABLED 1
    3958             : 
    3959             : #if SK4_ENABLED && LK5_ENABLED
    3960             :     module procedure setStr_D2_LK5_SK4
    3961             :         use pm_kind, only: SKO => SK4, LKC => LK5
    3962             : #include "pm_val2str@routines.inc.F90"
    3963             :     end procedure
    3964             : #endif
    3965             : 
    3966             : #if SK4_ENABLED && LK4_ENABLED
    3967             :     module procedure setStr_D2_LK4_SK4
    3968             :         use pm_kind, only: SKO => SK4, LKC => LK4
    3969             : #include "pm_val2str@routines.inc.F90"
    3970             :     end procedure
    3971             : #endif
    3972             : 
    3973             : #if SK4_ENABLED && LK3_ENABLED
    3974             :     module procedure setStr_D2_LK3_SK4
    3975             :         use pm_kind, only: SKO => SK4, LKC => LK3
    3976             : #include "pm_val2str@routines.inc.F90"
    3977             :     end procedure
    3978             : #endif
    3979             : 
    3980             : #if SK4_ENABLED && LK2_ENABLED
    3981             :     module procedure setStr_D2_LK2_SK4
    3982             :         use pm_kind, only: SKO => SK4, LKC => LK2
    3983             : #include "pm_val2str@routines.inc.F90"
    3984             :     end procedure
    3985             : #endif
    3986             : 
    3987             : #if SK4_ENABLED && LK1_ENABLED
    3988             :     module procedure setStr_D2_LK1_SK4
    3989             :         use pm_kind, only: SKO => SK4, LKC => LK1
    3990             : #include "pm_val2str@routines.inc.F90"
    3991             :     end procedure
    3992             : #endif
    3993             : 
    3994             : #undef LK_ENABLED
    3995             : 
    3996             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    3997             : 
    3998             : #define LK_ENABLED 1
    3999             : 
    4000             : #if SK5_ENABLED && LK5_ENABLED
    4001             :     module procedure setStr_D2_LK5_SK5
    4002             :         use pm_kind, only: SKO => SK5, LKC => LK5
    4003             : #include "pm_val2str@routines.inc.F90"
    4004             :     end procedure
    4005             : #endif
    4006             : 
    4007             : #if SK5_ENABLED && LK4_ENABLED
    4008             :     module procedure setStr_D2_LK4_SK5
    4009             :         use pm_kind, only: SKO => SK5, LKC => LK4
    4010             : #include "pm_val2str@routines.inc.F90"
    4011             :     end procedure
    4012             : #endif
    4013             : 
    4014             : #if SK5_ENABLED && LK3_ENABLED
    4015             :     module procedure setStr_D2_LK3_SK5
    4016             :         use pm_kind, only: SKO => SK5, LKC => LK3
    4017             : #include "pm_val2str@routines.inc.F90"
    4018             :     end procedure
    4019             : #endif
    4020             : 
    4021             : #if SK5_ENABLED && LK2_ENABLED
    4022             :     module procedure setStr_D2_LK2_SK5
    4023             :         use pm_kind, only: SKO => SK5, LKC => LK2
    4024             : #include "pm_val2str@routines.inc.F90"
    4025             :     end procedure
    4026             : #endif
    4027             : 
    4028             : #if SK5_ENABLED && LK1_ENABLED
    4029             :     module procedure setStr_D2_LK1_SK5
    4030             :         use pm_kind, only: SKO => SK5, LKC => LK1
    4031             : #include "pm_val2str@routines.inc.F90"
    4032             :     end procedure
    4033             : #endif
    4034             : 
    4035             : #undef LK_ENABLED
    4036             : 
    4037             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4038             : 
    4039             : #define CK_ENABLED 1
    4040             : 
    4041             : #if SK1_ENABLED && CK5_ENABLED
    4042             :     module procedure setStr_D2_CK5_SK1
    4043             :         use pm_kind, only: SKO => SK1, CKC => CK5
    4044             : #include "pm_val2str@routines.inc.F90"
    4045             :     end procedure
    4046             : #endif
    4047             : 
    4048             : #if SK1_ENABLED && CK4_ENABLED
    4049           0 :     module procedure setStr_D2_CK4_SK1
    4050             :         use pm_kind, only: SKO => SK1, CKC => CK4
    4051             : #include "pm_val2str@routines.inc.F90"
    4052             :     end procedure
    4053             : #endif
    4054             : 
    4055             : #if SK1_ENABLED && CK3_ENABLED
    4056           0 :     module procedure setStr_D2_CK3_SK1
    4057             :         use pm_kind, only: SKO => SK1, CKC => CK3
    4058             : #include "pm_val2str@routines.inc.F90"
    4059             :     end procedure
    4060             : #endif
    4061             : 
    4062             : #if SK1_ENABLED && CK2_ENABLED
    4063           0 :     module procedure setStr_D2_CK2_SK1
    4064             :         use pm_kind, only: SKO => SK1, CKC => CK2
    4065             : #include "pm_val2str@routines.inc.F90"
    4066             :     end procedure
    4067             : #endif
    4068             : 
    4069             : #if SK1_ENABLED && CK1_ENABLED
    4070           1 :     module procedure setStr_D2_CK1_SK1
    4071             :         use pm_kind, only: SKO => SK1, CKC => CK1
    4072             : #include "pm_val2str@routines.inc.F90"
    4073             :     end procedure
    4074             : #endif
    4075             : 
    4076             : #undef CK_ENABLED
    4077             : 
    4078             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4079             : 
    4080             : #define CK_ENABLED 1
    4081             : 
    4082             : #if SK2_ENABLED && CK5_ENABLED
    4083             :     module procedure setStr_D2_CK5_SK2
    4084             :         use pm_kind, only: SKO => SK2, CKC => CK5
    4085             : #include "pm_val2str@routines.inc.F90"
    4086             :     end procedure
    4087             : #endif
    4088             : 
    4089             : #if SK2_ENABLED && CK4_ENABLED
    4090             :     module procedure setStr_D2_CK4_SK2
    4091             :         use pm_kind, only: SKO => SK2, CKC => CK4
    4092             : #include "pm_val2str@routines.inc.F90"
    4093             :     end procedure
    4094             : #endif
    4095             : 
    4096             : #if SK2_ENABLED && CK3_ENABLED
    4097             :     module procedure setStr_D2_CK3_SK2
    4098             :         use pm_kind, only: SKO => SK2, CKC => CK3
    4099             : #include "pm_val2str@routines.inc.F90"
    4100             :     end procedure
    4101             : #endif
    4102             : 
    4103             : #if SK2_ENABLED && CK2_ENABLED
    4104             :     module procedure setStr_D2_CK2_SK2
    4105             :         use pm_kind, only: SKO => SK2, CKC => CK2
    4106             : #include "pm_val2str@routines.inc.F90"
    4107             :     end procedure
    4108             : #endif
    4109             : 
    4110             : #if SK2_ENABLED && CK1_ENABLED
    4111             :     module procedure setStr_D2_CK1_SK2
    4112             :         use pm_kind, only: SKO => SK2, CKC => CK1
    4113             : #include "pm_val2str@routines.inc.F90"
    4114             :     end procedure
    4115             : #endif
    4116             : 
    4117             : #undef CK_ENABLED
    4118             : 
    4119             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4120             : 
    4121             : #define CK_ENABLED 1
    4122             : 
    4123             : #if SK3_ENABLED && CK5_ENABLED
    4124             :     module procedure setStr_D2_CK5_SK3
    4125             :         use pm_kind, only: SKO => SK3, CKC => CK5
    4126             : #include "pm_val2str@routines.inc.F90"
    4127             :     end procedure
    4128             : #endif
    4129             : 
    4130             : #if SK3_ENABLED && CK4_ENABLED
    4131             :     module procedure setStr_D2_CK4_SK3
    4132             :         use pm_kind, only: SKO => SK3, CKC => CK4
    4133             : #include "pm_val2str@routines.inc.F90"
    4134             :     end procedure
    4135             : #endif
    4136             : 
    4137             : #if SK3_ENABLED && CK3_ENABLED
    4138             :     module procedure setStr_D2_CK3_SK3
    4139             :         use pm_kind, only: SKO => SK3, CKC => CK3
    4140             : #include "pm_val2str@routines.inc.F90"
    4141             :     end procedure
    4142             : #endif
    4143             : 
    4144             : #if SK3_ENABLED && CK2_ENABLED
    4145             :     module procedure setStr_D2_CK2_SK3
    4146             :         use pm_kind, only: SKO => SK3, CKC => CK2
    4147             : #include "pm_val2str@routines.inc.F90"
    4148             :     end procedure
    4149             : #endif
    4150             : 
    4151             : #if SK3_ENABLED && CK1_ENABLED
    4152             :     module procedure setStr_D2_CK1_SK3
    4153             :         use pm_kind, only: SKO => SK3, CKC => CK1
    4154             : #include "pm_val2str@routines.inc.F90"
    4155             :     end procedure
    4156             : #endif
    4157             : 
    4158             : #undef CK_ENABLED
    4159             : 
    4160             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4161             : 
    4162             : #define CK_ENABLED 1
    4163             : 
    4164             : #if SK4_ENABLED && CK5_ENABLED
    4165             :     module procedure setStr_D2_CK5_SK4
    4166             :         use pm_kind, only: SKO => SK4, CKC => CK5
    4167             : #include "pm_val2str@routines.inc.F90"
    4168             :     end procedure
    4169             : #endif
    4170             : 
    4171             : #if SK4_ENABLED && CK4_ENABLED
    4172             :     module procedure setStr_D2_CK4_SK4
    4173             :         use pm_kind, only: SKO => SK4, CKC => CK4
    4174             : #include "pm_val2str@routines.inc.F90"
    4175             :     end procedure
    4176             : #endif
    4177             : 
    4178             : #if SK4_ENABLED && CK3_ENABLED
    4179             :     module procedure setStr_D2_CK3_SK4
    4180             :         use pm_kind, only: SKO => SK4, CKC => CK3
    4181             : #include "pm_val2str@routines.inc.F90"
    4182             :     end procedure
    4183             : #endif
    4184             : 
    4185             : #if SK4_ENABLED && CK2_ENABLED
    4186             :     module procedure setStr_D2_CK2_SK4
    4187             :         use pm_kind, only: SKO => SK4, CKC => CK2
    4188             : #include "pm_val2str@routines.inc.F90"
    4189             :     end procedure
    4190             : #endif
    4191             : 
    4192             : #if SK4_ENABLED && CK1_ENABLED
    4193             :     module procedure setStr_D2_CK1_SK4
    4194             :         use pm_kind, only: SKO => SK4, CKC => CK1
    4195             : #include "pm_val2str@routines.inc.F90"
    4196             :     end procedure
    4197             : #endif
    4198             : 
    4199             : #undef CK_ENABLED
    4200             : 
    4201             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4202             : 
    4203             : #define CK_ENABLED 1
    4204             : 
    4205             : #if SK5_ENABLED && CK5_ENABLED
    4206             :     module procedure setStr_D2_CK5_SK5
    4207             :         use pm_kind, only: SKO => SK5, CKC => CK5
    4208             : #include "pm_val2str@routines.inc.F90"
    4209             :     end procedure
    4210             : #endif
    4211             : 
    4212             : #if SK5_ENABLED && CK4_ENABLED
    4213             :     module procedure setStr_D2_CK4_SK5
    4214             :         use pm_kind, only: SKO => SK5, CKC => CK4
    4215             : #include "pm_val2str@routines.inc.F90"
    4216             :     end procedure
    4217             : #endif
    4218             : 
    4219             : #if SK5_ENABLED && CK3_ENABLED
    4220             :     module procedure setStr_D2_CK3_SK5
    4221             :         use pm_kind, only: SKO => SK5, CKC => CK3
    4222             : #include "pm_val2str@routines.inc.F90"
    4223             :     end procedure
    4224             : #endif
    4225             : 
    4226             : #if SK5_ENABLED && CK2_ENABLED
    4227             :     module procedure setStr_D2_CK2_SK5
    4228             :         use pm_kind, only: SKO => SK5, CKC => CK2
    4229             : #include "pm_val2str@routines.inc.F90"
    4230             :     end procedure
    4231             : #endif
    4232             : 
    4233             : #if SK5_ENABLED && CK1_ENABLED
    4234             :     module procedure setStr_D2_CK1_SK5
    4235             :         use pm_kind, only: SKO => SK5, CKC => CK1
    4236             : #include "pm_val2str@routines.inc.F90"
    4237             :     end procedure
    4238             : #endif
    4239             : 
    4240             : #undef CK_ENABLED
    4241             : 
    4242             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4243             : 
    4244             : #define RK_ENABLED 1
    4245             : 
    4246             : #if SK1_ENABLED && RK5_ENABLED
    4247             :     module procedure setStr_D2_RK5_SK1
    4248             :         use pm_kind, only: SKO => SK1, RKC => RK5
    4249             : #include "pm_val2str@routines.inc.F90"
    4250             :     end procedure
    4251             : #endif
    4252             : 
    4253             : #if SK1_ENABLED && RK4_ENABLED
    4254           0 :     module procedure setStr_D2_RK4_SK1
    4255             :         use pm_kind, only: SKO => SK1, RKC => RK4
    4256             : #include "pm_val2str@routines.inc.F90"
    4257             :     end procedure
    4258             : #endif
    4259             : 
    4260             : #if SK1_ENABLED && RK3_ENABLED
    4261           0 :     module procedure setStr_D2_RK3_SK1
    4262             :         use pm_kind, only: SKO => SK1, RKC => RK3
    4263             : #include "pm_val2str@routines.inc.F90"
    4264             :     end procedure
    4265             : #endif
    4266             : 
    4267             : #if SK1_ENABLED && RK2_ENABLED
    4268           0 :     module procedure setStr_D2_RK2_SK1
    4269             :         use pm_kind, only: SKO => SK1, RKC => RK2
    4270             : #include "pm_val2str@routines.inc.F90"
    4271             :     end procedure
    4272             : #endif
    4273             : 
    4274             : #if SK1_ENABLED && RK1_ENABLED
    4275           0 :     module procedure setStr_D2_RK1_SK1
    4276             :         use pm_kind, only: SKO => SK1, RKC => RK1
    4277             : #include "pm_val2str@routines.inc.F90"
    4278             :     end procedure
    4279             : #endif
    4280             : 
    4281             : #undef RK_ENABLED
    4282             : 
    4283             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4284             : 
    4285             : #define RK_ENABLED 1
    4286             : 
    4287             : #if SK2_ENABLED && RK5_ENABLED
    4288             :     module procedure setStr_D2_RK5_SK2
    4289             :         use pm_kind, only: SKO => SK2, RKC => RK5
    4290             : #include "pm_val2str@routines.inc.F90"
    4291             :     end procedure
    4292             : #endif
    4293             : 
    4294             : #if SK2_ENABLED && RK4_ENABLED
    4295             :     module procedure setStr_D2_RK4_SK2
    4296             :         use pm_kind, only: SKO => SK2, RKC => RK4
    4297             : #include "pm_val2str@routines.inc.F90"
    4298             :     end procedure
    4299             : #endif
    4300             : 
    4301             : #if SK2_ENABLED && RK3_ENABLED
    4302             :     module procedure setStr_D2_RK3_SK2
    4303             :         use pm_kind, only: SKO => SK2, RKC => RK3
    4304             : #include "pm_val2str@routines.inc.F90"
    4305             :     end procedure
    4306             : #endif
    4307             : 
    4308             : #if SK2_ENABLED && RK2_ENABLED
    4309             :     module procedure setStr_D2_RK2_SK2
    4310             :         use pm_kind, only: SKO => SK2, RKC => RK2
    4311             : #include "pm_val2str@routines.inc.F90"
    4312             :     end procedure
    4313             : #endif
    4314             : 
    4315             : #if SK2_ENABLED && RK1_ENABLED
    4316             :     module procedure setStr_D2_RK1_SK2
    4317             :         use pm_kind, only: SKO => SK2, RKC => RK1
    4318             : #include "pm_val2str@routines.inc.F90"
    4319             :     end procedure
    4320             : #endif
    4321             : 
    4322             : #undef RK_ENABLED
    4323             : 
    4324             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4325             : 
    4326             : #define RK_ENABLED 1
    4327             : 
    4328             : #if SK3_ENABLED && RK5_ENABLED
    4329             :     module procedure setStr_D2_RK5_SK3
    4330             :         use pm_kind, only: SKO => SK3, RKC => RK5
    4331             : #include "pm_val2str@routines.inc.F90"
    4332             :     end procedure
    4333             : #endif
    4334             : 
    4335             : #if SK3_ENABLED && RK4_ENABLED
    4336             :     module procedure setStr_D2_RK4_SK3
    4337             :         use pm_kind, only: SKO => SK3, RKC => RK4
    4338             : #include "pm_val2str@routines.inc.F90"
    4339             :     end procedure
    4340             : #endif
    4341             : 
    4342             : #if SK3_ENABLED && RK3_ENABLED
    4343             :     module procedure setStr_D2_RK3_SK3
    4344             :         use pm_kind, only: SKO => SK3, RKC => RK3
    4345             : #include "pm_val2str@routines.inc.F90"
    4346             :     end procedure
    4347             : #endif
    4348             : 
    4349             : #if SK3_ENABLED && RK2_ENABLED
    4350             :     module procedure setStr_D2_RK2_SK3
    4351             :         use pm_kind, only: SKO => SK3, RKC => RK2
    4352             : #include "pm_val2str@routines.inc.F90"
    4353             :     end procedure
    4354             : #endif
    4355             : 
    4356             : #if SK3_ENABLED && RK1_ENABLED
    4357             :     module procedure setStr_D2_RK1_SK3
    4358             :         use pm_kind, only: SKO => SK3, RKC => RK1
    4359             : #include "pm_val2str@routines.inc.F90"
    4360             :     end procedure
    4361             : #endif
    4362             : 
    4363             : #undef RK_ENABLED
    4364             : 
    4365             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4366             : 
    4367             : #define RK_ENABLED 1
    4368             : 
    4369             : #if SK4_ENABLED && RK5_ENABLED
    4370             :     module procedure setStr_D2_RK5_SK4
    4371             :         use pm_kind, only: SKO => SK4, RKC => RK5
    4372             : #include "pm_val2str@routines.inc.F90"
    4373             :     end procedure
    4374             : #endif
    4375             : 
    4376             : #if SK4_ENABLED && RK4_ENABLED
    4377             :     module procedure setStr_D2_RK4_SK4
    4378             :         use pm_kind, only: SKO => SK4, RKC => RK4
    4379             : #include "pm_val2str@routines.inc.F90"
    4380             :     end procedure
    4381             : #endif
    4382             : 
    4383             : #if SK4_ENABLED && RK3_ENABLED
    4384             :     module procedure setStr_D2_RK3_SK4
    4385             :         use pm_kind, only: SKO => SK4, RKC => RK3
    4386             : #include "pm_val2str@routines.inc.F90"
    4387             :     end procedure
    4388             : #endif
    4389             : 
    4390             : #if SK4_ENABLED && RK2_ENABLED
    4391             :     module procedure setStr_D2_RK2_SK4
    4392             :         use pm_kind, only: SKO => SK4, RKC => RK2
    4393             : #include "pm_val2str@routines.inc.F90"
    4394             :     end procedure
    4395             : #endif
    4396             : 
    4397             : #if SK4_ENABLED && RK1_ENABLED
    4398             :     module procedure setStr_D2_RK1_SK4
    4399             :         use pm_kind, only: SKO => SK4, RKC => RK1
    4400             : #include "pm_val2str@routines.inc.F90"
    4401             :     end procedure
    4402             : #endif
    4403             : 
    4404             : #undef RK_ENABLED
    4405             : 
    4406             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4407             : 
    4408             : #define RK_ENABLED 1
    4409             : 
    4410             : #if SK5_ENABLED && RK5_ENABLED
    4411             :     module procedure setStr_D2_RK5_SK5
    4412             :         use pm_kind, only: SKO => SK5, RKC => RK5
    4413             : #include "pm_val2str@routines.inc.F90"
    4414             :     end procedure
    4415             : #endif
    4416             : 
    4417             : #if SK5_ENABLED && RK4_ENABLED
    4418             :     module procedure setStr_D2_RK4_SK5
    4419             :         use pm_kind, only: SKO => SK5, RKC => RK4
    4420             : #include "pm_val2str@routines.inc.F90"
    4421             :     end procedure
    4422             : #endif
    4423             : 
    4424             : #if SK5_ENABLED && RK3_ENABLED
    4425             :     module procedure setStr_D2_RK3_SK5
    4426             :         use pm_kind, only: SKO => SK5, RKC => RK3
    4427             : #include "pm_val2str@routines.inc.F90"
    4428             :     end procedure
    4429             : #endif
    4430             : 
    4431             : #if SK5_ENABLED && RK2_ENABLED
    4432             :     module procedure setStr_D2_RK2_SK5
    4433             :         use pm_kind, only: SKO => SK5, RKC => RK2
    4434             : #include "pm_val2str@routines.inc.F90"
    4435             :     end procedure
    4436             : #endif
    4437             : 
    4438             : #if SK5_ENABLED && RK1_ENABLED
    4439             :     module procedure setStr_D2_RK1_SK5
    4440             :         use pm_kind, only: SKO => SK5, RKC => RK1
    4441             : #include "pm_val2str@routines.inc.F90"
    4442             :     end procedure
    4443             : #endif
    4444             : 
    4445             : #undef RK_ENABLED
    4446             : 
    4447             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4448             : 
    4449             : #define PSSK_ENABLED 1
    4450             : 
    4451             : #if SK1_ENABLED && SK5_ENABLED
    4452             :     module procedure setStr_D2_PSSK5_SK1
    4453             :         use pm_kind, only: SKO => SK1, SKC => SK5
    4454             : #include "pm_val2str@routines.inc.F90"
    4455             :     end procedure
    4456             : #endif
    4457             : 
    4458             : #if SK1_ENABLED && SK4_ENABLED
    4459             :     module procedure setStr_D2_PSSK4_SK1
    4460             :         use pm_kind, only: SKO => SK1, SKC => SK4
    4461             : #include "pm_val2str@routines.inc.F90"
    4462             :     end procedure
    4463             : #endif
    4464             : 
    4465             : #if SK1_ENABLED && SK3_ENABLED
    4466             :     module procedure setStr_D2_PSSK3_SK1
    4467             :         use pm_kind, only: SKO => SK1, SKC => SK3
    4468             : #include "pm_val2str@routines.inc.F90"
    4469             :     end procedure
    4470             : #endif
    4471             : 
    4472             : #if SK1_ENABLED && SK2_ENABLED
    4473             :     module procedure setStr_D2_PSSK2_SK1
    4474             :         use pm_kind, only: SKO => SK1, SKC => SK2
    4475             : #include "pm_val2str@routines.inc.F90"
    4476             :     end procedure
    4477             : #endif
    4478             : 
    4479             : #if SK1_ENABLED && SK1_ENABLED
    4480           0 :     module procedure setStr_D2_PSSK1_SK1
    4481             :         use pm_kind, only: SKO => SK1, SKC => SK1
    4482             : #include "pm_val2str@routines.inc.F90"
    4483           0 :     end procedure
    4484             : #endif
    4485             : 
    4486             : #undef PSSK_ENABLED
    4487             : 
    4488             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4489             : 
    4490             : #define PSSK_ENABLED 1
    4491             : 
    4492             : #if SK2_ENABLED && SK5_ENABLED
    4493             :     module procedure setStr_D2_PSSK5_SK2
    4494             :         use pm_kind, only: SKO => SK2, SKC => SK5
    4495             : #include "pm_val2str@routines.inc.F90"
    4496             :     end procedure
    4497             : #endif
    4498             : 
    4499             : #if SK2_ENABLED && SK4_ENABLED
    4500             :     module procedure setStr_D2_PSSK4_SK2
    4501             :         use pm_kind, only: SKO => SK2, SKC => SK4
    4502             : #include "pm_val2str@routines.inc.F90"
    4503             :     end procedure
    4504             : #endif
    4505             : 
    4506             : #if SK2_ENABLED && SK3_ENABLED
    4507             :     module procedure setStr_D2_PSSK3_SK2
    4508             :         use pm_kind, only: SKO => SK2, SKC => SK3
    4509             : #include "pm_val2str@routines.inc.F90"
    4510             :     end procedure
    4511             : #endif
    4512             : 
    4513             : #if SK2_ENABLED && SK2_ENABLED
    4514             :     module procedure setStr_D2_PSSK2_SK2
    4515             :         use pm_kind, only: SKO => SK2, SKC => SK2
    4516             : #include "pm_val2str@routines.inc.F90"
    4517             :     end procedure
    4518             : #endif
    4519             : 
    4520             : #if SK2_ENABLED && SK1_ENABLED
    4521             :     module procedure setStr_D2_PSSK1_SK2
    4522             :         use pm_kind, only: SKO => SK2, SKC => SK1
    4523             : #include "pm_val2str@routines.inc.F90"
    4524             :     end procedure
    4525             : #endif
    4526             : 
    4527             : #undef PSSK_ENABLED
    4528             : 
    4529             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4530             : 
    4531             : #define PSSK_ENABLED 1
    4532             : 
    4533             : #if SK3_ENABLED && SK5_ENABLED
    4534             :     module procedure setStr_D2_PSSK5_SK3
    4535             :         use pm_kind, only: SKO => SK3, SKC => SK5
    4536             : #include "pm_val2str@routines.inc.F90"
    4537             :     end procedure
    4538             : #endif
    4539             : 
    4540             : #if SK3_ENABLED && SK4_ENABLED
    4541             :     module procedure setStr_D2_PSSK4_SK3
    4542             :         use pm_kind, only: SKO => SK3, SKC => SK4
    4543             : #include "pm_val2str@routines.inc.F90"
    4544             :     end procedure
    4545             : #endif
    4546             : 
    4547             : #if SK3_ENABLED && SK3_ENABLED
    4548             :     module procedure setStr_D2_PSSK3_SK3
    4549             :         use pm_kind, only: SKO => SK3, SKC => SK3
    4550             : #include "pm_val2str@routines.inc.F90"
    4551             :     end procedure
    4552             : #endif
    4553             : 
    4554             : #if SK3_ENABLED && SK2_ENABLED
    4555             :     module procedure setStr_D2_PSSK2_SK3
    4556             :         use pm_kind, only: SKO => SK3, SKC => SK2
    4557             : #include "pm_val2str@routines.inc.F90"
    4558             :     end procedure
    4559             : #endif
    4560             : 
    4561             : #if SK3_ENABLED && SK1_ENABLED
    4562             :     module procedure setStr_D2_PSSK1_SK3
    4563             :         use pm_kind, only: SKO => SK3, SKC => SK1
    4564             : #include "pm_val2str@routines.inc.F90"
    4565             :     end procedure
    4566             : #endif
    4567             : 
    4568             : #undef PSSK_ENABLED
    4569             : 
    4570             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4571             : 
    4572             : #define PSSK_ENABLED 1
    4573             : 
    4574             : #if SK4_ENABLED && SK5_ENABLED
    4575             :     module procedure setStr_D2_PSSK5_SK4
    4576             :         use pm_kind, only: SKO => SK4, SKC => SK5
    4577             : #include "pm_val2str@routines.inc.F90"
    4578             :     end procedure
    4579             : #endif
    4580             : 
    4581             : #if SK4_ENABLED && SK4_ENABLED
    4582             :     module procedure setStr_D2_PSSK4_SK4
    4583             :         use pm_kind, only: SKO => SK4, SKC => SK4
    4584             : #include "pm_val2str@routines.inc.F90"
    4585             :     end procedure
    4586             : #endif
    4587             : 
    4588             : #if SK4_ENABLED && SK3_ENABLED
    4589             :     module procedure setStr_D2_PSSK3_SK4
    4590             :         use pm_kind, only: SKO => SK4, SKC => SK3
    4591             : #include "pm_val2str@routines.inc.F90"
    4592             :     end procedure
    4593             : #endif
    4594             : 
    4595             : #if SK4_ENABLED && SK2_ENABLED
    4596             :     module procedure setStr_D2_PSSK2_SK4
    4597             :         use pm_kind, only: SKO => SK4, SKC => SK2
    4598             : #include "pm_val2str@routines.inc.F90"
    4599             :     end procedure
    4600             : #endif
    4601             : 
    4602             : #if SK4_ENABLED && SK1_ENABLED
    4603             :     module procedure setStr_D2_PSSK1_SK4
    4604             :         use pm_kind, only: SKO => SK4, SKC => SK1
    4605             : #include "pm_val2str@routines.inc.F90"
    4606             :     end procedure
    4607             : #endif
    4608             : 
    4609             : #undef PSSK_ENABLED
    4610             : 
    4611             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4612             : 
    4613             : #define PSSK_ENABLED 1
    4614             : 
    4615             : #if SK5_ENABLED && SK5_ENABLED
    4616             :     module procedure setStr_D2_PSSK5_SK5
    4617             :         use pm_kind, only: SKO => SK5, SKC => SK5
    4618             : #include "pm_val2str@routines.inc.F90"
    4619             :     end procedure
    4620             : #endif
    4621             : 
    4622             : #if SK5_ENABLED && SK4_ENABLED
    4623             :     module procedure setStr_D2_PSSK4_SK5
    4624             :         use pm_kind, only: SKO => SK5, SKC => SK4
    4625             : #include "pm_val2str@routines.inc.F90"
    4626             :     end procedure
    4627             : #endif
    4628             : 
    4629             : #if SK5_ENABLED && SK3_ENABLED
    4630             :     module procedure setStr_D2_PSSK3_SK5
    4631             :         use pm_kind, only: SKO => SK5, SKC => SK3
    4632             : #include "pm_val2str@routines.inc.F90"
    4633             :     end procedure
    4634             : #endif
    4635             : 
    4636             : #if SK5_ENABLED && SK2_ENABLED
    4637             :     module procedure setStr_D2_PSSK2_SK5
    4638             :         use pm_kind, only: SKO => SK5, SKC => SK2
    4639             : #include "pm_val2str@routines.inc.F90"
    4640             :     end procedure
    4641             : #endif
    4642             : 
    4643             : #if SK5_ENABLED && SK1_ENABLED
    4644             :     module procedure setStr_D2_PSSK1_SK5
    4645             :         use pm_kind, only: SKO => SK5, SKC => SK1
    4646             : #include "pm_val2str@routines.inc.F90"
    4647             :     end procedure
    4648             : #endif
    4649             : 
    4650             : #undef PSSK_ENABLED
    4651             : 
    4652             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4653             : 
    4654             : #define BSSK_ENABLED 1
    4655             : 
    4656             : #if SK5_ENABLED
    4657             :     module procedure setStr_D2_BSSK5_SK5
    4658             :         use pm_kind, only: SKO => SK5, SKC => SK5
    4659             : #include "pm_val2str@routines.inc.F90"
    4660             :     end procedure
    4661             : #endif
    4662             : 
    4663             : #if SK5_ENABLED
    4664             :     module procedure setStr_D2_BSSK4_SK5
    4665             :         use pm_kind, only: SKO => SK5, SKC => SK4
    4666             : #include "pm_val2str@routines.inc.F90"
    4667             :     end procedure
    4668             : #endif
    4669             : 
    4670             : #if SK5_ENABLED
    4671             :     module procedure setStr_D2_BSSK3_SK5
    4672             :         use pm_kind, only: SKO => SK5, SKC => SK3
    4673             : #include "pm_val2str@routines.inc.F90"
    4674             :     end procedure
    4675             : #endif
    4676             : 
    4677             : #if SK5_ENABLED
    4678             :     module procedure setStr_D2_BSSK2_SK5
    4679             :         use pm_kind, only: SKO => SK5, SKC => SK2
    4680             : #include "pm_val2str@routines.inc.F90"
    4681             :     end procedure
    4682             : #endif
    4683             : 
    4684             : #if SK5_ENABLED
    4685             :     module procedure setStr_D2_BSSK1_SK5
    4686             :         use pm_kind, only: SKO => SK5, SKC => SK1
    4687             : #include "pm_val2str@routines.inc.F90"
    4688             :     end procedure
    4689             : #endif
    4690             : 
    4691             : #undef BSSK_ENABLED
    4692             : 
    4693             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4694             : 
    4695             : #undef D2_ENABLED
    4696             : 
    4697             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4698             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4699             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4700             : 
    4701             : #undef setStr_ENABLED
    4702             : 
    4703             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    4704             : 
    4705             : #undef CHECK_ASSERTION
    4706             : 
    4707             : end submodule routines

ParaMonte: Parallel Monte Carlo and Machine Learning Library 
The Computational Data Science Lab
© Copyright 2012 - 2024