ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_arraySplit.F90
Go to the documentation of this file.
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
47
49
50 use pm_kind, only: SK, IK, LK
51
52 implicit none
53
54 character(*, SK), parameter :: MODULE_NAME = "@pm_arraySplit"
55
56!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
57
284
285 ! <li> An output `contiguous` vector of shape `(:)` of type `integer` of default kind \IK, <br>
286 ! representing the positions of the last elements of the split parts in the input `array` such that,<br>
287 ! <ol>
288 ! <li> The subset `array(1 : field(1) - lenDelim)` represents the first
289 ! <li> The subset `field(2, :)` contains the indices of the end points of the split parts of the input `array`.<br>
290 ! </ol>
291 ! The two elements along the first dimension represent the starting and the ending indices of each split part in `array`.<br>
292 ! The actual final number of splits of the input array will be output in the output argument `nsplit` such that,<br>
293 ! <ol>
294 ! <li> The subset `field(1, 1 : nsplit)` contains the indices of the beginnings of the split parts of the input `array`.<br>
295 ! <li> The subset `field(2, 1 : nsplit)` contains the indices of the end points of the split parts of the input `array`.<br>
296 ! </ol>
297 ! This `contiguous` form of `field` is available **if and only if** the output argument `nsplit` is also present.<br>
298 ! This `contiguous` form of `field` is particularly useful and performant by avoiding repeated allocations of the output `field`
299 ! when many records with roughly equal number of split parts are to be split using this generic interface.<br>
300 ! The only caveat is that the user must set the size of the second dimension of `field`
301 ! to be larger than or equal to the actual number of splits that the algorithm may find.<br>
302 ! This limitation can be readily overcome by pre-allocating `field` to theoretical maximum possible
303 ! value for the output `nsplit`, which yields the shape `(1 : 2, 1 : 1 + lenArray / min(1, lenDelim))`,
304 ! where `lenArray` is the length/size of the input `array` and `lenDelim` is length/size of the input `sep`.<br>
305 ! \param[in] nsplit : The output scalar of type `integer` of default kind \IK containing the number of splits identified in the input `array`,
306 ! such that `field(1 : nsplit)` represents the vector of positions of the last elements of split parts in the input `array`.<br>
307 ! (**optional**. It must be present *if and only** the output `field` is a pre-sized (allocated) **vector** of type `integer`.)
308
309! ! fixed-size index
310!
311! interface setSplit
312!
313! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
314! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
315! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
316!
317! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
318! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
319! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
320!
321! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
322!
323!#if SK5_ENABLED
324! PURE module subroutine setSplitFixDefComDefIns_D0_D0_SK5(field, nsplit, array, sep, keep)
325!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
326! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D0_D0_SK5
327!#endif
328! use pm_kind, only: SKG => SK5
329! integer(IK) , intent(out) , contiguous :: field(:)
330! integer(IK) , intent(out) :: nsplit
331! character(*,SKG) , intent(in) :: array
332! character(*,SKG) , intent(in) :: sep
333! logical(LK) , intent(in) , optional :: keep
334! end subroutine
335!#endif
336!
337!#if SK4_ENABLED
338! PURE module subroutine setSplitFixDefComDefIns_D0_D0_SK4(field, nsplit, array, sep, keep)
339!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
340! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D0_D0_SK4
341!#endif
342! use pm_kind, only: SKG => SK4
343! integer(IK) , intent(out) , contiguous :: field(:)
344! integer(IK) , intent(out) :: nsplit
345! character(*,SKG) , intent(in) :: array
346! character(*,SKG) , intent(in) :: sep
347! logical(LK) , intent(in) , optional :: keep
348! end subroutine
349!#endif
350!
351!#if SK3_ENABLED
352! PURE module subroutine setSplitFixDefComDefIns_D0_D0_SK3(field, nsplit, array, sep, keep)
353!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
354! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D0_D0_SK3
355!#endif
356! use pm_kind, only: SKG => SK3
357! integer(IK) , intent(out) , contiguous :: field(:)
358! integer(IK) , intent(out) :: nsplit
359! character(*,SKG) , intent(in) :: array
360! character(*,SKG) , intent(in) :: sep
361! logical(LK) , intent(in) , optional :: keep
362! end subroutine
363!#endif
364!
365!#if SK2_ENABLED
366! PURE module subroutine setSplitFixDefComDefIns_D0_D0_SK2(field, nsplit, array, sep, keep)
367!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
368! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D0_D0_SK2
369!#endif
370! use pm_kind, only: SKG => SK2
371! integer(IK) , intent(out) , contiguous :: field(:)
372! integer(IK) , intent(out) :: nsplit
373! character(*,SKG) , intent(in) :: array
374! character(*,SKG) , intent(in) :: sep
375! logical(LK) , intent(in) , optional :: keep
376! end subroutine
377!#endif
378!
379!#if SK1_ENABLED
380! PURE module subroutine setSplitFixDefComDefIns_D0_D0_SK1(field, nsplit, array, sep, keep)
381!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
382! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D0_D0_SK1
383!#endif
384! use pm_kind, only: SKG => SK1
385! integer(IK) , intent(out) , contiguous :: field(:)
386! integer(IK) , intent(out) :: nsplit
387! character(*,SKG) , intent(in) :: array
388! character(*,SKG) , intent(in) :: sep
389! logical(LK) , intent(in) , optional :: keep
390! end subroutine
391!#endif
392!
393! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
394!
395!#if SK5_ENABLED
396! PURE module subroutine setSplitFixDefComDefIns_D1_D0_SK5(field, nsplit, array, sep, keep)
397!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
398! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_SK5
399!#endif
400! use pm_kind, only: SKG => SK5
401! integer(IK) , intent(out) , contiguous :: field(:)
402! integer(IK) , intent(out) :: nsplit
403! character(*,SKG) , intent(in) , contiguous :: array(:)
404! character(*,SKG) , intent(in) :: sep
405! logical(LK) , intent(in) , optional :: keep
406! end subroutine
407!#endif
408!
409!#if SK4_ENABLED
410! PURE module subroutine setSplitFixDefComDefIns_D1_D0_SK4(field, nsplit, array, sep, keep)
411!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
412! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_SK4
413!#endif
414! use pm_kind, only: SKG => SK4
415! integer(IK) , intent(out) , contiguous :: field(:)
416! integer(IK) , intent(out) :: nsplit
417! character(*,SKG) , intent(in) , contiguous :: array(:)
418! character(*,SKG) , intent(in) :: sep
419! logical(LK) , intent(in) , optional :: keep
420! end subroutine
421!#endif
422!
423!#if SK3_ENABLED
424! PURE module subroutine setSplitFixDefComDefIns_D1_D0_SK3(field, nsplit, array, sep, keep)
425!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
426! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_SK3
427!#endif
428! use pm_kind, only: SKG => SK3
429! integer(IK) , intent(out) , contiguous :: field(:)
430! integer(IK) , intent(out) :: nsplit
431! character(*,SKG) , intent(in) , contiguous :: array(:)
432! character(*,SKG) , intent(in) :: sep
433! logical(LK) , intent(in) , optional :: keep
434! end subroutine
435!#endif
436!
437!#if SK2_ENABLED
438! PURE module subroutine setSplitFixDefComDefIns_D1_D0_SK2(field, nsplit, array, sep, keep)
439!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
440! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_SK2
441!#endif
442! use pm_kind, only: SKG => SK2
443! integer(IK) , intent(out) , contiguous :: field(:)
444! integer(IK) , intent(out) :: nsplit
445! character(*,SKG) , intent(in) , contiguous :: array(:)
446! character(*,SKG) , intent(in) :: sep
447! logical(LK) , intent(in) , optional :: keep
448! end subroutine
449!#endif
450!
451!#if SK1_ENABLED
452! PURE module subroutine setSplitFixDefComDefIns_D1_D0_SK1(field, nsplit, array, sep, keep)
453!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
454! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_SK1
455!#endif
456! use pm_kind, only: SKG => SK1
457! integer(IK) , intent(out) , contiguous :: field(:)
458! integer(IK) , intent(out) :: nsplit
459! character(*,SKG) , intent(in) , contiguous :: array(:)
460! character(*,SKG) , intent(in) :: sep
461! logical(LK) , intent(in) , optional :: keep
462! end subroutine
463!#endif
464!
465! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
466!
467!#if IK5_ENABLED
468! PURE module subroutine setSplitFixDefComDefIns_D1_D0_IK5(field, nsplit, array, sep, keep)
469!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
470! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_IK5
471!#endif
472! use pm_kind, only: IKG => IK5
473! integer(IK) , intent(out) , contiguous :: field(:)
474! integer(IK) , intent(out) :: nsplit
475! integer(IKG) , intent(in) , contiguous :: array(:)
476! integer(IKG) , intent(in) :: sep
477! logical(LK) , intent(in) , optional :: keep
478! end subroutine
479!#endif
480!
481!#if IK4_ENABLED
482! PURE module subroutine setSplitFixDefComDefIns_D1_D0_IK4(field, nsplit, array, sep, keep)
483!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
484! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_IK4
485!#endif
486! use pm_kind, only: IKG => IK4
487! integer(IK) , intent(out) , contiguous :: field(:)
488! integer(IK) , intent(out) :: nsplit
489! integer(IKG) , intent(in) , contiguous :: array(:)
490! integer(IKG) , intent(in) :: sep
491! logical(LK) , intent(in) , optional :: keep
492! end subroutine
493!#endif
494!
495!#if IK3_ENABLED
496! PURE module subroutine setSplitFixDefComDefIns_D1_D0_IK3(field, nsplit, array, sep, keep)
497!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
498! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_IK3
499!#endif
500! use pm_kind, only: IKG => IK3
501! integer(IK) , intent(out) , contiguous :: field(:)
502! integer(IK) , intent(out) :: nsplit
503! integer(IKG) , intent(in) , contiguous :: array(:)
504! integer(IKG) , intent(in) :: sep
505! logical(LK) , intent(in) , optional :: keep
506! end subroutine
507!#endif
508!
509!#if IK2_ENABLED
510! PURE module subroutine setSplitFixDefComDefIns_D1_D0_IK2(field, nsplit, array, sep, keep)
511!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
512! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_IK2
513!#endif
514! use pm_kind, only: IKG => IK2
515! integer(IK) , intent(out) , contiguous :: field(:)
516! integer(IK) , intent(out) :: nsplit
517! integer(IKG) , intent(in) , contiguous :: array(:)
518! integer(IKG) , intent(in) :: sep
519! logical(LK) , intent(in) , optional :: keep
520! end subroutine
521!#endif
522!
523!#if IK1_ENABLED
524! PURE module subroutine setSplitFixDefComDefIns_D1_D0_IK1(field, nsplit, array, sep, keep)
525!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
526! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_IK1
527!#endif
528! use pm_kind, only: IKG => IK1
529! integer(IK) , intent(out) , contiguous :: field(:)
530! integer(IK) , intent(out) :: nsplit
531! integer(IKG) , intent(in) , contiguous :: array(:)
532! integer(IKG) , intent(in) :: sep
533! logical(LK) , intent(in) , optional :: keep
534! end subroutine
535!#endif
536!
537! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
538!
539!#if LK5_ENABLED
540! PURE module subroutine setSplitFixDefComDefIns_D1_D0_LK5(field, nsplit, array, sep, keep)
541!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
542! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_LK5
543!#endif
544! use pm_kind, only: LKG => LK5
545! integer(IK) , intent(out) , contiguous :: field(:)
546! integer(IK) , intent(out) :: nsplit
547! logical(LKG) , intent(in) , contiguous :: array(:)
548! logical(LKG) , intent(in) :: sep
549! logical(LK) , intent(in) , optional :: keep
550! end subroutine
551!#endif
552!
553!#if LK4_ENABLED
554! PURE module subroutine setSplitFixDefComDefIns_D1_D0_LK4(field, nsplit, array, sep, keep)
555!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
556! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_LK4
557!#endif
558! use pm_kind, only: LKG => LK4
559! integer(IK) , intent(out) , contiguous :: field(:)
560! integer(IK) , intent(out) :: nsplit
561! logical(LKG) , intent(in) , contiguous :: array(:)
562! logical(LKG) , intent(in) :: sep
563! logical(LK) , intent(in) , optional :: keep
564! end subroutine
565!#endif
566!
567!#if LK3_ENABLED
568! PURE module subroutine setSplitFixDefComDefIns_D1_D0_LK3(field, nsplit, array, sep, keep)
569!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
570! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_LK3
571!#endif
572! use pm_kind, only: LKG => LK3
573! integer(IK) , intent(out) , contiguous :: field(:)
574! integer(IK) , intent(out) :: nsplit
575! logical(LKG) , intent(in) , contiguous :: array(:)
576! logical(LKG) , intent(in) :: sep
577! logical(LK) , intent(in) , optional :: keep
578! end subroutine
579!#endif
580!
581!#if LK2_ENABLED
582! PURE module subroutine setSplitFixDefComDefIns_D1_D0_LK2(field, nsplit, array, sep, keep)
583!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
584! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_LK2
585!#endif
586! use pm_kind, only: LKG => LK2
587! integer(IK) , intent(out) , contiguous :: field(:)
588! integer(IK) , intent(out) :: nsplit
589! logical(LKG) , intent(in) , contiguous :: array(:)
590! logical(LKG) , intent(in) :: sep
591! logical(LK) , intent(in) , optional :: keep
592! end subroutine
593!#endif
594!
595!#if LK1_ENABLED
596! PURE module subroutine setSplitFixDefComDefIns_D1_D0_LK1(field, nsplit, array, sep, keep)
597!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
598! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_LK1
599!#endif
600! use pm_kind, only: LKG => LK1
601! integer(IK) , intent(out) , contiguous :: field(:)
602! integer(IK) , intent(out) :: nsplit
603! logical(LKG) , intent(in) , contiguous :: array(:)
604! logical(LKG) , intent(in) :: sep
605! logical(LK) , intent(in) , optional :: keep
606! end subroutine
607!#endif
608!
609! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
610!
611!#if CK5_ENABLED
612! PURE module subroutine setSplitFixDefComDefIns_D1_D0_CK5(field, nsplit, array, sep, keep)
613!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
614! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_CK5
615!#endif
616! use pm_kind, only: CKG => CK5
617! integer(IK) , intent(out) , contiguous :: field(:)
618! integer(IK) , intent(out) :: nsplit
619! complex(CKG) , intent(in) , contiguous :: array(:)
620! complex(CKG) , intent(in) :: sep
621! logical(LK) , intent(in) , optional :: keep
622! end subroutine
623!#endif
624!
625!#if CK4_ENABLED
626! PURE module subroutine setSplitFixDefComDefIns_D1_D0_CK4(field, nsplit, array, sep, keep)
627!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
628! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_CK4
629!#endif
630! use pm_kind, only: CKG => CK4
631! integer(IK) , intent(out) , contiguous :: field(:)
632! integer(IK) , intent(out) :: nsplit
633! complex(CKG) , intent(in) , contiguous :: array(:)
634! complex(CKG) , intent(in) :: sep
635! logical(LK) , intent(in) , optional :: keep
636! end subroutine
637!#endif
638!
639!#if CK3_ENABLED
640! PURE module subroutine setSplitFixDefComDefIns_D1_D0_CK3(field, nsplit, array, sep, keep)
641!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
642! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_CK3
643!#endif
644! use pm_kind, only: CKG => CK3
645! integer(IK) , intent(out) , contiguous :: field(:)
646! integer(IK) , intent(out) :: nsplit
647! complex(CKG) , intent(in) , contiguous :: array(:)
648! complex(CKG) , intent(in) :: sep
649! logical(LK) , intent(in) , optional :: keep
650! end subroutine
651!#endif
652!
653!#if CK2_ENABLED
654! PURE module subroutine setSplitFixDefComDefIns_D1_D0_CK2(field, nsplit, array, sep, keep)
655!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
656! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_CK2
657!#endif
658! use pm_kind, only: CKG => CK2
659! integer(IK) , intent(out) , contiguous :: field(:)
660! integer(IK) , intent(out) :: nsplit
661! complex(CKG) , intent(in) , contiguous :: array(:)
662! complex(CKG) , intent(in) :: sep
663! logical(LK) , intent(in) , optional :: keep
664! end subroutine
665!#endif
666!
667!#if CK1_ENABLED
668! PURE module subroutine setSplitFixDefComDefIns_D1_D0_CK1(field, nsplit, array, sep, keep)
669!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
670! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_CK1
671!#endif
672! use pm_kind, only: CKG => CK1
673! integer(IK) , intent(out) , contiguous :: field(:)
674! integer(IK) , intent(out) :: nsplit
675! complex(CKG) , intent(in) , contiguous :: array(:)
676! complex(CKG) , intent(in) :: sep
677! logical(LK) , intent(in) , optional :: keep
678! end subroutine
679!#endif
680!
681! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
682!
683!#if RK5_ENABLED
684! PURE module subroutine setSplitFixDefComDefIns_D1_D0_RK5(field, nsplit, array, sep, keep)
685!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
686! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_RK5
687!#endif
688! use pm_kind, only: RKG => RK5
689! integer(IK) , intent(out) , contiguous :: field(:)
690! integer(IK) , intent(out) :: nsplit
691! real(RKG) , intent(in) , contiguous :: array(:)
692! real(RKG) , intent(in) :: sep
693! logical(LK) , intent(in) , optional :: keep
694! end subroutine
695!#endif
696!
697!#if RK4_ENABLED
698! PURE module subroutine setSplitFixDefComDefIns_D1_D0_RK4(field, nsplit, array, sep, keep)
699!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
700! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_RK4
701!#endif
702! use pm_kind, only: RKG => RK4
703! integer(IK) , intent(out) , contiguous :: field(:)
704! integer(IK) , intent(out) :: nsplit
705! real(RKG) , intent(in) , contiguous :: array(:)
706! real(RKG) , intent(in) :: sep
707! logical(LK) , intent(in) , optional :: keep
708! end subroutine
709!#endif
710!
711!#if RK3_ENABLED
712! PURE module subroutine setSplitFixDefComDefIns_D1_D0_RK3(field, nsplit, array, sep, keep)
713!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
714! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_RK3
715!#endif
716! use pm_kind, only: RKG => RK3
717! integer(IK) , intent(out) , contiguous :: field(:)
718! integer(IK) , intent(out) :: nsplit
719! real(RKG) , intent(in) , contiguous :: array(:)
720! real(RKG) , intent(in) :: sep
721! logical(LK) , intent(in) , optional :: keep
722! end subroutine
723!#endif
724!
725!#if RK2_ENABLED
726! PURE module subroutine setSplitFixDefComDefIns_D1_D0_RK2(field, nsplit, array, sep, keep)
727!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
728! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_RK2
729!#endif
730! use pm_kind, only: RKG => RK2
731! integer(IK) , intent(out) , contiguous :: field(:)
732! integer(IK) , intent(out) :: nsplit
733! real(RKG) , intent(in) , contiguous :: array(:)
734! real(RKG) , intent(in) :: sep
735! logical(LK) , intent(in) , optional :: keep
736! end subroutine
737!#endif
738!
739!#if RK1_ENABLED
740! PURE module subroutine setSplitFixDefComDefIns_D1_D0_RK1(field, nsplit, array, sep, keep)
741!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
742! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D0_RK1
743!#endif
744! use pm_kind, only: RKG => RK1
745! integer(IK) , intent(out) , contiguous :: field(:)
746! integer(IK) , intent(out) :: nsplit
747! real(RKG) , intent(in) , contiguous :: array(:)
748! real(RKG) , intent(in) :: sep
749! logical(LK) , intent(in) , optional :: keep
750! end subroutine
751!#endif
752!
753! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
754!
755! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
756! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
757! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
758!
759! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
760!
761!#if SK5_ENABLED
762! module subroutine setSplitFixCusComDefIns_D0_D0_SK5(field, nsplit, array, sep, iseq, keep)
763!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
764! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D0_D0_SK5
765!#endif
766! use pm_kind, only: SKG => SK5
767! integer(IK) , intent(out) , contiguous :: field(:)
768! integer(IK) , intent(out) :: nsplit
769! character(*,SKG) , intent(in) :: array
770! character(*,SKG) , intent(in) :: sep
771! procedure(logical(LK)) :: iseq
772! logical(LK) , intent(in) , optional :: keep
773! end subroutine
774!#endif
775!
776!#if SK4_ENABLED
777! module subroutine setSplitFixCusComDefIns_D0_D0_SK4(field, nsplit, array, sep, iseq, keep)
778!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
779! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D0_D0_SK4
780!#endif
781! use pm_kind, only: SKG => SK4
782! integer(IK) , intent(out) , contiguous :: field(:)
783! integer(IK) , intent(out) :: nsplit
784! character(*,SKG) , intent(in) :: array
785! character(*,SKG) , intent(in) :: sep
786! procedure(logical(LK)) :: iseq
787! logical(LK) , intent(in) , optional :: keep
788! end subroutine
789!#endif
790!
791!#if SK3_ENABLED
792! module subroutine setSplitFixCusComDefIns_D0_D0_SK3(field, nsplit, array, sep, iseq, keep)
793!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
794! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D0_D0_SK3
795!#endif
796! use pm_kind, only: SKG => SK3
797! integer(IK) , intent(out) , contiguous :: field(:)
798! integer(IK) , intent(out) :: nsplit
799! character(*,SKG) , intent(in) :: array
800! character(*,SKG) , intent(in) :: sep
801! procedure(logical(LK)) :: iseq
802! logical(LK) , intent(in) , optional :: keep
803! end subroutine
804!#endif
805!
806!#if SK2_ENABLED
807! module subroutine setSplitFixCusComDefIns_D0_D0_SK2(field, nsplit, array, sep, iseq, keep)
808!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
809! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D0_D0_SK2
810!#endif
811! use pm_kind, only: SKG => SK2
812! integer(IK) , intent(out) , contiguous :: field(:)
813! integer(IK) , intent(out) :: nsplit
814! character(*,SKG) , intent(in) :: array
815! character(*,SKG) , intent(in) :: sep
816! procedure(logical(LK)) :: iseq
817! logical(LK) , intent(in) , optional :: keep
818! end subroutine
819!#endif
820!
821!#if SK1_ENABLED
822! module subroutine setSplitFixCusComDefIns_D0_D0_SK1(field, nsplit, array, sep, iseq, keep)
823!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
824! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D0_D0_SK1
825!#endif
826! use pm_kind, only: SKG => SK1
827! integer(IK) , intent(out) , contiguous :: field(:)
828! integer(IK) , intent(out) :: nsplit
829! character(*,SKG) , intent(in) :: array
830! character(*,SKG) , intent(in) :: sep
831! procedure(logical(LK)) :: iseq
832! logical(LK) , intent(in) , optional :: keep
833! end subroutine
834!#endif
835!
836! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
837!
838!#if SK5_ENABLED
839! module subroutine setSplitFixCusComDefIns_D1_D0_SK5(field, nsplit, array, sep, iseq, keep)
840!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
841! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_SK5
842!#endif
843! use pm_kind, only: SKG => SK5
844! integer(IK) , intent(out) , contiguous :: field(:)
845! integer(IK) , intent(out) :: nsplit
846! character(*,SKG) , intent(in) , contiguous :: array(:)
847! character(*,SKG) , intent(in) :: sep
848! procedure(logical(LK)) :: iseq
849! logical(LK) , intent(in) , optional :: keep
850! end subroutine
851!#endif
852!
853!#if SK4_ENABLED
854! module subroutine setSplitFixCusComDefIns_D1_D0_SK4(field, nsplit, array, sep, iseq, keep)
855!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
856! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_SK4
857!#endif
858! use pm_kind, only: SKG => SK4
859! integer(IK) , intent(out) , contiguous :: field(:)
860! integer(IK) , intent(out) :: nsplit
861! character(*,SKG) , intent(in) , contiguous :: array(:)
862! character(*,SKG) , intent(in) :: sep
863! procedure(logical(LK)) :: iseq
864! logical(LK) , intent(in) , optional :: keep
865! end subroutine
866!#endif
867!
868!#if SK3_ENABLED
869! module subroutine setSplitFixCusComDefIns_D1_D0_SK3(field, nsplit, array, sep, iseq, keep)
870!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
871! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_SK3
872!#endif
873! use pm_kind, only: SKG => SK3
874! integer(IK) , intent(out) , contiguous :: field(:)
875! integer(IK) , intent(out) :: nsplit
876! character(*,SKG) , intent(in) , contiguous :: array(:)
877! character(*,SKG) , intent(in) :: sep
878! procedure(logical(LK)) :: iseq
879! logical(LK) , intent(in) , optional :: keep
880! end subroutine
881!#endif
882!
883!#if SK2_ENABLED
884! module subroutine setSplitFixCusComDefIns_D1_D0_SK2(field, nsplit, array, sep, iseq, keep)
885!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
886! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_SK2
887!#endif
888! use pm_kind, only: SKG => SK2
889! integer(IK) , intent(out) , contiguous :: field(:)
890! integer(IK) , intent(out) :: nsplit
891! character(*,SKG) , intent(in) , contiguous :: array(:)
892! character(*,SKG) , intent(in) :: sep
893! procedure(logical(LK)) :: iseq
894! logical(LK) , intent(in) , optional :: keep
895! end subroutine
896!#endif
897!
898!#if SK1_ENABLED
899! module subroutine setSplitFixCusComDefIns_D1_D0_SK1(field, nsplit, array, sep, iseq, keep)
900!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
901! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_SK1
902!#endif
903! use pm_kind, only: SKG => SK1
904! integer(IK) , intent(out) , contiguous :: field(:)
905! integer(IK) , intent(out) :: nsplit
906! character(*,SKG) , intent(in) , contiguous :: array(:)
907! character(*,SKG) , intent(in) :: sep
908! procedure(logical(LK)) :: iseq
909! logical(LK) , intent(in) , optional :: keep
910! end subroutine
911!#endif
912!
913! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
914!
915!#if IK5_ENABLED
916! module subroutine setSplitFixCusComDefIns_D1_D0_IK5(field, nsplit, array, sep, iseq, keep)
917!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
918! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_IK5
919!#endif
920! use pm_kind, only: IKG => IK5
921! integer(IK) , intent(out) , contiguous :: field(:)
922! integer(IK) , intent(out) :: nsplit
923! integer(IKG) , intent(in) , contiguous :: array(:)
924! integer(IKG) , intent(in) :: sep
925! procedure(logical(LK)) :: iseq
926! logical(LK) , intent(in) , optional :: keep
927! end subroutine
928!#endif
929!
930!#if IK4_ENABLED
931! module subroutine setSplitFixCusComDefIns_D1_D0_IK4(field, nsplit, array, sep, iseq, keep)
932!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
933! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_IK4
934!#endif
935! use pm_kind, only: IKG => IK4
936! integer(IK) , intent(out) , contiguous :: field(:)
937! integer(IK) , intent(out) :: nsplit
938! integer(IKG) , intent(in) , contiguous :: array(:)
939! integer(IKG) , intent(in) :: sep
940! procedure(logical(LK)) :: iseq
941! logical(LK) , intent(in) , optional :: keep
942! end subroutine
943!#endif
944!
945!#if IK3_ENABLED
946! module subroutine setSplitFixCusComDefIns_D1_D0_IK3(field, nsplit, array, sep, iseq, keep)
947!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
948! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_IK3
949!#endif
950! use pm_kind, only: IKG => IK3
951! integer(IK) , intent(out) , contiguous :: field(:)
952! integer(IK) , intent(out) :: nsplit
953! integer(IKG) , intent(in) , contiguous :: array(:)
954! integer(IKG) , intent(in) :: sep
955! procedure(logical(LK)) :: iseq
956! logical(LK) , intent(in) , optional :: keep
957! end subroutine
958!#endif
959!
960!#if IK2_ENABLED
961! module subroutine setSplitFixCusComDefIns_D1_D0_IK2(field, nsplit, array, sep, iseq, keep)
962!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
963! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_IK2
964!#endif
965! use pm_kind, only: IKG => IK2
966! integer(IK) , intent(out) , contiguous :: field(:)
967! integer(IK) , intent(out) :: nsplit
968! integer(IKG) , intent(in) , contiguous :: array(:)
969! integer(IKG) , intent(in) :: sep
970! procedure(logical(LK)) :: iseq
971! logical(LK) , intent(in) , optional :: keep
972! end subroutine
973!#endif
974!
975!#if IK1_ENABLED
976! module subroutine setSplitFixCusComDefIns_D1_D0_IK1(field, nsplit, array, sep, iseq, keep)
977!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
978! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_IK1
979!#endif
980! use pm_kind, only: IKG => IK1
981! integer(IK) , intent(out) , contiguous :: field(:)
982! integer(IK) , intent(out) :: nsplit
983! integer(IKG) , intent(in) , contiguous :: array(:)
984! integer(IKG) , intent(in) :: sep
985! procedure(logical(LK)) :: iseq
986! logical(LK) , intent(in) , optional :: keep
987! end subroutine
988!#endif
989!
990! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
991!
992!#if LK5_ENABLED
993! module subroutine setSplitFixCusComDefIns_D1_D0_LK5(field, nsplit, array, sep, iseq, keep)
994!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
995! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_LK5
996!#endif
997! use pm_kind, only: LKG => LK5
998! integer(IK) , intent(out) , contiguous :: field(:)
999! integer(IK) , intent(out) :: nsplit
1000! logical(LKG) , intent(in) , contiguous :: array(:)
1001! logical(LKG) , intent(in) :: sep
1002! procedure(logical(LK)) :: iseq
1003! logical(LK) , intent(in) , optional :: keep
1004! end subroutine
1005!#endif
1006!
1007!#if LK4_ENABLED
1008! module subroutine setSplitFixCusComDefIns_D1_D0_LK4(field, nsplit, array, sep, iseq, keep)
1009!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1010! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_LK4
1011!#endif
1012! use pm_kind, only: LKG => LK4
1013! integer(IK) , intent(out) , contiguous :: field(:)
1014! integer(IK) , intent(out) :: nsplit
1015! logical(LKG) , intent(in) , contiguous :: array(:)
1016! logical(LKG) , intent(in) :: sep
1017! procedure(logical(LK)) :: iseq
1018! logical(LK) , intent(in) , optional :: keep
1019! end subroutine
1020!#endif
1021!
1022!#if LK3_ENABLED
1023! module subroutine setSplitFixCusComDefIns_D1_D0_LK3(field, nsplit, array, sep, iseq, keep)
1024!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1025! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_LK3
1026!#endif
1027! use pm_kind, only: LKG => LK3
1028! integer(IK) , intent(out) , contiguous :: field(:)
1029! integer(IK) , intent(out) :: nsplit
1030! logical(LKG) , intent(in) , contiguous :: array(:)
1031! logical(LKG) , intent(in) :: sep
1032! procedure(logical(LK)) :: iseq
1033! logical(LK) , intent(in) , optional :: keep
1034! end subroutine
1035!#endif
1036!
1037!#if LK2_ENABLED
1038! module subroutine setSplitFixCusComDefIns_D1_D0_LK2(field, nsplit, array, sep, iseq, keep)
1039!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1040! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_LK2
1041!#endif
1042! use pm_kind, only: LKG => LK2
1043! integer(IK) , intent(out) , contiguous :: field(:)
1044! integer(IK) , intent(out) :: nsplit
1045! logical(LKG) , intent(in) , contiguous :: array(:)
1046! logical(LKG) , intent(in) :: sep
1047! procedure(logical(LK)) :: iseq
1048! logical(LK) , intent(in) , optional :: keep
1049! end subroutine
1050!#endif
1051!
1052!#if LK1_ENABLED
1053! module subroutine setSplitFixCusComDefIns_D1_D0_LK1(field, nsplit, array, sep, iseq, keep)
1054!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1055! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_LK1
1056!#endif
1057! use pm_kind, only: LKG => LK1
1058! integer(IK) , intent(out) , contiguous :: field(:)
1059! integer(IK) , intent(out) :: nsplit
1060! logical(LKG) , intent(in) , contiguous :: array(:)
1061! logical(LKG) , intent(in) :: sep
1062! procedure(logical(LK)) :: iseq
1063! logical(LK) , intent(in) , optional :: keep
1064! end subroutine
1065!#endif
1066!
1067! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1068!
1069!#if CK5_ENABLED
1070! module subroutine setSplitFixCusComDefIns_D1_D0_CK5(field, nsplit, array, sep, iseq, keep)
1071!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1072! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_CK5
1073!#endif
1074! use pm_kind, only: CKG => CK5
1075! integer(IK) , intent(out) , contiguous :: field(:)
1076! integer(IK) , intent(out) :: nsplit
1077! complex(CKG) , intent(in) , contiguous :: array(:)
1078! complex(CKG) , intent(in) :: sep
1079! procedure(logical(LK)) :: iseq
1080! logical(LK) , intent(in) , optional :: keep
1081! end subroutine
1082!#endif
1083!
1084!#if CK4_ENABLED
1085! module subroutine setSplitFixCusComDefIns_D1_D0_CK4(field, nsplit, array, sep, iseq, keep)
1086!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1087! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_CK4
1088!#endif
1089! use pm_kind, only: CKG => CK4
1090! integer(IK) , intent(out) , contiguous :: field(:)
1091! integer(IK) , intent(out) :: nsplit
1092! complex(CKG) , intent(in) , contiguous :: array(:)
1093! complex(CKG) , intent(in) :: sep
1094! procedure(logical(LK)) :: iseq
1095! logical(LK) , intent(in) , optional :: keep
1096! end subroutine
1097!#endif
1098!
1099!#if CK3_ENABLED
1100! module subroutine setSplitFixCusComDefIns_D1_D0_CK3(field, nsplit, array, sep, iseq, keep)
1101!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1102! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_CK3
1103!#endif
1104! use pm_kind, only: CKG => CK3
1105! integer(IK) , intent(out) , contiguous :: field(:)
1106! integer(IK) , intent(out) :: nsplit
1107! complex(CKG) , intent(in) , contiguous :: array(:)
1108! complex(CKG) , intent(in) :: sep
1109! procedure(logical(LK)) :: iseq
1110! logical(LK) , intent(in) , optional :: keep
1111! end subroutine
1112!#endif
1113!
1114!#if CK2_ENABLED
1115! module subroutine setSplitFixCusComDefIns_D1_D0_CK2(field, nsplit, array, sep, iseq, keep)
1116!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1117! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_CK2
1118!#endif
1119! use pm_kind, only: CKG => CK2
1120! integer(IK) , intent(out) , contiguous :: field(:)
1121! integer(IK) , intent(out) :: nsplit
1122! complex(CKG) , intent(in) , contiguous :: array(:)
1123! complex(CKG) , intent(in) :: sep
1124! procedure(logical(LK)) :: iseq
1125! logical(LK) , intent(in) , optional :: keep
1126! end subroutine
1127!#endif
1128!
1129!#if CK1_ENABLED
1130! module subroutine setSplitFixCusComDefIns_D1_D0_CK1(field, nsplit, array, sep, iseq, keep)
1131!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1132! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_CK1
1133!#endif
1134! use pm_kind, only: CKG => CK1
1135! integer(IK) , intent(out) , contiguous :: field(:)
1136! integer(IK) , intent(out) :: nsplit
1137! complex(CKG) , intent(in) , contiguous :: array(:)
1138! complex(CKG) , intent(in) :: sep
1139! procedure(logical(LK)) :: iseq
1140! logical(LK) , intent(in) , optional :: keep
1141! end subroutine
1142!#endif
1143!
1144! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1145!
1146!#if RK5_ENABLED
1147! module subroutine setSplitFixCusComDefIns_D1_D0_RK5(field, nsplit, array, sep, iseq, keep)
1148!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1149! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_RK5
1150!#endif
1151! use pm_kind, only: RKG => RK5
1152! integer(IK) , intent(out) , contiguous :: field(:)
1153! integer(IK) , intent(out) :: nsplit
1154! real(RKG) , intent(in) , contiguous :: array(:)
1155! real(RKG) , intent(in) :: sep
1156! procedure(logical(LK)) :: iseq
1157! logical(LK) , intent(in) , optional :: keep
1158! end subroutine
1159!#endif
1160!
1161!#if RK4_ENABLED
1162! module subroutine setSplitFixCusComDefIns_D1_D0_RK4(field, nsplit, array, sep, iseq, keep)
1163!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1164! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_RK4
1165!#endif
1166! use pm_kind, only: RKG => RK4
1167! integer(IK) , intent(out) , contiguous :: field(:)
1168! integer(IK) , intent(out) :: nsplit
1169! real(RKG) , intent(in) , contiguous :: array(:)
1170! real(RKG) , intent(in) :: sep
1171! procedure(logical(LK)) :: iseq
1172! logical(LK) , intent(in) , optional :: keep
1173! end subroutine
1174!#endif
1175!
1176!#if RK3_ENABLED
1177! module subroutine setSplitFixCusComDefIns_D1_D0_RK3(field, nsplit, array, sep, iseq, keep)
1178!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1179! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_RK3
1180!#endif
1181! use pm_kind, only: RKG => RK3
1182! integer(IK) , intent(out) , contiguous :: field(:)
1183! integer(IK) , intent(out) :: nsplit
1184! real(RKG) , intent(in) , contiguous :: array(:)
1185! real(RKG) , intent(in) :: sep
1186! procedure(logical(LK)) :: iseq
1187! logical(LK) , intent(in) , optional :: keep
1188! end subroutine
1189!#endif
1190!
1191!#if RK2_ENABLED
1192! module subroutine setSplitFixCusComDefIns_D1_D0_RK2(field, nsplit, array, sep, iseq, keep)
1193!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1194! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_RK2
1195!#endif
1196! use pm_kind, only: RKG => RK2
1197! integer(IK) , intent(out) , contiguous :: field(:)
1198! integer(IK) , intent(out) :: nsplit
1199! real(RKG) , intent(in) , contiguous :: array(:)
1200! real(RKG) , intent(in) :: sep
1201! procedure(logical(LK)) :: iseq
1202! logical(LK) , intent(in) , optional :: keep
1203! end subroutine
1204!#endif
1205!
1206!#if RK1_ENABLED
1207! module subroutine setSplitFixCusComDefIns_D1_D0_RK1(field, nsplit, array, sep, iseq, keep)
1208!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1209! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D0_RK1
1210!#endif
1211! use pm_kind, only: RKG => RK1
1212! integer(IK) , intent(out) , contiguous :: field(:)
1213! integer(IK) , intent(out) :: nsplit
1214! real(RKG) , intent(in) , contiguous :: array(:)
1215! real(RKG) , intent(in) :: sep
1216! procedure(logical(LK)) :: iseq
1217! logical(LK) , intent(in) , optional :: keep
1218! end subroutine
1219!#endif
1220!
1221! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1222!
1223! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1224! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1225! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1226!
1227! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1228!
1229!#if SK5_ENABLED
1230! PURE module subroutine setSplitFixDefComCusIns_D0_D0_SK5(field, nsplit, array, sep, instance, sorted, unique, keep)
1231!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1232! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D0_D0_SK5
1233!#endif
1234! use pm_kind, only: SKG => SK5
1235! integer(IK) , intent(out) , contiguous :: field(:)
1236! integer(IK) , intent(out) :: nsplit
1237! character(*,SKG) , intent(in) :: array
1238! character(*,SKG) , intent(in) :: sep
1239! integer(IK) , intent(in) , contiguous :: instance(:)
1240! logical(LK) , intent(in) , optional :: sorted
1241! logical(LK) , intent(in) , optional :: unique
1242! logical(LK) , intent(in) , optional :: keep
1243! end subroutine
1244!#endif
1245!
1246!#if SK4_ENABLED
1247! PURE module subroutine setSplitFixDefComCusIns_D0_D0_SK4(field, nsplit, array, sep, instance, sorted, unique, keep)
1248!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1249! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D0_D0_SK4
1250!#endif
1251! use pm_kind, only: SKG => SK4
1252! integer(IK) , intent(out) , contiguous :: field(:)
1253! integer(IK) , intent(out) :: nsplit
1254! character(*,SKG) , intent(in) :: array
1255! character(*,SKG) , intent(in) :: sep
1256! integer(IK) , intent(in) , contiguous :: instance(:)
1257! logical(LK) , intent(in) , optional :: sorted
1258! logical(LK) , intent(in) , optional :: unique
1259! logical(LK) , intent(in) , optional :: keep
1260! end subroutine
1261!#endif
1262!
1263!#if SK3_ENABLED
1264! PURE module subroutine setSplitFixDefComCusIns_D0_D0_SK3(field, nsplit, array, sep, instance, sorted, unique, keep)
1265!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1266! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D0_D0_SK3
1267!#endif
1268! use pm_kind, only: SKG => SK3
1269! integer(IK) , intent(out) , contiguous :: field(:)
1270! integer(IK) , intent(out) :: nsplit
1271! character(*,SKG) , intent(in) :: array
1272! character(*,SKG) , intent(in) :: sep
1273! integer(IK) , intent(in) , contiguous :: instance(:)
1274! logical(LK) , intent(in) , optional :: sorted
1275! logical(LK) , intent(in) , optional :: unique
1276! logical(LK) , intent(in) , optional :: keep
1277! end subroutine
1278!#endif
1279!
1280!#if SK2_ENABLED
1281! PURE module subroutine setSplitFixDefComCusIns_D0_D0_SK2(field, nsplit, array, sep, instance, sorted, unique, keep)
1282!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1283! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D0_D0_SK2
1284!#endif
1285! use pm_kind, only: SKG => SK2
1286! integer(IK) , intent(out) , contiguous :: field(:)
1287! integer(IK) , intent(out) :: nsplit
1288! character(*,SKG) , intent(in) :: array
1289! character(*,SKG) , intent(in) :: sep
1290! integer(IK) , intent(in) , contiguous :: instance(:)
1291! logical(LK) , intent(in) , optional :: sorted
1292! logical(LK) , intent(in) , optional :: unique
1293! logical(LK) , intent(in) , optional :: keep
1294! end subroutine
1295!#endif
1296!
1297!#if SK1_ENABLED
1298! PURE module subroutine setSplitFixDefComCusIns_D0_D0_SK1(field, nsplit, array, sep, instance, sorted, unique, keep)
1299!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1300! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D0_D0_SK1
1301!#endif
1302! use pm_kind, only: SKG => SK1
1303! integer(IK) , intent(out) , contiguous :: field(:)
1304! integer(IK) , intent(out) :: nsplit
1305! character(*,SKG) , intent(in) :: array
1306! character(*,SKG) , intent(in) :: sep
1307! integer(IK) , intent(in) , contiguous :: instance(:)
1308! logical(LK) , intent(in) , optional :: sorted
1309! logical(LK) , intent(in) , optional :: unique
1310! logical(LK) , intent(in) , optional :: keep
1311! end subroutine
1312!#endif
1313!
1314! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1315!
1316!#if SK5_ENABLED
1317! PURE module subroutine setSplitFixDefComCusIns_D1_D0_SK5(field, nsplit, array, sep, instance, sorted, unique, keep)
1318!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1319! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_SK5
1320!#endif
1321! use pm_kind, only: SKG => SK5
1322! integer(IK) , intent(out) , contiguous :: field(:)
1323! integer(IK) , intent(out) :: nsplit
1324! character(*,SKG) , intent(in) , contiguous :: array(:)
1325! character(*,SKG) , intent(in) :: sep
1326! integer(IK) , intent(in) , contiguous :: instance(:)
1327! logical(LK) , intent(in) , optional :: sorted
1328! logical(LK) , intent(in) , optional :: unique
1329! logical(LK) , intent(in) , optional :: keep
1330! end subroutine
1331!#endif
1332!
1333!#if SK4_ENABLED
1334! PURE module subroutine setSplitFixDefComCusIns_D1_D0_SK4(field, nsplit, array, sep, instance, sorted, unique, keep)
1335!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1336! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_SK4
1337!#endif
1338! use pm_kind, only: SKG => SK4
1339! integer(IK) , intent(out) , contiguous :: field(:)
1340! integer(IK) , intent(out) :: nsplit
1341! character(*,SKG) , intent(in) , contiguous :: array(:)
1342! character(*,SKG) , intent(in) :: sep
1343! integer(IK) , intent(in) , contiguous :: instance(:)
1344! logical(LK) , intent(in) , optional :: sorted
1345! logical(LK) , intent(in) , optional :: unique
1346! logical(LK) , intent(in) , optional :: keep
1347! end subroutine
1348!#endif
1349!
1350!#if SK3_ENABLED
1351! PURE module subroutine setSplitFixDefComCusIns_D1_D0_SK3(field, nsplit, array, sep, instance, sorted, unique, keep)
1352!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1353! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_SK3
1354!#endif
1355! use pm_kind, only: SKG => SK3
1356! integer(IK) , intent(out) , contiguous :: field(:)
1357! integer(IK) , intent(out) :: nsplit
1358! character(*,SKG) , intent(in) , contiguous :: array(:)
1359! character(*,SKG) , intent(in) :: sep
1360! integer(IK) , intent(in) , contiguous :: instance(:)
1361! logical(LK) , intent(in) , optional :: sorted
1362! logical(LK) , intent(in) , optional :: unique
1363! logical(LK) , intent(in) , optional :: keep
1364! end subroutine
1365!#endif
1366!
1367!#if SK2_ENABLED
1368! PURE module subroutine setSplitFixDefComCusIns_D1_D0_SK2(field, nsplit, array, sep, instance, sorted, unique, keep)
1369!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1370! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_SK2
1371!#endif
1372! use pm_kind, only: SKG => SK2
1373! integer(IK) , intent(out) , contiguous :: field(:)
1374! integer(IK) , intent(out) :: nsplit
1375! character(*,SKG) , intent(in) , contiguous :: array(:)
1376! character(*,SKG) , intent(in) :: sep
1377! integer(IK) , intent(in) , contiguous :: instance(:)
1378! logical(LK) , intent(in) , optional :: sorted
1379! logical(LK) , intent(in) , optional :: unique
1380! logical(LK) , intent(in) , optional :: keep
1381! end subroutine
1382!#endif
1383!
1384!#if SK1_ENABLED
1385! PURE module subroutine setSplitFixDefComCusIns_D1_D0_SK1(field, nsplit, array, sep, instance, sorted, unique, keep)
1386!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1387! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_SK1
1388!#endif
1389! use pm_kind, only: SKG => SK1
1390! integer(IK) , intent(out) , contiguous :: field(:)
1391! integer(IK) , intent(out) :: nsplit
1392! character(*,SKG) , intent(in) , contiguous :: array(:)
1393! character(*,SKG) , intent(in) :: sep
1394! integer(IK) , intent(in) , contiguous :: instance(:)
1395! logical(LK) , intent(in) , optional :: sorted
1396! logical(LK) , intent(in) , optional :: unique
1397! logical(LK) , intent(in) , optional :: keep
1398! end subroutine
1399!#endif
1400!
1401! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1402!
1403!#if IK5_ENABLED
1404! PURE module subroutine setSplitFixDefComCusIns_D1_D0_IK5(field, nsplit, array, sep, instance, sorted, unique, keep)
1405!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1406! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_IK5
1407!#endif
1408! use pm_kind, only: IKG => IK5
1409! integer(IK) , intent(out) , contiguous :: field(:)
1410! integer(IK) , intent(out) :: nsplit
1411! integer(IKG) , intent(in) , contiguous :: array(:)
1412! integer(IKG) , intent(in) :: sep
1413! integer(IK) , intent(in) , contiguous :: instance(:)
1414! logical(LK) , intent(in) , optional :: sorted
1415! logical(LK) , intent(in) , optional :: unique
1416! logical(LK) , intent(in) , optional :: keep
1417! end subroutine
1418!#endif
1419!
1420!#if IK4_ENABLED
1421! PURE module subroutine setSplitFixDefComCusIns_D1_D0_IK4(field, nsplit, array, sep, instance, sorted, unique, keep)
1422!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1423! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_IK4
1424!#endif
1425! use pm_kind, only: IKG => IK4
1426! integer(IK) , intent(out) , contiguous :: field(:)
1427! integer(IK) , intent(out) :: nsplit
1428! integer(IKG) , intent(in) , contiguous :: array(:)
1429! integer(IKG) , intent(in) :: sep
1430! integer(IK) , intent(in) , contiguous :: instance(:)
1431! logical(LK) , intent(in) , optional :: sorted
1432! logical(LK) , intent(in) , optional :: unique
1433! logical(LK) , intent(in) , optional :: keep
1434! end subroutine
1435!#endif
1436!
1437!#if IK3_ENABLED
1438! PURE module subroutine setSplitFixDefComCusIns_D1_D0_IK3(field, nsplit, array, sep, instance, sorted, unique, keep)
1439!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1440! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_IK3
1441!#endif
1442! use pm_kind, only: IKG => IK3
1443! integer(IK) , intent(out) , contiguous :: field(:)
1444! integer(IK) , intent(out) :: nsplit
1445! integer(IKG) , intent(in) , contiguous :: array(:)
1446! integer(IKG) , intent(in) :: sep
1447! integer(IK) , intent(in) , contiguous :: instance(:)
1448! logical(LK) , intent(in) , optional :: sorted
1449! logical(LK) , intent(in) , optional :: unique
1450! logical(LK) , intent(in) , optional :: keep
1451! end subroutine
1452!#endif
1453!
1454!#if IK2_ENABLED
1455! PURE module subroutine setSplitFixDefComCusIns_D1_D0_IK2(field, nsplit, array, sep, instance, sorted, unique, keep)
1456!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1457! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_IK2
1458!#endif
1459! use pm_kind, only: IKG => IK2
1460! integer(IK) , intent(out) , contiguous :: field(:)
1461! integer(IK) , intent(out) :: nsplit
1462! integer(IKG) , intent(in) , contiguous :: array(:)
1463! integer(IKG) , intent(in) :: sep
1464! integer(IK) , intent(in) , contiguous :: instance(:)
1465! logical(LK) , intent(in) , optional :: sorted
1466! logical(LK) , intent(in) , optional :: unique
1467! logical(LK) , intent(in) , optional :: keep
1468! end subroutine
1469!#endif
1470!
1471!#if IK1_ENABLED
1472! PURE module subroutine setSplitFixDefComCusIns_D1_D0_IK1(field, nsplit, array, sep, instance, sorted, unique, keep)
1473!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1474! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_IK1
1475!#endif
1476! use pm_kind, only: IKG => IK1
1477! integer(IK) , intent(out) , contiguous :: field(:)
1478! integer(IK) , intent(out) :: nsplit
1479! integer(IKG) , intent(in) , contiguous :: array(:)
1480! integer(IKG) , intent(in) :: sep
1481! integer(IK) , intent(in) , contiguous :: instance(:)
1482! logical(LK) , intent(in) , optional :: sorted
1483! logical(LK) , intent(in) , optional :: unique
1484! logical(LK) , intent(in) , optional :: keep
1485! end subroutine
1486!#endif
1487!
1488! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1489!
1490!#if LK5_ENABLED
1491! PURE module subroutine setSplitFixDefComCusIns_D1_D0_LK5(field, nsplit, array, sep, instance, sorted, unique, keep)
1492!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1493! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_LK5
1494!#endif
1495! use pm_kind, only: LKG => LK5
1496! integer(IK) , intent(out) , contiguous :: field(:)
1497! integer(IK) , intent(out) :: nsplit
1498! logical(LKG) , intent(in) , contiguous :: array(:)
1499! logical(LKG) , intent(in) :: sep
1500! integer(IK) , intent(in) , contiguous :: instance(:)
1501! logical(LK) , intent(in) , optional :: sorted
1502! logical(LK) , intent(in) , optional :: unique
1503! logical(LK) , intent(in) , optional :: keep
1504! end subroutine
1505!#endif
1506!
1507!#if LK4_ENABLED
1508! PURE module subroutine setSplitFixDefComCusIns_D1_D0_LK4(field, nsplit, array, sep, instance, sorted, unique, keep)
1509!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1510! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_LK4
1511!#endif
1512! use pm_kind, only: LKG => LK4
1513! integer(IK) , intent(out) , contiguous :: field(:)
1514! integer(IK) , intent(out) :: nsplit
1515! logical(LKG) , intent(in) , contiguous :: array(:)
1516! logical(LKG) , intent(in) :: sep
1517! integer(IK) , intent(in) , contiguous :: instance(:)
1518! logical(LK) , intent(in) , optional :: sorted
1519! logical(LK) , intent(in) , optional :: unique
1520! logical(LK) , intent(in) , optional :: keep
1521! end subroutine
1522!#endif
1523!
1524!#if LK3_ENABLED
1525! PURE module subroutine setSplitFixDefComCusIns_D1_D0_LK3(field, nsplit, array, sep, instance, sorted, unique, keep)
1526!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1527! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_LK3
1528!#endif
1529! use pm_kind, only: LKG => LK3
1530! integer(IK) , intent(out) , contiguous :: field(:)
1531! integer(IK) , intent(out) :: nsplit
1532! logical(LKG) , intent(in) , contiguous :: array(:)
1533! logical(LKG) , intent(in) :: sep
1534! integer(IK) , intent(in) , contiguous :: instance(:)
1535! logical(LK) , intent(in) , optional :: sorted
1536! logical(LK) , intent(in) , optional :: unique
1537! logical(LK) , intent(in) , optional :: keep
1538! end subroutine
1539!#endif
1540!
1541!#if LK2_ENABLED
1542! PURE module subroutine setSplitFixDefComCusIns_D1_D0_LK2(field, nsplit, array, sep, instance, sorted, unique, keep)
1543!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1544! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_LK2
1545!#endif
1546! use pm_kind, only: LKG => LK2
1547! integer(IK) , intent(out) , contiguous :: field(:)
1548! integer(IK) , intent(out) :: nsplit
1549! logical(LKG) , intent(in) , contiguous :: array(:)
1550! logical(LKG) , intent(in) :: sep
1551! integer(IK) , intent(in) , contiguous :: instance(:)
1552! logical(LK) , intent(in) , optional :: sorted
1553! logical(LK) , intent(in) , optional :: unique
1554! logical(LK) , intent(in) , optional :: keep
1555! end subroutine
1556!#endif
1557!
1558!#if LK1_ENABLED
1559! PURE module subroutine setSplitFixDefComCusIns_D1_D0_LK1(field, nsplit, array, sep, instance, sorted, unique, keep)
1560!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1561! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_LK1
1562!#endif
1563! use pm_kind, only: LKG => LK1
1564! integer(IK) , intent(out) , contiguous :: field(:)
1565! integer(IK) , intent(out) :: nsplit
1566! logical(LKG) , intent(in) , contiguous :: array(:)
1567! logical(LKG) , intent(in) :: sep
1568! integer(IK) , intent(in) , contiguous :: instance(:)
1569! logical(LK) , intent(in) , optional :: sorted
1570! logical(LK) , intent(in) , optional :: unique
1571! logical(LK) , intent(in) , optional :: keep
1572! end subroutine
1573!#endif
1574!
1575! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1576!
1577!#if CK5_ENABLED
1578! PURE module subroutine setSplitFixDefComCusIns_D1_D0_CK5(field, nsplit, array, sep, instance, sorted, unique, keep)
1579!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1580! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_CK5
1581!#endif
1582! use pm_kind, only: CKG => CK5
1583! integer(IK) , intent(out) , contiguous :: field(:)
1584! integer(IK) , intent(out) :: nsplit
1585! complex(CKG) , intent(in) , contiguous :: array(:)
1586! complex(CKG) , intent(in) :: sep
1587! integer(IK) , intent(in) , contiguous :: instance(:)
1588! logical(LK) , intent(in) , optional :: sorted
1589! logical(LK) , intent(in) , optional :: unique
1590! logical(LK) , intent(in) , optional :: keep
1591! end subroutine
1592!#endif
1593!
1594!#if CK4_ENABLED
1595! PURE module subroutine setSplitFixDefComCusIns_D1_D0_CK4(field, nsplit, array, sep, instance, sorted, unique, keep)
1596!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1597! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_CK4
1598!#endif
1599! use pm_kind, only: CKG => CK4
1600! integer(IK) , intent(out) , contiguous :: field(:)
1601! integer(IK) , intent(out) :: nsplit
1602! complex(CKG) , intent(in) , contiguous :: array(:)
1603! complex(CKG) , intent(in) :: sep
1604! integer(IK) , intent(in) , contiguous :: instance(:)
1605! logical(LK) , intent(in) , optional :: sorted
1606! logical(LK) , intent(in) , optional :: unique
1607! logical(LK) , intent(in) , optional :: keep
1608! end subroutine
1609!#endif
1610!
1611!#if CK3_ENABLED
1612! PURE module subroutine setSplitFixDefComCusIns_D1_D0_CK3(field, nsplit, array, sep, instance, sorted, unique, keep)
1613!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1614! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_CK3
1615!#endif
1616! use pm_kind, only: CKG => CK3
1617! integer(IK) , intent(out) , contiguous :: field(:)
1618! integer(IK) , intent(out) :: nsplit
1619! complex(CKG) , intent(in) , contiguous :: array(:)
1620! complex(CKG) , intent(in) :: sep
1621! integer(IK) , intent(in) , contiguous :: instance(:)
1622! logical(LK) , intent(in) , optional :: sorted
1623! logical(LK) , intent(in) , optional :: unique
1624! logical(LK) , intent(in) , optional :: keep
1625! end subroutine
1626!#endif
1627!
1628!#if CK2_ENABLED
1629! PURE module subroutine setSplitFixDefComCusIns_D1_D0_CK2(field, nsplit, array, sep, instance, sorted, unique, keep)
1630!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1631! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_CK2
1632!#endif
1633! use pm_kind, only: CKG => CK2
1634! integer(IK) , intent(out) , contiguous :: field(:)
1635! integer(IK) , intent(out) :: nsplit
1636! complex(CKG) , intent(in) , contiguous :: array(:)
1637! complex(CKG) , intent(in) :: sep
1638! integer(IK) , intent(in) , contiguous :: instance(:)
1639! logical(LK) , intent(in) , optional :: sorted
1640! logical(LK) , intent(in) , optional :: unique
1641! logical(LK) , intent(in) , optional :: keep
1642! end subroutine
1643!#endif
1644!
1645!#if CK1_ENABLED
1646! PURE module subroutine setSplitFixDefComCusIns_D1_D0_CK1(field, nsplit, array, sep, instance, sorted, unique, keep)
1647!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1648! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_CK1
1649!#endif
1650! use pm_kind, only: CKG => CK1
1651! integer(IK) , intent(out) , contiguous :: field(:)
1652! integer(IK) , intent(out) :: nsplit
1653! complex(CKG) , intent(in) , contiguous :: array(:)
1654! complex(CKG) , intent(in) :: sep
1655! integer(IK) , intent(in) , contiguous :: instance(:)
1656! logical(LK) , intent(in) , optional :: sorted
1657! logical(LK) , intent(in) , optional :: unique
1658! logical(LK) , intent(in) , optional :: keep
1659! end subroutine
1660!#endif
1661!
1662! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1663!
1664!#if RK5_ENABLED
1665! PURE module subroutine setSplitFixDefComCusIns_D1_D0_RK5(field, nsplit, array, sep, instance, sorted, unique, keep)
1666!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1667! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_RK5
1668!#endif
1669! use pm_kind, only: RKG => RK5
1670! integer(IK) , intent(out) , contiguous :: field(:)
1671! integer(IK) , intent(out) :: nsplit
1672! real(RKG) , intent(in) , contiguous :: array(:)
1673! real(RKG) , intent(in) :: sep
1674! integer(IK) , intent(in) , contiguous :: instance(:)
1675! logical(LK) , intent(in) , optional :: sorted
1676! logical(LK) , intent(in) , optional :: unique
1677! logical(LK) , intent(in) , optional :: keep
1678! end subroutine
1679!#endif
1680!
1681!#if RK4_ENABLED
1682! PURE module subroutine setSplitFixDefComCusIns_D1_D0_RK4(field, nsplit, array, sep, instance, sorted, unique, keep)
1683!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1684! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_RK4
1685!#endif
1686! use pm_kind, only: RKG => RK4
1687! integer(IK) , intent(out) , contiguous :: field(:)
1688! integer(IK) , intent(out) :: nsplit
1689! real(RKG) , intent(in) , contiguous :: array(:)
1690! real(RKG) , intent(in) :: sep
1691! integer(IK) , intent(in) , contiguous :: instance(:)
1692! logical(LK) , intent(in) , optional :: sorted
1693! logical(LK) , intent(in) , optional :: unique
1694! logical(LK) , intent(in) , optional :: keep
1695! end subroutine
1696!#endif
1697!
1698!#if RK3_ENABLED
1699! PURE module subroutine setSplitFixDefComCusIns_D1_D0_RK3(field, nsplit, array, sep, instance, sorted, unique, keep)
1700!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1701! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_RK3
1702!#endif
1703! use pm_kind, only: RKG => RK3
1704! integer(IK) , intent(out) , contiguous :: field(:)
1705! integer(IK) , intent(out) :: nsplit
1706! real(RKG) , intent(in) , contiguous :: array(:)
1707! real(RKG) , intent(in) :: sep
1708! integer(IK) , intent(in) , contiguous :: instance(:)
1709! logical(LK) , intent(in) , optional :: sorted
1710! logical(LK) , intent(in) , optional :: unique
1711! logical(LK) , intent(in) , optional :: keep
1712! end subroutine
1713!#endif
1714!
1715!#if RK2_ENABLED
1716! PURE module subroutine setSplitFixDefComCusIns_D1_D0_RK2(field, nsplit, array, sep, instance, sorted, unique, keep)
1717!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1718! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_RK2
1719!#endif
1720! use pm_kind, only: RKG => RK2
1721! integer(IK) , intent(out) , contiguous :: field(:)
1722! integer(IK) , intent(out) :: nsplit
1723! real(RKG) , intent(in) , contiguous :: array(:)
1724! real(RKG) , intent(in) :: sep
1725! integer(IK) , intent(in) , contiguous :: instance(:)
1726! logical(LK) , intent(in) , optional :: sorted
1727! logical(LK) , intent(in) , optional :: unique
1728! logical(LK) , intent(in) , optional :: keep
1729! end subroutine
1730!#endif
1731!
1732!#if RK1_ENABLED
1733! PURE module subroutine setSplitFixDefComCusIns_D1_D0_RK1(field, nsplit, array, sep, instance, sorted, unique, keep)
1734!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1735! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D0_RK1
1736!#endif
1737! use pm_kind, only: RKG => RK1
1738! integer(IK) , intent(out) , contiguous :: field(:)
1739! integer(IK) , intent(out) :: nsplit
1740! real(RKG) , intent(in) , contiguous :: array(:)
1741! real(RKG) , intent(in) :: sep
1742! integer(IK) , intent(in) , contiguous :: instance(:)
1743! logical(LK) , intent(in) , optional :: sorted
1744! logical(LK) , intent(in) , optional :: unique
1745! logical(LK) , intent(in) , optional :: keep
1746! end subroutine
1747!#endif
1748!
1749! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1750!
1751! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1752! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1753! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1754!
1755! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1756!
1757!#if SK5_ENABLED
1758! module subroutine setSplitFixCusComCusIns_D0_D0_SK5(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1759!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1760! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D0_D0_SK5
1761!#endif
1762! use pm_kind, only: SKG => SK5
1763! integer(IK) , intent(out) , contiguous :: field(:)
1764! integer(IK) , intent(out) :: nsplit
1765! character(*,SKG) , intent(in) :: array
1766! character(*,SKG) , intent(in) :: sep
1767! procedure(logical(LK)) :: iseq
1768! integer(IK) , intent(in) , contiguous :: instance(:)
1769! logical(LK) , intent(in) , optional :: sorted
1770! logical(LK) , intent(in) , optional :: unique
1771! logical(LK) , intent(in) , optional :: keep
1772! end subroutine
1773!#endif
1774!
1775!#if SK4_ENABLED
1776! module subroutine setSplitFixCusComCusIns_D0_D0_SK4(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1777!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1778! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D0_D0_SK4
1779!#endif
1780! use pm_kind, only: SKG => SK4
1781! integer(IK) , intent(out) , contiguous :: field(:)
1782! integer(IK) , intent(out) :: nsplit
1783! character(*,SKG) , intent(in) :: array
1784! character(*,SKG) , intent(in) :: sep
1785! procedure(logical(LK)) :: iseq
1786! integer(IK) , intent(in) , contiguous :: instance(:)
1787! logical(LK) , intent(in) , optional :: sorted
1788! logical(LK) , intent(in) , optional :: unique
1789! logical(LK) , intent(in) , optional :: keep
1790! end subroutine
1791!#endif
1792!
1793!#if SK3_ENABLED
1794! module subroutine setSplitFixCusComCusIns_D0_D0_SK3(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1795!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1796! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D0_D0_SK3
1797!#endif
1798! use pm_kind, only: SKG => SK3
1799! integer(IK) , intent(out) , contiguous :: field(:)
1800! integer(IK) , intent(out) :: nsplit
1801! character(*,SKG) , intent(in) :: array
1802! character(*,SKG) , intent(in) :: sep
1803! procedure(logical(LK)) :: iseq
1804! integer(IK) , intent(in) , contiguous :: instance(:)
1805! logical(LK) , intent(in) , optional :: sorted
1806! logical(LK) , intent(in) , optional :: unique
1807! logical(LK) , intent(in) , optional :: keep
1808! end subroutine
1809!#endif
1810!
1811!#if SK2_ENABLED
1812! module subroutine setSplitFixCusComCusIns_D0_D0_SK2(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1813!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1814! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D0_D0_SK2
1815!#endif
1816! use pm_kind, only: SKG => SK2
1817! integer(IK) , intent(out) , contiguous :: field(:)
1818! integer(IK) , intent(out) :: nsplit
1819! character(*,SKG) , intent(in) :: array
1820! character(*,SKG) , intent(in) :: sep
1821! procedure(logical(LK)) :: iseq
1822! integer(IK) , intent(in) , contiguous :: instance(:)
1823! logical(LK) , intent(in) , optional :: sorted
1824! logical(LK) , intent(in) , optional :: unique
1825! logical(LK) , intent(in) , optional :: keep
1826! end subroutine
1827!#endif
1828!
1829!#if SK1_ENABLED
1830! module subroutine setSplitFixCusComCusIns_D0_D0_SK1(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1831!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1832! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D0_D0_SK1
1833!#endif
1834! use pm_kind, only: SKG => SK1
1835! integer(IK) , intent(out) , contiguous :: field(:)
1836! integer(IK) , intent(out) :: nsplit
1837! character(*,SKG) , intent(in) :: array
1838! character(*,SKG) , intent(in) :: sep
1839! procedure(logical(LK)) :: iseq
1840! integer(IK) , intent(in) , contiguous :: instance(:)
1841! logical(LK) , intent(in) , optional :: sorted
1842! logical(LK) , intent(in) , optional :: unique
1843! logical(LK) , intent(in) , optional :: keep
1844! end subroutine
1845!#endif
1846!
1847! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1848!
1849!#if SK5_ENABLED
1850! module subroutine setSplitFixCusComCusIns_D1_D0_SK5(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1851!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1852! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_SK5
1853!#endif
1854! use pm_kind, only: SKG => SK5
1855! integer(IK) , intent(out) , contiguous :: field(:)
1856! integer(IK) , intent(out) :: nsplit
1857! character(*,SKG) , intent(in) , contiguous :: array(:)
1858! character(*,SKG) , intent(in) :: sep
1859! procedure(logical(LK)) :: iseq
1860! integer(IK) , intent(in) , contiguous :: instance(:)
1861! logical(LK) , intent(in) , optional :: sorted
1862! logical(LK) , intent(in) , optional :: unique
1863! logical(LK) , intent(in) , optional :: keep
1864! end subroutine
1865!#endif
1866!
1867!#if SK4_ENABLED
1868! module subroutine setSplitFixCusComCusIns_D1_D0_SK4(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1869!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1870! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_SK4
1871!#endif
1872! use pm_kind, only: SKG => SK4
1873! integer(IK) , intent(out) , contiguous :: field(:)
1874! integer(IK) , intent(out) :: nsplit
1875! character(*,SKG) , intent(in) , contiguous :: array(:)
1876! character(*,SKG) , intent(in) :: sep
1877! procedure(logical(LK)) :: iseq
1878! integer(IK) , intent(in) , contiguous :: instance(:)
1879! logical(LK) , intent(in) , optional :: sorted
1880! logical(LK) , intent(in) , optional :: unique
1881! logical(LK) , intent(in) , optional :: keep
1882! end subroutine
1883!#endif
1884!
1885!#if SK3_ENABLED
1886! module subroutine setSplitFixCusComCusIns_D1_D0_SK3(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1887!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1888! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_SK3
1889!#endif
1890! use pm_kind, only: SKG => SK3
1891! integer(IK) , intent(out) , contiguous :: field(:)
1892! integer(IK) , intent(out) :: nsplit
1893! character(*,SKG) , intent(in) , contiguous :: array(:)
1894! character(*,SKG) , intent(in) :: sep
1895! procedure(logical(LK)) :: iseq
1896! integer(IK) , intent(in) , contiguous :: instance(:)
1897! logical(LK) , intent(in) , optional :: sorted
1898! logical(LK) , intent(in) , optional :: unique
1899! logical(LK) , intent(in) , optional :: keep
1900! end subroutine
1901!#endif
1902!
1903!#if SK2_ENABLED
1904! module subroutine setSplitFixCusComCusIns_D1_D0_SK2(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1905!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1906! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_SK2
1907!#endif
1908! use pm_kind, only: SKG => SK2
1909! integer(IK) , intent(out) , contiguous :: field(:)
1910! integer(IK) , intent(out) :: nsplit
1911! character(*,SKG) , intent(in) , contiguous :: array(:)
1912! character(*,SKG) , intent(in) :: sep
1913! procedure(logical(LK)) :: iseq
1914! integer(IK) , intent(in) , contiguous :: instance(:)
1915! logical(LK) , intent(in) , optional :: sorted
1916! logical(LK) , intent(in) , optional :: unique
1917! logical(LK) , intent(in) , optional :: keep
1918! end subroutine
1919!#endif
1920!
1921!#if SK1_ENABLED
1922! module subroutine setSplitFixCusComCusIns_D1_D0_SK1(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1923!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1924! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_SK1
1925!#endif
1926! use pm_kind, only: SKG => SK1
1927! integer(IK) , intent(out) , contiguous :: field(:)
1928! integer(IK) , intent(out) :: nsplit
1929! character(*,SKG) , intent(in) , contiguous :: array(:)
1930! character(*,SKG) , intent(in) :: sep
1931! procedure(logical(LK)) :: iseq
1932! integer(IK) , intent(in) , contiguous :: instance(:)
1933! logical(LK) , intent(in) , optional :: sorted
1934! logical(LK) , intent(in) , optional :: unique
1935! logical(LK) , intent(in) , optional :: keep
1936! end subroutine
1937!#endif
1938!
1939! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
1940!
1941!#if IK5_ENABLED
1942! module subroutine setSplitFixCusComCusIns_D1_D0_IK5(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1943!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1944! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_IK5
1945!#endif
1946! use pm_kind, only: IKG => IK5
1947! integer(IK) , intent(out) , contiguous :: field(:)
1948! integer(IK) , intent(out) :: nsplit
1949! integer(IKG) , intent(in) , contiguous :: array(:)
1950! integer(IKG) , intent(in) :: sep
1951! procedure(logical(LK)) :: iseq
1952! integer(IK) , intent(in) , contiguous :: instance(:)
1953! logical(LK) , intent(in) , optional :: sorted
1954! logical(LK) , intent(in) , optional :: unique
1955! logical(LK) , intent(in) , optional :: keep
1956! end subroutine
1957!#endif
1958!
1959!#if IK4_ENABLED
1960! module subroutine setSplitFixCusComCusIns_D1_D0_IK4(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1961!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1962! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_IK4
1963!#endif
1964! use pm_kind, only: IKG => IK4
1965! integer(IK) , intent(out) , contiguous :: field(:)
1966! integer(IK) , intent(out) :: nsplit
1967! integer(IKG) , intent(in) , contiguous :: array(:)
1968! integer(IKG) , intent(in) :: sep
1969! procedure(logical(LK)) :: iseq
1970! integer(IK) , intent(in) , contiguous :: instance(:)
1971! logical(LK) , intent(in) , optional :: sorted
1972! logical(LK) , intent(in) , optional :: unique
1973! logical(LK) , intent(in) , optional :: keep
1974! end subroutine
1975!#endif
1976!
1977!#if IK3_ENABLED
1978! module subroutine setSplitFixCusComCusIns_D1_D0_IK3(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1979!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1980! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_IK3
1981!#endif
1982! use pm_kind, only: IKG => IK3
1983! integer(IK) , intent(out) , contiguous :: field(:)
1984! integer(IK) , intent(out) :: nsplit
1985! integer(IKG) , intent(in) , contiguous :: array(:)
1986! integer(IKG) , intent(in) :: sep
1987! procedure(logical(LK)) :: iseq
1988! integer(IK) , intent(in) , contiguous :: instance(:)
1989! logical(LK) , intent(in) , optional :: sorted
1990! logical(LK) , intent(in) , optional :: unique
1991! logical(LK) , intent(in) , optional :: keep
1992! end subroutine
1993!#endif
1994!
1995!#if IK2_ENABLED
1996! module subroutine setSplitFixCusComCusIns_D1_D0_IK2(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
1997!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
1998! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_IK2
1999!#endif
2000! use pm_kind, only: IKG => IK2
2001! integer(IK) , intent(out) , contiguous :: field(:)
2002! integer(IK) , intent(out) :: nsplit
2003! integer(IKG) , intent(in) , contiguous :: array(:)
2004! integer(IKG) , intent(in) :: sep
2005! procedure(logical(LK)) :: iseq
2006! integer(IK) , intent(in) , contiguous :: instance(:)
2007! logical(LK) , intent(in) , optional :: sorted
2008! logical(LK) , intent(in) , optional :: unique
2009! logical(LK) , intent(in) , optional :: keep
2010! end subroutine
2011!#endif
2012!
2013!#if IK1_ENABLED
2014! module subroutine setSplitFixCusComCusIns_D1_D0_IK1(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2015!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2016! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_IK1
2017!#endif
2018! use pm_kind, only: IKG => IK1
2019! integer(IK) , intent(out) , contiguous :: field(:)
2020! integer(IK) , intent(out) :: nsplit
2021! integer(IKG) , intent(in) , contiguous :: array(:)
2022! integer(IKG) , intent(in) :: sep
2023! procedure(logical(LK)) :: iseq
2024! integer(IK) , intent(in) , contiguous :: instance(:)
2025! logical(LK) , intent(in) , optional :: sorted
2026! logical(LK) , intent(in) , optional :: unique
2027! logical(LK) , intent(in) , optional :: keep
2028! end subroutine
2029!#endif
2030!
2031! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2032!
2033!#if LK5_ENABLED
2034! module subroutine setSplitFixCusComCusIns_D1_D0_LK5(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2035!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2036! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_LK5
2037!#endif
2038! use pm_kind, only: LKG => LK5
2039! integer(IK) , intent(out) , contiguous :: field(:)
2040! integer(IK) , intent(out) :: nsplit
2041! logical(LKG) , intent(in) , contiguous :: array(:)
2042! logical(LKG) , intent(in) :: sep
2043! procedure(logical(LK)) :: iseq
2044! integer(IK) , intent(in) , contiguous :: instance(:)
2045! logical(LK) , intent(in) , optional :: sorted
2046! logical(LK) , intent(in) , optional :: unique
2047! logical(LK) , intent(in) , optional :: keep
2048! end subroutine
2049!#endif
2050!
2051!#if LK4_ENABLED
2052! module subroutine setSplitFixCusComCusIns_D1_D0_LK4(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2053!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2054! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_LK4
2055!#endif
2056! use pm_kind, only: LKG => LK4
2057! integer(IK) , intent(out) , contiguous :: field(:)
2058! integer(IK) , intent(out) :: nsplit
2059! logical(LKG) , intent(in) , contiguous :: array(:)
2060! logical(LKG) , intent(in) :: sep
2061! procedure(logical(LK)) :: iseq
2062! integer(IK) , intent(in) , contiguous :: instance(:)
2063! logical(LK) , intent(in) , optional :: sorted
2064! logical(LK) , intent(in) , optional :: unique
2065! logical(LK) , intent(in) , optional :: keep
2066! end subroutine
2067!#endif
2068!
2069!#if LK3_ENABLED
2070! module subroutine setSplitFixCusComCusIns_D1_D0_LK3(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2071!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2072! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_LK3
2073!#endif
2074! use pm_kind, only: LKG => LK3
2075! integer(IK) , intent(out) , contiguous :: field(:)
2076! integer(IK) , intent(out) :: nsplit
2077! logical(LKG) , intent(in) , contiguous :: array(:)
2078! logical(LKG) , intent(in) :: sep
2079! procedure(logical(LK)) :: iseq
2080! integer(IK) , intent(in) , contiguous :: instance(:)
2081! logical(LK) , intent(in) , optional :: sorted
2082! logical(LK) , intent(in) , optional :: unique
2083! logical(LK) , intent(in) , optional :: keep
2084! end subroutine
2085!#endif
2086!
2087!#if LK2_ENABLED
2088! module subroutine setSplitFixCusComCusIns_D1_D0_LK2(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2089!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2090! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_LK2
2091!#endif
2092! use pm_kind, only: LKG => LK2
2093! integer(IK) , intent(out) , contiguous :: field(:)
2094! integer(IK) , intent(out) :: nsplit
2095! logical(LKG) , intent(in) , contiguous :: array(:)
2096! logical(LKG) , intent(in) :: sep
2097! procedure(logical(LK)) :: iseq
2098! integer(IK) , intent(in) , contiguous :: instance(:)
2099! logical(LK) , intent(in) , optional :: sorted
2100! logical(LK) , intent(in) , optional :: unique
2101! logical(LK) , intent(in) , optional :: keep
2102! end subroutine
2103!#endif
2104!
2105!#if LK1_ENABLED
2106! module subroutine setSplitFixCusComCusIns_D1_D0_LK1(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2107!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2108! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_LK1
2109!#endif
2110! use pm_kind, only: LKG => LK1
2111! integer(IK) , intent(out) , contiguous :: field(:)
2112! integer(IK) , intent(out) :: nsplit
2113! logical(LKG) , intent(in) , contiguous :: array(:)
2114! logical(LKG) , intent(in) :: sep
2115! procedure(logical(LK)) :: iseq
2116! integer(IK) , intent(in) , contiguous :: instance(:)
2117! logical(LK) , intent(in) , optional :: sorted
2118! logical(LK) , intent(in) , optional :: unique
2119! logical(LK) , intent(in) , optional :: keep
2120! end subroutine
2121!#endif
2122!
2123! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2124!
2125!#if CK5_ENABLED
2126! module subroutine setSplitFixCusComCusIns_D1_D0_CK5(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2127!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2128! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_CK5
2129!#endif
2130! use pm_kind, only: CKG => CK5
2131! integer(IK) , intent(out) , contiguous :: field(:)
2132! integer(IK) , intent(out) :: nsplit
2133! complex(CKG) , intent(in) , contiguous :: array(:)
2134! complex(CKG) , intent(in) :: sep
2135! procedure(logical(LK)) :: iseq
2136! integer(IK) , intent(in) , contiguous :: instance(:)
2137! logical(LK) , intent(in) , optional :: sorted
2138! logical(LK) , intent(in) , optional :: unique
2139! logical(LK) , intent(in) , optional :: keep
2140! end subroutine
2141!#endif
2142!
2143!#if CK4_ENABLED
2144! module subroutine setSplitFixCusComCusIns_D1_D0_CK4(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2145!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2146! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_CK4
2147!#endif
2148! use pm_kind, only: CKG => CK4
2149! integer(IK) , intent(out) , contiguous :: field(:)
2150! integer(IK) , intent(out) :: nsplit
2151! complex(CKG) , intent(in) , contiguous :: array(:)
2152! complex(CKG) , intent(in) :: sep
2153! procedure(logical(LK)) :: iseq
2154! integer(IK) , intent(in) , contiguous :: instance(:)
2155! logical(LK) , intent(in) , optional :: sorted
2156! logical(LK) , intent(in) , optional :: unique
2157! logical(LK) , intent(in) , optional :: keep
2158! end subroutine
2159!#endif
2160!
2161!#if CK3_ENABLED
2162! module subroutine setSplitFixCusComCusIns_D1_D0_CK3(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2163!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2164! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_CK3
2165!#endif
2166! use pm_kind, only: CKG => CK3
2167! integer(IK) , intent(out) , contiguous :: field(:)
2168! integer(IK) , intent(out) :: nsplit
2169! complex(CKG) , intent(in) , contiguous :: array(:)
2170! complex(CKG) , intent(in) :: sep
2171! procedure(logical(LK)) :: iseq
2172! integer(IK) , intent(in) , contiguous :: instance(:)
2173! logical(LK) , intent(in) , optional :: sorted
2174! logical(LK) , intent(in) , optional :: unique
2175! logical(LK) , intent(in) , optional :: keep
2176! end subroutine
2177!#endif
2178!
2179!#if CK2_ENABLED
2180! module subroutine setSplitFixCusComCusIns_D1_D0_CK2(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2181!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2182! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_CK2
2183!#endif
2184! use pm_kind, only: CKG => CK2
2185! integer(IK) , intent(out) , contiguous :: field(:)
2186! integer(IK) , intent(out) :: nsplit
2187! complex(CKG) , intent(in) , contiguous :: array(:)
2188! complex(CKG) , intent(in) :: sep
2189! procedure(logical(LK)) :: iseq
2190! integer(IK) , intent(in) , contiguous :: instance(:)
2191! logical(LK) , intent(in) , optional :: sorted
2192! logical(LK) , intent(in) , optional :: unique
2193! logical(LK) , intent(in) , optional :: keep
2194! end subroutine
2195!#endif
2196!
2197!#if CK1_ENABLED
2198! module subroutine setSplitFixCusComCusIns_D1_D0_CK1(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2199!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2200! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_CK1
2201!#endif
2202! use pm_kind, only: CKG => CK1
2203! integer(IK) , intent(out) , contiguous :: field(:)
2204! integer(IK) , intent(out) :: nsplit
2205! complex(CKG) , intent(in) , contiguous :: array(:)
2206! complex(CKG) , intent(in) :: sep
2207! procedure(logical(LK)) :: iseq
2208! integer(IK) , intent(in) , contiguous :: instance(:)
2209! logical(LK) , intent(in) , optional :: sorted
2210! logical(LK) , intent(in) , optional :: unique
2211! logical(LK) , intent(in) , optional :: keep
2212! end subroutine
2213!#endif
2214!
2215! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2216!
2217!#if RK5_ENABLED
2218! module subroutine setSplitFixCusComCusIns_D1_D0_RK5(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2219!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2220! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_RK5
2221!#endif
2222! use pm_kind, only: RKG => RK5
2223! integer(IK) , intent(out) , contiguous :: field(:)
2224! integer(IK) , intent(out) :: nsplit
2225! real(RKG) , intent(in) , contiguous :: array(:)
2226! real(RKG) , intent(in) :: sep
2227! procedure(logical(LK)) :: iseq
2228! integer(IK) , intent(in) , contiguous :: instance(:)
2229! logical(LK) , intent(in) , optional :: sorted
2230! logical(LK) , intent(in) , optional :: unique
2231! logical(LK) , intent(in) , optional :: keep
2232! end subroutine
2233!#endif
2234!
2235!#if RK4_ENABLED
2236! module subroutine setSplitFixCusComCusIns_D1_D0_RK4(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2237!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2238! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_RK4
2239!#endif
2240! use pm_kind, only: RKG => RK4
2241! integer(IK) , intent(out) , contiguous :: field(:)
2242! integer(IK) , intent(out) :: nsplit
2243! real(RKG) , intent(in) , contiguous :: array(:)
2244! real(RKG) , intent(in) :: sep
2245! procedure(logical(LK)) :: iseq
2246! integer(IK) , intent(in) , contiguous :: instance(:)
2247! logical(LK) , intent(in) , optional :: sorted
2248! logical(LK) , intent(in) , optional :: unique
2249! logical(LK) , intent(in) , optional :: keep
2250! end subroutine
2251!#endif
2252!
2253!#if RK3_ENABLED
2254! module subroutine setSplitFixCusComCusIns_D1_D0_RK3(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2255!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2256! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_RK3
2257!#endif
2258! use pm_kind, only: RKG => RK3
2259! integer(IK) , intent(out) , contiguous :: field(:)
2260! integer(IK) , intent(out) :: nsplit
2261! real(RKG) , intent(in) , contiguous :: array(:)
2262! real(RKG) , intent(in) :: sep
2263! procedure(logical(LK)) :: iseq
2264! integer(IK) , intent(in) , contiguous :: instance(:)
2265! logical(LK) , intent(in) , optional :: sorted
2266! logical(LK) , intent(in) , optional :: unique
2267! logical(LK) , intent(in) , optional :: keep
2268! end subroutine
2269!#endif
2270!
2271!#if RK2_ENABLED
2272! module subroutine setSplitFixCusComCusIns_D1_D0_RK2(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2273!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2274! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_RK2
2275!#endif
2276! use pm_kind, only: RKG => RK2
2277! integer(IK) , intent(out) , contiguous :: field(:)
2278! integer(IK) , intent(out) :: nsplit
2279! real(RKG) , intent(in) , contiguous :: array(:)
2280! real(RKG) , intent(in) :: sep
2281! procedure(logical(LK)) :: iseq
2282! integer(IK) , intent(in) , contiguous :: instance(:)
2283! logical(LK) , intent(in) , optional :: sorted
2284! logical(LK) , intent(in) , optional :: unique
2285! logical(LK) , intent(in) , optional :: keep
2286! end subroutine
2287!#endif
2288!
2289!#if RK1_ENABLED
2290! module subroutine setSplitFixCusComCusIns_D1_D0_RK1(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
2291!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2292! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D0_RK1
2293!#endif
2294! use pm_kind, only: RKG => RK1
2295! integer(IK) , intent(out) , contiguous :: field(:)
2296! integer(IK) , intent(out) :: nsplit
2297! real(RKG) , intent(in) , contiguous :: array(:)
2298! real(RKG) , intent(in) :: sep
2299! procedure(logical(LK)) :: iseq
2300! integer(IK) , intent(in) , contiguous :: instance(:)
2301! logical(LK) , intent(in) , optional :: sorted
2302! logical(LK) , intent(in) , optional :: unique
2303! logical(LK) , intent(in) , optional :: keep
2304! end subroutine
2305!#endif
2306!
2307! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2308!
2309! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2310! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2311! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2312!
2313! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2314!
2315!#if SK5_ENABLED
2316! PURE module subroutine setSplitFixDefComDefIns_D1_D1_SK5(field, nsplit, array, sep, keep)
2317!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2318! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_SK5
2319!#endif
2320! use pm_kind, only: SKG => SK5
2321! integer(IK) , intent(out) , contiguous :: field(:)
2322! integer(IK) , intent(out) :: nsplit
2323! character(*,SKG) , intent(in) , contiguous :: array(:)
2324! character(*,SKG) , intent(in) , contiguous :: sep(:)
2325! logical(LK) , intent(in) , optional :: keep
2326! end subroutine
2327!#endif
2328!
2329!#if SK4_ENABLED
2330! PURE module subroutine setSplitFixDefComDefIns_D1_D1_SK4(field, nsplit, array, sep, keep)
2331!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2332! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_SK4
2333!#endif
2334! use pm_kind, only: SKG => SK4
2335! integer(IK) , intent(out) , contiguous :: field(:)
2336! integer(IK) , intent(out) :: nsplit
2337! character(*,SKG) , intent(in) , contiguous :: array(:)
2338! character(*,SKG) , intent(in) , contiguous :: sep(:)
2339! logical(LK) , intent(in) , optional :: keep
2340! end subroutine
2341!#endif
2342!
2343!#if SK3_ENABLED
2344! PURE module subroutine setSplitFixDefComDefIns_D1_D1_SK3(field, nsplit, array, sep, keep)
2345!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2346! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_SK3
2347!#endif
2348! use pm_kind, only: SKG => SK3
2349! integer(IK) , intent(out) , contiguous :: field(:)
2350! integer(IK) , intent(out) :: nsplit
2351! character(*,SKG) , intent(in) , contiguous :: array(:)
2352! character(*,SKG) , intent(in) , contiguous :: sep(:)
2353! logical(LK) , intent(in) , optional :: keep
2354! end subroutine
2355!#endif
2356!
2357!#if SK2_ENABLED
2358! PURE module subroutine setSplitFixDefComDefIns_D1_D1_SK2(field, nsplit, array, sep, keep)
2359!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2360! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_SK2
2361!#endif
2362! use pm_kind, only: SKG => SK2
2363! integer(IK) , intent(out) , contiguous :: field(:)
2364! integer(IK) , intent(out) :: nsplit
2365! character(*,SKG) , intent(in) , contiguous :: array(:)
2366! character(*,SKG) , intent(in) , contiguous :: sep(:)
2367! logical(LK) , intent(in) , optional :: keep
2368! end subroutine
2369!#endif
2370!
2371!#if SK1_ENABLED
2372! PURE module subroutine setSplitFixDefComDefIns_D1_D1_SK1(field, nsplit, array, sep, keep)
2373!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2374! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_SK1
2375!#endif
2376! use pm_kind, only: SKG => SK1
2377! integer(IK) , intent(out) , contiguous :: field(:)
2378! integer(IK) , intent(out) :: nsplit
2379! character(*,SKG) , intent(in) , contiguous :: array(:)
2380! character(*,SKG) , intent(in) , contiguous :: sep(:)
2381! logical(LK) , intent(in) , optional :: keep
2382! end subroutine
2383!#endif
2384!
2385! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2386!
2387!#if IK5_ENABLED
2388! PURE module subroutine setSplitFixDefComDefIns_D1_D1_IK5(field, nsplit, array, sep, keep)
2389!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2390! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_IK5
2391!#endif
2392! use pm_kind, only: IKG => IK5
2393! integer(IK) , intent(out) , contiguous :: field(:)
2394! integer(IK) , intent(out) :: nsplit
2395! integer(IKG) , intent(in) , contiguous :: array(:)
2396! integer(IKG) , intent(in) , contiguous :: sep(:)
2397! logical(LK) , intent(in) , optional :: keep
2398! end subroutine
2399!#endif
2400!
2401!#if IK4_ENABLED
2402! PURE module subroutine setSplitFixDefComDefIns_D1_D1_IK4(field, nsplit, array, sep, keep)
2403!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2404! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_IK4
2405!#endif
2406! use pm_kind, only: IKG => IK4
2407! integer(IK) , intent(out) , contiguous :: field(:)
2408! integer(IK) , intent(out) :: nsplit
2409! integer(IKG) , intent(in) , contiguous :: array(:)
2410! integer(IKG) , intent(in) , contiguous :: sep(:)
2411! logical(LK) , intent(in) , optional :: keep
2412! end subroutine
2413!#endif
2414!
2415!#if IK3_ENABLED
2416! PURE module subroutine setSplitFixDefComDefIns_D1_D1_IK3(field, nsplit, array, sep, keep)
2417!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2418! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_IK3
2419!#endif
2420! use pm_kind, only: IKG => IK3
2421! integer(IK) , intent(out) , contiguous :: field(:)
2422! integer(IK) , intent(out) :: nsplit
2423! integer(IKG) , intent(in) , contiguous :: array(:)
2424! integer(IKG) , intent(in) , contiguous :: sep(:)
2425! logical(LK) , intent(in) , optional :: keep
2426! end subroutine
2427!#endif
2428!
2429!#if IK2_ENABLED
2430! PURE module subroutine setSplitFixDefComDefIns_D1_D1_IK2(field, nsplit, array, sep, keep)
2431!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2432! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_IK2
2433!#endif
2434! use pm_kind, only: IKG => IK2
2435! integer(IK) , intent(out) , contiguous :: field(:)
2436! integer(IK) , intent(out) :: nsplit
2437! integer(IKG) , intent(in) , contiguous :: array(:)
2438! integer(IKG) , intent(in) , contiguous :: sep(:)
2439! logical(LK) , intent(in) , optional :: keep
2440! end subroutine
2441!#endif
2442!
2443!#if IK1_ENABLED
2444! PURE module subroutine setSplitFixDefComDefIns_D1_D1_IK1(field, nsplit, array, sep, keep)
2445!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2446! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_IK1
2447!#endif
2448! use pm_kind, only: IKG => IK1
2449! integer(IK) , intent(out) , contiguous :: field(:)
2450! integer(IK) , intent(out) :: nsplit
2451! integer(IKG) , intent(in) , contiguous :: array(:)
2452! integer(IKG) , intent(in) , contiguous :: sep(:)
2453! logical(LK) , intent(in) , optional :: keep
2454! end subroutine
2455!#endif
2456!
2457! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2458!
2459!#if LK5_ENABLED
2460! PURE module subroutine setSplitFixDefComDefIns_D1_D1_LK5(field, nsplit, array, sep, keep)
2461!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2462! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_LK5
2463!#endif
2464! use pm_kind, only: LKG => LK5
2465! integer(IK) , intent(out) , contiguous :: field(:)
2466! integer(IK) , intent(out) :: nsplit
2467! logical(LKG) , intent(in) , contiguous :: array(:)
2468! logical(LKG) , intent(in) , contiguous :: sep(:)
2469! logical(LK) , intent(in) , optional :: keep
2470! end subroutine
2471!#endif
2472!
2473!#if LK4_ENABLED
2474! PURE module subroutine setSplitFixDefComDefIns_D1_D1_LK4(field, nsplit, array, sep, keep)
2475!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2476! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_LK4
2477!#endif
2478! use pm_kind, only: LKG => LK4
2479! integer(IK) , intent(out) , contiguous :: field(:)
2480! integer(IK) , intent(out) :: nsplit
2481! logical(LKG) , intent(in) , contiguous :: array(:)
2482! logical(LKG) , intent(in) , contiguous :: sep(:)
2483! logical(LK) , intent(in) , optional :: keep
2484! end subroutine
2485!#endif
2486!
2487!#if LK3_ENABLED
2488! PURE module subroutine setSplitFixDefComDefIns_D1_D1_LK3(field, nsplit, array, sep, keep)
2489!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2490! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_LK3
2491!#endif
2492! use pm_kind, only: LKG => LK3
2493! integer(IK) , intent(out) , contiguous :: field(:)
2494! integer(IK) , intent(out) :: nsplit
2495! logical(LKG) , intent(in) , contiguous :: array(:)
2496! logical(LKG) , intent(in) , contiguous :: sep(:)
2497! logical(LK) , intent(in) , optional :: keep
2498! end subroutine
2499!#endif
2500!
2501!#if LK2_ENABLED
2502! PURE module subroutine setSplitFixDefComDefIns_D1_D1_LK2(field, nsplit, array, sep, keep)
2503!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2504! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_LK2
2505!#endif
2506! use pm_kind, only: LKG => LK2
2507! integer(IK) , intent(out) , contiguous :: field(:)
2508! integer(IK) , intent(out) :: nsplit
2509! logical(LKG) , intent(in) , contiguous :: array(:)
2510! logical(LKG) , intent(in) , contiguous :: sep(:)
2511! logical(LK) , intent(in) , optional :: keep
2512! end subroutine
2513!#endif
2514!
2515!#if LK1_ENABLED
2516! PURE module subroutine setSplitFixDefComDefIns_D1_D1_LK1(field, nsplit, array, sep, keep)
2517!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2518! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_LK1
2519!#endif
2520! use pm_kind, only: LKG => LK1
2521! integer(IK) , intent(out) , contiguous :: field(:)
2522! integer(IK) , intent(out) :: nsplit
2523! logical(LKG) , intent(in) , contiguous :: array(:)
2524! logical(LKG) , intent(in) , contiguous :: sep(:)
2525! logical(LK) , intent(in) , optional :: keep
2526! end subroutine
2527!#endif
2528!
2529! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2530!
2531!#if CK5_ENABLED
2532! PURE module subroutine setSplitFixDefComDefIns_D1_D1_CK5(field, nsplit, array, sep, keep)
2533!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2534! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_CK5
2535!#endif
2536! use pm_kind, only: CKG => CK5
2537! integer(IK) , intent(out) , contiguous :: field(:)
2538! integer(IK) , intent(out) :: nsplit
2539! complex(CKG) , intent(in) , contiguous :: array(:)
2540! complex(CKG) , intent(in) , contiguous :: sep(:)
2541! logical(LK) , intent(in) , optional :: keep
2542! end subroutine
2543!#endif
2544!
2545!#if CK4_ENABLED
2546! PURE module subroutine setSplitFixDefComDefIns_D1_D1_CK4(field, nsplit, array, sep, keep)
2547!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2548! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_CK4
2549!#endif
2550! use pm_kind, only: CKG => CK4
2551! integer(IK) , intent(out) , contiguous :: field(:)
2552! integer(IK) , intent(out) :: nsplit
2553! complex(CKG) , intent(in) , contiguous :: array(:)
2554! complex(CKG) , intent(in) , contiguous :: sep(:)
2555! logical(LK) , intent(in) , optional :: keep
2556! end subroutine
2557!#endif
2558!
2559!#if CK3_ENABLED
2560! PURE module subroutine setSplitFixDefComDefIns_D1_D1_CK3(field, nsplit, array, sep, keep)
2561!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2562! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_CK3
2563!#endif
2564! use pm_kind, only: CKG => CK3
2565! integer(IK) , intent(out) , contiguous :: field(:)
2566! integer(IK) , intent(out) :: nsplit
2567! complex(CKG) , intent(in) , contiguous :: array(:)
2568! complex(CKG) , intent(in) , contiguous :: sep(:)
2569! logical(LK) , intent(in) , optional :: keep
2570! end subroutine
2571!#endif
2572!
2573!#if CK2_ENABLED
2574! PURE module subroutine setSplitFixDefComDefIns_D1_D1_CK2(field, nsplit, array, sep, keep)
2575!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2576! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_CK2
2577!#endif
2578! use pm_kind, only: CKG => CK2
2579! integer(IK) , intent(out) , contiguous :: field(:)
2580! integer(IK) , intent(out) :: nsplit
2581! complex(CKG) , intent(in) , contiguous :: array(:)
2582! complex(CKG) , intent(in) , contiguous :: sep(:)
2583! logical(LK) , intent(in) , optional :: keep
2584! end subroutine
2585!#endif
2586!
2587!#if CK1_ENABLED
2588! PURE module subroutine setSplitFixDefComDefIns_D1_D1_CK1(field, nsplit, array, sep, keep)
2589!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2590! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_CK1
2591!#endif
2592! use pm_kind, only: CKG => CK1
2593! integer(IK) , intent(out) , contiguous :: field(:)
2594! integer(IK) , intent(out) :: nsplit
2595! complex(CKG) , intent(in) , contiguous :: array(:)
2596! complex(CKG) , intent(in) , contiguous :: sep(:)
2597! logical(LK) , intent(in) , optional :: keep
2598! end subroutine
2599!#endif
2600!
2601! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2602!
2603!#if RK5_ENABLED
2604! PURE module subroutine setSplitFixDefComDefIns_D1_D1_RK5(field, nsplit, array, sep, keep)
2605!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2606! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_RK5
2607!#endif
2608! use pm_kind, only: RKG => RK5
2609! integer(IK) , intent(out) , contiguous :: field(:)
2610! integer(IK) , intent(out) :: nsplit
2611! real(RKG) , intent(in) , contiguous :: array(:)
2612! real(RKG) , intent(in) , contiguous :: sep(:)
2613! logical(LK) , intent(in) , optional :: keep
2614! end subroutine
2615!#endif
2616!
2617!#if RK4_ENABLED
2618! PURE module subroutine setSplitFixDefComDefIns_D1_D1_RK4(field, nsplit, array, sep, keep)
2619!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2620! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_RK4
2621!#endif
2622! use pm_kind, only: RKG => RK4
2623! integer(IK) , intent(out) , contiguous :: field(:)
2624! integer(IK) , intent(out) :: nsplit
2625! real(RKG) , intent(in) , contiguous :: array(:)
2626! real(RKG) , intent(in) , contiguous :: sep(:)
2627! logical(LK) , intent(in) , optional :: keep
2628! end subroutine
2629!#endif
2630!
2631!#if RK3_ENABLED
2632! PURE module subroutine setSplitFixDefComDefIns_D1_D1_RK3(field, nsplit, array, sep, keep)
2633!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2634! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_RK3
2635!#endif
2636! use pm_kind, only: RKG => RK3
2637! integer(IK) , intent(out) , contiguous :: field(:)
2638! integer(IK) , intent(out) :: nsplit
2639! real(RKG) , intent(in) , contiguous :: array(:)
2640! real(RKG) , intent(in) , contiguous :: sep(:)
2641! logical(LK) , intent(in) , optional :: keep
2642! end subroutine
2643!#endif
2644!
2645!#if RK2_ENABLED
2646! PURE module subroutine setSplitFixDefComDefIns_D1_D1_RK2(field, nsplit, array, sep, keep)
2647!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2648! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_RK2
2649!#endif
2650! use pm_kind, only: RKG => RK2
2651! integer(IK) , intent(out) , contiguous :: field(:)
2652! integer(IK) , intent(out) :: nsplit
2653! real(RKG) , intent(in) , contiguous :: array(:)
2654! real(RKG) , intent(in) , contiguous :: sep(:)
2655! logical(LK) , intent(in) , optional :: keep
2656! end subroutine
2657!#endif
2658!
2659!#if RK1_ENABLED
2660! PURE module subroutine setSplitFixDefComDefIns_D1_D1_RK1(field, nsplit, array, sep, keep)
2661!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2662! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComDefIns_D1_D1_RK1
2663!#endif
2664! use pm_kind, only: RKG => RK1
2665! integer(IK) , intent(out) , contiguous :: field(:)
2666! integer(IK) , intent(out) :: nsplit
2667! real(RKG) , intent(in) , contiguous :: array(:)
2668! real(RKG) , intent(in) , contiguous :: sep(:)
2669! logical(LK) , intent(in) , optional :: keep
2670! end subroutine
2671!#endif
2672!
2673! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2674!
2675! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2676! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2677! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2678!
2679! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2680!
2681!#if SK5_ENABLED
2682! module subroutine setSplitFixCusComDefIns_D1_D1_SK5(field, nsplit, array, sep, iseq, keep)
2683!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2684! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_SK5
2685!#endif
2686! use pm_kind, only: SKG => SK5
2687! integer(IK) , intent(out) , contiguous :: field(:)
2688! integer(IK) , intent(out) :: nsplit
2689! character(*,SKG) , intent(in) , contiguous :: array(:)
2690! character(*,SKG) , intent(in) , contiguous :: sep(:)
2691! procedure(logical(LK)) :: iseq
2692! logical(LK) , intent(in) , optional :: keep
2693! end subroutine
2694!#endif
2695!
2696!#if SK4_ENABLED
2697! module subroutine setSplitFixCusComDefIns_D1_D1_SK4(field, nsplit, array, sep, iseq, keep)
2698!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2699! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_SK4
2700!#endif
2701! use pm_kind, only: SKG => SK4
2702! integer(IK) , intent(out) , contiguous :: field(:)
2703! integer(IK) , intent(out) :: nsplit
2704! character(*,SKG) , intent(in) , contiguous :: array(:)
2705! character(*,SKG) , intent(in) , contiguous :: sep(:)
2706! procedure(logical(LK)) :: iseq
2707! logical(LK) , intent(in) , optional :: keep
2708! end subroutine
2709!#endif
2710!
2711!#if SK3_ENABLED
2712! module subroutine setSplitFixCusComDefIns_D1_D1_SK3(field, nsplit, array, sep, iseq, keep)
2713!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2714! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_SK3
2715!#endif
2716! use pm_kind, only: SKG => SK3
2717! integer(IK) , intent(out) , contiguous :: field(:)
2718! integer(IK) , intent(out) :: nsplit
2719! character(*,SKG) , intent(in) , contiguous :: array(:)
2720! character(*,SKG) , intent(in) , contiguous :: sep(:)
2721! procedure(logical(LK)) :: iseq
2722! logical(LK) , intent(in) , optional :: keep
2723! end subroutine
2724!#endif
2725!
2726!#if SK2_ENABLED
2727! module subroutine setSplitFixCusComDefIns_D1_D1_SK2(field, nsplit, array, sep, iseq, keep)
2728!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2729! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_SK2
2730!#endif
2731! use pm_kind, only: SKG => SK2
2732! integer(IK) , intent(out) , contiguous :: field(:)
2733! integer(IK) , intent(out) :: nsplit
2734! character(*,SKG) , intent(in) , contiguous :: array(:)
2735! character(*,SKG) , intent(in) , contiguous :: sep(:)
2736! procedure(logical(LK)) :: iseq
2737! logical(LK) , intent(in) , optional :: keep
2738! end subroutine
2739!#endif
2740!
2741!#if SK1_ENABLED
2742! module subroutine setSplitFixCusComDefIns_D1_D1_SK1(field, nsplit, array, sep, iseq, keep)
2743!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2744! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_SK1
2745!#endif
2746! use pm_kind, only: SKG => SK1
2747! integer(IK) , intent(out) , contiguous :: field(:)
2748! integer(IK) , intent(out) :: nsplit
2749! character(*,SKG) , intent(in) , contiguous :: array(:)
2750! character(*,SKG) , intent(in) , contiguous :: sep(:)
2751! procedure(logical(LK)) :: iseq
2752! logical(LK) , intent(in) , optional :: keep
2753! end subroutine
2754!#endif
2755!
2756! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2757!
2758!#if IK5_ENABLED
2759! module subroutine setSplitFixCusComDefIns_D1_D1_IK5(field, nsplit, array, sep, iseq, keep)
2760!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2761! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_IK5
2762!#endif
2763! use pm_kind, only: IKG => IK5
2764! integer(IK) , intent(out) , contiguous :: field(:)
2765! integer(IK) , intent(out) :: nsplit
2766! integer(IKG) , intent(in) , contiguous :: array(:)
2767! integer(IKG) , intent(in) , contiguous :: sep(:)
2768! procedure(logical(LK)) :: iseq
2769! logical(LK) , intent(in) , optional :: keep
2770! end subroutine
2771!#endif
2772!
2773!#if IK4_ENABLED
2774! module subroutine setSplitFixCusComDefIns_D1_D1_IK4(field, nsplit, array, sep, iseq, keep)
2775!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2776! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_IK4
2777!#endif
2778! use pm_kind, only: IKG => IK4
2779! integer(IK) , intent(out) , contiguous :: field(:)
2780! integer(IK) , intent(out) :: nsplit
2781! integer(IKG) , intent(in) , contiguous :: array(:)
2782! integer(IKG) , intent(in) , contiguous :: sep(:)
2783! procedure(logical(LK)) :: iseq
2784! logical(LK) , intent(in) , optional :: keep
2785! end subroutine
2786!#endif
2787!
2788!#if IK3_ENABLED
2789! module subroutine setSplitFixCusComDefIns_D1_D1_IK3(field, nsplit, array, sep, iseq, keep)
2790!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2791! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_IK3
2792!#endif
2793! use pm_kind, only: IKG => IK3
2794! integer(IK) , intent(out) , contiguous :: field(:)
2795! integer(IK) , intent(out) :: nsplit
2796! integer(IKG) , intent(in) , contiguous :: array(:)
2797! integer(IKG) , intent(in) , contiguous :: sep(:)
2798! procedure(logical(LK)) :: iseq
2799! logical(LK) , intent(in) , optional :: keep
2800! end subroutine
2801!#endif
2802!
2803!#if IK2_ENABLED
2804! module subroutine setSplitFixCusComDefIns_D1_D1_IK2(field, nsplit, array, sep, iseq, keep)
2805!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2806! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_IK2
2807!#endif
2808! use pm_kind, only: IKG => IK2
2809! integer(IK) , intent(out) , contiguous :: field(:)
2810! integer(IK) , intent(out) :: nsplit
2811! integer(IKG) , intent(in) , contiguous :: array(:)
2812! integer(IKG) , intent(in) , contiguous :: sep(:)
2813! procedure(logical(LK)) :: iseq
2814! logical(LK) , intent(in) , optional :: keep
2815! end subroutine
2816!#endif
2817!
2818!#if IK1_ENABLED
2819! module subroutine setSplitFixCusComDefIns_D1_D1_IK1(field, nsplit, array, sep, iseq, keep)
2820!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2821! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_IK1
2822!#endif
2823! use pm_kind, only: IKG => IK1
2824! integer(IK) , intent(out) , contiguous :: field(:)
2825! integer(IK) , intent(out) :: nsplit
2826! integer(IKG) , intent(in) , contiguous :: array(:)
2827! integer(IKG) , intent(in) , contiguous :: sep(:)
2828! procedure(logical(LK)) :: iseq
2829! logical(LK) , intent(in) , optional :: keep
2830! end subroutine
2831!#endif
2832!
2833! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2834!
2835!#if LK5_ENABLED
2836! module subroutine setSplitFixCusComDefIns_D1_D1_LK5(field, nsplit, array, sep, iseq, keep)
2837!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2838! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_LK5
2839!#endif
2840! use pm_kind, only: LKG => LK5
2841! integer(IK) , intent(out) , contiguous :: field(:)
2842! integer(IK) , intent(out) :: nsplit
2843! logical(LKG) , intent(in) , contiguous :: array(:)
2844! logical(LKG) , intent(in) , contiguous :: sep(:)
2845! procedure(logical(LK)) :: iseq
2846! logical(LK) , intent(in) , optional :: keep
2847! end subroutine
2848!#endif
2849!
2850!#if LK4_ENABLED
2851! module subroutine setSplitFixCusComDefIns_D1_D1_LK4(field, nsplit, array, sep, iseq, keep)
2852!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2853! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_LK4
2854!#endif
2855! use pm_kind, only: LKG => LK4
2856! integer(IK) , intent(out) , contiguous :: field(:)
2857! integer(IK) , intent(out) :: nsplit
2858! logical(LKG) , intent(in) , contiguous :: array(:)
2859! logical(LKG) , intent(in) , contiguous :: sep(:)
2860! procedure(logical(LK)) :: iseq
2861! logical(LK) , intent(in) , optional :: keep
2862! end subroutine
2863!#endif
2864!
2865!#if LK3_ENABLED
2866! module subroutine setSplitFixCusComDefIns_D1_D1_LK3(field, nsplit, array, sep, iseq, keep)
2867!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2868! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_LK3
2869!#endif
2870! use pm_kind, only: LKG => LK3
2871! integer(IK) , intent(out) , contiguous :: field(:)
2872! integer(IK) , intent(out) :: nsplit
2873! logical(LKG) , intent(in) , contiguous :: array(:)
2874! logical(LKG) , intent(in) , contiguous :: sep(:)
2875! procedure(logical(LK)) :: iseq
2876! logical(LK) , intent(in) , optional :: keep
2877! end subroutine
2878!#endif
2879!
2880!#if LK2_ENABLED
2881! module subroutine setSplitFixCusComDefIns_D1_D1_LK2(field, nsplit, array, sep, iseq, keep)
2882!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2883! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_LK2
2884!#endif
2885! use pm_kind, only: LKG => LK2
2886! integer(IK) , intent(out) , contiguous :: field(:)
2887! integer(IK) , intent(out) :: nsplit
2888! logical(LKG) , intent(in) , contiguous :: array(:)
2889! logical(LKG) , intent(in) , contiguous :: sep(:)
2890! procedure(logical(LK)) :: iseq
2891! logical(LK) , intent(in) , optional :: keep
2892! end subroutine
2893!#endif
2894!
2895!#if LK1_ENABLED
2896! module subroutine setSplitFixCusComDefIns_D1_D1_LK1(field, nsplit, array, sep, iseq, keep)
2897!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2898! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_LK1
2899!#endif
2900! use pm_kind, only: LKG => LK1
2901! integer(IK) , intent(out) , contiguous :: field(:)
2902! integer(IK) , intent(out) :: nsplit
2903! logical(LKG) , intent(in) , contiguous :: array(:)
2904! logical(LKG) , intent(in) , contiguous :: sep(:)
2905! procedure(logical(LK)) :: iseq
2906! logical(LK) , intent(in) , optional :: keep
2907! end subroutine
2908!#endif
2909!
2910! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2911!
2912!#if CK5_ENABLED
2913! module subroutine setSplitFixCusComDefIns_D1_D1_CK5(field, nsplit, array, sep, iseq, keep)
2914!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2915! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_CK5
2916!#endif
2917! use pm_kind, only: CKG => CK5
2918! integer(IK) , intent(out) , contiguous :: field(:)
2919! integer(IK) , intent(out) :: nsplit
2920! complex(CKG) , intent(in) , contiguous :: array(:)
2921! complex(CKG) , intent(in) , contiguous :: sep(:)
2922! procedure(logical(LK)) :: iseq
2923! logical(LK) , intent(in) , optional :: keep
2924! end subroutine
2925!#endif
2926!
2927!#if CK4_ENABLED
2928! module subroutine setSplitFixCusComDefIns_D1_D1_CK4(field, nsplit, array, sep, iseq, keep)
2929!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2930! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_CK4
2931!#endif
2932! use pm_kind, only: CKG => CK4
2933! integer(IK) , intent(out) , contiguous :: field(:)
2934! integer(IK) , intent(out) :: nsplit
2935! complex(CKG) , intent(in) , contiguous :: array(:)
2936! complex(CKG) , intent(in) , contiguous :: sep(:)
2937! procedure(logical(LK)) :: iseq
2938! logical(LK) , intent(in) , optional :: keep
2939! end subroutine
2940!#endif
2941!
2942!#if CK3_ENABLED
2943! module subroutine setSplitFixCusComDefIns_D1_D1_CK3(field, nsplit, array, sep, iseq, keep)
2944!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2945! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_CK3
2946!#endif
2947! use pm_kind, only: CKG => CK3
2948! integer(IK) , intent(out) , contiguous :: field(:)
2949! integer(IK) , intent(out) :: nsplit
2950! complex(CKG) , intent(in) , contiguous :: array(:)
2951! complex(CKG) , intent(in) , contiguous :: sep(:)
2952! procedure(logical(LK)) :: iseq
2953! logical(LK) , intent(in) , optional :: keep
2954! end subroutine
2955!#endif
2956!
2957!#if CK2_ENABLED
2958! module subroutine setSplitFixCusComDefIns_D1_D1_CK2(field, nsplit, array, sep, iseq, keep)
2959!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2960! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_CK2
2961!#endif
2962! use pm_kind, only: CKG => CK2
2963! integer(IK) , intent(out) , contiguous :: field(:)
2964! integer(IK) , intent(out) :: nsplit
2965! complex(CKG) , intent(in) , contiguous :: array(:)
2966! complex(CKG) , intent(in) , contiguous :: sep(:)
2967! procedure(logical(LK)) :: iseq
2968! logical(LK) , intent(in) , optional :: keep
2969! end subroutine
2970!#endif
2971!
2972!#if CK1_ENABLED
2973! module subroutine setSplitFixCusComDefIns_D1_D1_CK1(field, nsplit, array, sep, iseq, keep)
2974!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2975! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_CK1
2976!#endif
2977! use pm_kind, only: CKG => CK1
2978! integer(IK) , intent(out) , contiguous :: field(:)
2979! integer(IK) , intent(out) :: nsplit
2980! complex(CKG) , intent(in) , contiguous :: array(:)
2981! complex(CKG) , intent(in) , contiguous :: sep(:)
2982! procedure(logical(LK)) :: iseq
2983! logical(LK) , intent(in) , optional :: keep
2984! end subroutine
2985!#endif
2986!
2987! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2988!
2989!#if RK5_ENABLED
2990! module subroutine setSplitFixCusComDefIns_D1_D1_RK5(field, nsplit, array, sep, iseq, keep)
2991!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
2992! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_RK5
2993!#endif
2994! use pm_kind, only: RKG => RK5
2995! integer(IK) , intent(out) , contiguous :: field(:)
2996! integer(IK) , intent(out) :: nsplit
2997! real(RKG) , intent(in) , contiguous :: array(:)
2998! real(RKG) , intent(in) , contiguous :: sep(:)
2999! procedure(logical(LK)) :: iseq
3000! logical(LK) , intent(in) , optional :: keep
3001! end subroutine
3002!#endif
3003!
3004!#if RK4_ENABLED
3005! module subroutine setSplitFixCusComDefIns_D1_D1_RK4(field, nsplit, array, sep, iseq, keep)
3006!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3007! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_RK4
3008!#endif
3009! use pm_kind, only: RKG => RK4
3010! integer(IK) , intent(out) , contiguous :: field(:)
3011! integer(IK) , intent(out) :: nsplit
3012! real(RKG) , intent(in) , contiguous :: array(:)
3013! real(RKG) , intent(in) , contiguous :: sep(:)
3014! procedure(logical(LK)) :: iseq
3015! logical(LK) , intent(in) , optional :: keep
3016! end subroutine
3017!#endif
3018!
3019!#if RK3_ENABLED
3020! module subroutine setSplitFixCusComDefIns_D1_D1_RK3(field, nsplit, array, sep, iseq, keep)
3021!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3022! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_RK3
3023!#endif
3024! use pm_kind, only: RKG => RK3
3025! integer(IK) , intent(out) , contiguous :: field(:)
3026! integer(IK) , intent(out) :: nsplit
3027! real(RKG) , intent(in) , contiguous :: array(:)
3028! real(RKG) , intent(in) , contiguous :: sep(:)
3029! procedure(logical(LK)) :: iseq
3030! logical(LK) , intent(in) , optional :: keep
3031! end subroutine
3032!#endif
3033!
3034!#if RK2_ENABLED
3035! module subroutine setSplitFixCusComDefIns_D1_D1_RK2(field, nsplit, array, sep, iseq, keep)
3036!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3037! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_RK2
3038!#endif
3039! use pm_kind, only: RKG => RK2
3040! integer(IK) , intent(out) , contiguous :: field(:)
3041! integer(IK) , intent(out) :: nsplit
3042! real(RKG) , intent(in) , contiguous :: array(:)
3043! real(RKG) , intent(in) , contiguous :: sep(:)
3044! procedure(logical(LK)) :: iseq
3045! logical(LK) , intent(in) , optional :: keep
3046! end subroutine
3047!#endif
3048!
3049!#if RK1_ENABLED
3050! module subroutine setSplitFixCusComDefIns_D1_D1_RK1(field, nsplit, array, sep, iseq, keep)
3051!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3052! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComDefIns_D1_D1_RK1
3053!#endif
3054! use pm_kind, only: RKG => RK1
3055! integer(IK) , intent(out) , contiguous :: field(:)
3056! integer(IK) , intent(out) :: nsplit
3057! real(RKG) , intent(in) , contiguous :: array(:)
3058! real(RKG) , intent(in) , contiguous :: sep(:)
3059! procedure(logical(LK)) :: iseq
3060! logical(LK) , intent(in) , optional :: keep
3061! end subroutine
3062!#endif
3063!
3064! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3065!
3066! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3067! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3068! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3069!
3070! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3071!
3072!#if SK5_ENABLED
3073! PURE module subroutine setSplitFixDefComCusIns_D1_D1_SK5(field, nsplit, array, sep, instance, sorted, unique, keep)
3074!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3075! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_SK5
3076!#endif
3077! use pm_kind, only: SKG => SK5
3078! integer(IK) , intent(out) , contiguous :: field(:)
3079! integer(IK) , intent(out) :: nsplit
3080! character(*,SKG) , intent(in) , contiguous :: array(:)
3081! character(*,SKG) , intent(in) , contiguous :: sep(:)
3082! integer(IK) , intent(in) , contiguous :: instance(:)
3083! logical(LK) , intent(in) , optional :: sorted
3084! logical(LK) , intent(in) , optional :: unique
3085! logical(LK) , intent(in) , optional :: keep
3086! end subroutine
3087!#endif
3088!
3089!#if SK4_ENABLED
3090! PURE module subroutine setSplitFixDefComCusIns_D1_D1_SK4(field, nsplit, array, sep, instance, sorted, unique, keep)
3091!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3092! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_SK4
3093!#endif
3094! use pm_kind, only: SKG => SK4
3095! integer(IK) , intent(out) , contiguous :: field(:)
3096! integer(IK) , intent(out) :: nsplit
3097! character(*,SKG) , intent(in) , contiguous :: array(:)
3098! character(*,SKG) , intent(in) , contiguous :: sep(:)
3099! integer(IK) , intent(in) , contiguous :: instance(:)
3100! logical(LK) , intent(in) , optional :: sorted
3101! logical(LK) , intent(in) , optional :: unique
3102! logical(LK) , intent(in) , optional :: keep
3103! end subroutine
3104!#endif
3105!
3106!#if SK3_ENABLED
3107! PURE module subroutine setSplitFixDefComCusIns_D1_D1_SK3(field, nsplit, array, sep, instance, sorted, unique, keep)
3108!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3109! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_SK3
3110!#endif
3111! use pm_kind, only: SKG => SK3
3112! integer(IK) , intent(out) , contiguous :: field(:)
3113! integer(IK) , intent(out) :: nsplit
3114! character(*,SKG) , intent(in) , contiguous :: array(:)
3115! character(*,SKG) , intent(in) , contiguous :: sep(:)
3116! integer(IK) , intent(in) , contiguous :: instance(:)
3117! logical(LK) , intent(in) , optional :: sorted
3118! logical(LK) , intent(in) , optional :: unique
3119! logical(LK) , intent(in) , optional :: keep
3120! end subroutine
3121!#endif
3122!
3123!#if SK2_ENABLED
3124! PURE module subroutine setSplitFixDefComCusIns_D1_D1_SK2(field, nsplit, array, sep, instance, sorted, unique, keep)
3125!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3126! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_SK2
3127!#endif
3128! use pm_kind, only: SKG => SK2
3129! integer(IK) , intent(out) , contiguous :: field(:)
3130! integer(IK) , intent(out) :: nsplit
3131! character(*,SKG) , intent(in) , contiguous :: array(:)
3132! character(*,SKG) , intent(in) , contiguous :: sep(:)
3133! integer(IK) , intent(in) , contiguous :: instance(:)
3134! logical(LK) , intent(in) , optional :: sorted
3135! logical(LK) , intent(in) , optional :: unique
3136! logical(LK) , intent(in) , optional :: keep
3137! end subroutine
3138!#endif
3139!
3140!#if SK1_ENABLED
3141! PURE module subroutine setSplitFixDefComCusIns_D1_D1_SK1(field, nsplit, array, sep, instance, sorted, unique, keep)
3142!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3143! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_SK1
3144!#endif
3145! use pm_kind, only: SKG => SK1
3146! integer(IK) , intent(out) , contiguous :: field(:)
3147! integer(IK) , intent(out) :: nsplit
3148! character(*,SKG) , intent(in) , contiguous :: array(:)
3149! character(*,SKG) , intent(in) , contiguous :: sep(:)
3150! integer(IK) , intent(in) , contiguous :: instance(:)
3151! logical(LK) , intent(in) , optional :: sorted
3152! logical(LK) , intent(in) , optional :: unique
3153! logical(LK) , intent(in) , optional :: keep
3154! end subroutine
3155!#endif
3156!
3157! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3158!
3159!#if IK5_ENABLED
3160! PURE module subroutine setSplitFixDefComCusIns_D1_D1_IK5(field, nsplit, array, sep, instance, sorted, unique, keep)
3161!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3162! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_IK5
3163!#endif
3164! use pm_kind, only: IKG => IK5
3165! integer(IK) , intent(out) , contiguous :: field(:)
3166! integer(IK) , intent(out) :: nsplit
3167! integer(IKG) , intent(in) , contiguous :: array(:)
3168! integer(IKG) , intent(in) , contiguous :: sep(:)
3169! integer(IK) , intent(in) , contiguous :: instance(:)
3170! logical(LK) , intent(in) , optional :: sorted
3171! logical(LK) , intent(in) , optional :: unique
3172! logical(LK) , intent(in) , optional :: keep
3173! end subroutine
3174!#endif
3175!
3176!#if IK4_ENABLED
3177! PURE module subroutine setSplitFixDefComCusIns_D1_D1_IK4(field, nsplit, array, sep, instance, sorted, unique, keep)
3178!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3179! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_IK4
3180!#endif
3181! use pm_kind, only: IKG => IK4
3182! integer(IK) , intent(out) , contiguous :: field(:)
3183! integer(IK) , intent(out) :: nsplit
3184! integer(IKG) , intent(in) , contiguous :: array(:)
3185! integer(IKG) , intent(in) , contiguous :: sep(:)
3186! integer(IK) , intent(in) , contiguous :: instance(:)
3187! logical(LK) , intent(in) , optional :: sorted
3188! logical(LK) , intent(in) , optional :: unique
3189! logical(LK) , intent(in) , optional :: keep
3190! end subroutine
3191!#endif
3192!
3193!#if IK3_ENABLED
3194! PURE module subroutine setSplitFixDefComCusIns_D1_D1_IK3(field, nsplit, array, sep, instance, sorted, unique, keep)
3195!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3196! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_IK3
3197!#endif
3198! use pm_kind, only: IKG => IK3
3199! integer(IK) , intent(out) , contiguous :: field(:)
3200! integer(IK) , intent(out) :: nsplit
3201! integer(IKG) , intent(in) , contiguous :: array(:)
3202! integer(IKG) , intent(in) , contiguous :: sep(:)
3203! integer(IK) , intent(in) , contiguous :: instance(:)
3204! logical(LK) , intent(in) , optional :: sorted
3205! logical(LK) , intent(in) , optional :: unique
3206! logical(LK) , intent(in) , optional :: keep
3207! end subroutine
3208!#endif
3209!
3210!#if IK2_ENABLED
3211! PURE module subroutine setSplitFixDefComCusIns_D1_D1_IK2(field, nsplit, array, sep, instance, sorted, unique, keep)
3212!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3213! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_IK2
3214!#endif
3215! use pm_kind, only: IKG => IK2
3216! integer(IK) , intent(out) , contiguous :: field(:)
3217! integer(IK) , intent(out) :: nsplit
3218! integer(IKG) , intent(in) , contiguous :: array(:)
3219! integer(IKG) , intent(in) , contiguous :: sep(:)
3220! integer(IK) , intent(in) , contiguous :: instance(:)
3221! logical(LK) , intent(in) , optional :: sorted
3222! logical(LK) , intent(in) , optional :: unique
3223! logical(LK) , intent(in) , optional :: keep
3224! end subroutine
3225!#endif
3226!
3227!#if IK1_ENABLED
3228! PURE module subroutine setSplitFixDefComCusIns_D1_D1_IK1(field, nsplit, array, sep, instance, sorted, unique, keep)
3229!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3230! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_IK1
3231!#endif
3232! use pm_kind, only: IKG => IK1
3233! integer(IK) , intent(out) , contiguous :: field(:)
3234! integer(IK) , intent(out) :: nsplit
3235! integer(IKG) , intent(in) , contiguous :: array(:)
3236! integer(IKG) , intent(in) , contiguous :: sep(:)
3237! integer(IK) , intent(in) , contiguous :: instance(:)
3238! logical(LK) , intent(in) , optional :: sorted
3239! logical(LK) , intent(in) , optional :: unique
3240! logical(LK) , intent(in) , optional :: keep
3241! end subroutine
3242!#endif
3243!
3244! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3245!
3246!#if LK5_ENABLED
3247! PURE module subroutine setSplitFixDefComCusIns_D1_D1_LK5(field, nsplit, array, sep, instance, sorted, unique, keep)
3248!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3249! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_LK5
3250!#endif
3251! use pm_kind, only: LKG => LK5
3252! integer(IK) , intent(out) , contiguous :: field(:)
3253! integer(IK) , intent(out) :: nsplit
3254! logical(LKG) , intent(in) , contiguous :: array(:)
3255! logical(LKG) , intent(in) , contiguous :: sep(:)
3256! integer(IK) , intent(in) , contiguous :: instance(:)
3257! logical(LK) , intent(in) , optional :: sorted
3258! logical(LK) , intent(in) , optional :: unique
3259! logical(LK) , intent(in) , optional :: keep
3260! end subroutine
3261!#endif
3262!
3263!#if LK4_ENABLED
3264! PURE module subroutine setSplitFixDefComCusIns_D1_D1_LK4(field, nsplit, array, sep, instance, sorted, unique, keep)
3265!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3266! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_LK4
3267!#endif
3268! use pm_kind, only: LKG => LK4
3269! integer(IK) , intent(out) , contiguous :: field(:)
3270! integer(IK) , intent(out) :: nsplit
3271! logical(LKG) , intent(in) , contiguous :: array(:)
3272! logical(LKG) , intent(in) , contiguous :: sep(:)
3273! integer(IK) , intent(in) , contiguous :: instance(:)
3274! logical(LK) , intent(in) , optional :: sorted
3275! logical(LK) , intent(in) , optional :: unique
3276! logical(LK) , intent(in) , optional :: keep
3277! end subroutine
3278!#endif
3279!
3280!#if LK3_ENABLED
3281! PURE module subroutine setSplitFixDefComCusIns_D1_D1_LK3(field, nsplit, array, sep, instance, sorted, unique, keep)
3282!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3283! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_LK3
3284!#endif
3285! use pm_kind, only: LKG => LK3
3286! integer(IK) , intent(out) , contiguous :: field(:)
3287! integer(IK) , intent(out) :: nsplit
3288! logical(LKG) , intent(in) , contiguous :: array(:)
3289! logical(LKG) , intent(in) , contiguous :: sep(:)
3290! integer(IK) , intent(in) , contiguous :: instance(:)
3291! logical(LK) , intent(in) , optional :: sorted
3292! logical(LK) , intent(in) , optional :: unique
3293! logical(LK) , intent(in) , optional :: keep
3294! end subroutine
3295!#endif
3296!
3297!#if LK2_ENABLED
3298! PURE module subroutine setSplitFixDefComCusIns_D1_D1_LK2(field, nsplit, array, sep, instance, sorted, unique, keep)
3299!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3300! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_LK2
3301!#endif
3302! use pm_kind, only: LKG => LK2
3303! integer(IK) , intent(out) , contiguous :: field(:)
3304! integer(IK) , intent(out) :: nsplit
3305! logical(LKG) , intent(in) , contiguous :: array(:)
3306! logical(LKG) , intent(in) , contiguous :: sep(:)
3307! integer(IK) , intent(in) , contiguous :: instance(:)
3308! logical(LK) , intent(in) , optional :: sorted
3309! logical(LK) , intent(in) , optional :: unique
3310! logical(LK) , intent(in) , optional :: keep
3311! end subroutine
3312!#endif
3313!
3314!#if LK1_ENABLED
3315! PURE module subroutine setSplitFixDefComCusIns_D1_D1_LK1(field, nsplit, array, sep, instance, sorted, unique, keep)
3316!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3317! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_LK1
3318!#endif
3319! use pm_kind, only: LKG => LK1
3320! integer(IK) , intent(out) , contiguous :: field(:)
3321! integer(IK) , intent(out) :: nsplit
3322! logical(LKG) , intent(in) , contiguous :: array(:)
3323! logical(LKG) , intent(in) , contiguous :: sep(:)
3324! integer(IK) , intent(in) , contiguous :: instance(:)
3325! logical(LK) , intent(in) , optional :: sorted
3326! logical(LK) , intent(in) , optional :: unique
3327! logical(LK) , intent(in) , optional :: keep
3328! end subroutine
3329!#endif
3330!
3331! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3332!
3333!#if CK5_ENABLED
3334! PURE module subroutine setSplitFixDefComCusIns_D1_D1_CK5(field, nsplit, array, sep, instance, sorted, unique, keep)
3335!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3336! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_CK5
3337!#endif
3338! use pm_kind, only: CKG => CK5
3339! integer(IK) , intent(out) , contiguous :: field(:)
3340! integer(IK) , intent(out) :: nsplit
3341! complex(CKG) , intent(in) , contiguous :: array(:)
3342! complex(CKG) , intent(in) , contiguous :: sep(:)
3343! integer(IK) , intent(in) , contiguous :: instance(:)
3344! logical(LK) , intent(in) , optional :: sorted
3345! logical(LK) , intent(in) , optional :: unique
3346! logical(LK) , intent(in) , optional :: keep
3347! end subroutine
3348!#endif
3349!
3350!#if CK4_ENABLED
3351! PURE module subroutine setSplitFixDefComCusIns_D1_D1_CK4(field, nsplit, array, sep, instance, sorted, unique, keep)
3352!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3353! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_CK4
3354!#endif
3355! use pm_kind, only: CKG => CK4
3356! integer(IK) , intent(out) , contiguous :: field(:)
3357! integer(IK) , intent(out) :: nsplit
3358! complex(CKG) , intent(in) , contiguous :: array(:)
3359! complex(CKG) , intent(in) , contiguous :: sep(:)
3360! integer(IK) , intent(in) , contiguous :: instance(:)
3361! logical(LK) , intent(in) , optional :: sorted
3362! logical(LK) , intent(in) , optional :: unique
3363! logical(LK) , intent(in) , optional :: keep
3364! end subroutine
3365!#endif
3366!
3367!#if CK3_ENABLED
3368! PURE module subroutine setSplitFixDefComCusIns_D1_D1_CK3(field, nsplit, array, sep, instance, sorted, unique, keep)
3369!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3370! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_CK3
3371!#endif
3372! use pm_kind, only: CKG => CK3
3373! integer(IK) , intent(out) , contiguous :: field(:)
3374! integer(IK) , intent(out) :: nsplit
3375! complex(CKG) , intent(in) , contiguous :: array(:)
3376! complex(CKG) , intent(in) , contiguous :: sep(:)
3377! integer(IK) , intent(in) , contiguous :: instance(:)
3378! logical(LK) , intent(in) , optional :: sorted
3379! logical(LK) , intent(in) , optional :: unique
3380! logical(LK) , intent(in) , optional :: keep
3381! end subroutine
3382!#endif
3383!
3384!#if CK2_ENABLED
3385! PURE module subroutine setSplitFixDefComCusIns_D1_D1_CK2(field, nsplit, array, sep, instance, sorted, unique, keep)
3386!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3387! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_CK2
3388!#endif
3389! use pm_kind, only: CKG => CK2
3390! integer(IK) , intent(out) , contiguous :: field(:)
3391! integer(IK) , intent(out) :: nsplit
3392! complex(CKG) , intent(in) , contiguous :: array(:)
3393! complex(CKG) , intent(in) , contiguous :: sep(:)
3394! integer(IK) , intent(in) , contiguous :: instance(:)
3395! logical(LK) , intent(in) , optional :: sorted
3396! logical(LK) , intent(in) , optional :: unique
3397! logical(LK) , intent(in) , optional :: keep
3398! end subroutine
3399!#endif
3400!
3401!#if CK1_ENABLED
3402! PURE module subroutine setSplitFixDefComCusIns_D1_D1_CK1(field, nsplit, array, sep, instance, sorted, unique, keep)
3403!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3404! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_CK1
3405!#endif
3406! use pm_kind, only: CKG => CK1
3407! integer(IK) , intent(out) , contiguous :: field(:)
3408! integer(IK) , intent(out) :: nsplit
3409! complex(CKG) , intent(in) , contiguous :: array(:)
3410! complex(CKG) , intent(in) , contiguous :: sep(:)
3411! integer(IK) , intent(in) , contiguous :: instance(:)
3412! logical(LK) , intent(in) , optional :: sorted
3413! logical(LK) , intent(in) , optional :: unique
3414! logical(LK) , intent(in) , optional :: keep
3415! end subroutine
3416!#endif
3417!
3418! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3419!
3420!#if RK5_ENABLED
3421! PURE module subroutine setSplitFixDefComCusIns_D1_D1_RK5(field, nsplit, array, sep, instance, sorted, unique, keep)
3422!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3423! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_RK5
3424!#endif
3425! use pm_kind, only: RKG => RK5
3426! integer(IK) , intent(out) , contiguous :: field(:)
3427! integer(IK) , intent(out) :: nsplit
3428! real(RKG) , intent(in) , contiguous :: array(:)
3429! real(RKG) , intent(in) , contiguous :: sep(:)
3430! integer(IK) , intent(in) , contiguous :: instance(:)
3431! logical(LK) , intent(in) , optional :: sorted
3432! logical(LK) , intent(in) , optional :: unique
3433! logical(LK) , intent(in) , optional :: keep
3434! end subroutine
3435!#endif
3436!
3437!#if RK4_ENABLED
3438! PURE module subroutine setSplitFixDefComCusIns_D1_D1_RK4(field, nsplit, array, sep, instance, sorted, unique, keep)
3439!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3440! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_RK4
3441!#endif
3442! use pm_kind, only: RKG => RK4
3443! integer(IK) , intent(out) , contiguous :: field(:)
3444! integer(IK) , intent(out) :: nsplit
3445! real(RKG) , intent(in) , contiguous :: array(:)
3446! real(RKG) , intent(in) , contiguous :: sep(:)
3447! integer(IK) , intent(in) , contiguous :: instance(:)
3448! logical(LK) , intent(in) , optional :: sorted
3449! logical(LK) , intent(in) , optional :: unique
3450! logical(LK) , intent(in) , optional :: keep
3451! end subroutine
3452!#endif
3453!
3454!#if RK3_ENABLED
3455! PURE module subroutine setSplitFixDefComCusIns_D1_D1_RK3(field, nsplit, array, sep, instance, sorted, unique, keep)
3456!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3457! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_RK3
3458!#endif
3459! use pm_kind, only: RKG => RK3
3460! integer(IK) , intent(out) , contiguous :: field(:)
3461! integer(IK) , intent(out) :: nsplit
3462! real(RKG) , intent(in) , contiguous :: array(:)
3463! real(RKG) , intent(in) , contiguous :: sep(:)
3464! integer(IK) , intent(in) , contiguous :: instance(:)
3465! logical(LK) , intent(in) , optional :: sorted
3466! logical(LK) , intent(in) , optional :: unique
3467! logical(LK) , intent(in) , optional :: keep
3468! end subroutine
3469!#endif
3470!
3471!#if RK2_ENABLED
3472! PURE module subroutine setSplitFixDefComCusIns_D1_D1_RK2(field, nsplit, array, sep, instance, sorted, unique, keep)
3473!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3474! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_RK2
3475!#endif
3476! use pm_kind, only: RKG => RK2
3477! integer(IK) , intent(out) , contiguous :: field(:)
3478! integer(IK) , intent(out) :: nsplit
3479! real(RKG) , intent(in) , contiguous :: array(:)
3480! real(RKG) , intent(in) , contiguous :: sep(:)
3481! integer(IK) , intent(in) , contiguous :: instance(:)
3482! logical(LK) , intent(in) , optional :: sorted
3483! logical(LK) , intent(in) , optional :: unique
3484! logical(LK) , intent(in) , optional :: keep
3485! end subroutine
3486!#endif
3487!
3488!#if RK1_ENABLED
3489! PURE module subroutine setSplitFixDefComCusIns_D1_D1_RK1(field, nsplit, array, sep, instance, sorted, unique, keep)
3490!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3491! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixDefComCusIns_D1_D1_RK1
3492!#endif
3493! use pm_kind, only: RKG => RK1
3494! integer(IK) , intent(out) , contiguous :: field(:)
3495! integer(IK) , intent(out) :: nsplit
3496! real(RKG) , intent(in) , contiguous :: array(:)
3497! real(RKG) , intent(in) , contiguous :: sep(:)
3498! integer(IK) , intent(in) , contiguous :: instance(:)
3499! logical(LK) , intent(in) , optional :: sorted
3500! logical(LK) , intent(in) , optional :: unique
3501! logical(LK) , intent(in) , optional :: keep
3502! end subroutine
3503!#endif
3504!
3505! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3506!
3507! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3508! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3509! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3510!
3511! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3512!
3513!#if SK5_ENABLED
3514! module subroutine setSplitFixCusComCusIns_D1_D1_SK5(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3515!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3516! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_SK5
3517!#endif
3518! use pm_kind, only: SKG => SK5
3519! integer(IK) , intent(out) , contiguous :: field(:)
3520! integer(IK) , intent(out) :: nsplit
3521! character(*,SKG) , intent(in) , contiguous :: array(:)
3522! character(*,SKG) , intent(in) , contiguous :: sep(:)
3523! procedure(logical(LK)) :: iseq
3524! integer(IK) , intent(in) , contiguous :: instance(:)
3525! logical(LK) , intent(in) , optional :: sorted
3526! logical(LK) , intent(in) , optional :: unique
3527! logical(LK) , intent(in) , optional :: keep
3528! end subroutine
3529!#endif
3530!
3531!#if SK4_ENABLED
3532! module subroutine setSplitFixCusComCusIns_D1_D1_SK4(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3533!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3534! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_SK4
3535!#endif
3536! use pm_kind, only: SKG => SK4
3537! integer(IK) , intent(out) , contiguous :: field(:)
3538! integer(IK) , intent(out) :: nsplit
3539! character(*,SKG) , intent(in) , contiguous :: array(:)
3540! character(*,SKG) , intent(in) , contiguous :: sep(:)
3541! procedure(logical(LK)) :: iseq
3542! integer(IK) , intent(in) , contiguous :: instance(:)
3543! logical(LK) , intent(in) , optional :: sorted
3544! logical(LK) , intent(in) , optional :: unique
3545! logical(LK) , intent(in) , optional :: keep
3546! end subroutine
3547!#endif
3548!
3549!#if SK3_ENABLED
3550! module subroutine setSplitFixCusComCusIns_D1_D1_SK3(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3551!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3552! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_SK3
3553!#endif
3554! use pm_kind, only: SKG => SK3
3555! integer(IK) , intent(out) , contiguous :: field(:)
3556! integer(IK) , intent(out) :: nsplit
3557! character(*,SKG) , intent(in) , contiguous :: array(:)
3558! character(*,SKG) , intent(in) , contiguous :: sep(:)
3559! procedure(logical(LK)) :: iseq
3560! integer(IK) , intent(in) , contiguous :: instance(:)
3561! logical(LK) , intent(in) , optional :: sorted
3562! logical(LK) , intent(in) , optional :: unique
3563! logical(LK) , intent(in) , optional :: keep
3564! end subroutine
3565!#endif
3566!
3567!#if SK2_ENABLED
3568! module subroutine setSplitFixCusComCusIns_D1_D1_SK2(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3569!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3570! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_SK2
3571!#endif
3572! use pm_kind, only: SKG => SK2
3573! integer(IK) , intent(out) , contiguous :: field(:)
3574! integer(IK) , intent(out) :: nsplit
3575! character(*,SKG) , intent(in) , contiguous :: array(:)
3576! character(*,SKG) , intent(in) , contiguous :: sep(:)
3577! procedure(logical(LK)) :: iseq
3578! integer(IK) , intent(in) , contiguous :: instance(:)
3579! logical(LK) , intent(in) , optional :: sorted
3580! logical(LK) , intent(in) , optional :: unique
3581! logical(LK) , intent(in) , optional :: keep
3582! end subroutine
3583!#endif
3584!
3585!#if SK1_ENABLED
3586! module subroutine setSplitFixCusComCusIns_D1_D1_SK1(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3587!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3588! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_SK1
3589!#endif
3590! use pm_kind, only: SKG => SK1
3591! integer(IK) , intent(out) , contiguous :: field(:)
3592! integer(IK) , intent(out) :: nsplit
3593! character(*,SKG) , intent(in) , contiguous :: array(:)
3594! character(*,SKG) , intent(in) , contiguous :: sep(:)
3595! procedure(logical(LK)) :: iseq
3596! integer(IK) , intent(in) , contiguous :: instance(:)
3597! logical(LK) , intent(in) , optional :: sorted
3598! logical(LK) , intent(in) , optional :: unique
3599! logical(LK) , intent(in) , optional :: keep
3600! end subroutine
3601!#endif
3602!
3603! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3604!
3605!#if IK5_ENABLED
3606! module subroutine setSplitFixCusComCusIns_D1_D1_IK5(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3607!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3608! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_IK5
3609!#endif
3610! use pm_kind, only: IKG => IK5
3611! integer(IK) , intent(out) , contiguous :: field(:)
3612! integer(IK) , intent(out) :: nsplit
3613! integer(IKG) , intent(in) , contiguous :: array(:)
3614! integer(IKG) , intent(in) , contiguous :: sep(:)
3615! procedure(logical(LK)) :: iseq
3616! integer(IK) , intent(in) , contiguous :: instance(:)
3617! logical(LK) , intent(in) , optional :: sorted
3618! logical(LK) , intent(in) , optional :: unique
3619! logical(LK) , intent(in) , optional :: keep
3620! end subroutine
3621!#endif
3622!
3623!#if IK4_ENABLED
3624! module subroutine setSplitFixCusComCusIns_D1_D1_IK4(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3625!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3626! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_IK4
3627!#endif
3628! use pm_kind, only: IKG => IK4
3629! integer(IK) , intent(out) , contiguous :: field(:)
3630! integer(IK) , intent(out) :: nsplit
3631! integer(IKG) , intent(in) , contiguous :: array(:)
3632! integer(IKG) , intent(in) , contiguous :: sep(:)
3633! procedure(logical(LK)) :: iseq
3634! integer(IK) , intent(in) , contiguous :: instance(:)
3635! logical(LK) , intent(in) , optional :: sorted
3636! logical(LK) , intent(in) , optional :: unique
3637! logical(LK) , intent(in) , optional :: keep
3638! end subroutine
3639!#endif
3640!
3641!#if IK3_ENABLED
3642! module subroutine setSplitFixCusComCusIns_D1_D1_IK3(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3643!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3644! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_IK3
3645!#endif
3646! use pm_kind, only: IKG => IK3
3647! integer(IK) , intent(out) , contiguous :: field(:)
3648! integer(IK) , intent(out) :: nsplit
3649! integer(IKG) , intent(in) , contiguous :: array(:)
3650! integer(IKG) , intent(in) , contiguous :: sep(:)
3651! procedure(logical(LK)) :: iseq
3652! integer(IK) , intent(in) , contiguous :: instance(:)
3653! logical(LK) , intent(in) , optional :: sorted
3654! logical(LK) , intent(in) , optional :: unique
3655! logical(LK) , intent(in) , optional :: keep
3656! end subroutine
3657!#endif
3658!
3659!#if IK2_ENABLED
3660! module subroutine setSplitFixCusComCusIns_D1_D1_IK2(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3661!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3662! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_IK2
3663!#endif
3664! use pm_kind, only: IKG => IK2
3665! integer(IK) , intent(out) , contiguous :: field(:)
3666! integer(IK) , intent(out) :: nsplit
3667! integer(IKG) , intent(in) , contiguous :: array(:)
3668! integer(IKG) , intent(in) , contiguous :: sep(:)
3669! procedure(logical(LK)) :: iseq
3670! integer(IK) , intent(in) , contiguous :: instance(:)
3671! logical(LK) , intent(in) , optional :: sorted
3672! logical(LK) , intent(in) , optional :: unique
3673! logical(LK) , intent(in) , optional :: keep
3674! end subroutine
3675!#endif
3676!
3677!#if IK1_ENABLED
3678! module subroutine setSplitFixCusComCusIns_D1_D1_IK1(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3679!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3680! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_IK1
3681!#endif
3682! use pm_kind, only: IKG => IK1
3683! integer(IK) , intent(out) , contiguous :: field(:)
3684! integer(IK) , intent(out) :: nsplit
3685! integer(IKG) , intent(in) , contiguous :: array(:)
3686! integer(IKG) , intent(in) , contiguous :: sep(:)
3687! procedure(logical(LK)) :: iseq
3688! integer(IK) , intent(in) , contiguous :: instance(:)
3689! logical(LK) , intent(in) , optional :: sorted
3690! logical(LK) , intent(in) , optional :: unique
3691! logical(LK) , intent(in) , optional :: keep
3692! end subroutine
3693!#endif
3694!
3695! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3696!
3697!#if LK5_ENABLED
3698! module subroutine setSplitFixCusComCusIns_D1_D1_LK5(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3699!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3700! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_LK5
3701!#endif
3702! use pm_kind, only: LKG => LK5
3703! integer(IK) , intent(out) , contiguous :: field(:)
3704! integer(IK) , intent(out) :: nsplit
3705! logical(LKG) , intent(in) , contiguous :: array(:)
3706! logical(LKG) , intent(in) , contiguous :: sep(:)
3707! procedure(logical(LK)) :: iseq
3708! integer(IK) , intent(in) , contiguous :: instance(:)
3709! logical(LK) , intent(in) , optional :: sorted
3710! logical(LK) , intent(in) , optional :: unique
3711! logical(LK) , intent(in) , optional :: keep
3712! end subroutine
3713!#endif
3714!
3715!#if LK4_ENABLED
3716! module subroutine setSplitFixCusComCusIns_D1_D1_LK4(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3717!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3718! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_LK4
3719!#endif
3720! use pm_kind, only: LKG => LK4
3721! integer(IK) , intent(out) , contiguous :: field(:)
3722! integer(IK) , intent(out) :: nsplit
3723! logical(LKG) , intent(in) , contiguous :: array(:)
3724! logical(LKG) , intent(in) , contiguous :: sep(:)
3725! procedure(logical(LK)) :: iseq
3726! integer(IK) , intent(in) , contiguous :: instance(:)
3727! logical(LK) , intent(in) , optional :: sorted
3728! logical(LK) , intent(in) , optional :: unique
3729! logical(LK) , intent(in) , optional :: keep
3730! end subroutine
3731!#endif
3732!
3733!#if LK3_ENABLED
3734! module subroutine setSplitFixCusComCusIns_D1_D1_LK3(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3735!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3736! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_LK3
3737!#endif
3738! use pm_kind, only: LKG => LK3
3739! integer(IK) , intent(out) , contiguous :: field(:)
3740! integer(IK) , intent(out) :: nsplit
3741! logical(LKG) , intent(in) , contiguous :: array(:)
3742! logical(LKG) , intent(in) , contiguous :: sep(:)
3743! procedure(logical(LK)) :: iseq
3744! integer(IK) , intent(in) , contiguous :: instance(:)
3745! logical(LK) , intent(in) , optional :: sorted
3746! logical(LK) , intent(in) , optional :: unique
3747! logical(LK) , intent(in) , optional :: keep
3748! end subroutine
3749!#endif
3750!
3751!#if LK2_ENABLED
3752! module subroutine setSplitFixCusComCusIns_D1_D1_LK2(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3753!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3754! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_LK2
3755!#endif
3756! use pm_kind, only: LKG => LK2
3757! integer(IK) , intent(out) , contiguous :: field(:)
3758! integer(IK) , intent(out) :: nsplit
3759! logical(LKG) , intent(in) , contiguous :: array(:)
3760! logical(LKG) , intent(in) , contiguous :: sep(:)
3761! procedure(logical(LK)) :: iseq
3762! integer(IK) , intent(in) , contiguous :: instance(:)
3763! logical(LK) , intent(in) , optional :: sorted
3764! logical(LK) , intent(in) , optional :: unique
3765! logical(LK) , intent(in) , optional :: keep
3766! end subroutine
3767!#endif
3768!
3769!#if LK1_ENABLED
3770! module subroutine setSplitFixCusComCusIns_D1_D1_LK1(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3771!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3772! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_LK1
3773!#endif
3774! use pm_kind, only: LKG => LK1
3775! integer(IK) , intent(out) , contiguous :: field(:)
3776! integer(IK) , intent(out) :: nsplit
3777! logical(LKG) , intent(in) , contiguous :: array(:)
3778! logical(LKG) , intent(in) , contiguous :: sep(:)
3779! procedure(logical(LK)) :: iseq
3780! integer(IK) , intent(in) , contiguous :: instance(:)
3781! logical(LK) , intent(in) , optional :: sorted
3782! logical(LK) , intent(in) , optional :: unique
3783! logical(LK) , intent(in) , optional :: keep
3784! end subroutine
3785!#endif
3786!
3787! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3788!
3789!#if CK5_ENABLED
3790! module subroutine setSplitFixCusComCusIns_D1_D1_CK5(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3791!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3792! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_CK5
3793!#endif
3794! use pm_kind, only: CKG => CK5
3795! integer(IK) , intent(out) , contiguous :: field(:)
3796! integer(IK) , intent(out) :: nsplit
3797! complex(CKG) , intent(in) , contiguous :: array(:)
3798! complex(CKG) , intent(in) , contiguous :: sep(:)
3799! procedure(logical(LK)) :: iseq
3800! integer(IK) , intent(in) , contiguous :: instance(:)
3801! logical(LK) , intent(in) , optional :: sorted
3802! logical(LK) , intent(in) , optional :: unique
3803! logical(LK) , intent(in) , optional :: keep
3804! end subroutine
3805!#endif
3806!
3807!#if CK4_ENABLED
3808! module subroutine setSplitFixCusComCusIns_D1_D1_CK4(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3809!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3810! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_CK4
3811!#endif
3812! use pm_kind, only: CKG => CK4
3813! integer(IK) , intent(out) , contiguous :: field(:)
3814! integer(IK) , intent(out) :: nsplit
3815! complex(CKG) , intent(in) , contiguous :: array(:)
3816! complex(CKG) , intent(in) , contiguous :: sep(:)
3817! procedure(logical(LK)) :: iseq
3818! integer(IK) , intent(in) , contiguous :: instance(:)
3819! logical(LK) , intent(in) , optional :: sorted
3820! logical(LK) , intent(in) , optional :: unique
3821! logical(LK) , intent(in) , optional :: keep
3822! end subroutine
3823!#endif
3824!
3825!#if CK3_ENABLED
3826! module subroutine setSplitFixCusComCusIns_D1_D1_CK3(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3827!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3828! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_CK3
3829!#endif
3830! use pm_kind, only: CKG => CK3
3831! integer(IK) , intent(out) , contiguous :: field(:)
3832! integer(IK) , intent(out) :: nsplit
3833! complex(CKG) , intent(in) , contiguous :: array(:)
3834! complex(CKG) , intent(in) , contiguous :: sep(:)
3835! procedure(logical(LK)) :: iseq
3836! integer(IK) , intent(in) , contiguous :: instance(:)
3837! logical(LK) , intent(in) , optional :: sorted
3838! logical(LK) , intent(in) , optional :: unique
3839! logical(LK) , intent(in) , optional :: keep
3840! end subroutine
3841!#endif
3842!
3843!#if CK2_ENABLED
3844! module subroutine setSplitFixCusComCusIns_D1_D1_CK2(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3845!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3846! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_CK2
3847!#endif
3848! use pm_kind, only: CKG => CK2
3849! integer(IK) , intent(out) , contiguous :: field(:)
3850! integer(IK) , intent(out) :: nsplit
3851! complex(CKG) , intent(in) , contiguous :: array(:)
3852! complex(CKG) , intent(in) , contiguous :: sep(:)
3853! procedure(logical(LK)) :: iseq
3854! integer(IK) , intent(in) , contiguous :: instance(:)
3855! logical(LK) , intent(in) , optional :: sorted
3856! logical(LK) , intent(in) , optional :: unique
3857! logical(LK) , intent(in) , optional :: keep
3858! end subroutine
3859!#endif
3860!
3861!#if CK1_ENABLED
3862! module subroutine setSplitFixCusComCusIns_D1_D1_CK1(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3863!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3864! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_CK1
3865!#endif
3866! use pm_kind, only: CKG => CK1
3867! integer(IK) , intent(out) , contiguous :: field(:)
3868! integer(IK) , intent(out) :: nsplit
3869! complex(CKG) , intent(in) , contiguous :: array(:)
3870! complex(CKG) , intent(in) , contiguous :: sep(:)
3871! procedure(logical(LK)) :: iseq
3872! integer(IK) , intent(in) , contiguous :: instance(:)
3873! logical(LK) , intent(in) , optional :: sorted
3874! logical(LK) , intent(in) , optional :: unique
3875! logical(LK) , intent(in) , optional :: keep
3876! end subroutine
3877!#endif
3878!
3879! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3880!
3881!#if RK5_ENABLED
3882! module subroutine setSplitFixCusComCusIns_D1_D1_RK5(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3883!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3884! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_RK5
3885!#endif
3886! use pm_kind, only: RKG => RK5
3887! integer(IK) , intent(out) , contiguous :: field(:)
3888! integer(IK) , intent(out) :: nsplit
3889! real(RKG) , intent(in) , contiguous :: array(:)
3890! real(RKG) , intent(in) , contiguous :: sep(:)
3891! procedure(logical(LK)) :: iseq
3892! integer(IK) , intent(in) , contiguous :: instance(:)
3893! logical(LK) , intent(in) , optional :: sorted
3894! logical(LK) , intent(in) , optional :: unique
3895! logical(LK) , intent(in) , optional :: keep
3896! end subroutine
3897!#endif
3898!
3899!#if RK4_ENABLED
3900! module subroutine setSplitFixCusComCusIns_D1_D1_RK4(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3901!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3902! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_RK4
3903!#endif
3904! use pm_kind, only: RKG => RK4
3905! integer(IK) , intent(out) , contiguous :: field(:)
3906! integer(IK) , intent(out) :: nsplit
3907! real(RKG) , intent(in) , contiguous :: array(:)
3908! real(RKG) , intent(in) , contiguous :: sep(:)
3909! procedure(logical(LK)) :: iseq
3910! integer(IK) , intent(in) , contiguous :: instance(:)
3911! logical(LK) , intent(in) , optional :: sorted
3912! logical(LK) , intent(in) , optional :: unique
3913! logical(LK) , intent(in) , optional :: keep
3914! end subroutine
3915!#endif
3916!
3917!#if RK3_ENABLED
3918! module subroutine setSplitFixCusComCusIns_D1_D1_RK3(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3919!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3920! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_RK3
3921!#endif
3922! use pm_kind, only: RKG => RK3
3923! integer(IK) , intent(out) , contiguous :: field(:)
3924! integer(IK) , intent(out) :: nsplit
3925! real(RKG) , intent(in) , contiguous :: array(:)
3926! real(RKG) , intent(in) , contiguous :: sep(:)
3927! procedure(logical(LK)) :: iseq
3928! integer(IK) , intent(in) , contiguous :: instance(:)
3929! logical(LK) , intent(in) , optional :: sorted
3930! logical(LK) , intent(in) , optional :: unique
3931! logical(LK) , intent(in) , optional :: keep
3932! end subroutine
3933!#endif
3934!
3935!#if RK2_ENABLED
3936! module subroutine setSplitFixCusComCusIns_D1_D1_RK2(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3937!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3938! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_RK2
3939!#endif
3940! use pm_kind, only: RKG => RK2
3941! integer(IK) , intent(out) , contiguous :: field(:)
3942! integer(IK) , intent(out) :: nsplit
3943! real(RKG) , intent(in) , contiguous :: array(:)
3944! real(RKG) , intent(in) , contiguous :: sep(:)
3945! procedure(logical(LK)) :: iseq
3946! integer(IK) , intent(in) , contiguous :: instance(:)
3947! logical(LK) , intent(in) , optional :: sorted
3948! logical(LK) , intent(in) , optional :: unique
3949! logical(LK) , intent(in) , optional :: keep
3950! end subroutine
3951!#endif
3952!
3953!#if RK1_ENABLED
3954! module subroutine setSplitFixCusComCusIns_D1_D1_RK1(field, nsplit, array, sep, iseq, instance, sorted, unique, keep)
3955!#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3956! !DEC$ ATTRIBUTES DLLEXPORT :: setSplitFixCusComCusIns_D1_D1_RK1
3957!#endif
3958! use pm_kind, only: RKG => RK1
3959! integer(IK) , intent(out) , contiguous :: field(:)
3960! integer(IK) , intent(out) :: nsplit
3961! real(RKG) , intent(in) , contiguous :: array(:)
3962! real(RKG) , intent(in) , contiguous :: sep(:)
3963! procedure(logical(LK)) :: iseq
3964! integer(IK) , intent(in) , contiguous :: instance(:)
3965! logical(LK) , intent(in) , optional :: sorted
3966! logical(LK) , intent(in) , optional :: unique
3967! logical(LK) , intent(in) , optional :: keep
3968! end subroutine
3969!#endif
3970!
3971! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3972!
3973! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3974! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3975! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3976!
3977! end interface
3978
3979 ! allocatable index
3980
3981 interface setSplit
3982
3983 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3984 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3985 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3986
3987 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3988 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3989 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3990
3991 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3992
3993#if SK5_ENABLED
3994 PURE module subroutine setSplitIndDefComDefIns_D0_D0_SK5(field, array, sep, keep)
3995#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
3996 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D0_D0_SK5
3997#endif
3998 use pm_kind, only: SKG => SK5
3999 integer(IK) , intent(out) , allocatable :: field(:,:)
4000 character(*,SKG) , intent(in) :: array
4001 character(*,SKG) , intent(in) :: sep
4002 logical(LK) , intent(in) , optional :: keep
4003 end subroutine
4004#endif
4005
4006#if SK4_ENABLED
4007 PURE module subroutine setSplitIndDefComDefIns_D0_D0_SK4(field, array, sep, keep)
4008#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4009 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D0_D0_SK4
4010#endif
4011 use pm_kind, only: SKG => SK4
4012 integer(IK) , intent(out) , allocatable :: field(:,:)
4013 character(*,SKG) , intent(in) :: array
4014 character(*,SKG) , intent(in) :: sep
4015 logical(LK) , intent(in) , optional :: keep
4016 end subroutine
4017#endif
4018
4019#if SK3_ENABLED
4020 PURE module subroutine setSplitIndDefComDefIns_D0_D0_SK3(field, array, sep, keep)
4021#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4022 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D0_D0_SK3
4023#endif
4024 use pm_kind, only: SKG => SK3
4025 integer(IK) , intent(out) , allocatable :: field(:,:)
4026 character(*,SKG) , intent(in) :: array
4027 character(*,SKG) , intent(in) :: sep
4028 logical(LK) , intent(in) , optional :: keep
4029 end subroutine
4030#endif
4031
4032#if SK2_ENABLED
4033 PURE module subroutine setSplitIndDefComDefIns_D0_D0_SK2(field, array, sep, keep)
4034#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4035 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D0_D0_SK2
4036#endif
4037 use pm_kind, only: SKG => SK2
4038 integer(IK) , intent(out) , allocatable :: field(:,:)
4039 character(*,SKG) , intent(in) :: array
4040 character(*,SKG) , intent(in) :: sep
4041 logical(LK) , intent(in) , optional :: keep
4042 end subroutine
4043#endif
4044
4045#if SK1_ENABLED
4046 PURE module subroutine setSplitIndDefComDefIns_D0_D0_SK1(field, array, sep, keep)
4047#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4048 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D0_D0_SK1
4049#endif
4050 use pm_kind, only: SKG => SK1
4051 integer(IK) , intent(out) , allocatable :: field(:,:)
4052 character(*,SKG) , intent(in) :: array
4053 character(*,SKG) , intent(in) :: sep
4054 logical(LK) , intent(in) , optional :: keep
4055 end subroutine
4056#endif
4057
4058 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4059
4060#if SK5_ENABLED
4061 PURE module subroutine setSplitIndDefComDefIns_D1_D0_SK5(field, array, sep, keep)
4062#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4063 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_SK5
4064#endif
4065 use pm_kind, only: SKG => SK5
4066 integer(IK) , intent(out) , allocatable :: field(:,:)
4067 character(*,SKG) , intent(in) , contiguous :: array(:)
4068 character(*,SKG) , intent(in) :: sep
4069 logical(LK) , intent(in) , optional :: keep
4070 end subroutine
4071#endif
4072
4073#if SK4_ENABLED
4074 PURE module subroutine setSplitIndDefComDefIns_D1_D0_SK4(field, array, sep, keep)
4075#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4076 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_SK4
4077#endif
4078 use pm_kind, only: SKG => SK4
4079 integer(IK) , intent(out) , allocatable :: field(:,:)
4080 character(*,SKG) , intent(in) , contiguous :: array(:)
4081 character(*,SKG) , intent(in) :: sep
4082 logical(LK) , intent(in) , optional :: keep
4083 end subroutine
4084#endif
4085
4086#if SK3_ENABLED
4087 PURE module subroutine setSplitIndDefComDefIns_D1_D0_SK3(field, array, sep, keep)
4088#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4089 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_SK3
4090#endif
4091 use pm_kind, only: SKG => SK3
4092 integer(IK) , intent(out) , allocatable :: field(:,:)
4093 character(*,SKG) , intent(in) , contiguous :: array(:)
4094 character(*,SKG) , intent(in) :: sep
4095 logical(LK) , intent(in) , optional :: keep
4096 end subroutine
4097#endif
4098
4099#if SK2_ENABLED
4100 PURE module subroutine setSplitIndDefComDefIns_D1_D0_SK2(field, array, sep, keep)
4101#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4102 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_SK2
4103#endif
4104 use pm_kind, only: SKG => SK2
4105 integer(IK) , intent(out) , allocatable :: field(:,:)
4106 character(*,SKG) , intent(in) , contiguous :: array(:)
4107 character(*,SKG) , intent(in) :: sep
4108 logical(LK) , intent(in) , optional :: keep
4109 end subroutine
4110#endif
4111
4112#if SK1_ENABLED
4113 PURE module subroutine setSplitIndDefComDefIns_D1_D0_SK1(field, array, sep, keep)
4114#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4115 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_SK1
4116#endif
4117 use pm_kind, only: SKG => SK1
4118 integer(IK) , intent(out) , allocatable :: field(:,:)
4119 character(*,SKG) , intent(in) , contiguous :: array(:)
4120 character(*,SKG) , intent(in) :: sep
4121 logical(LK) , intent(in) , optional :: keep
4122 end subroutine
4123#endif
4124
4125 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4126
4127#if IK5_ENABLED
4128 PURE module subroutine setSplitIndDefComDefIns_D1_D0_IK5(field, array, sep, keep)
4129#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4130 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_IK5
4131#endif
4132 use pm_kind, only: IKG => IK5
4133 integer(IK) , intent(out) , allocatable :: field(:,:)
4134 integer(IKG) , intent(in) , contiguous :: array(:)
4135 integer(IKG) , intent(in) :: sep
4136 logical(LK) , intent(in) , optional :: keep
4137 end subroutine
4138#endif
4139
4140#if IK4_ENABLED
4141 PURE module subroutine setSplitIndDefComDefIns_D1_D0_IK4(field, array, sep, keep)
4142#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4143 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_IK4
4144#endif
4145 use pm_kind, only: IKG => IK4
4146 integer(IK) , intent(out) , allocatable :: field(:,:)
4147 integer(IKG) , intent(in) , contiguous :: array(:)
4148 integer(IKG) , intent(in) :: sep
4149 logical(LK) , intent(in) , optional :: keep
4150 end subroutine
4151#endif
4152
4153#if IK3_ENABLED
4154 PURE module subroutine setSplitIndDefComDefIns_D1_D0_IK3(field, array, sep, keep)
4155#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4156 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_IK3
4157#endif
4158 use pm_kind, only: IKG => IK3
4159 integer(IK) , intent(out) , allocatable :: field(:,:)
4160 integer(IKG) , intent(in) , contiguous :: array(:)
4161 integer(IKG) , intent(in) :: sep
4162 logical(LK) , intent(in) , optional :: keep
4163 end subroutine
4164#endif
4165
4166#if IK2_ENABLED
4167 PURE module subroutine setSplitIndDefComDefIns_D1_D0_IK2(field, array, sep, keep)
4168#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4169 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_IK2
4170#endif
4171 use pm_kind, only: IKG => IK2
4172 integer(IK) , intent(out) , allocatable :: field(:,:)
4173 integer(IKG) , intent(in) , contiguous :: array(:)
4174 integer(IKG) , intent(in) :: sep
4175 logical(LK) , intent(in) , optional :: keep
4176 end subroutine
4177#endif
4178
4179#if IK1_ENABLED
4180 PURE module subroutine setSplitIndDefComDefIns_D1_D0_IK1(field, array, sep, keep)
4181#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4182 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_IK1
4183#endif
4184 use pm_kind, only: IKG => IK1
4185 integer(IK) , intent(out) , allocatable :: field(:,:)
4186 integer(IKG) , intent(in) , contiguous :: array(:)
4187 integer(IKG) , intent(in) :: sep
4188 logical(LK) , intent(in) , optional :: keep
4189 end subroutine
4190#endif
4191
4192 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4193
4194#if LK5_ENABLED
4195 PURE module subroutine setSplitIndDefComDefIns_D1_D0_LK5(field, array, sep, keep)
4196#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4197 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_LK5
4198#endif
4199 use pm_kind, only: LKG => LK5
4200 integer(IK) , intent(out) , allocatable :: field(:,:)
4201 logical(LKG) , intent(in) , contiguous :: array(:)
4202 logical(LKG) , intent(in) :: sep
4203 logical(LK) , intent(in) , optional :: keep
4204 end subroutine
4205#endif
4206
4207#if LK4_ENABLED
4208 PURE module subroutine setSplitIndDefComDefIns_D1_D0_LK4(field, array, sep, keep)
4209#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4210 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_LK4
4211#endif
4212 use pm_kind, only: LKG => LK4
4213 integer(IK) , intent(out) , allocatable :: field(:,:)
4214 logical(LKG) , intent(in) , contiguous :: array(:)
4215 logical(LKG) , intent(in) :: sep
4216 logical(LK) , intent(in) , optional :: keep
4217 end subroutine
4218#endif
4219
4220#if LK3_ENABLED
4221 PURE module subroutine setSplitIndDefComDefIns_D1_D0_LK3(field, array, sep, keep)
4222#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4223 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_LK3
4224#endif
4225 use pm_kind, only: LKG => LK3
4226 integer(IK) , intent(out) , allocatable :: field(:,:)
4227 logical(LKG) , intent(in) , contiguous :: array(:)
4228 logical(LKG) , intent(in) :: sep
4229 logical(LK) , intent(in) , optional :: keep
4230 end subroutine
4231#endif
4232
4233#if LK2_ENABLED
4234 PURE module subroutine setSplitIndDefComDefIns_D1_D0_LK2(field, array, sep, keep)
4235#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4236 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_LK2
4237#endif
4238 use pm_kind, only: LKG => LK2
4239 integer(IK) , intent(out) , allocatable :: field(:,:)
4240 logical(LKG) , intent(in) , contiguous :: array(:)
4241 logical(LKG) , intent(in) :: sep
4242 logical(LK) , intent(in) , optional :: keep
4243 end subroutine
4244#endif
4245
4246#if LK1_ENABLED
4247 PURE module subroutine setSplitIndDefComDefIns_D1_D0_LK1(field, array, sep, keep)
4248#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4249 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_LK1
4250#endif
4251 use pm_kind, only: LKG => LK1
4252 integer(IK) , intent(out) , allocatable :: field(:,:)
4253 logical(LKG) , intent(in) , contiguous :: array(:)
4254 logical(LKG) , intent(in) :: sep
4255 logical(LK) , intent(in) , optional :: keep
4256 end subroutine
4257#endif
4258
4259 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4260
4261#if CK5_ENABLED
4262 PURE module subroutine setSplitIndDefComDefIns_D1_D0_CK5(field, array, sep, keep)
4263#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4264 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_CK5
4265#endif
4266 use pm_kind, only: CKG => CK5
4267 integer(IK) , intent(out) , allocatable :: field(:,:)
4268 complex(CKG) , intent(in) , contiguous :: array(:)
4269 complex(CKG) , intent(in) :: sep
4270 logical(LK) , intent(in) , optional :: keep
4271 end subroutine
4272#endif
4273
4274#if CK4_ENABLED
4275 PURE module subroutine setSplitIndDefComDefIns_D1_D0_CK4(field, array, sep, keep)
4276#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4277 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_CK4
4278#endif
4279 use pm_kind, only: CKG => CK4
4280 integer(IK) , intent(out) , allocatable :: field(:,:)
4281 complex(CKG) , intent(in) , contiguous :: array(:)
4282 complex(CKG) , intent(in) :: sep
4283 logical(LK) , intent(in) , optional :: keep
4284 end subroutine
4285#endif
4286
4287#if CK3_ENABLED
4288 PURE module subroutine setSplitIndDefComDefIns_D1_D0_CK3(field, array, sep, keep)
4289#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4290 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_CK3
4291#endif
4292 use pm_kind, only: CKG => CK3
4293 integer(IK) , intent(out) , allocatable :: field(:,:)
4294 complex(CKG) , intent(in) , contiguous :: array(:)
4295 complex(CKG) , intent(in) :: sep
4296 logical(LK) , intent(in) , optional :: keep
4297 end subroutine
4298#endif
4299
4300#if CK2_ENABLED
4301 PURE module subroutine setSplitIndDefComDefIns_D1_D0_CK2(field, array, sep, keep)
4302#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4303 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_CK2
4304#endif
4305 use pm_kind, only: CKG => CK2
4306 integer(IK) , intent(out) , allocatable :: field(:,:)
4307 complex(CKG) , intent(in) , contiguous :: array(:)
4308 complex(CKG) , intent(in) :: sep
4309 logical(LK) , intent(in) , optional :: keep
4310 end subroutine
4311#endif
4312
4313#if CK1_ENABLED
4314 PURE module subroutine setSplitIndDefComDefIns_D1_D0_CK1(field, array, sep, keep)
4315#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4316 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_CK1
4317#endif
4318 use pm_kind, only: CKG => CK1
4319 integer(IK) , intent(out) , allocatable :: field(:,:)
4320 complex(CKG) , intent(in) , contiguous :: array(:)
4321 complex(CKG) , intent(in) :: sep
4322 logical(LK) , intent(in) , optional :: keep
4323 end subroutine
4324#endif
4325
4326 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4327
4328#if RK5_ENABLED
4329 PURE module subroutine setSplitIndDefComDefIns_D1_D0_RK5(field, array, sep, keep)
4330#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4331 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_RK5
4332#endif
4333 use pm_kind, only: RKG => RK5
4334 integer(IK) , intent(out) , allocatable :: field(:,:)
4335 real(RKG) , intent(in) , contiguous :: array(:)
4336 real(RKG) , intent(in) :: sep
4337 logical(LK) , intent(in) , optional :: keep
4338 end subroutine
4339#endif
4340
4341#if RK4_ENABLED
4342 PURE module subroutine setSplitIndDefComDefIns_D1_D0_RK4(field, array, sep, keep)
4343#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4344 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_RK4
4345#endif
4346 use pm_kind, only: RKG => RK4
4347 integer(IK) , intent(out) , allocatable :: field(:,:)
4348 real(RKG) , intent(in) , contiguous :: array(:)
4349 real(RKG) , intent(in) :: sep
4350 logical(LK) , intent(in) , optional :: keep
4351 end subroutine
4352#endif
4353
4354#if RK3_ENABLED
4355 PURE module subroutine setSplitIndDefComDefIns_D1_D0_RK3(field, array, sep, keep)
4356#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4357 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_RK3
4358#endif
4359 use pm_kind, only: RKG => RK3
4360 integer(IK) , intent(out) , allocatable :: field(:,:)
4361 real(RKG) , intent(in) , contiguous :: array(:)
4362 real(RKG) , intent(in) :: sep
4363 logical(LK) , intent(in) , optional :: keep
4364 end subroutine
4365#endif
4366
4367#if RK2_ENABLED
4368 PURE module subroutine setSplitIndDefComDefIns_D1_D0_RK2(field, array, sep, keep)
4369#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4370 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_RK2
4371#endif
4372 use pm_kind, only: RKG => RK2
4373 integer(IK) , intent(out) , allocatable :: field(:,:)
4374 real(RKG) , intent(in) , contiguous :: array(:)
4375 real(RKG) , intent(in) :: sep
4376 logical(LK) , intent(in) , optional :: keep
4377 end subroutine
4378#endif
4379
4380#if RK1_ENABLED
4381 PURE module subroutine setSplitIndDefComDefIns_D1_D0_RK1(field, array, sep, keep)
4382#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4383 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D0_RK1
4384#endif
4385 use pm_kind, only: RKG => RK1
4386 integer(IK) , intent(out) , allocatable :: field(:,:)
4387 real(RKG) , intent(in) , contiguous :: array(:)
4388 real(RKG) , intent(in) :: sep
4389 logical(LK) , intent(in) , optional :: keep
4390 end subroutine
4391#endif
4392
4393 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4394
4395 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4396 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4397 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4398
4399 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4400
4401#if SK5_ENABLED
4402 module subroutine setSplitIndCusComDefIns_D0_D0_SK5(field, array, sep, iseq, keep)
4403#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4404 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D0_D0_SK5
4405#endif
4406 use pm_kind, only: SKG => SK5
4407 integer(IK) , intent(out) , allocatable :: field(:,:)
4408 character(*,SKG) , intent(in) :: array
4409 character(*,SKG) , intent(in) :: sep
4410 procedure(logical(LK)) :: iseq
4411 logical(LK) , intent(in) , optional :: keep
4412 end subroutine
4413#endif
4414
4415#if SK4_ENABLED
4416 module subroutine setSplitIndCusComDefIns_D0_D0_SK4(field, array, sep, iseq, keep)
4417#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4418 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D0_D0_SK4
4419#endif
4420 use pm_kind, only: SKG => SK4
4421 integer(IK) , intent(out) , allocatable :: field(:,:)
4422 character(*,SKG) , intent(in) :: array
4423 character(*,SKG) , intent(in) :: sep
4424 procedure(logical(LK)) :: iseq
4425 logical(LK) , intent(in) , optional :: keep
4426 end subroutine
4427#endif
4428
4429#if SK3_ENABLED
4430 module subroutine setSplitIndCusComDefIns_D0_D0_SK3(field, array, sep, iseq, keep)
4431#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4432 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D0_D0_SK3
4433#endif
4434 use pm_kind, only: SKG => SK3
4435 integer(IK) , intent(out) , allocatable :: field(:,:)
4436 character(*,SKG) , intent(in) :: array
4437 character(*,SKG) , intent(in) :: sep
4438 procedure(logical(LK)) :: iseq
4439 logical(LK) , intent(in) , optional :: keep
4440 end subroutine
4441#endif
4442
4443#if SK2_ENABLED
4444 module subroutine setSplitIndCusComDefIns_D0_D0_SK2(field, array, sep, iseq, keep)
4445#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4446 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D0_D0_SK2
4447#endif
4448 use pm_kind, only: SKG => SK2
4449 integer(IK) , intent(out) , allocatable :: field(:,:)
4450 character(*,SKG) , intent(in) :: array
4451 character(*,SKG) , intent(in) :: sep
4452 procedure(logical(LK)) :: iseq
4453 logical(LK) , intent(in) , optional :: keep
4454 end subroutine
4455#endif
4456
4457#if SK1_ENABLED
4458 module subroutine setSplitIndCusComDefIns_D0_D0_SK1(field, array, sep, iseq, keep)
4459#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4460 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D0_D0_SK1
4461#endif
4462 use pm_kind, only: SKG => SK1
4463 integer(IK) , intent(out) , allocatable :: field(:,:)
4464 character(*,SKG) , intent(in) :: array
4465 character(*,SKG) , intent(in) :: sep
4466 procedure(logical(LK)) :: iseq
4467 logical(LK) , intent(in) , optional :: keep
4468 end subroutine
4469#endif
4470
4471 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4472
4473#if SK5_ENABLED
4474 module subroutine setSplitIndCusComDefIns_D1_D0_SK5(field, array, sep, iseq, keep)
4475#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4476 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_SK5
4477#endif
4478 use pm_kind, only: SKG => SK5
4479 integer(IK) , intent(out) , allocatable :: field(:,:)
4480 character(*,SKG) , intent(in) , contiguous :: array(:)
4481 character(*,SKG) , intent(in) :: sep
4482 procedure(logical(LK)) :: iseq
4483 logical(LK) , intent(in) , optional :: keep
4484 end subroutine
4485#endif
4486
4487#if SK4_ENABLED
4488 module subroutine setSplitIndCusComDefIns_D1_D0_SK4(field, array, sep, iseq, keep)
4489#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4490 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_SK4
4491#endif
4492 use pm_kind, only: SKG => SK4
4493 integer(IK) , intent(out) , allocatable :: field(:,:)
4494 character(*,SKG) , intent(in) , contiguous :: array(:)
4495 character(*,SKG) , intent(in) :: sep
4496 procedure(logical(LK)) :: iseq
4497 logical(LK) , intent(in) , optional :: keep
4498 end subroutine
4499#endif
4500
4501#if SK3_ENABLED
4502 module subroutine setSplitIndCusComDefIns_D1_D0_SK3(field, array, sep, iseq, keep)
4503#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4504 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_SK3
4505#endif
4506 use pm_kind, only: SKG => SK3
4507 integer(IK) , intent(out) , allocatable :: field(:,:)
4508 character(*,SKG) , intent(in) , contiguous :: array(:)
4509 character(*,SKG) , intent(in) :: sep
4510 procedure(logical(LK)) :: iseq
4511 logical(LK) , intent(in) , optional :: keep
4512 end subroutine
4513#endif
4514
4515#if SK2_ENABLED
4516 module subroutine setSplitIndCusComDefIns_D1_D0_SK2(field, array, sep, iseq, keep)
4517#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4518 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_SK2
4519#endif
4520 use pm_kind, only: SKG => SK2
4521 integer(IK) , intent(out) , allocatable :: field(:,:)
4522 character(*,SKG) , intent(in) , contiguous :: array(:)
4523 character(*,SKG) , intent(in) :: sep
4524 procedure(logical(LK)) :: iseq
4525 logical(LK) , intent(in) , optional :: keep
4526 end subroutine
4527#endif
4528
4529#if SK1_ENABLED
4530 module subroutine setSplitIndCusComDefIns_D1_D0_SK1(field, array, sep, iseq, keep)
4531#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4532 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_SK1
4533#endif
4534 use pm_kind, only: SKG => SK1
4535 integer(IK) , intent(out) , allocatable :: field(:,:)
4536 character(*,SKG) , intent(in) , contiguous :: array(:)
4537 character(*,SKG) , intent(in) :: sep
4538 procedure(logical(LK)) :: iseq
4539 logical(LK) , intent(in) , optional :: keep
4540 end subroutine
4541#endif
4542
4543 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4544
4545#if IK5_ENABLED
4546 module subroutine setSplitIndCusComDefIns_D1_D0_IK5(field, array, sep, iseq, keep)
4547#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4548 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_IK5
4549#endif
4550 use pm_kind, only: IKG => IK5
4551 integer(IK) , intent(out) , allocatable :: field(:,:)
4552 integer(IKG) , intent(in) , contiguous :: array(:)
4553 integer(IKG) , intent(in) :: sep
4554 procedure(logical(LK)) :: iseq
4555 logical(LK) , intent(in) , optional :: keep
4556 end subroutine
4557#endif
4558
4559#if IK4_ENABLED
4560 module subroutine setSplitIndCusComDefIns_D1_D0_IK4(field, array, sep, iseq, keep)
4561#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4562 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_IK4
4563#endif
4564 use pm_kind, only: IKG => IK4
4565 integer(IK) , intent(out) , allocatable :: field(:,:)
4566 integer(IKG) , intent(in) , contiguous :: array(:)
4567 integer(IKG) , intent(in) :: sep
4568 procedure(logical(LK)) :: iseq
4569 logical(LK) , intent(in) , optional :: keep
4570 end subroutine
4571#endif
4572
4573#if IK3_ENABLED
4574 module subroutine setSplitIndCusComDefIns_D1_D0_IK3(field, array, sep, iseq, keep)
4575#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4576 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_IK3
4577#endif
4578 use pm_kind, only: IKG => IK3
4579 integer(IK) , intent(out) , allocatable :: field(:,:)
4580 integer(IKG) , intent(in) , contiguous :: array(:)
4581 integer(IKG) , intent(in) :: sep
4582 procedure(logical(LK)) :: iseq
4583 logical(LK) , intent(in) , optional :: keep
4584 end subroutine
4585#endif
4586
4587#if IK2_ENABLED
4588 module subroutine setSplitIndCusComDefIns_D1_D0_IK2(field, array, sep, iseq, keep)
4589#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4590 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_IK2
4591#endif
4592 use pm_kind, only: IKG => IK2
4593 integer(IK) , intent(out) , allocatable :: field(:,:)
4594 integer(IKG) , intent(in) , contiguous :: array(:)
4595 integer(IKG) , intent(in) :: sep
4596 procedure(logical(LK)) :: iseq
4597 logical(LK) , intent(in) , optional :: keep
4598 end subroutine
4599#endif
4600
4601#if IK1_ENABLED
4602 module subroutine setSplitIndCusComDefIns_D1_D0_IK1(field, array, sep, iseq, keep)
4603#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4604 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_IK1
4605#endif
4606 use pm_kind, only: IKG => IK1
4607 integer(IK) , intent(out) , allocatable :: field(:,:)
4608 integer(IKG) , intent(in) , contiguous :: array(:)
4609 integer(IKG) , intent(in) :: sep
4610 procedure(logical(LK)) :: iseq
4611 logical(LK) , intent(in) , optional :: keep
4612 end subroutine
4613#endif
4614
4615 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4616
4617#if LK5_ENABLED
4618 module subroutine setSplitIndCusComDefIns_D1_D0_LK5(field, array, sep, iseq, keep)
4619#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4620 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_LK5
4621#endif
4622 use pm_kind, only: LKG => LK5
4623 integer(IK) , intent(out) , allocatable :: field(:,:)
4624 logical(LKG) , intent(in) , contiguous :: array(:)
4625 logical(LKG) , intent(in) :: sep
4626 procedure(logical(LK)) :: iseq
4627 logical(LK) , intent(in) , optional :: keep
4628 end subroutine
4629#endif
4630
4631#if LK4_ENABLED
4632 module subroutine setSplitIndCusComDefIns_D1_D0_LK4(field, array, sep, iseq, keep)
4633#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4634 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_LK4
4635#endif
4636 use pm_kind, only: LKG => LK4
4637 integer(IK) , intent(out) , allocatable :: field(:,:)
4638 logical(LKG) , intent(in) , contiguous :: array(:)
4639 logical(LKG) , intent(in) :: sep
4640 procedure(logical(LK)) :: iseq
4641 logical(LK) , intent(in) , optional :: keep
4642 end subroutine
4643#endif
4644
4645#if LK3_ENABLED
4646 module subroutine setSplitIndCusComDefIns_D1_D0_LK3(field, array, sep, iseq, keep)
4647#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4648 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_LK3
4649#endif
4650 use pm_kind, only: LKG => LK3
4651 integer(IK) , intent(out) , allocatable :: field(:,:)
4652 logical(LKG) , intent(in) , contiguous :: array(:)
4653 logical(LKG) , intent(in) :: sep
4654 procedure(logical(LK)) :: iseq
4655 logical(LK) , intent(in) , optional :: keep
4656 end subroutine
4657#endif
4658
4659#if LK2_ENABLED
4660 module subroutine setSplitIndCusComDefIns_D1_D0_LK2(field, array, sep, iseq, keep)
4661#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4662 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_LK2
4663#endif
4664 use pm_kind, only: LKG => LK2
4665 integer(IK) , intent(out) , allocatable :: field(:,:)
4666 logical(LKG) , intent(in) , contiguous :: array(:)
4667 logical(LKG) , intent(in) :: sep
4668 procedure(logical(LK)) :: iseq
4669 logical(LK) , intent(in) , optional :: keep
4670 end subroutine
4671#endif
4672
4673#if LK1_ENABLED
4674 module subroutine setSplitIndCusComDefIns_D1_D0_LK1(field, array, sep, iseq, keep)
4675#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4676 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_LK1
4677#endif
4678 use pm_kind, only: LKG => LK1
4679 integer(IK) , intent(out) , allocatable :: field(:,:)
4680 logical(LKG) , intent(in) , contiguous :: array(:)
4681 logical(LKG) , intent(in) :: sep
4682 procedure(logical(LK)) :: iseq
4683 logical(LK) , intent(in) , optional :: keep
4684 end subroutine
4685#endif
4686
4687 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4688
4689#if CK5_ENABLED
4690 module subroutine setSplitIndCusComDefIns_D1_D0_CK5(field, array, sep, iseq, keep)
4691#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4692 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_CK5
4693#endif
4694 use pm_kind, only: CKG => CK5
4695 integer(IK) , intent(out) , allocatable :: field(:,:)
4696 complex(CKG) , intent(in) , contiguous :: array(:)
4697 complex(CKG) , intent(in) :: sep
4698 procedure(logical(LK)) :: iseq
4699 logical(LK) , intent(in) , optional :: keep
4700 end subroutine
4701#endif
4702
4703#if CK4_ENABLED
4704 module subroutine setSplitIndCusComDefIns_D1_D0_CK4(field, array, sep, iseq, keep)
4705#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4706 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_CK4
4707#endif
4708 use pm_kind, only: CKG => CK4
4709 integer(IK) , intent(out) , allocatable :: field(:,:)
4710 complex(CKG) , intent(in) , contiguous :: array(:)
4711 complex(CKG) , intent(in) :: sep
4712 procedure(logical(LK)) :: iseq
4713 logical(LK) , intent(in) , optional :: keep
4714 end subroutine
4715#endif
4716
4717#if CK3_ENABLED
4718 module subroutine setSplitIndCusComDefIns_D1_D0_CK3(field, array, sep, iseq, keep)
4719#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4720 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_CK3
4721#endif
4722 use pm_kind, only: CKG => CK3
4723 integer(IK) , intent(out) , allocatable :: field(:,:)
4724 complex(CKG) , intent(in) , contiguous :: array(:)
4725 complex(CKG) , intent(in) :: sep
4726 procedure(logical(LK)) :: iseq
4727 logical(LK) , intent(in) , optional :: keep
4728 end subroutine
4729#endif
4730
4731#if CK2_ENABLED
4732 module subroutine setSplitIndCusComDefIns_D1_D0_CK2(field, array, sep, iseq, keep)
4733#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4734 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_CK2
4735#endif
4736 use pm_kind, only: CKG => CK2
4737 integer(IK) , intent(out) , allocatable :: field(:,:)
4738 complex(CKG) , intent(in) , contiguous :: array(:)
4739 complex(CKG) , intent(in) :: sep
4740 procedure(logical(LK)) :: iseq
4741 logical(LK) , intent(in) , optional :: keep
4742 end subroutine
4743#endif
4744
4745#if CK1_ENABLED
4746 module subroutine setSplitIndCusComDefIns_D1_D0_CK1(field, array, sep, iseq, keep)
4747#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4748 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_CK1
4749#endif
4750 use pm_kind, only: CKG => CK1
4751 integer(IK) , intent(out) , allocatable :: field(:,:)
4752 complex(CKG) , intent(in) , contiguous :: array(:)
4753 complex(CKG) , intent(in) :: sep
4754 procedure(logical(LK)) :: iseq
4755 logical(LK) , intent(in) , optional :: keep
4756 end subroutine
4757#endif
4758
4759 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4760
4761#if RK5_ENABLED
4762 module subroutine setSplitIndCusComDefIns_D1_D0_RK5(field, array, sep, iseq, keep)
4763#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4764 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_RK5
4765#endif
4766 use pm_kind, only: RKG => RK5
4767 integer(IK) , intent(out) , allocatable :: field(:,:)
4768 real(RKG) , intent(in) , contiguous :: array(:)
4769 real(RKG) , intent(in) :: sep
4770 procedure(logical(LK)) :: iseq
4771 logical(LK) , intent(in) , optional :: keep
4772 end subroutine
4773#endif
4774
4775#if RK4_ENABLED
4776 module subroutine setSplitIndCusComDefIns_D1_D0_RK4(field, array, sep, iseq, keep)
4777#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4778 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_RK4
4779#endif
4780 use pm_kind, only: RKG => RK4
4781 integer(IK) , intent(out) , allocatable :: field(:,:)
4782 real(RKG) , intent(in) , contiguous :: array(:)
4783 real(RKG) , intent(in) :: sep
4784 procedure(logical(LK)) :: iseq
4785 logical(LK) , intent(in) , optional :: keep
4786 end subroutine
4787#endif
4788
4789#if RK3_ENABLED
4790 module subroutine setSplitIndCusComDefIns_D1_D0_RK3(field, array, sep, iseq, keep)
4791#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4792 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_RK3
4793#endif
4794 use pm_kind, only: RKG => RK3
4795 integer(IK) , intent(out) , allocatable :: field(:,:)
4796 real(RKG) , intent(in) , contiguous :: array(:)
4797 real(RKG) , intent(in) :: sep
4798 procedure(logical(LK)) :: iseq
4799 logical(LK) , intent(in) , optional :: keep
4800 end subroutine
4801#endif
4802
4803#if RK2_ENABLED
4804 module subroutine setSplitIndCusComDefIns_D1_D0_RK2(field, array, sep, iseq, keep)
4805#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4806 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_RK2
4807#endif
4808 use pm_kind, only: RKG => RK2
4809 integer(IK) , intent(out) , allocatable :: field(:,:)
4810 real(RKG) , intent(in) , contiguous :: array(:)
4811 real(RKG) , intent(in) :: sep
4812 procedure(logical(LK)) :: iseq
4813 logical(LK) , intent(in) , optional :: keep
4814 end subroutine
4815#endif
4816
4817#if RK1_ENABLED
4818 module subroutine setSplitIndCusComDefIns_D1_D0_RK1(field, array, sep, iseq, keep)
4819#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4820 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D0_RK1
4821#endif
4822 use pm_kind, only: RKG => RK1
4823 integer(IK) , intent(out) , allocatable :: field(:,:)
4824 real(RKG) , intent(in) , contiguous :: array(:)
4825 real(RKG) , intent(in) :: sep
4826 procedure(logical(LK)) :: iseq
4827 logical(LK) , intent(in) , optional :: keep
4828 end subroutine
4829#endif
4830
4831 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4832
4833 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4834 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4835 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4836
4837 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4838
4839#if SK5_ENABLED
4840 PURE module subroutine setSplitIndDefComCusIns_D0_D0_SK5(field, array, sep, instance, sorted, unique, keep)
4841#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4842 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D0_D0_SK5
4843#endif
4844 use pm_kind, only: SKG => SK5
4845 integer(IK) , intent(out) , allocatable :: field(:,:)
4846 character(*,SKG) , intent(in) :: array
4847 character(*,SKG) , intent(in) :: sep
4848 integer(IK) , intent(in) , contiguous :: instance(:)
4849 logical(LK) , intent(in) , optional :: sorted
4850 logical(LK) , intent(in) , optional :: unique
4851 logical(LK) , intent(in) , optional :: keep
4852 end subroutine
4853#endif
4854
4855#if SK4_ENABLED
4856 PURE module subroutine setSplitIndDefComCusIns_D0_D0_SK4(field, array, sep, instance, sorted, unique, keep)
4857#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4858 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D0_D0_SK4
4859#endif
4860 use pm_kind, only: SKG => SK4
4861 integer(IK) , intent(out) , allocatable :: field(:,:)
4862 character(*,SKG) , intent(in) :: array
4863 character(*,SKG) , intent(in) :: sep
4864 integer(IK) , intent(in) , contiguous :: instance(:)
4865 logical(LK) , intent(in) , optional :: sorted
4866 logical(LK) , intent(in) , optional :: unique
4867 logical(LK) , intent(in) , optional :: keep
4868 end subroutine
4869#endif
4870
4871#if SK3_ENABLED
4872 PURE module subroutine setSplitIndDefComCusIns_D0_D0_SK3(field, array, sep, instance, sorted, unique, keep)
4873#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4874 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D0_D0_SK3
4875#endif
4876 use pm_kind, only: SKG => SK3
4877 integer(IK) , intent(out) , allocatable :: field(:,:)
4878 character(*,SKG) , intent(in) :: array
4879 character(*,SKG) , intent(in) :: sep
4880 integer(IK) , intent(in) , contiguous :: instance(:)
4881 logical(LK) , intent(in) , optional :: sorted
4882 logical(LK) , intent(in) , optional :: unique
4883 logical(LK) , intent(in) , optional :: keep
4884 end subroutine
4885#endif
4886
4887#if SK2_ENABLED
4888 PURE module subroutine setSplitIndDefComCusIns_D0_D0_SK2(field, array, sep, instance, sorted, unique, keep)
4889#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4890 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D0_D0_SK2
4891#endif
4892 use pm_kind, only: SKG => SK2
4893 integer(IK) , intent(out) , allocatable :: field(:,:)
4894 character(*,SKG) , intent(in) :: array
4895 character(*,SKG) , intent(in) :: sep
4896 integer(IK) , intent(in) , contiguous :: instance(:)
4897 logical(LK) , intent(in) , optional :: sorted
4898 logical(LK) , intent(in) , optional :: unique
4899 logical(LK) , intent(in) , optional :: keep
4900 end subroutine
4901#endif
4902
4903#if SK1_ENABLED
4904 PURE module subroutine setSplitIndDefComCusIns_D0_D0_SK1(field, array, sep, instance, sorted, unique, keep)
4905#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4906 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D0_D0_SK1
4907#endif
4908 use pm_kind, only: SKG => SK1
4909 integer(IK) , intent(out) , allocatable :: field(:,:)
4910 character(*,SKG) , intent(in) :: array
4911 character(*,SKG) , intent(in) :: sep
4912 integer(IK) , intent(in) , contiguous :: instance(:)
4913 logical(LK) , intent(in) , optional :: sorted
4914 logical(LK) , intent(in) , optional :: unique
4915 logical(LK) , intent(in) , optional :: keep
4916 end subroutine
4917#endif
4918
4919 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
4920
4921#if SK5_ENABLED
4922 PURE module subroutine setSplitIndDefComCusIns_D1_D0_SK5(field, array, sep, instance, sorted, unique, keep)
4923#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4924 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_SK5
4925#endif
4926 use pm_kind, only: SKG => SK5
4927 integer(IK) , intent(out) , allocatable :: field(:,:)
4928 character(*,SKG) , intent(in) , contiguous :: array(:)
4929 character(*,SKG) , intent(in) :: sep
4930 integer(IK) , intent(in) , contiguous :: instance(:)
4931 logical(LK) , intent(in) , optional :: sorted
4932 logical(LK) , intent(in) , optional :: unique
4933 logical(LK) , intent(in) , optional :: keep
4934 end subroutine
4935#endif
4936
4937#if SK4_ENABLED
4938 PURE module subroutine setSplitIndDefComCusIns_D1_D0_SK4(field, array, sep, instance, sorted, unique, keep)
4939#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4940 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_SK4
4941#endif
4942 use pm_kind, only: SKG => SK4
4943 integer(IK) , intent(out) , allocatable :: field(:,:)
4944 character(*,SKG) , intent(in) , contiguous :: array(:)
4945 character(*,SKG) , intent(in) :: sep
4946 integer(IK) , intent(in) , contiguous :: instance(:)
4947 logical(LK) , intent(in) , optional :: sorted
4948 logical(LK) , intent(in) , optional :: unique
4949 logical(LK) , intent(in) , optional :: keep
4950 end subroutine
4951#endif
4952
4953#if SK3_ENABLED
4954 PURE module subroutine setSplitIndDefComCusIns_D1_D0_SK3(field, array, sep, instance, sorted, unique, keep)
4955#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4956 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_SK3
4957#endif
4958 use pm_kind, only: SKG => SK3
4959 integer(IK) , intent(out) , allocatable :: field(:,:)
4960 character(*,SKG) , intent(in) , contiguous :: array(:)
4961 character(*,SKG) , intent(in) :: sep
4962 integer(IK) , intent(in) , contiguous :: instance(:)
4963 logical(LK) , intent(in) , optional :: sorted
4964 logical(LK) , intent(in) , optional :: unique
4965 logical(LK) , intent(in) , optional :: keep
4966 end subroutine
4967#endif
4968
4969#if SK2_ENABLED
4970 PURE module subroutine setSplitIndDefComCusIns_D1_D0_SK2(field, array, sep, instance, sorted, unique, keep)
4971#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4972 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_SK2
4973#endif
4974 use pm_kind, only: SKG => SK2
4975 integer(IK) , intent(out) , allocatable :: field(:,:)
4976 character(*,SKG) , intent(in) , contiguous :: array(:)
4977 character(*,SKG) , intent(in) :: sep
4978 integer(IK) , intent(in) , contiguous :: instance(:)
4979 logical(LK) , intent(in) , optional :: sorted
4980 logical(LK) , intent(in) , optional :: unique
4981 logical(LK) , intent(in) , optional :: keep
4982 end subroutine
4983#endif
4984
4985#if SK1_ENABLED
4986 PURE module subroutine setSplitIndDefComCusIns_D1_D0_SK1(field, array, sep, instance, sorted, unique, keep)
4987#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
4988 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_SK1
4989#endif
4990 use pm_kind, only: SKG => SK1
4991 integer(IK) , intent(out) , allocatable :: field(:,:)
4992 character(*,SKG) , intent(in) , contiguous :: array(:)
4993 character(*,SKG) , intent(in) :: sep
4994 integer(IK) , intent(in) , contiguous :: instance(:)
4995 logical(LK) , intent(in) , optional :: sorted
4996 logical(LK) , intent(in) , optional :: unique
4997 logical(LK) , intent(in) , optional :: keep
4998 end subroutine
4999#endif
5000
5001 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5002
5003#if IK5_ENABLED
5004 PURE module subroutine setSplitIndDefComCusIns_D1_D0_IK5(field, array, sep, instance, sorted, unique, keep)
5005#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5006 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_IK5
5007#endif
5008 use pm_kind, only: IKG => IK5
5009 integer(IK) , intent(out) , allocatable :: field(:,:)
5010 integer(IKG) , intent(in) , contiguous :: array(:)
5011 integer(IKG) , intent(in) :: sep
5012 integer(IK) , intent(in) , contiguous :: instance(:)
5013 logical(LK) , intent(in) , optional :: sorted
5014 logical(LK) , intent(in) , optional :: unique
5015 logical(LK) , intent(in) , optional :: keep
5016 end subroutine
5017#endif
5018
5019#if IK4_ENABLED
5020 PURE module subroutine setSplitIndDefComCusIns_D1_D0_IK4(field, array, sep, instance, sorted, unique, keep)
5021#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5022 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_IK4
5023#endif
5024 use pm_kind, only: IKG => IK4
5025 integer(IK) , intent(out) , allocatable :: field(:,:)
5026 integer(IKG) , intent(in) , contiguous :: array(:)
5027 integer(IKG) , intent(in) :: sep
5028 integer(IK) , intent(in) , contiguous :: instance(:)
5029 logical(LK) , intent(in) , optional :: sorted
5030 logical(LK) , intent(in) , optional :: unique
5031 logical(LK) , intent(in) , optional :: keep
5032 end subroutine
5033#endif
5034
5035#if IK3_ENABLED
5036 PURE module subroutine setSplitIndDefComCusIns_D1_D0_IK3(field, array, sep, instance, sorted, unique, keep)
5037#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5038 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_IK3
5039#endif
5040 use pm_kind, only: IKG => IK3
5041 integer(IK) , intent(out) , allocatable :: field(:,:)
5042 integer(IKG) , intent(in) , contiguous :: array(:)
5043 integer(IKG) , intent(in) :: sep
5044 integer(IK) , intent(in) , contiguous :: instance(:)
5045 logical(LK) , intent(in) , optional :: sorted
5046 logical(LK) , intent(in) , optional :: unique
5047 logical(LK) , intent(in) , optional :: keep
5048 end subroutine
5049#endif
5050
5051#if IK2_ENABLED
5052 PURE module subroutine setSplitIndDefComCusIns_D1_D0_IK2(field, array, sep, instance, sorted, unique, keep)
5053#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5054 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_IK2
5055#endif
5056 use pm_kind, only: IKG => IK2
5057 integer(IK) , intent(out) , allocatable :: field(:,:)
5058 integer(IKG) , intent(in) , contiguous :: array(:)
5059 integer(IKG) , intent(in) :: sep
5060 integer(IK) , intent(in) , contiguous :: instance(:)
5061 logical(LK) , intent(in) , optional :: sorted
5062 logical(LK) , intent(in) , optional :: unique
5063 logical(LK) , intent(in) , optional :: keep
5064 end subroutine
5065#endif
5066
5067#if IK1_ENABLED
5068 PURE module subroutine setSplitIndDefComCusIns_D1_D0_IK1(field, array, sep, instance, sorted, unique, keep)
5069#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5070 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_IK1
5071#endif
5072 use pm_kind, only: IKG => IK1
5073 integer(IK) , intent(out) , allocatable :: field(:,:)
5074 integer(IKG) , intent(in) , contiguous :: array(:)
5075 integer(IKG) , intent(in) :: sep
5076 integer(IK) , intent(in) , contiguous :: instance(:)
5077 logical(LK) , intent(in) , optional :: sorted
5078 logical(LK) , intent(in) , optional :: unique
5079 logical(LK) , intent(in) , optional :: keep
5080 end subroutine
5081#endif
5082
5083 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5084
5085#if LK5_ENABLED
5086 PURE module subroutine setSplitIndDefComCusIns_D1_D0_LK5(field, array, sep, instance, sorted, unique, keep)
5087#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5088 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_LK5
5089#endif
5090 use pm_kind, only: LKG => LK5
5091 integer(IK) , intent(out) , allocatable :: field(:,:)
5092 logical(LKG) , intent(in) , contiguous :: array(:)
5093 logical(LKG) , intent(in) :: sep
5094 integer(IK) , intent(in) , contiguous :: instance(:)
5095 logical(LK) , intent(in) , optional :: sorted
5096 logical(LK) , intent(in) , optional :: unique
5097 logical(LK) , intent(in) , optional :: keep
5098 end subroutine
5099#endif
5100
5101#if LK4_ENABLED
5102 PURE module subroutine setSplitIndDefComCusIns_D1_D0_LK4(field, array, sep, instance, sorted, unique, keep)
5103#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5104 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_LK4
5105#endif
5106 use pm_kind, only: LKG => LK4
5107 integer(IK) , intent(out) , allocatable :: field(:,:)
5108 logical(LKG) , intent(in) , contiguous :: array(:)
5109 logical(LKG) , intent(in) :: sep
5110 integer(IK) , intent(in) , contiguous :: instance(:)
5111 logical(LK) , intent(in) , optional :: sorted
5112 logical(LK) , intent(in) , optional :: unique
5113 logical(LK) , intent(in) , optional :: keep
5114 end subroutine
5115#endif
5116
5117#if LK3_ENABLED
5118 PURE module subroutine setSplitIndDefComCusIns_D1_D0_LK3(field, array, sep, instance, sorted, unique, keep)
5119#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5120 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_LK3
5121#endif
5122 use pm_kind, only: LKG => LK3
5123 integer(IK) , intent(out) , allocatable :: field(:,:)
5124 logical(LKG) , intent(in) , contiguous :: array(:)
5125 logical(LKG) , intent(in) :: sep
5126 integer(IK) , intent(in) , contiguous :: instance(:)
5127 logical(LK) , intent(in) , optional :: sorted
5128 logical(LK) , intent(in) , optional :: unique
5129 logical(LK) , intent(in) , optional :: keep
5130 end subroutine
5131#endif
5132
5133#if LK2_ENABLED
5134 PURE module subroutine setSplitIndDefComCusIns_D1_D0_LK2(field, array, sep, instance, sorted, unique, keep)
5135#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5136 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_LK2
5137#endif
5138 use pm_kind, only: LKG => LK2
5139 integer(IK) , intent(out) , allocatable :: field(:,:)
5140 logical(LKG) , intent(in) , contiguous :: array(:)
5141 logical(LKG) , intent(in) :: sep
5142 integer(IK) , intent(in) , contiguous :: instance(:)
5143 logical(LK) , intent(in) , optional :: sorted
5144 logical(LK) , intent(in) , optional :: unique
5145 logical(LK) , intent(in) , optional :: keep
5146 end subroutine
5147#endif
5148
5149#if LK1_ENABLED
5150 PURE module subroutine setSplitIndDefComCusIns_D1_D0_LK1(field, array, sep, instance, sorted, unique, keep)
5151#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5152 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_LK1
5153#endif
5154 use pm_kind, only: LKG => LK1
5155 integer(IK) , intent(out) , allocatable :: field(:,:)
5156 logical(LKG) , intent(in) , contiguous :: array(:)
5157 logical(LKG) , intent(in) :: sep
5158 integer(IK) , intent(in) , contiguous :: instance(:)
5159 logical(LK) , intent(in) , optional :: sorted
5160 logical(LK) , intent(in) , optional :: unique
5161 logical(LK) , intent(in) , optional :: keep
5162 end subroutine
5163#endif
5164
5165 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5166
5167#if CK5_ENABLED
5168 PURE module subroutine setSplitIndDefComCusIns_D1_D0_CK5(field, array, sep, instance, sorted, unique, keep)
5169#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5170 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_CK5
5171#endif
5172 use pm_kind, only: CKG => CK5
5173 integer(IK) , intent(out) , allocatable :: field(:,:)
5174 complex(CKG) , intent(in) , contiguous :: array(:)
5175 complex(CKG) , intent(in) :: sep
5176 integer(IK) , intent(in) , contiguous :: instance(:)
5177 logical(LK) , intent(in) , optional :: sorted
5178 logical(LK) , intent(in) , optional :: unique
5179 logical(LK) , intent(in) , optional :: keep
5180 end subroutine
5181#endif
5182
5183#if CK4_ENABLED
5184 PURE module subroutine setSplitIndDefComCusIns_D1_D0_CK4(field, array, sep, instance, sorted, unique, keep)
5185#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5186 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_CK4
5187#endif
5188 use pm_kind, only: CKG => CK4
5189 integer(IK) , intent(out) , allocatable :: field(:,:)
5190 complex(CKG) , intent(in) , contiguous :: array(:)
5191 complex(CKG) , intent(in) :: sep
5192 integer(IK) , intent(in) , contiguous :: instance(:)
5193 logical(LK) , intent(in) , optional :: sorted
5194 logical(LK) , intent(in) , optional :: unique
5195 logical(LK) , intent(in) , optional :: keep
5196 end subroutine
5197#endif
5198
5199#if CK3_ENABLED
5200 PURE module subroutine setSplitIndDefComCusIns_D1_D0_CK3(field, array, sep, instance, sorted, unique, keep)
5201#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5202 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_CK3
5203#endif
5204 use pm_kind, only: CKG => CK3
5205 integer(IK) , intent(out) , allocatable :: field(:,:)
5206 complex(CKG) , intent(in) , contiguous :: array(:)
5207 complex(CKG) , intent(in) :: sep
5208 integer(IK) , intent(in) , contiguous :: instance(:)
5209 logical(LK) , intent(in) , optional :: sorted
5210 logical(LK) , intent(in) , optional :: unique
5211 logical(LK) , intent(in) , optional :: keep
5212 end subroutine
5213#endif
5214
5215#if CK2_ENABLED
5216 PURE module subroutine setSplitIndDefComCusIns_D1_D0_CK2(field, array, sep, instance, sorted, unique, keep)
5217#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5218 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_CK2
5219#endif
5220 use pm_kind, only: CKG => CK2
5221 integer(IK) , intent(out) , allocatable :: field(:,:)
5222 complex(CKG) , intent(in) , contiguous :: array(:)
5223 complex(CKG) , intent(in) :: sep
5224 integer(IK) , intent(in) , contiguous :: instance(:)
5225 logical(LK) , intent(in) , optional :: sorted
5226 logical(LK) , intent(in) , optional :: unique
5227 logical(LK) , intent(in) , optional :: keep
5228 end subroutine
5229#endif
5230
5231#if CK1_ENABLED
5232 PURE module subroutine setSplitIndDefComCusIns_D1_D0_CK1(field, array, sep, instance, sorted, unique, keep)
5233#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5234 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_CK1
5235#endif
5236 use pm_kind, only: CKG => CK1
5237 integer(IK) , intent(out) , allocatable :: field(:,:)
5238 complex(CKG) , intent(in) , contiguous :: array(:)
5239 complex(CKG) , intent(in) :: sep
5240 integer(IK) , intent(in) , contiguous :: instance(:)
5241 logical(LK) , intent(in) , optional :: sorted
5242 logical(LK) , intent(in) , optional :: unique
5243 logical(LK) , intent(in) , optional :: keep
5244 end subroutine
5245#endif
5246
5247 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5248
5249#if RK5_ENABLED
5250 PURE module subroutine setSplitIndDefComCusIns_D1_D0_RK5(field, array, sep, instance, sorted, unique, keep)
5251#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5252 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_RK5
5253#endif
5254 use pm_kind, only: RKG => RK5
5255 integer(IK) , intent(out) , allocatable :: field(:,:)
5256 real(RKG) , intent(in) , contiguous :: array(:)
5257 real(RKG) , intent(in) :: sep
5258 integer(IK) , intent(in) , contiguous :: instance(:)
5259 logical(LK) , intent(in) , optional :: sorted
5260 logical(LK) , intent(in) , optional :: unique
5261 logical(LK) , intent(in) , optional :: keep
5262 end subroutine
5263#endif
5264
5265#if RK4_ENABLED
5266 PURE module subroutine setSplitIndDefComCusIns_D1_D0_RK4(field, array, sep, instance, sorted, unique, keep)
5267#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5268 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_RK4
5269#endif
5270 use pm_kind, only: RKG => RK4
5271 integer(IK) , intent(out) , allocatable :: field(:,:)
5272 real(RKG) , intent(in) , contiguous :: array(:)
5273 real(RKG) , intent(in) :: sep
5274 integer(IK) , intent(in) , contiguous :: instance(:)
5275 logical(LK) , intent(in) , optional :: sorted
5276 logical(LK) , intent(in) , optional :: unique
5277 logical(LK) , intent(in) , optional :: keep
5278 end subroutine
5279#endif
5280
5281#if RK3_ENABLED
5282 PURE module subroutine setSplitIndDefComCusIns_D1_D0_RK3(field, array, sep, instance, sorted, unique, keep)
5283#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5284 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_RK3
5285#endif
5286 use pm_kind, only: RKG => RK3
5287 integer(IK) , intent(out) , allocatable :: field(:,:)
5288 real(RKG) , intent(in) , contiguous :: array(:)
5289 real(RKG) , intent(in) :: sep
5290 integer(IK) , intent(in) , contiguous :: instance(:)
5291 logical(LK) , intent(in) , optional :: sorted
5292 logical(LK) , intent(in) , optional :: unique
5293 logical(LK) , intent(in) , optional :: keep
5294 end subroutine
5295#endif
5296
5297#if RK2_ENABLED
5298 PURE module subroutine setSplitIndDefComCusIns_D1_D0_RK2(field, array, sep, instance, sorted, unique, keep)
5299#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5300 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_RK2
5301#endif
5302 use pm_kind, only: RKG => RK2
5303 integer(IK) , intent(out) , allocatable :: field(:,:)
5304 real(RKG) , intent(in) , contiguous :: array(:)
5305 real(RKG) , intent(in) :: sep
5306 integer(IK) , intent(in) , contiguous :: instance(:)
5307 logical(LK) , intent(in) , optional :: sorted
5308 logical(LK) , intent(in) , optional :: unique
5309 logical(LK) , intent(in) , optional :: keep
5310 end subroutine
5311#endif
5312
5313#if RK1_ENABLED
5314 PURE module subroutine setSplitIndDefComCusIns_D1_D0_RK1(field, array, sep, instance, sorted, unique, keep)
5315#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5316 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D0_RK1
5317#endif
5318 use pm_kind, only: RKG => RK1
5319 integer(IK) , intent(out) , allocatable :: field(:,:)
5320 real(RKG) , intent(in) , contiguous :: array(:)
5321 real(RKG) , intent(in) :: sep
5322 integer(IK) , intent(in) , contiguous :: instance(:)
5323 logical(LK) , intent(in) , optional :: sorted
5324 logical(LK) , intent(in) , optional :: unique
5325 logical(LK) , intent(in) , optional :: keep
5326 end subroutine
5327#endif
5328
5329 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5330
5331 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5332 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5333 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5334
5335 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5336
5337#if SK5_ENABLED
5338 module subroutine setSplitIndCusComCusIns_D0_D0_SK5(field, array, sep, iseq, instance, sorted, unique, keep)
5339#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5340 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D0_D0_SK5
5341#endif
5342 use pm_kind, only: SKG => SK5
5343 integer(IK) , intent(out) , allocatable :: field(:,:)
5344 character(*,SKG) , intent(in) :: array
5345 character(*,SKG) , intent(in) :: sep
5346 procedure(logical(LK)) :: iseq
5347 integer(IK) , intent(in) , contiguous :: instance(:)
5348 logical(LK) , intent(in) , optional :: sorted
5349 logical(LK) , intent(in) , optional :: unique
5350 logical(LK) , intent(in) , optional :: keep
5351 end subroutine
5352#endif
5353
5354#if SK4_ENABLED
5355 module subroutine setSplitIndCusComCusIns_D0_D0_SK4(field, array, sep, iseq, instance, sorted, unique, keep)
5356#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5357 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D0_D0_SK4
5358#endif
5359 use pm_kind, only: SKG => SK4
5360 integer(IK) , intent(out) , allocatable :: field(:,:)
5361 character(*,SKG) , intent(in) :: array
5362 character(*,SKG) , intent(in) :: sep
5363 procedure(logical(LK)) :: iseq
5364 integer(IK) , intent(in) , contiguous :: instance(:)
5365 logical(LK) , intent(in) , optional :: sorted
5366 logical(LK) , intent(in) , optional :: unique
5367 logical(LK) , intent(in) , optional :: keep
5368 end subroutine
5369#endif
5370
5371#if SK3_ENABLED
5372 module subroutine setSplitIndCusComCusIns_D0_D0_SK3(field, array, sep, iseq, instance, sorted, unique, keep)
5373#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5374 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D0_D0_SK3
5375#endif
5376 use pm_kind, only: SKG => SK3
5377 integer(IK) , intent(out) , allocatable :: field(:,:)
5378 character(*,SKG) , intent(in) :: array
5379 character(*,SKG) , intent(in) :: sep
5380 procedure(logical(LK)) :: iseq
5381 integer(IK) , intent(in) , contiguous :: instance(:)
5382 logical(LK) , intent(in) , optional :: sorted
5383 logical(LK) , intent(in) , optional :: unique
5384 logical(LK) , intent(in) , optional :: keep
5385 end subroutine
5386#endif
5387
5388#if SK2_ENABLED
5389 module subroutine setSplitIndCusComCusIns_D0_D0_SK2(field, array, sep, iseq, instance, sorted, unique, keep)
5390#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5391 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D0_D0_SK2
5392#endif
5393 use pm_kind, only: SKG => SK2
5394 integer(IK) , intent(out) , allocatable :: field(:,:)
5395 character(*,SKG) , intent(in) :: array
5396 character(*,SKG) , intent(in) :: sep
5397 procedure(logical(LK)) :: iseq
5398 integer(IK) , intent(in) , contiguous :: instance(:)
5399 logical(LK) , intent(in) , optional :: sorted
5400 logical(LK) , intent(in) , optional :: unique
5401 logical(LK) , intent(in) , optional :: keep
5402 end subroutine
5403#endif
5404
5405#if SK1_ENABLED
5406 module subroutine setSplitIndCusComCusIns_D0_D0_SK1(field, array, sep, iseq, instance, sorted, unique, keep)
5407#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5408 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D0_D0_SK1
5409#endif
5410 use pm_kind, only: SKG => SK1
5411 integer(IK) , intent(out) , allocatable :: field(:,:)
5412 character(*,SKG) , intent(in) :: array
5413 character(*,SKG) , intent(in) :: sep
5414 procedure(logical(LK)) :: iseq
5415 integer(IK) , intent(in) , contiguous :: instance(:)
5416 logical(LK) , intent(in) , optional :: sorted
5417 logical(LK) , intent(in) , optional :: unique
5418 logical(LK) , intent(in) , optional :: keep
5419 end subroutine
5420#endif
5421
5422 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5423
5424#if SK5_ENABLED
5425 module subroutine setSplitIndCusComCusIns_D1_D0_SK5(field, array, sep, iseq, instance, sorted, unique, keep)
5426#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5427 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_SK5
5428#endif
5429 use pm_kind, only: SKG => SK5
5430 integer(IK) , intent(out) , allocatable :: field(:,:)
5431 character(*,SKG) , intent(in) , contiguous :: array(:)
5432 character(*,SKG) , intent(in) :: sep
5433 procedure(logical(LK)) :: iseq
5434 integer(IK) , intent(in) , contiguous :: instance(:)
5435 logical(LK) , intent(in) , optional :: sorted
5436 logical(LK) , intent(in) , optional :: unique
5437 logical(LK) , intent(in) , optional :: keep
5438 end subroutine
5439#endif
5440
5441#if SK4_ENABLED
5442 module subroutine setSplitIndCusComCusIns_D1_D0_SK4(field, array, sep, iseq, instance, sorted, unique, keep)
5443#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5444 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_SK4
5445#endif
5446 use pm_kind, only: SKG => SK4
5447 integer(IK) , intent(out) , allocatable :: field(:,:)
5448 character(*,SKG) , intent(in) , contiguous :: array(:)
5449 character(*,SKG) , intent(in) :: sep
5450 procedure(logical(LK)) :: iseq
5451 integer(IK) , intent(in) , contiguous :: instance(:)
5452 logical(LK) , intent(in) , optional :: sorted
5453 logical(LK) , intent(in) , optional :: unique
5454 logical(LK) , intent(in) , optional :: keep
5455 end subroutine
5456#endif
5457
5458#if SK3_ENABLED
5459 module subroutine setSplitIndCusComCusIns_D1_D0_SK3(field, array, sep, iseq, instance, sorted, unique, keep)
5460#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5461 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_SK3
5462#endif
5463 use pm_kind, only: SKG => SK3
5464 integer(IK) , intent(out) , allocatable :: field(:,:)
5465 character(*,SKG) , intent(in) , contiguous :: array(:)
5466 character(*,SKG) , intent(in) :: sep
5467 procedure(logical(LK)) :: iseq
5468 integer(IK) , intent(in) , contiguous :: instance(:)
5469 logical(LK) , intent(in) , optional :: sorted
5470 logical(LK) , intent(in) , optional :: unique
5471 logical(LK) , intent(in) , optional :: keep
5472 end subroutine
5473#endif
5474
5475#if SK2_ENABLED
5476 module subroutine setSplitIndCusComCusIns_D1_D0_SK2(field, array, sep, iseq, instance, sorted, unique, keep)
5477#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5478 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_SK2
5479#endif
5480 use pm_kind, only: SKG => SK2
5481 integer(IK) , intent(out) , allocatable :: field(:,:)
5482 character(*,SKG) , intent(in) , contiguous :: array(:)
5483 character(*,SKG) , intent(in) :: sep
5484 procedure(logical(LK)) :: iseq
5485 integer(IK) , intent(in) , contiguous :: instance(:)
5486 logical(LK) , intent(in) , optional :: sorted
5487 logical(LK) , intent(in) , optional :: unique
5488 logical(LK) , intent(in) , optional :: keep
5489 end subroutine
5490#endif
5491
5492#if SK1_ENABLED
5493 module subroutine setSplitIndCusComCusIns_D1_D0_SK1(field, array, sep, iseq, instance, sorted, unique, keep)
5494#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5495 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_SK1
5496#endif
5497 use pm_kind, only: SKG => SK1
5498 integer(IK) , intent(out) , allocatable :: field(:,:)
5499 character(*,SKG) , intent(in) , contiguous :: array(:)
5500 character(*,SKG) , intent(in) :: sep
5501 procedure(logical(LK)) :: iseq
5502 integer(IK) , intent(in) , contiguous :: instance(:)
5503 logical(LK) , intent(in) , optional :: sorted
5504 logical(LK) , intent(in) , optional :: unique
5505 logical(LK) , intent(in) , optional :: keep
5506 end subroutine
5507#endif
5508
5509 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5510
5511#if IK5_ENABLED
5512 module subroutine setSplitIndCusComCusIns_D1_D0_IK5(field, array, sep, iseq, instance, sorted, unique, keep)
5513#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5514 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_IK5
5515#endif
5516 use pm_kind, only: IKG => IK5
5517 integer(IK) , intent(out) , allocatable :: field(:,:)
5518 integer(IKG) , intent(in) , contiguous :: array(:)
5519 integer(IKG) , intent(in) :: sep
5520 procedure(logical(LK)) :: iseq
5521 integer(IK) , intent(in) , contiguous :: instance(:)
5522 logical(LK) , intent(in) , optional :: sorted
5523 logical(LK) , intent(in) , optional :: unique
5524 logical(LK) , intent(in) , optional :: keep
5525 end subroutine
5526#endif
5527
5528#if IK4_ENABLED
5529 module subroutine setSplitIndCusComCusIns_D1_D0_IK4(field, array, sep, iseq, instance, sorted, unique, keep)
5530#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5531 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_IK4
5532#endif
5533 use pm_kind, only: IKG => IK4
5534 integer(IK) , intent(out) , allocatable :: field(:,:)
5535 integer(IKG) , intent(in) , contiguous :: array(:)
5536 integer(IKG) , intent(in) :: sep
5537 procedure(logical(LK)) :: iseq
5538 integer(IK) , intent(in) , contiguous :: instance(:)
5539 logical(LK) , intent(in) , optional :: sorted
5540 logical(LK) , intent(in) , optional :: unique
5541 logical(LK) , intent(in) , optional :: keep
5542 end subroutine
5543#endif
5544
5545#if IK3_ENABLED
5546 module subroutine setSplitIndCusComCusIns_D1_D0_IK3(field, array, sep, iseq, instance, sorted, unique, keep)
5547#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5548 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_IK3
5549#endif
5550 use pm_kind, only: IKG => IK3
5551 integer(IK) , intent(out) , allocatable :: field(:,:)
5552 integer(IKG) , intent(in) , contiguous :: array(:)
5553 integer(IKG) , intent(in) :: sep
5554 procedure(logical(LK)) :: iseq
5555 integer(IK) , intent(in) , contiguous :: instance(:)
5556 logical(LK) , intent(in) , optional :: sorted
5557 logical(LK) , intent(in) , optional :: unique
5558 logical(LK) , intent(in) , optional :: keep
5559 end subroutine
5560#endif
5561
5562#if IK2_ENABLED
5563 module subroutine setSplitIndCusComCusIns_D1_D0_IK2(field, array, sep, iseq, instance, sorted, unique, keep)
5564#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5565 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_IK2
5566#endif
5567 use pm_kind, only: IKG => IK2
5568 integer(IK) , intent(out) , allocatable :: field(:,:)
5569 integer(IKG) , intent(in) , contiguous :: array(:)
5570 integer(IKG) , intent(in) :: sep
5571 procedure(logical(LK)) :: iseq
5572 integer(IK) , intent(in) , contiguous :: instance(:)
5573 logical(LK) , intent(in) , optional :: sorted
5574 logical(LK) , intent(in) , optional :: unique
5575 logical(LK) , intent(in) , optional :: keep
5576 end subroutine
5577#endif
5578
5579#if IK1_ENABLED
5580 module subroutine setSplitIndCusComCusIns_D1_D0_IK1(field, array, sep, iseq, instance, sorted, unique, keep)
5581#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5582 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_IK1
5583#endif
5584 use pm_kind, only: IKG => IK1
5585 integer(IK) , intent(out) , allocatable :: field(:,:)
5586 integer(IKG) , intent(in) , contiguous :: array(:)
5587 integer(IKG) , intent(in) :: sep
5588 procedure(logical(LK)) :: iseq
5589 integer(IK) , intent(in) , contiguous :: instance(:)
5590 logical(LK) , intent(in) , optional :: sorted
5591 logical(LK) , intent(in) , optional :: unique
5592 logical(LK) , intent(in) , optional :: keep
5593 end subroutine
5594#endif
5595
5596 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5597
5598#if LK5_ENABLED
5599 module subroutine setSplitIndCusComCusIns_D1_D0_LK5(field, array, sep, iseq, instance, sorted, unique, keep)
5600#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5601 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_LK5
5602#endif
5603 use pm_kind, only: LKG => LK5
5604 integer(IK) , intent(out) , allocatable :: field(:,:)
5605 logical(LKG) , intent(in) , contiguous :: array(:)
5606 logical(LKG) , intent(in) :: sep
5607 procedure(logical(LK)) :: iseq
5608 integer(IK) , intent(in) , contiguous :: instance(:)
5609 logical(LK) , intent(in) , optional :: sorted
5610 logical(LK) , intent(in) , optional :: unique
5611 logical(LK) , intent(in) , optional :: keep
5612 end subroutine
5613#endif
5614
5615#if LK4_ENABLED
5616 module subroutine setSplitIndCusComCusIns_D1_D0_LK4(field, array, sep, iseq, instance, sorted, unique, keep)
5617#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5618 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_LK4
5619#endif
5620 use pm_kind, only: LKG => LK4
5621 integer(IK) , intent(out) , allocatable :: field(:,:)
5622 logical(LKG) , intent(in) , contiguous :: array(:)
5623 logical(LKG) , intent(in) :: sep
5624 procedure(logical(LK)) :: iseq
5625 integer(IK) , intent(in) , contiguous :: instance(:)
5626 logical(LK) , intent(in) , optional :: sorted
5627 logical(LK) , intent(in) , optional :: unique
5628 logical(LK) , intent(in) , optional :: keep
5629 end subroutine
5630#endif
5631
5632#if LK3_ENABLED
5633 module subroutine setSplitIndCusComCusIns_D1_D0_LK3(field, array, sep, iseq, instance, sorted, unique, keep)
5634#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5635 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_LK3
5636#endif
5637 use pm_kind, only: LKG => LK3
5638 integer(IK) , intent(out) , allocatable :: field(:,:)
5639 logical(LKG) , intent(in) , contiguous :: array(:)
5640 logical(LKG) , intent(in) :: sep
5641 procedure(logical(LK)) :: iseq
5642 integer(IK) , intent(in) , contiguous :: instance(:)
5643 logical(LK) , intent(in) , optional :: sorted
5644 logical(LK) , intent(in) , optional :: unique
5645 logical(LK) , intent(in) , optional :: keep
5646 end subroutine
5647#endif
5648
5649#if LK2_ENABLED
5650 module subroutine setSplitIndCusComCusIns_D1_D0_LK2(field, array, sep, iseq, instance, sorted, unique, keep)
5651#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5652 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_LK2
5653#endif
5654 use pm_kind, only: LKG => LK2
5655 integer(IK) , intent(out) , allocatable :: field(:,:)
5656 logical(LKG) , intent(in) , contiguous :: array(:)
5657 logical(LKG) , intent(in) :: sep
5658 procedure(logical(LK)) :: iseq
5659 integer(IK) , intent(in) , contiguous :: instance(:)
5660 logical(LK) , intent(in) , optional :: sorted
5661 logical(LK) , intent(in) , optional :: unique
5662 logical(LK) , intent(in) , optional :: keep
5663 end subroutine
5664#endif
5665
5666#if LK1_ENABLED
5667 module subroutine setSplitIndCusComCusIns_D1_D0_LK1(field, array, sep, iseq, instance, sorted, unique, keep)
5668#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5669 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_LK1
5670#endif
5671 use pm_kind, only: LKG => LK1
5672 integer(IK) , intent(out) , allocatable :: field(:,:)
5673 logical(LKG) , intent(in) , contiguous :: array(:)
5674 logical(LKG) , intent(in) :: sep
5675 procedure(logical(LK)) :: iseq
5676 integer(IK) , intent(in) , contiguous :: instance(:)
5677 logical(LK) , intent(in) , optional :: sorted
5678 logical(LK) , intent(in) , optional :: unique
5679 logical(LK) , intent(in) , optional :: keep
5680 end subroutine
5681#endif
5682
5683 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5684
5685#if CK5_ENABLED
5686 module subroutine setSplitIndCusComCusIns_D1_D0_CK5(field, array, sep, iseq, instance, sorted, unique, keep)
5687#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5688 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_CK5
5689#endif
5690 use pm_kind, only: CKG => CK5
5691 integer(IK) , intent(out) , allocatable :: field(:,:)
5692 complex(CKG) , intent(in) , contiguous :: array(:)
5693 complex(CKG) , intent(in) :: sep
5694 procedure(logical(LK)) :: iseq
5695 integer(IK) , intent(in) , contiguous :: instance(:)
5696 logical(LK) , intent(in) , optional :: sorted
5697 logical(LK) , intent(in) , optional :: unique
5698 logical(LK) , intent(in) , optional :: keep
5699 end subroutine
5700#endif
5701
5702#if CK4_ENABLED
5703 module subroutine setSplitIndCusComCusIns_D1_D0_CK4(field, array, sep, iseq, instance, sorted, unique, keep)
5704#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5705 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_CK4
5706#endif
5707 use pm_kind, only: CKG => CK4
5708 integer(IK) , intent(out) , allocatable :: field(:,:)
5709 complex(CKG) , intent(in) , contiguous :: array(:)
5710 complex(CKG) , intent(in) :: sep
5711 procedure(logical(LK)) :: iseq
5712 integer(IK) , intent(in) , contiguous :: instance(:)
5713 logical(LK) , intent(in) , optional :: sorted
5714 logical(LK) , intent(in) , optional :: unique
5715 logical(LK) , intent(in) , optional :: keep
5716 end subroutine
5717#endif
5718
5719#if CK3_ENABLED
5720 module subroutine setSplitIndCusComCusIns_D1_D0_CK3(field, array, sep, iseq, instance, sorted, unique, keep)
5721#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5722 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_CK3
5723#endif
5724 use pm_kind, only: CKG => CK3
5725 integer(IK) , intent(out) , allocatable :: field(:,:)
5726 complex(CKG) , intent(in) , contiguous :: array(:)
5727 complex(CKG) , intent(in) :: sep
5728 procedure(logical(LK)) :: iseq
5729 integer(IK) , intent(in) , contiguous :: instance(:)
5730 logical(LK) , intent(in) , optional :: sorted
5731 logical(LK) , intent(in) , optional :: unique
5732 logical(LK) , intent(in) , optional :: keep
5733 end subroutine
5734#endif
5735
5736#if CK2_ENABLED
5737 module subroutine setSplitIndCusComCusIns_D1_D0_CK2(field, array, sep, iseq, instance, sorted, unique, keep)
5738#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5739 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_CK2
5740#endif
5741 use pm_kind, only: CKG => CK2
5742 integer(IK) , intent(out) , allocatable :: field(:,:)
5743 complex(CKG) , intent(in) , contiguous :: array(:)
5744 complex(CKG) , intent(in) :: sep
5745 procedure(logical(LK)) :: iseq
5746 integer(IK) , intent(in) , contiguous :: instance(:)
5747 logical(LK) , intent(in) , optional :: sorted
5748 logical(LK) , intent(in) , optional :: unique
5749 logical(LK) , intent(in) , optional :: keep
5750 end subroutine
5751#endif
5752
5753#if CK1_ENABLED
5754 module subroutine setSplitIndCusComCusIns_D1_D0_CK1(field, array, sep, iseq, instance, sorted, unique, keep)
5755#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5756 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_CK1
5757#endif
5758 use pm_kind, only: CKG => CK1
5759 integer(IK) , intent(out) , allocatable :: field(:,:)
5760 complex(CKG) , intent(in) , contiguous :: array(:)
5761 complex(CKG) , intent(in) :: sep
5762 procedure(logical(LK)) :: iseq
5763 integer(IK) , intent(in) , contiguous :: instance(:)
5764 logical(LK) , intent(in) , optional :: sorted
5765 logical(LK) , intent(in) , optional :: unique
5766 logical(LK) , intent(in) , optional :: keep
5767 end subroutine
5768#endif
5769
5770 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5771
5772#if RK5_ENABLED
5773 module subroutine setSplitIndCusComCusIns_D1_D0_RK5(field, array, sep, iseq, instance, sorted, unique, keep)
5774#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5775 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_RK5
5776#endif
5777 use pm_kind, only: RKG => RK5
5778 integer(IK) , intent(out) , allocatable :: field(:,:)
5779 real(RKG) , intent(in) , contiguous :: array(:)
5780 real(RKG) , intent(in) :: sep
5781 procedure(logical(LK)) :: iseq
5782 integer(IK) , intent(in) , contiguous :: instance(:)
5783 logical(LK) , intent(in) , optional :: sorted
5784 logical(LK) , intent(in) , optional :: unique
5785 logical(LK) , intent(in) , optional :: keep
5786 end subroutine
5787#endif
5788
5789#if RK4_ENABLED
5790 module subroutine setSplitIndCusComCusIns_D1_D0_RK4(field, array, sep, iseq, instance, sorted, unique, keep)
5791#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5792 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_RK4
5793#endif
5794 use pm_kind, only: RKG => RK4
5795 integer(IK) , intent(out) , allocatable :: field(:,:)
5796 real(RKG) , intent(in) , contiguous :: array(:)
5797 real(RKG) , intent(in) :: sep
5798 procedure(logical(LK)) :: iseq
5799 integer(IK) , intent(in) , contiguous :: instance(:)
5800 logical(LK) , intent(in) , optional :: sorted
5801 logical(LK) , intent(in) , optional :: unique
5802 logical(LK) , intent(in) , optional :: keep
5803 end subroutine
5804#endif
5805
5806#if RK3_ENABLED
5807 module subroutine setSplitIndCusComCusIns_D1_D0_RK3(field, array, sep, iseq, instance, sorted, unique, keep)
5808#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5809 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_RK3
5810#endif
5811 use pm_kind, only: RKG => RK3
5812 integer(IK) , intent(out) , allocatable :: field(:,:)
5813 real(RKG) , intent(in) , contiguous :: array(:)
5814 real(RKG) , intent(in) :: sep
5815 procedure(logical(LK)) :: iseq
5816 integer(IK) , intent(in) , contiguous :: instance(:)
5817 logical(LK) , intent(in) , optional :: sorted
5818 logical(LK) , intent(in) , optional :: unique
5819 logical(LK) , intent(in) , optional :: keep
5820 end subroutine
5821#endif
5822
5823#if RK2_ENABLED
5824 module subroutine setSplitIndCusComCusIns_D1_D0_RK2(field, array, sep, iseq, instance, sorted, unique, keep)
5825#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5826 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_RK2
5827#endif
5828 use pm_kind, only: RKG => RK2
5829 integer(IK) , intent(out) , allocatable :: field(:,:)
5830 real(RKG) , intent(in) , contiguous :: array(:)
5831 real(RKG) , intent(in) :: sep
5832 procedure(logical(LK)) :: iseq
5833 integer(IK) , intent(in) , contiguous :: instance(:)
5834 logical(LK) , intent(in) , optional :: sorted
5835 logical(LK) , intent(in) , optional :: unique
5836 logical(LK) , intent(in) , optional :: keep
5837 end subroutine
5838#endif
5839
5840#if RK1_ENABLED
5841 module subroutine setSplitIndCusComCusIns_D1_D0_RK1(field, array, sep, iseq, instance, sorted, unique, keep)
5842#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5843 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D0_RK1
5844#endif
5845 use pm_kind, only: RKG => RK1
5846 integer(IK) , intent(out) , allocatable :: field(:,:)
5847 real(RKG) , intent(in) , contiguous :: array(:)
5848 real(RKG) , intent(in) :: sep
5849 procedure(logical(LK)) :: iseq
5850 integer(IK) , intent(in) , contiguous :: instance(:)
5851 logical(LK) , intent(in) , optional :: sorted
5852 logical(LK) , intent(in) , optional :: unique
5853 logical(LK) , intent(in) , optional :: keep
5854 end subroutine
5855#endif
5856
5857 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5858
5859 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5860 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5861 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5862
5863 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5864
5865#if SK5_ENABLED
5866 PURE module subroutine setSplitIndDefComDefIns_D1_D1_SK5(field, array, sep, keep)
5867#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5868 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_SK5
5869#endif
5870 use pm_kind, only: SKG => SK5
5871 integer(IK) , intent(out) , allocatable :: field(:,:)
5872 character(*,SKG) , intent(in) , contiguous :: array(:)
5873 character(*,SKG) , intent(in) , contiguous :: sep(:)
5874 logical(LK) , intent(in) , optional :: keep
5875 end subroutine
5876#endif
5877
5878#if SK4_ENABLED
5879 PURE module subroutine setSplitIndDefComDefIns_D1_D1_SK4(field, array, sep, keep)
5880#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5881 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_SK4
5882#endif
5883 use pm_kind, only: SKG => SK4
5884 integer(IK) , intent(out) , allocatable :: field(:,:)
5885 character(*,SKG) , intent(in) , contiguous :: array(:)
5886 character(*,SKG) , intent(in) , contiguous :: sep(:)
5887 logical(LK) , intent(in) , optional :: keep
5888 end subroutine
5889#endif
5890
5891#if SK3_ENABLED
5892 PURE module subroutine setSplitIndDefComDefIns_D1_D1_SK3(field, array, sep, keep)
5893#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5894 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_SK3
5895#endif
5896 use pm_kind, only: SKG => SK3
5897 integer(IK) , intent(out) , allocatable :: field(:,:)
5898 character(*,SKG) , intent(in) , contiguous :: array(:)
5899 character(*,SKG) , intent(in) , contiguous :: sep(:)
5900 logical(LK) , intent(in) , optional :: keep
5901 end subroutine
5902#endif
5903
5904#if SK2_ENABLED
5905 PURE module subroutine setSplitIndDefComDefIns_D1_D1_SK2(field, array, sep, keep)
5906#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5907 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_SK2
5908#endif
5909 use pm_kind, only: SKG => SK2
5910 integer(IK) , intent(out) , allocatable :: field(:,:)
5911 character(*,SKG) , intent(in) , contiguous :: array(:)
5912 character(*,SKG) , intent(in) , contiguous :: sep(:)
5913 logical(LK) , intent(in) , optional :: keep
5914 end subroutine
5915#endif
5916
5917#if SK1_ENABLED
5918 PURE module subroutine setSplitIndDefComDefIns_D1_D1_SK1(field, array, sep, keep)
5919#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5920 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_SK1
5921#endif
5922 use pm_kind, only: SKG => SK1
5923 integer(IK) , intent(out) , allocatable :: field(:,:)
5924 character(*,SKG) , intent(in) , contiguous :: array(:)
5925 character(*,SKG) , intent(in) , contiguous :: sep(:)
5926 logical(LK) , intent(in) , optional :: keep
5927 end subroutine
5928#endif
5929
5930 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5931
5932#if IK5_ENABLED
5933 PURE module subroutine setSplitIndDefComDefIns_D1_D1_IK5(field, array, sep, keep)
5934#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5935 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_IK5
5936#endif
5937 use pm_kind, only: IKG => IK5
5938 integer(IK) , intent(out) , allocatable :: field(:,:)
5939 integer(IKG) , intent(in) , contiguous :: array(:)
5940 integer(IKG) , intent(in) , contiguous :: sep(:)
5941 logical(LK) , intent(in) , optional :: keep
5942 end subroutine
5943#endif
5944
5945#if IK4_ENABLED
5946 PURE module subroutine setSplitIndDefComDefIns_D1_D1_IK4(field, array, sep, keep)
5947#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5948 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_IK4
5949#endif
5950 use pm_kind, only: IKG => IK4
5951 integer(IK) , intent(out) , allocatable :: field(:,:)
5952 integer(IKG) , intent(in) , contiguous :: array(:)
5953 integer(IKG) , intent(in) , contiguous :: sep(:)
5954 logical(LK) , intent(in) , optional :: keep
5955 end subroutine
5956#endif
5957
5958#if IK3_ENABLED
5959 PURE module subroutine setSplitIndDefComDefIns_D1_D1_IK3(field, array, sep, keep)
5960#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5961 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_IK3
5962#endif
5963 use pm_kind, only: IKG => IK3
5964 integer(IK) , intent(out) , allocatable :: field(:,:)
5965 integer(IKG) , intent(in) , contiguous :: array(:)
5966 integer(IKG) , intent(in) , contiguous :: sep(:)
5967 logical(LK) , intent(in) , optional :: keep
5968 end subroutine
5969#endif
5970
5971#if IK2_ENABLED
5972 PURE module subroutine setSplitIndDefComDefIns_D1_D1_IK2(field, array, sep, keep)
5973#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5974 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_IK2
5975#endif
5976 use pm_kind, only: IKG => IK2
5977 integer(IK) , intent(out) , allocatable :: field(:,:)
5978 integer(IKG) , intent(in) , contiguous :: array(:)
5979 integer(IKG) , intent(in) , contiguous :: sep(:)
5980 logical(LK) , intent(in) , optional :: keep
5981 end subroutine
5982#endif
5983
5984#if IK1_ENABLED
5985 PURE module subroutine setSplitIndDefComDefIns_D1_D1_IK1(field, array, sep, keep)
5986#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
5987 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_IK1
5988#endif
5989 use pm_kind, only: IKG => IK1
5990 integer(IK) , intent(out) , allocatable :: field(:,:)
5991 integer(IKG) , intent(in) , contiguous :: array(:)
5992 integer(IKG) , intent(in) , contiguous :: sep(:)
5993 logical(LK) , intent(in) , optional :: keep
5994 end subroutine
5995#endif
5996
5997 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5998
5999#if LK5_ENABLED
6000 PURE module subroutine setSplitIndDefComDefIns_D1_D1_LK5(field, array, sep, keep)
6001#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6002 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_LK5
6003#endif
6004 use pm_kind, only: LKG => LK5
6005 integer(IK) , intent(out) , allocatable :: field(:,:)
6006 logical(LKG) , intent(in) , contiguous :: array(:)
6007 logical(LKG) , intent(in) , contiguous :: sep(:)
6008 logical(LK) , intent(in) , optional :: keep
6009 end subroutine
6010#endif
6011
6012#if LK4_ENABLED
6013 PURE module subroutine setSplitIndDefComDefIns_D1_D1_LK4(field, array, sep, keep)
6014#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6015 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_LK4
6016#endif
6017 use pm_kind, only: LKG => LK4
6018 integer(IK) , intent(out) , allocatable :: field(:,:)
6019 logical(LKG) , intent(in) , contiguous :: array(:)
6020 logical(LKG) , intent(in) , contiguous :: sep(:)
6021 logical(LK) , intent(in) , optional :: keep
6022 end subroutine
6023#endif
6024
6025#if LK3_ENABLED
6026 PURE module subroutine setSplitIndDefComDefIns_D1_D1_LK3(field, array, sep, keep)
6027#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6028 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_LK3
6029#endif
6030 use pm_kind, only: LKG => LK3
6031 integer(IK) , intent(out) , allocatable :: field(:,:)
6032 logical(LKG) , intent(in) , contiguous :: array(:)
6033 logical(LKG) , intent(in) , contiguous :: sep(:)
6034 logical(LK) , intent(in) , optional :: keep
6035 end subroutine
6036#endif
6037
6038#if LK2_ENABLED
6039 PURE module subroutine setSplitIndDefComDefIns_D1_D1_LK2(field, array, sep, keep)
6040#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6041 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_LK2
6042#endif
6043 use pm_kind, only: LKG => LK2
6044 integer(IK) , intent(out) , allocatable :: field(:,:)
6045 logical(LKG) , intent(in) , contiguous :: array(:)
6046 logical(LKG) , intent(in) , contiguous :: sep(:)
6047 logical(LK) , intent(in) , optional :: keep
6048 end subroutine
6049#endif
6050
6051#if LK1_ENABLED
6052 PURE module subroutine setSplitIndDefComDefIns_D1_D1_LK1(field, array, sep, keep)
6053#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6054 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_LK1
6055#endif
6056 use pm_kind, only: LKG => LK1
6057 integer(IK) , intent(out) , allocatable :: field(:,:)
6058 logical(LKG) , intent(in) , contiguous :: array(:)
6059 logical(LKG) , intent(in) , contiguous :: sep(:)
6060 logical(LK) , intent(in) , optional :: keep
6061 end subroutine
6062#endif
6063
6064 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6065
6066#if CK5_ENABLED
6067 PURE module subroutine setSplitIndDefComDefIns_D1_D1_CK5(field, array, sep, keep)
6068#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6069 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_CK5
6070#endif
6071 use pm_kind, only: CKG => CK5
6072 integer(IK) , intent(out) , allocatable :: field(:,:)
6073 complex(CKG) , intent(in) , contiguous :: array(:)
6074 complex(CKG) , intent(in) , contiguous :: sep(:)
6075 logical(LK) , intent(in) , optional :: keep
6076 end subroutine
6077#endif
6078
6079#if CK4_ENABLED
6080 PURE module subroutine setSplitIndDefComDefIns_D1_D1_CK4(field, array, sep, keep)
6081#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6082 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_CK4
6083#endif
6084 use pm_kind, only: CKG => CK4
6085 integer(IK) , intent(out) , allocatable :: field(:,:)
6086 complex(CKG) , intent(in) , contiguous :: array(:)
6087 complex(CKG) , intent(in) , contiguous :: sep(:)
6088 logical(LK) , intent(in) , optional :: keep
6089 end subroutine
6090#endif
6091
6092#if CK3_ENABLED
6093 PURE module subroutine setSplitIndDefComDefIns_D1_D1_CK3(field, array, sep, keep)
6094#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6095 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_CK3
6096#endif
6097 use pm_kind, only: CKG => CK3
6098 integer(IK) , intent(out) , allocatable :: field(:,:)
6099 complex(CKG) , intent(in) , contiguous :: array(:)
6100 complex(CKG) , intent(in) , contiguous :: sep(:)
6101 logical(LK) , intent(in) , optional :: keep
6102 end subroutine
6103#endif
6104
6105#if CK2_ENABLED
6106 PURE module subroutine setSplitIndDefComDefIns_D1_D1_CK2(field, array, sep, keep)
6107#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6108 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_CK2
6109#endif
6110 use pm_kind, only: CKG => CK2
6111 integer(IK) , intent(out) , allocatable :: field(:,:)
6112 complex(CKG) , intent(in) , contiguous :: array(:)
6113 complex(CKG) , intent(in) , contiguous :: sep(:)
6114 logical(LK) , intent(in) , optional :: keep
6115 end subroutine
6116#endif
6117
6118#if CK1_ENABLED
6119 PURE module subroutine setSplitIndDefComDefIns_D1_D1_CK1(field, array, sep, keep)
6120#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6121 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_CK1
6122#endif
6123 use pm_kind, only: CKG => CK1
6124 integer(IK) , intent(out) , allocatable :: field(:,:)
6125 complex(CKG) , intent(in) , contiguous :: array(:)
6126 complex(CKG) , intent(in) , contiguous :: sep(:)
6127 logical(LK) , intent(in) , optional :: keep
6128 end subroutine
6129#endif
6130
6131 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6132
6133#if RK5_ENABLED
6134 PURE module subroutine setSplitIndDefComDefIns_D1_D1_RK5(field, array, sep, keep)
6135#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6136 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_RK5
6137#endif
6138 use pm_kind, only: RKG => RK5
6139 integer(IK) , intent(out) , allocatable :: field(:,:)
6140 real(RKG) , intent(in) , contiguous :: array(:)
6141 real(RKG) , intent(in) , contiguous :: sep(:)
6142 logical(LK) , intent(in) , optional :: keep
6143 end subroutine
6144#endif
6145
6146#if RK4_ENABLED
6147 PURE module subroutine setSplitIndDefComDefIns_D1_D1_RK4(field, array, sep, keep)
6148#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6149 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_RK4
6150#endif
6151 use pm_kind, only: RKG => RK4
6152 integer(IK) , intent(out) , allocatable :: field(:,:)
6153 real(RKG) , intent(in) , contiguous :: array(:)
6154 real(RKG) , intent(in) , contiguous :: sep(:)
6155 logical(LK) , intent(in) , optional :: keep
6156 end subroutine
6157#endif
6158
6159#if RK3_ENABLED
6160 PURE module subroutine setSplitIndDefComDefIns_D1_D1_RK3(field, array, sep, keep)
6161#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6162 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_RK3
6163#endif
6164 use pm_kind, only: RKG => RK3
6165 integer(IK) , intent(out) , allocatable :: field(:,:)
6166 real(RKG) , intent(in) , contiguous :: array(:)
6167 real(RKG) , intent(in) , contiguous :: sep(:)
6168 logical(LK) , intent(in) , optional :: keep
6169 end subroutine
6170#endif
6171
6172#if RK2_ENABLED
6173 PURE module subroutine setSplitIndDefComDefIns_D1_D1_RK2(field, array, sep, keep)
6174#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6175 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_RK2
6176#endif
6177 use pm_kind, only: RKG => RK2
6178 integer(IK) , intent(out) , allocatable :: field(:,:)
6179 real(RKG) , intent(in) , contiguous :: array(:)
6180 real(RKG) , intent(in) , contiguous :: sep(:)
6181 logical(LK) , intent(in) , optional :: keep
6182 end subroutine
6183#endif
6184
6185#if RK1_ENABLED
6186 PURE module subroutine setSplitIndDefComDefIns_D1_D1_RK1(field, array, sep, keep)
6187#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6188 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComDefIns_D1_D1_RK1
6189#endif
6190 use pm_kind, only: RKG => RK1
6191 integer(IK) , intent(out) , allocatable :: field(:,:)
6192 real(RKG) , intent(in) , contiguous :: array(:)
6193 real(RKG) , intent(in) , contiguous :: sep(:)
6194 logical(LK) , intent(in) , optional :: keep
6195 end subroutine
6196#endif
6197
6198 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6199
6200 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6201 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6202 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6203
6204 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6205
6206#if SK5_ENABLED
6207 module subroutine setSplitIndCusComDefIns_D1_D1_SK5(field, array, sep, iseq, keep)
6208#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6209 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_SK5
6210#endif
6211 use pm_kind, only: SKG => SK5
6212 integer(IK) , intent(out) , allocatable :: field(:,:)
6213 character(*,SKG) , intent(in) , contiguous :: array(:)
6214 character(*,SKG) , intent(in) , contiguous :: sep(:)
6215 procedure(logical(LK)) :: iseq
6216 logical(LK) , intent(in) , optional :: keep
6217 end subroutine
6218#endif
6219
6220#if SK4_ENABLED
6221 module subroutine setSplitIndCusComDefIns_D1_D1_SK4(field, array, sep, iseq, keep)
6222#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6223 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_SK4
6224#endif
6225 use pm_kind, only: SKG => SK4
6226 integer(IK) , intent(out) , allocatable :: field(:,:)
6227 character(*,SKG) , intent(in) , contiguous :: array(:)
6228 character(*,SKG) , intent(in) , contiguous :: sep(:)
6229 procedure(logical(LK)) :: iseq
6230 logical(LK) , intent(in) , optional :: keep
6231 end subroutine
6232#endif
6233
6234#if SK3_ENABLED
6235 module subroutine setSplitIndCusComDefIns_D1_D1_SK3(field, array, sep, iseq, keep)
6236#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6237 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_SK3
6238#endif
6239 use pm_kind, only: SKG => SK3
6240 integer(IK) , intent(out) , allocatable :: field(:,:)
6241 character(*,SKG) , intent(in) , contiguous :: array(:)
6242 character(*,SKG) , intent(in) , contiguous :: sep(:)
6243 procedure(logical(LK)) :: iseq
6244 logical(LK) , intent(in) , optional :: keep
6245 end subroutine
6246#endif
6247
6248#if SK2_ENABLED
6249 module subroutine setSplitIndCusComDefIns_D1_D1_SK2(field, array, sep, iseq, keep)
6250#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6251 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_SK2
6252#endif
6253 use pm_kind, only: SKG => SK2
6254 integer(IK) , intent(out) , allocatable :: field(:,:)
6255 character(*,SKG) , intent(in) , contiguous :: array(:)
6256 character(*,SKG) , intent(in) , contiguous :: sep(:)
6257 procedure(logical(LK)) :: iseq
6258 logical(LK) , intent(in) , optional :: keep
6259 end subroutine
6260#endif
6261
6262#if SK1_ENABLED
6263 module subroutine setSplitIndCusComDefIns_D1_D1_SK1(field, array, sep, iseq, keep)
6264#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6265 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_SK1
6266#endif
6267 use pm_kind, only: SKG => SK1
6268 integer(IK) , intent(out) , allocatable :: field(:,:)
6269 character(*,SKG) , intent(in) , contiguous :: array(:)
6270 character(*,SKG) , intent(in) , contiguous :: sep(:)
6271 procedure(logical(LK)) :: iseq
6272 logical(LK) , intent(in) , optional :: keep
6273 end subroutine
6274#endif
6275
6276 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6277
6278#if IK5_ENABLED
6279 module subroutine setSplitIndCusComDefIns_D1_D1_IK5(field, array, sep, iseq, keep)
6280#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6281 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_IK5
6282#endif
6283 use pm_kind, only: IKG => IK5
6284 integer(IK) , intent(out) , allocatable :: field(:,:)
6285 integer(IKG) , intent(in) , contiguous :: array(:)
6286 integer(IKG) , intent(in) , contiguous :: sep(:)
6287 procedure(logical(LK)) :: iseq
6288 logical(LK) , intent(in) , optional :: keep
6289 end subroutine
6290#endif
6291
6292#if IK4_ENABLED
6293 module subroutine setSplitIndCusComDefIns_D1_D1_IK4(field, array, sep, iseq, keep)
6294#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6295 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_IK4
6296#endif
6297 use pm_kind, only: IKG => IK4
6298 integer(IK) , intent(out) , allocatable :: field(:,:)
6299 integer(IKG) , intent(in) , contiguous :: array(:)
6300 integer(IKG) , intent(in) , contiguous :: sep(:)
6301 procedure(logical(LK)) :: iseq
6302 logical(LK) , intent(in) , optional :: keep
6303 end subroutine
6304#endif
6305
6306#if IK3_ENABLED
6307 module subroutine setSplitIndCusComDefIns_D1_D1_IK3(field, array, sep, iseq, keep)
6308#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6309 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_IK3
6310#endif
6311 use pm_kind, only: IKG => IK3
6312 integer(IK) , intent(out) , allocatable :: field(:,:)
6313 integer(IKG) , intent(in) , contiguous :: array(:)
6314 integer(IKG) , intent(in) , contiguous :: sep(:)
6315 procedure(logical(LK)) :: iseq
6316 logical(LK) , intent(in) , optional :: keep
6317 end subroutine
6318#endif
6319
6320#if IK2_ENABLED
6321 module subroutine setSplitIndCusComDefIns_D1_D1_IK2(field, array, sep, iseq, keep)
6322#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6323 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_IK2
6324#endif
6325 use pm_kind, only: IKG => IK2
6326 integer(IK) , intent(out) , allocatable :: field(:,:)
6327 integer(IKG) , intent(in) , contiguous :: array(:)
6328 integer(IKG) , intent(in) , contiguous :: sep(:)
6329 procedure(logical(LK)) :: iseq
6330 logical(LK) , intent(in) , optional :: keep
6331 end subroutine
6332#endif
6333
6334#if IK1_ENABLED
6335 module subroutine setSplitIndCusComDefIns_D1_D1_IK1(field, array, sep, iseq, keep)
6336#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6337 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_IK1
6338#endif
6339 use pm_kind, only: IKG => IK1
6340 integer(IK) , intent(out) , allocatable :: field(:,:)
6341 integer(IKG) , intent(in) , contiguous :: array(:)
6342 integer(IKG) , intent(in) , contiguous :: sep(:)
6343 procedure(logical(LK)) :: iseq
6344 logical(LK) , intent(in) , optional :: keep
6345 end subroutine
6346#endif
6347
6348 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6349
6350#if LK5_ENABLED
6351 module subroutine setSplitIndCusComDefIns_D1_D1_LK5(field, array, sep, iseq, keep)
6352#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6353 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_LK5
6354#endif
6355 use pm_kind, only: LKG => LK5
6356 integer(IK) , intent(out) , allocatable :: field(:,:)
6357 logical(LKG) , intent(in) , contiguous :: array(:)
6358 logical(LKG) , intent(in) , contiguous :: sep(:)
6359 procedure(logical(LK)) :: iseq
6360 logical(LK) , intent(in) , optional :: keep
6361 end subroutine
6362#endif
6363
6364#if LK4_ENABLED
6365 module subroutine setSplitIndCusComDefIns_D1_D1_LK4(field, array, sep, iseq, keep)
6366#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6367 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_LK4
6368#endif
6369 use pm_kind, only: LKG => LK4
6370 integer(IK) , intent(out) , allocatable :: field(:,:)
6371 logical(LKG) , intent(in) , contiguous :: array(:)
6372 logical(LKG) , intent(in) , contiguous :: sep(:)
6373 procedure(logical(LK)) :: iseq
6374 logical(LK) , intent(in) , optional :: keep
6375 end subroutine
6376#endif
6377
6378#if LK3_ENABLED
6379 module subroutine setSplitIndCusComDefIns_D1_D1_LK3(field, array, sep, iseq, keep)
6380#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6381 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_LK3
6382#endif
6383 use pm_kind, only: LKG => LK3
6384 integer(IK) , intent(out) , allocatable :: field(:,:)
6385 logical(LKG) , intent(in) , contiguous :: array(:)
6386 logical(LKG) , intent(in) , contiguous :: sep(:)
6387 procedure(logical(LK)) :: iseq
6388 logical(LK) , intent(in) , optional :: keep
6389 end subroutine
6390#endif
6391
6392#if LK2_ENABLED
6393 module subroutine setSplitIndCusComDefIns_D1_D1_LK2(field, array, sep, iseq, keep)
6394#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6395 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_LK2
6396#endif
6397 use pm_kind, only: LKG => LK2
6398 integer(IK) , intent(out) , allocatable :: field(:,:)
6399 logical(LKG) , intent(in) , contiguous :: array(:)
6400 logical(LKG) , intent(in) , contiguous :: sep(:)
6401 procedure(logical(LK)) :: iseq
6402 logical(LK) , intent(in) , optional :: keep
6403 end subroutine
6404#endif
6405
6406#if LK1_ENABLED
6407 module subroutine setSplitIndCusComDefIns_D1_D1_LK1(field, array, sep, iseq, keep)
6408#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6409 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_LK1
6410#endif
6411 use pm_kind, only: LKG => LK1
6412 integer(IK) , intent(out) , allocatable :: field(:,:)
6413 logical(LKG) , intent(in) , contiguous :: array(:)
6414 logical(LKG) , intent(in) , contiguous :: sep(:)
6415 procedure(logical(LK)) :: iseq
6416 logical(LK) , intent(in) , optional :: keep
6417 end subroutine
6418#endif
6419
6420 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6421
6422#if CK5_ENABLED
6423 module subroutine setSplitIndCusComDefIns_D1_D1_CK5(field, array, sep, iseq, keep)
6424#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6425 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_CK5
6426#endif
6427 use pm_kind, only: CKG => CK5
6428 integer(IK) , intent(out) , allocatable :: field(:,:)
6429 complex(CKG) , intent(in) , contiguous :: array(:)
6430 complex(CKG) , intent(in) , contiguous :: sep(:)
6431 procedure(logical(LK)) :: iseq
6432 logical(LK) , intent(in) , optional :: keep
6433 end subroutine
6434#endif
6435
6436#if CK4_ENABLED
6437 module subroutine setSplitIndCusComDefIns_D1_D1_CK4(field, array, sep, iseq, keep)
6438#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6439 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_CK4
6440#endif
6441 use pm_kind, only: CKG => CK4
6442 integer(IK) , intent(out) , allocatable :: field(:,:)
6443 complex(CKG) , intent(in) , contiguous :: array(:)
6444 complex(CKG) , intent(in) , contiguous :: sep(:)
6445 procedure(logical(LK)) :: iseq
6446 logical(LK) , intent(in) , optional :: keep
6447 end subroutine
6448#endif
6449
6450#if CK3_ENABLED
6451 module subroutine setSplitIndCusComDefIns_D1_D1_CK3(field, array, sep, iseq, keep)
6452#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6453 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_CK3
6454#endif
6455 use pm_kind, only: CKG => CK3
6456 integer(IK) , intent(out) , allocatable :: field(:,:)
6457 complex(CKG) , intent(in) , contiguous :: array(:)
6458 complex(CKG) , intent(in) , contiguous :: sep(:)
6459 procedure(logical(LK)) :: iseq
6460 logical(LK) , intent(in) , optional :: keep
6461 end subroutine
6462#endif
6463
6464#if CK2_ENABLED
6465 module subroutine setSplitIndCusComDefIns_D1_D1_CK2(field, array, sep, iseq, keep)
6466#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6467 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_CK2
6468#endif
6469 use pm_kind, only: CKG => CK2
6470 integer(IK) , intent(out) , allocatable :: field(:,:)
6471 complex(CKG) , intent(in) , contiguous :: array(:)
6472 complex(CKG) , intent(in) , contiguous :: sep(:)
6473 procedure(logical(LK)) :: iseq
6474 logical(LK) , intent(in) , optional :: keep
6475 end subroutine
6476#endif
6477
6478#if CK1_ENABLED
6479 module subroutine setSplitIndCusComDefIns_D1_D1_CK1(field, array, sep, iseq, keep)
6480#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6481 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_CK1
6482#endif
6483 use pm_kind, only: CKG => CK1
6484 integer(IK) , intent(out) , allocatable :: field(:,:)
6485 complex(CKG) , intent(in) , contiguous :: array(:)
6486 complex(CKG) , intent(in) , contiguous :: sep(:)
6487 procedure(logical(LK)) :: iseq
6488 logical(LK) , intent(in) , optional :: keep
6489 end subroutine
6490#endif
6491
6492 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6493
6494#if RK5_ENABLED
6495 module subroutine setSplitIndCusComDefIns_D1_D1_RK5(field, array, sep, iseq, keep)
6496#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6497 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_RK5
6498#endif
6499 use pm_kind, only: RKG => RK5
6500 integer(IK) , intent(out) , allocatable :: field(:,:)
6501 real(RKG) , intent(in) , contiguous :: array(:)
6502 real(RKG) , intent(in) , contiguous :: sep(:)
6503 procedure(logical(LK)) :: iseq
6504 logical(LK) , intent(in) , optional :: keep
6505 end subroutine
6506#endif
6507
6508#if RK4_ENABLED
6509 module subroutine setSplitIndCusComDefIns_D1_D1_RK4(field, array, sep, iseq, keep)
6510#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6511 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_RK4
6512#endif
6513 use pm_kind, only: RKG => RK4
6514 integer(IK) , intent(out) , allocatable :: field(:,:)
6515 real(RKG) , intent(in) , contiguous :: array(:)
6516 real(RKG) , intent(in) , contiguous :: sep(:)
6517 procedure(logical(LK)) :: iseq
6518 logical(LK) , intent(in) , optional :: keep
6519 end subroutine
6520#endif
6521
6522#if RK3_ENABLED
6523 module subroutine setSplitIndCusComDefIns_D1_D1_RK3(field, array, sep, iseq, keep)
6524#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6525 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_RK3
6526#endif
6527 use pm_kind, only: RKG => RK3
6528 integer(IK) , intent(out) , allocatable :: field(:,:)
6529 real(RKG) , intent(in) , contiguous :: array(:)
6530 real(RKG) , intent(in) , contiguous :: sep(:)
6531 procedure(logical(LK)) :: iseq
6532 logical(LK) , intent(in) , optional :: keep
6533 end subroutine
6534#endif
6535
6536#if RK2_ENABLED
6537 module subroutine setSplitIndCusComDefIns_D1_D1_RK2(field, array, sep, iseq, keep)
6538#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6539 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_RK2
6540#endif
6541 use pm_kind, only: RKG => RK2
6542 integer(IK) , intent(out) , allocatable :: field(:,:)
6543 real(RKG) , intent(in) , contiguous :: array(:)
6544 real(RKG) , intent(in) , contiguous :: sep(:)
6545 procedure(logical(LK)) :: iseq
6546 logical(LK) , intent(in) , optional :: keep
6547 end subroutine
6548#endif
6549
6550#if RK1_ENABLED
6551 module subroutine setSplitIndCusComDefIns_D1_D1_RK1(field, array, sep, iseq, keep)
6552#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6553 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComDefIns_D1_D1_RK1
6554#endif
6555 use pm_kind, only: RKG => RK1
6556 integer(IK) , intent(out) , allocatable :: field(:,:)
6557 real(RKG) , intent(in) , contiguous :: array(:)
6558 real(RKG) , intent(in) , contiguous :: sep(:)
6559 procedure(logical(LK)) :: iseq
6560 logical(LK) , intent(in) , optional :: keep
6561 end subroutine
6562#endif
6563
6564 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6565
6566 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6567 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6568 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6569
6570 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6571
6572#if SK5_ENABLED
6573 PURE module subroutine setSplitIndDefComCusIns_D1_D1_SK5(field, array, sep, instance, sorted, unique, keep)
6574#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6575 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_SK5
6576#endif
6577 use pm_kind, only: SKG => SK5
6578 integer(IK) , intent(out) , allocatable :: field(:,:)
6579 character(*,SKG) , intent(in) , contiguous :: array(:)
6580 character(*,SKG) , intent(in) , contiguous :: sep(:)
6581 integer(IK) , intent(in) , contiguous :: instance(:)
6582 logical(LK) , intent(in) , optional :: sorted
6583 logical(LK) , intent(in) , optional :: unique
6584 logical(LK) , intent(in) , optional :: keep
6585 end subroutine
6586#endif
6587
6588#if SK4_ENABLED
6589 PURE module subroutine setSplitIndDefComCusIns_D1_D1_SK4(field, array, sep, instance, sorted, unique, keep)
6590#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6591 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_SK4
6592#endif
6593 use pm_kind, only: SKG => SK4
6594 integer(IK) , intent(out) , allocatable :: field(:,:)
6595 character(*,SKG) , intent(in) , contiguous :: array(:)
6596 character(*,SKG) , intent(in) , contiguous :: sep(:)
6597 integer(IK) , intent(in) , contiguous :: instance(:)
6598 logical(LK) , intent(in) , optional :: sorted
6599 logical(LK) , intent(in) , optional :: unique
6600 logical(LK) , intent(in) , optional :: keep
6601 end subroutine
6602#endif
6603
6604#if SK3_ENABLED
6605 PURE module subroutine setSplitIndDefComCusIns_D1_D1_SK3(field, array, sep, instance, sorted, unique, keep)
6606#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6607 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_SK3
6608#endif
6609 use pm_kind, only: SKG => SK3
6610 integer(IK) , intent(out) , allocatable :: field(:,:)
6611 character(*,SKG) , intent(in) , contiguous :: array(:)
6612 character(*,SKG) , intent(in) , contiguous :: sep(:)
6613 integer(IK) , intent(in) , contiguous :: instance(:)
6614 logical(LK) , intent(in) , optional :: sorted
6615 logical(LK) , intent(in) , optional :: unique
6616 logical(LK) , intent(in) , optional :: keep
6617 end subroutine
6618#endif
6619
6620#if SK2_ENABLED
6621 PURE module subroutine setSplitIndDefComCusIns_D1_D1_SK2(field, array, sep, instance, sorted, unique, keep)
6622#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6623 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_SK2
6624#endif
6625 use pm_kind, only: SKG => SK2
6626 integer(IK) , intent(out) , allocatable :: field(:,:)
6627 character(*,SKG) , intent(in) , contiguous :: array(:)
6628 character(*,SKG) , intent(in) , contiguous :: sep(:)
6629 integer(IK) , intent(in) , contiguous :: instance(:)
6630 logical(LK) , intent(in) , optional :: sorted
6631 logical(LK) , intent(in) , optional :: unique
6632 logical(LK) , intent(in) , optional :: keep
6633 end subroutine
6634#endif
6635
6636#if SK1_ENABLED
6637 PURE module subroutine setSplitIndDefComCusIns_D1_D1_SK1(field, array, sep, instance, sorted, unique, keep)
6638#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6639 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_SK1
6640#endif
6641 use pm_kind, only: SKG => SK1
6642 integer(IK) , intent(out) , allocatable :: field(:,:)
6643 character(*,SKG) , intent(in) , contiguous :: array(:)
6644 character(*,SKG) , intent(in) , contiguous :: sep(:)
6645 integer(IK) , intent(in) , contiguous :: instance(:)
6646 logical(LK) , intent(in) , optional :: sorted
6647 logical(LK) , intent(in) , optional :: unique
6648 logical(LK) , intent(in) , optional :: keep
6649 end subroutine
6650#endif
6651
6652 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6653
6654#if IK5_ENABLED
6655 PURE module subroutine setSplitIndDefComCusIns_D1_D1_IK5(field, array, sep, instance, sorted, unique, keep)
6656#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6657 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_IK5
6658#endif
6659 use pm_kind, only: IKG => IK5
6660 integer(IK) , intent(out) , allocatable :: field(:,:)
6661 integer(IKG) , intent(in) , contiguous :: array(:)
6662 integer(IKG) , intent(in) , contiguous :: sep(:)
6663 integer(IK) , intent(in) , contiguous :: instance(:)
6664 logical(LK) , intent(in) , optional :: sorted
6665 logical(LK) , intent(in) , optional :: unique
6666 logical(LK) , intent(in) , optional :: keep
6667 end subroutine
6668#endif
6669
6670#if IK4_ENABLED
6671 PURE module subroutine setSplitIndDefComCusIns_D1_D1_IK4(field, array, sep, instance, sorted, unique, keep)
6672#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6673 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_IK4
6674#endif
6675 use pm_kind, only: IKG => IK4
6676 integer(IK) , intent(out) , allocatable :: field(:,:)
6677 integer(IKG) , intent(in) , contiguous :: array(:)
6678 integer(IKG) , intent(in) , contiguous :: sep(:)
6679 integer(IK) , intent(in) , contiguous :: instance(:)
6680 logical(LK) , intent(in) , optional :: sorted
6681 logical(LK) , intent(in) , optional :: unique
6682 logical(LK) , intent(in) , optional :: keep
6683 end subroutine
6684#endif
6685
6686#if IK3_ENABLED
6687 PURE module subroutine setSplitIndDefComCusIns_D1_D1_IK3(field, array, sep, instance, sorted, unique, keep)
6688#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6689 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_IK3
6690#endif
6691 use pm_kind, only: IKG => IK3
6692 integer(IK) , intent(out) , allocatable :: field(:,:)
6693 integer(IKG) , intent(in) , contiguous :: array(:)
6694 integer(IKG) , intent(in) , contiguous :: sep(:)
6695 integer(IK) , intent(in) , contiguous :: instance(:)
6696 logical(LK) , intent(in) , optional :: sorted
6697 logical(LK) , intent(in) , optional :: unique
6698 logical(LK) , intent(in) , optional :: keep
6699 end subroutine
6700#endif
6701
6702#if IK2_ENABLED
6703 PURE module subroutine setSplitIndDefComCusIns_D1_D1_IK2(field, array, sep, instance, sorted, unique, keep)
6704#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6705 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_IK2
6706#endif
6707 use pm_kind, only: IKG => IK2
6708 integer(IK) , intent(out) , allocatable :: field(:,:)
6709 integer(IKG) , intent(in) , contiguous :: array(:)
6710 integer(IKG) , intent(in) , contiguous :: sep(:)
6711 integer(IK) , intent(in) , contiguous :: instance(:)
6712 logical(LK) , intent(in) , optional :: sorted
6713 logical(LK) , intent(in) , optional :: unique
6714 logical(LK) , intent(in) , optional :: keep
6715 end subroutine
6716#endif
6717
6718#if IK1_ENABLED
6719 PURE module subroutine setSplitIndDefComCusIns_D1_D1_IK1(field, array, sep, instance, sorted, unique, keep)
6720#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6721 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_IK1
6722#endif
6723 use pm_kind, only: IKG => IK1
6724 integer(IK) , intent(out) , allocatable :: field(:,:)
6725 integer(IKG) , intent(in) , contiguous :: array(:)
6726 integer(IKG) , intent(in) , contiguous :: sep(:)
6727 integer(IK) , intent(in) , contiguous :: instance(:)
6728 logical(LK) , intent(in) , optional :: sorted
6729 logical(LK) , intent(in) , optional :: unique
6730 logical(LK) , intent(in) , optional :: keep
6731 end subroutine
6732#endif
6733
6734 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6735
6736#if LK5_ENABLED
6737 PURE module subroutine setSplitIndDefComCusIns_D1_D1_LK5(field, array, sep, instance, sorted, unique, keep)
6738#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6739 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_LK5
6740#endif
6741 use pm_kind, only: LKG => LK5
6742 integer(IK) , intent(out) , allocatable :: field(:,:)
6743 logical(LKG) , intent(in) , contiguous :: array(:)
6744 logical(LKG) , intent(in) , contiguous :: sep(:)
6745 integer(IK) , intent(in) , contiguous :: instance(:)
6746 logical(LK) , intent(in) , optional :: sorted
6747 logical(LK) , intent(in) , optional :: unique
6748 logical(LK) , intent(in) , optional :: keep
6749 end subroutine
6750#endif
6751
6752#if LK4_ENABLED
6753 PURE module subroutine setSplitIndDefComCusIns_D1_D1_LK4(field, array, sep, instance, sorted, unique, keep)
6754#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6755 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_LK4
6756#endif
6757 use pm_kind, only: LKG => LK4
6758 integer(IK) , intent(out) , allocatable :: field(:,:)
6759 logical(LKG) , intent(in) , contiguous :: array(:)
6760 logical(LKG) , intent(in) , contiguous :: sep(:)
6761 integer(IK) , intent(in) , contiguous :: instance(:)
6762 logical(LK) , intent(in) , optional :: sorted
6763 logical(LK) , intent(in) , optional :: unique
6764 logical(LK) , intent(in) , optional :: keep
6765 end subroutine
6766#endif
6767
6768#if LK3_ENABLED
6769 PURE module subroutine setSplitIndDefComCusIns_D1_D1_LK3(field, array, sep, instance, sorted, unique, keep)
6770#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6771 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_LK3
6772#endif
6773 use pm_kind, only: LKG => LK3
6774 integer(IK) , intent(out) , allocatable :: field(:,:)
6775 logical(LKG) , intent(in) , contiguous :: array(:)
6776 logical(LKG) , intent(in) , contiguous :: sep(:)
6777 integer(IK) , intent(in) , contiguous :: instance(:)
6778 logical(LK) , intent(in) , optional :: sorted
6779 logical(LK) , intent(in) , optional :: unique
6780 logical(LK) , intent(in) , optional :: keep
6781 end subroutine
6782#endif
6783
6784#if LK2_ENABLED
6785 PURE module subroutine setSplitIndDefComCusIns_D1_D1_LK2(field, array, sep, instance, sorted, unique, keep)
6786#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6787 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_LK2
6788#endif
6789 use pm_kind, only: LKG => LK2
6790 integer(IK) , intent(out) , allocatable :: field(:,:)
6791 logical(LKG) , intent(in) , contiguous :: array(:)
6792 logical(LKG) , intent(in) , contiguous :: sep(:)
6793 integer(IK) , intent(in) , contiguous :: instance(:)
6794 logical(LK) , intent(in) , optional :: sorted
6795 logical(LK) , intent(in) , optional :: unique
6796 logical(LK) , intent(in) , optional :: keep
6797 end subroutine
6798#endif
6799
6800#if LK1_ENABLED
6801 PURE module subroutine setSplitIndDefComCusIns_D1_D1_LK1(field, array, sep, instance, sorted, unique, keep)
6802#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6803 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_LK1
6804#endif
6805 use pm_kind, only: LKG => LK1
6806 integer(IK) , intent(out) , allocatable :: field(:,:)
6807 logical(LKG) , intent(in) , contiguous :: array(:)
6808 logical(LKG) , intent(in) , contiguous :: sep(:)
6809 integer(IK) , intent(in) , contiguous :: instance(:)
6810 logical(LK) , intent(in) , optional :: sorted
6811 logical(LK) , intent(in) , optional :: unique
6812 logical(LK) , intent(in) , optional :: keep
6813 end subroutine
6814#endif
6815
6816 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6817
6818#if CK5_ENABLED
6819 PURE module subroutine setSplitIndDefComCusIns_D1_D1_CK5(field, array, sep, instance, sorted, unique, keep)
6820#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6821 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_CK5
6822#endif
6823 use pm_kind, only: CKG => CK5
6824 integer(IK) , intent(out) , allocatable :: field(:,:)
6825 complex(CKG) , intent(in) , contiguous :: array(:)
6826 complex(CKG) , intent(in) , contiguous :: sep(:)
6827 integer(IK) , intent(in) , contiguous :: instance(:)
6828 logical(LK) , intent(in) , optional :: sorted
6829 logical(LK) , intent(in) , optional :: unique
6830 logical(LK) , intent(in) , optional :: keep
6831 end subroutine
6832#endif
6833
6834#if CK4_ENABLED
6835 PURE module subroutine setSplitIndDefComCusIns_D1_D1_CK4(field, array, sep, instance, sorted, unique, keep)
6836#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6837 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_CK4
6838#endif
6839 use pm_kind, only: CKG => CK4
6840 integer(IK) , intent(out) , allocatable :: field(:,:)
6841 complex(CKG) , intent(in) , contiguous :: array(:)
6842 complex(CKG) , intent(in) , contiguous :: sep(:)
6843 integer(IK) , intent(in) , contiguous :: instance(:)
6844 logical(LK) , intent(in) , optional :: sorted
6845 logical(LK) , intent(in) , optional :: unique
6846 logical(LK) , intent(in) , optional :: keep
6847 end subroutine
6848#endif
6849
6850#if CK3_ENABLED
6851 PURE module subroutine setSplitIndDefComCusIns_D1_D1_CK3(field, array, sep, instance, sorted, unique, keep)
6852#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6853 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_CK3
6854#endif
6855 use pm_kind, only: CKG => CK3
6856 integer(IK) , intent(out) , allocatable :: field(:,:)
6857 complex(CKG) , intent(in) , contiguous :: array(:)
6858 complex(CKG) , intent(in) , contiguous :: sep(:)
6859 integer(IK) , intent(in) , contiguous :: instance(:)
6860 logical(LK) , intent(in) , optional :: sorted
6861 logical(LK) , intent(in) , optional :: unique
6862 logical(LK) , intent(in) , optional :: keep
6863 end subroutine
6864#endif
6865
6866#if CK2_ENABLED
6867 PURE module subroutine setSplitIndDefComCusIns_D1_D1_CK2(field, array, sep, instance, sorted, unique, keep)
6868#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6869 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_CK2
6870#endif
6871 use pm_kind, only: CKG => CK2
6872 integer(IK) , intent(out) , allocatable :: field(:,:)
6873 complex(CKG) , intent(in) , contiguous :: array(:)
6874 complex(CKG) , intent(in) , contiguous :: sep(:)
6875 integer(IK) , intent(in) , contiguous :: instance(:)
6876 logical(LK) , intent(in) , optional :: sorted
6877 logical(LK) , intent(in) , optional :: unique
6878 logical(LK) , intent(in) , optional :: keep
6879 end subroutine
6880#endif
6881
6882#if CK1_ENABLED
6883 PURE module subroutine setSplitIndDefComCusIns_D1_D1_CK1(field, array, sep, instance, sorted, unique, keep)
6884#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6885 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_CK1
6886#endif
6887 use pm_kind, only: CKG => CK1
6888 integer(IK) , intent(out) , allocatable :: field(:,:)
6889 complex(CKG) , intent(in) , contiguous :: array(:)
6890 complex(CKG) , intent(in) , contiguous :: sep(:)
6891 integer(IK) , intent(in) , contiguous :: instance(:)
6892 logical(LK) , intent(in) , optional :: sorted
6893 logical(LK) , intent(in) , optional :: unique
6894 logical(LK) , intent(in) , optional :: keep
6895 end subroutine
6896#endif
6897
6898 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6899
6900#if RK5_ENABLED
6901 PURE module subroutine setSplitIndDefComCusIns_D1_D1_RK5(field, array, sep, instance, sorted, unique, keep)
6902#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6903 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_RK5
6904#endif
6905 use pm_kind, only: RKG => RK5
6906 integer(IK) , intent(out) , allocatable :: field(:,:)
6907 real(RKG) , intent(in) , contiguous :: array(:)
6908 real(RKG) , intent(in) , contiguous :: sep(:)
6909 integer(IK) , intent(in) , contiguous :: instance(:)
6910 logical(LK) , intent(in) , optional :: sorted
6911 logical(LK) , intent(in) , optional :: unique
6912 logical(LK) , intent(in) , optional :: keep
6913 end subroutine
6914#endif
6915
6916#if RK4_ENABLED
6917 PURE module subroutine setSplitIndDefComCusIns_D1_D1_RK4(field, array, sep, instance, sorted, unique, keep)
6918#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6919 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_RK4
6920#endif
6921 use pm_kind, only: RKG => RK4
6922 integer(IK) , intent(out) , allocatable :: field(:,:)
6923 real(RKG) , intent(in) , contiguous :: array(:)
6924 real(RKG) , intent(in) , contiguous :: sep(:)
6925 integer(IK) , intent(in) , contiguous :: instance(:)
6926 logical(LK) , intent(in) , optional :: sorted
6927 logical(LK) , intent(in) , optional :: unique
6928 logical(LK) , intent(in) , optional :: keep
6929 end subroutine
6930#endif
6931
6932#if RK3_ENABLED
6933 PURE module subroutine setSplitIndDefComCusIns_D1_D1_RK3(field, array, sep, instance, sorted, unique, keep)
6934#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6935 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_RK3
6936#endif
6937 use pm_kind, only: RKG => RK3
6938 integer(IK) , intent(out) , allocatable :: field(:,:)
6939 real(RKG) , intent(in) , contiguous :: array(:)
6940 real(RKG) , intent(in) , contiguous :: sep(:)
6941 integer(IK) , intent(in) , contiguous :: instance(:)
6942 logical(LK) , intent(in) , optional :: sorted
6943 logical(LK) , intent(in) , optional :: unique
6944 logical(LK) , intent(in) , optional :: keep
6945 end subroutine
6946#endif
6947
6948#if RK2_ENABLED
6949 PURE module subroutine setSplitIndDefComCusIns_D1_D1_RK2(field, array, sep, instance, sorted, unique, keep)
6950#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6951 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_RK2
6952#endif
6953 use pm_kind, only: RKG => RK2
6954 integer(IK) , intent(out) , allocatable :: field(:,:)
6955 real(RKG) , intent(in) , contiguous :: array(:)
6956 real(RKG) , intent(in) , contiguous :: sep(:)
6957 integer(IK) , intent(in) , contiguous :: instance(:)
6958 logical(LK) , intent(in) , optional :: sorted
6959 logical(LK) , intent(in) , optional :: unique
6960 logical(LK) , intent(in) , optional :: keep
6961 end subroutine
6962#endif
6963
6964#if RK1_ENABLED
6965 PURE module subroutine setSplitIndDefComCusIns_D1_D1_RK1(field, array, sep, instance, sorted, unique, keep)
6966#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6967 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndDefComCusIns_D1_D1_RK1
6968#endif
6969 use pm_kind, only: RKG => RK1
6970 integer(IK) , intent(out) , allocatable :: field(:,:)
6971 real(RKG) , intent(in) , contiguous :: array(:)
6972 real(RKG) , intent(in) , contiguous :: sep(:)
6973 integer(IK) , intent(in) , contiguous :: instance(:)
6974 logical(LK) , intent(in) , optional :: sorted
6975 logical(LK) , intent(in) , optional :: unique
6976 logical(LK) , intent(in) , optional :: keep
6977 end subroutine
6978#endif
6979
6980 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6981
6982 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6983 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6984 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6985
6986 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6987
6988#if SK5_ENABLED
6989 module subroutine setSplitIndCusComCusIns_D1_D1_SK5(field, array, sep, iseq, instance, sorted, unique, keep)
6990#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
6991 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_SK5
6992#endif
6993 use pm_kind, only: SKG => SK5
6994 integer(IK) , intent(out) , allocatable :: field(:,:)
6995 character(*,SKG) , intent(in) , contiguous :: array(:)
6996 character(*,SKG) , intent(in) , contiguous :: sep(:)
6997 procedure(logical(LK)) :: iseq
6998 integer(IK) , intent(in) , contiguous :: instance(:)
6999 logical(LK) , intent(in) , optional :: sorted
7000 logical(LK) , intent(in) , optional :: unique
7001 logical(LK) , intent(in) , optional :: keep
7002 end subroutine
7003#endif
7004
7005#if SK4_ENABLED
7006 module subroutine setSplitIndCusComCusIns_D1_D1_SK4(field, array, sep, iseq, instance, sorted, unique, keep)
7007#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7008 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_SK4
7009#endif
7010 use pm_kind, only: SKG => SK4
7011 integer(IK) , intent(out) , allocatable :: field(:,:)
7012 character(*,SKG) , intent(in) , contiguous :: array(:)
7013 character(*,SKG) , intent(in) , contiguous :: sep(:)
7014 procedure(logical(LK)) :: iseq
7015 integer(IK) , intent(in) , contiguous :: instance(:)
7016 logical(LK) , intent(in) , optional :: sorted
7017 logical(LK) , intent(in) , optional :: unique
7018 logical(LK) , intent(in) , optional :: keep
7019 end subroutine
7020#endif
7021
7022#if SK3_ENABLED
7023 module subroutine setSplitIndCusComCusIns_D1_D1_SK3(field, array, sep, iseq, instance, sorted, unique, keep)
7024#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7025 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_SK3
7026#endif
7027 use pm_kind, only: SKG => SK3
7028 integer(IK) , intent(out) , allocatable :: field(:,:)
7029 character(*,SKG) , intent(in) , contiguous :: array(:)
7030 character(*,SKG) , intent(in) , contiguous :: sep(:)
7031 procedure(logical(LK)) :: iseq
7032 integer(IK) , intent(in) , contiguous :: instance(:)
7033 logical(LK) , intent(in) , optional :: sorted
7034 logical(LK) , intent(in) , optional :: unique
7035 logical(LK) , intent(in) , optional :: keep
7036 end subroutine
7037#endif
7038
7039#if SK2_ENABLED
7040 module subroutine setSplitIndCusComCusIns_D1_D1_SK2(field, array, sep, iseq, instance, sorted, unique, keep)
7041#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7042 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_SK2
7043#endif
7044 use pm_kind, only: SKG => SK2
7045 integer(IK) , intent(out) , allocatable :: field(:,:)
7046 character(*,SKG) , intent(in) , contiguous :: array(:)
7047 character(*,SKG) , intent(in) , contiguous :: sep(:)
7048 procedure(logical(LK)) :: iseq
7049 integer(IK) , intent(in) , contiguous :: instance(:)
7050 logical(LK) , intent(in) , optional :: sorted
7051 logical(LK) , intent(in) , optional :: unique
7052 logical(LK) , intent(in) , optional :: keep
7053 end subroutine
7054#endif
7055
7056#if SK1_ENABLED
7057 module subroutine setSplitIndCusComCusIns_D1_D1_SK1(field, array, sep, iseq, instance, sorted, unique, keep)
7058#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7059 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_SK1
7060#endif
7061 use pm_kind, only: SKG => SK1
7062 integer(IK) , intent(out) , allocatable :: field(:,:)
7063 character(*,SKG) , intent(in) , contiguous :: array(:)
7064 character(*,SKG) , intent(in) , contiguous :: sep(:)
7065 procedure(logical(LK)) :: iseq
7066 integer(IK) , intent(in) , contiguous :: instance(:)
7067 logical(LK) , intent(in) , optional :: sorted
7068 logical(LK) , intent(in) , optional :: unique
7069 logical(LK) , intent(in) , optional :: keep
7070 end subroutine
7071#endif
7072
7073 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7074
7075#if IK5_ENABLED
7076 module subroutine setSplitIndCusComCusIns_D1_D1_IK5(field, array, sep, iseq, instance, sorted, unique, keep)
7077#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7078 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_IK5
7079#endif
7080 use pm_kind, only: IKG => IK5
7081 integer(IK) , intent(out) , allocatable :: field(:,:)
7082 integer(IKG) , intent(in) , contiguous :: array(:)
7083 integer(IKG) , intent(in) , contiguous :: sep(:)
7084 procedure(logical(LK)) :: iseq
7085 integer(IK) , intent(in) , contiguous :: instance(:)
7086 logical(LK) , intent(in) , optional :: sorted
7087 logical(LK) , intent(in) , optional :: unique
7088 logical(LK) , intent(in) , optional :: keep
7089 end subroutine
7090#endif
7091
7092#if IK4_ENABLED
7093 module subroutine setSplitIndCusComCusIns_D1_D1_IK4(field, array, sep, iseq, instance, sorted, unique, keep)
7094#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7095 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_IK4
7096#endif
7097 use pm_kind, only: IKG => IK4
7098 integer(IK) , intent(out) , allocatable :: field(:,:)
7099 integer(IKG) , intent(in) , contiguous :: array(:)
7100 integer(IKG) , intent(in) , contiguous :: sep(:)
7101 procedure(logical(LK)) :: iseq
7102 integer(IK) , intent(in) , contiguous :: instance(:)
7103 logical(LK) , intent(in) , optional :: sorted
7104 logical(LK) , intent(in) , optional :: unique
7105 logical(LK) , intent(in) , optional :: keep
7106 end subroutine
7107#endif
7108
7109#if IK3_ENABLED
7110 module subroutine setSplitIndCusComCusIns_D1_D1_IK3(field, array, sep, iseq, instance, sorted, unique, keep)
7111#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7112 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_IK3
7113#endif
7114 use pm_kind, only: IKG => IK3
7115 integer(IK) , intent(out) , allocatable :: field(:,:)
7116 integer(IKG) , intent(in) , contiguous :: array(:)
7117 integer(IKG) , intent(in) , contiguous :: sep(:)
7118 procedure(logical(LK)) :: iseq
7119 integer(IK) , intent(in) , contiguous :: instance(:)
7120 logical(LK) , intent(in) , optional :: sorted
7121 logical(LK) , intent(in) , optional :: unique
7122 logical(LK) , intent(in) , optional :: keep
7123 end subroutine
7124#endif
7125
7126#if IK2_ENABLED
7127 module subroutine setSplitIndCusComCusIns_D1_D1_IK2(field, array, sep, iseq, instance, sorted, unique, keep)
7128#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7129 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_IK2
7130#endif
7131 use pm_kind, only: IKG => IK2
7132 integer(IK) , intent(out) , allocatable :: field(:,:)
7133 integer(IKG) , intent(in) , contiguous :: array(:)
7134 integer(IKG) , intent(in) , contiguous :: sep(:)
7135 procedure(logical(LK)) :: iseq
7136 integer(IK) , intent(in) , contiguous :: instance(:)
7137 logical(LK) , intent(in) , optional :: sorted
7138 logical(LK) , intent(in) , optional :: unique
7139 logical(LK) , intent(in) , optional :: keep
7140 end subroutine
7141#endif
7142
7143#if IK1_ENABLED
7144 module subroutine setSplitIndCusComCusIns_D1_D1_IK1(field, array, sep, iseq, instance, sorted, unique, keep)
7145#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7146 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_IK1
7147#endif
7148 use pm_kind, only: IKG => IK1
7149 integer(IK) , intent(out) , allocatable :: field(:,:)
7150 integer(IKG) , intent(in) , contiguous :: array(:)
7151 integer(IKG) , intent(in) , contiguous :: sep(:)
7152 procedure(logical(LK)) :: iseq
7153 integer(IK) , intent(in) , contiguous :: instance(:)
7154 logical(LK) , intent(in) , optional :: sorted
7155 logical(LK) , intent(in) , optional :: unique
7156 logical(LK) , intent(in) , optional :: keep
7157 end subroutine
7158#endif
7159
7160 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7161
7162#if LK5_ENABLED
7163 module subroutine setSplitIndCusComCusIns_D1_D1_LK5(field, array, sep, iseq, instance, sorted, unique, keep)
7164#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7165 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_LK5
7166#endif
7167 use pm_kind, only: LKG => LK5
7168 integer(IK) , intent(out) , allocatable :: field(:,:)
7169 logical(LKG) , intent(in) , contiguous :: array(:)
7170 logical(LKG) , intent(in) , contiguous :: sep(:)
7171 procedure(logical(LK)) :: iseq
7172 integer(IK) , intent(in) , contiguous :: instance(:)
7173 logical(LK) , intent(in) , optional :: sorted
7174 logical(LK) , intent(in) , optional :: unique
7175 logical(LK) , intent(in) , optional :: keep
7176 end subroutine
7177#endif
7178
7179#if LK4_ENABLED
7180 module subroutine setSplitIndCusComCusIns_D1_D1_LK4(field, array, sep, iseq, instance, sorted, unique, keep)
7181#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7182 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_LK4
7183#endif
7184 use pm_kind, only: LKG => LK4
7185 integer(IK) , intent(out) , allocatable :: field(:,:)
7186 logical(LKG) , intent(in) , contiguous :: array(:)
7187 logical(LKG) , intent(in) , contiguous :: sep(:)
7188 procedure(logical(LK)) :: iseq
7189 integer(IK) , intent(in) , contiguous :: instance(:)
7190 logical(LK) , intent(in) , optional :: sorted
7191 logical(LK) , intent(in) , optional :: unique
7192 logical(LK) , intent(in) , optional :: keep
7193 end subroutine
7194#endif
7195
7196#if LK3_ENABLED
7197 module subroutine setSplitIndCusComCusIns_D1_D1_LK3(field, array, sep, iseq, instance, sorted, unique, keep)
7198#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7199 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_LK3
7200#endif
7201 use pm_kind, only: LKG => LK3
7202 integer(IK) , intent(out) , allocatable :: field(:,:)
7203 logical(LKG) , intent(in) , contiguous :: array(:)
7204 logical(LKG) , intent(in) , contiguous :: sep(:)
7205 procedure(logical(LK)) :: iseq
7206 integer(IK) , intent(in) , contiguous :: instance(:)
7207 logical(LK) , intent(in) , optional :: sorted
7208 logical(LK) , intent(in) , optional :: unique
7209 logical(LK) , intent(in) , optional :: keep
7210 end subroutine
7211#endif
7212
7213#if LK2_ENABLED
7214 module subroutine setSplitIndCusComCusIns_D1_D1_LK2(field, array, sep, iseq, instance, sorted, unique, keep)
7215#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7216 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_LK2
7217#endif
7218 use pm_kind, only: LKG => LK2
7219 integer(IK) , intent(out) , allocatable :: field(:,:)
7220 logical(LKG) , intent(in) , contiguous :: array(:)
7221 logical(LKG) , intent(in) , contiguous :: sep(:)
7222 procedure(logical(LK)) :: iseq
7223 integer(IK) , intent(in) , contiguous :: instance(:)
7224 logical(LK) , intent(in) , optional :: sorted
7225 logical(LK) , intent(in) , optional :: unique
7226 logical(LK) , intent(in) , optional :: keep
7227 end subroutine
7228#endif
7229
7230#if LK1_ENABLED
7231 module subroutine setSplitIndCusComCusIns_D1_D1_LK1(field, array, sep, iseq, instance, sorted, unique, keep)
7232#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7233 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_LK1
7234#endif
7235 use pm_kind, only: LKG => LK1
7236 integer(IK) , intent(out) , allocatable :: field(:,:)
7237 logical(LKG) , intent(in) , contiguous :: array(:)
7238 logical(LKG) , intent(in) , contiguous :: sep(:)
7239 procedure(logical(LK)) :: iseq
7240 integer(IK) , intent(in) , contiguous :: instance(:)
7241 logical(LK) , intent(in) , optional :: sorted
7242 logical(LK) , intent(in) , optional :: unique
7243 logical(LK) , intent(in) , optional :: keep
7244 end subroutine
7245#endif
7246
7247 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7248
7249#if CK5_ENABLED
7250 module subroutine setSplitIndCusComCusIns_D1_D1_CK5(field, array, sep, iseq, instance, sorted, unique, keep)
7251#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7252 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_CK5
7253#endif
7254 use pm_kind, only: CKG => CK5
7255 integer(IK) , intent(out) , allocatable :: field(:,:)
7256 complex(CKG) , intent(in) , contiguous :: array(:)
7257 complex(CKG) , intent(in) , contiguous :: sep(:)
7258 procedure(logical(LK)) :: iseq
7259 integer(IK) , intent(in) , contiguous :: instance(:)
7260 logical(LK) , intent(in) , optional :: sorted
7261 logical(LK) , intent(in) , optional :: unique
7262 logical(LK) , intent(in) , optional :: keep
7263 end subroutine
7264#endif
7265
7266#if CK4_ENABLED
7267 module subroutine setSplitIndCusComCusIns_D1_D1_CK4(field, array, sep, iseq, instance, sorted, unique, keep)
7268#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7269 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_CK4
7270#endif
7271 use pm_kind, only: CKG => CK4
7272 integer(IK) , intent(out) , allocatable :: field(:,:)
7273 complex(CKG) , intent(in) , contiguous :: array(:)
7274 complex(CKG) , intent(in) , contiguous :: sep(:)
7275 procedure(logical(LK)) :: iseq
7276 integer(IK) , intent(in) , contiguous :: instance(:)
7277 logical(LK) , intent(in) , optional :: sorted
7278 logical(LK) , intent(in) , optional :: unique
7279 logical(LK) , intent(in) , optional :: keep
7280 end subroutine
7281#endif
7282
7283#if CK3_ENABLED
7284 module subroutine setSplitIndCusComCusIns_D1_D1_CK3(field, array, sep, iseq, instance, sorted, unique, keep)
7285#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7286 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_CK3
7287#endif
7288 use pm_kind, only: CKG => CK3
7289 integer(IK) , intent(out) , allocatable :: field(:,:)
7290 complex(CKG) , intent(in) , contiguous :: array(:)
7291 complex(CKG) , intent(in) , contiguous :: sep(:)
7292 procedure(logical(LK)) :: iseq
7293 integer(IK) , intent(in) , contiguous :: instance(:)
7294 logical(LK) , intent(in) , optional :: sorted
7295 logical(LK) , intent(in) , optional :: unique
7296 logical(LK) , intent(in) , optional :: keep
7297 end subroutine
7298#endif
7299
7300#if CK2_ENABLED
7301 module subroutine setSplitIndCusComCusIns_D1_D1_CK2(field, array, sep, iseq, instance, sorted, unique, keep)
7302#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7303 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_CK2
7304#endif
7305 use pm_kind, only: CKG => CK2
7306 integer(IK) , intent(out) , allocatable :: field(:,:)
7307 complex(CKG) , intent(in) , contiguous :: array(:)
7308 complex(CKG) , intent(in) , contiguous :: sep(:)
7309 procedure(logical(LK)) :: iseq
7310 integer(IK) , intent(in) , contiguous :: instance(:)
7311 logical(LK) , intent(in) , optional :: sorted
7312 logical(LK) , intent(in) , optional :: unique
7313 logical(LK) , intent(in) , optional :: keep
7314 end subroutine
7315#endif
7316
7317#if CK1_ENABLED
7318 module subroutine setSplitIndCusComCusIns_D1_D1_CK1(field, array, sep, iseq, instance, sorted, unique, keep)
7319#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7320 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_CK1
7321#endif
7322 use pm_kind, only: CKG => CK1
7323 integer(IK) , intent(out) , allocatable :: field(:,:)
7324 complex(CKG) , intent(in) , contiguous :: array(:)
7325 complex(CKG) , intent(in) , contiguous :: sep(:)
7326 procedure(logical(LK)) :: iseq
7327 integer(IK) , intent(in) , contiguous :: instance(:)
7328 logical(LK) , intent(in) , optional :: sorted
7329 logical(LK) , intent(in) , optional :: unique
7330 logical(LK) , intent(in) , optional :: keep
7331 end subroutine
7332#endif
7333
7334 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7335
7336#if RK5_ENABLED
7337 module subroutine setSplitIndCusComCusIns_D1_D1_RK5(field, array, sep, iseq, instance, sorted, unique, keep)
7338#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7339 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_RK5
7340#endif
7341 use pm_kind, only: RKG => RK5
7342 integer(IK) , intent(out) , allocatable :: field(:,:)
7343 real(RKG) , intent(in) , contiguous :: array(:)
7344 real(RKG) , intent(in) , contiguous :: sep(:)
7345 procedure(logical(LK)) :: iseq
7346 integer(IK) , intent(in) , contiguous :: instance(:)
7347 logical(LK) , intent(in) , optional :: sorted
7348 logical(LK) , intent(in) , optional :: unique
7349 logical(LK) , intent(in) , optional :: keep
7350 end subroutine
7351#endif
7352
7353#if RK4_ENABLED
7354 module subroutine setSplitIndCusComCusIns_D1_D1_RK4(field, array, sep, iseq, instance, sorted, unique, keep)
7355#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7356 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_RK4
7357#endif
7358 use pm_kind, only: RKG => RK4
7359 integer(IK) , intent(out) , allocatable :: field(:,:)
7360 real(RKG) , intent(in) , contiguous :: array(:)
7361 real(RKG) , intent(in) , contiguous :: sep(:)
7362 procedure(logical(LK)) :: iseq
7363 integer(IK) , intent(in) , contiguous :: instance(:)
7364 logical(LK) , intent(in) , optional :: sorted
7365 logical(LK) , intent(in) , optional :: unique
7366 logical(LK) , intent(in) , optional :: keep
7367 end subroutine
7368#endif
7369
7370#if RK3_ENABLED
7371 module subroutine setSplitIndCusComCusIns_D1_D1_RK3(field, array, sep, iseq, instance, sorted, unique, keep)
7372#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7373 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_RK3
7374#endif
7375 use pm_kind, only: RKG => RK3
7376 integer(IK) , intent(out) , allocatable :: field(:,:)
7377 real(RKG) , intent(in) , contiguous :: array(:)
7378 real(RKG) , intent(in) , contiguous :: sep(:)
7379 procedure(logical(LK)) :: iseq
7380 integer(IK) , intent(in) , contiguous :: instance(:)
7381 logical(LK) , intent(in) , optional :: sorted
7382 logical(LK) , intent(in) , optional :: unique
7383 logical(LK) , intent(in) , optional :: keep
7384 end subroutine
7385#endif
7386
7387#if RK2_ENABLED
7388 module subroutine setSplitIndCusComCusIns_D1_D1_RK2(field, array, sep, iseq, instance, sorted, unique, keep)
7389#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7390 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_RK2
7391#endif
7392 use pm_kind, only: RKG => RK2
7393 integer(IK) , intent(out) , allocatable :: field(:,:)
7394 real(RKG) , intent(in) , contiguous :: array(:)
7395 real(RKG) , intent(in) , contiguous :: sep(:)
7396 procedure(logical(LK)) :: iseq
7397 integer(IK) , intent(in) , contiguous :: instance(:)
7398 logical(LK) , intent(in) , optional :: sorted
7399 logical(LK) , intent(in) , optional :: unique
7400 logical(LK) , intent(in) , optional :: keep
7401 end subroutine
7402#endif
7403
7404#if RK1_ENABLED
7405 module subroutine setSplitIndCusComCusIns_D1_D1_RK1(field, array, sep, iseq, instance, sorted, unique, keep)
7406#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7407 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitIndCusComCusIns_D1_D1_RK1
7408#endif
7409 use pm_kind, only: RKG => RK1
7410 integer(IK) , intent(out) , allocatable :: field(:,:)
7411 real(RKG) , intent(in) , contiguous :: array(:)
7412 real(RKG) , intent(in) , contiguous :: sep(:)
7413 procedure(logical(LK)) :: iseq
7414 integer(IK) , intent(in) , contiguous :: instance(:)
7415 logical(LK) , intent(in) , optional :: sorted
7416 logical(LK) , intent(in) , optional :: unique
7417 logical(LK) , intent(in) , optional :: keep
7418 end subroutine
7419#endif
7420
7421 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7422
7423 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7424 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7425 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7426
7427 end interface
7428
7429 ! PDT container
7430
7431#if PDT_ENABLED
7432 interface setSplit
7433
7434 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7435 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7436 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7437
7438 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7439
7440#if SK5_ENABLED
7441 PURE module subroutine setSplitConDefComDefIns_D0_D0_SK5(field, array, sep, keep)
7442#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7443 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D0_D0_SK5
7444#endif
7445 use pm_kind, only: SKG => SK5
7446 use pm_container, only: css_pdt
7447 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
7448 character(*,SKG) , intent(in) :: array
7449 character(*,SKG) , intent(in) :: sep
7450 logical(LK) , intent(in) , optional :: keep
7451 end subroutine
7452#endif
7453
7454#if SK4_ENABLED
7455 PURE module subroutine setSplitConDefComDefIns_D0_D0_SK4(field, array, sep, keep)
7456#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7457 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D0_D0_SK4
7458#endif
7459 use pm_kind, only: SKG => SK4
7460 use pm_container, only: css_pdt
7461 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
7462 character(*,SKG) , intent(in) :: array
7463 character(*,SKG) , intent(in) :: sep
7464 logical(LK) , intent(in) , optional :: keep
7465 end subroutine
7466#endif
7467
7468#if SK3_ENABLED
7469 PURE module subroutine setSplitConDefComDefIns_D0_D0_SK3(field, array, sep, keep)
7470#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7471 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D0_D0_SK3
7472#endif
7473 use pm_kind, only: SKG => SK3
7474 use pm_container, only: css_pdt
7475 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
7476 character(*,SKG) , intent(in) :: array
7477 character(*,SKG) , intent(in) :: sep
7478 logical(LK) , intent(in) , optional :: keep
7479 end subroutine
7480#endif
7481
7482#if SK2_ENABLED
7483 PURE module subroutine setSplitConDefComDefIns_D0_D0_SK2(field, array, sep, keep)
7484#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7485 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D0_D0_SK2
7486#endif
7487 use pm_kind, only: SKG => SK2
7488 use pm_container, only: css_pdt
7489 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
7490 character(*,SKG) , intent(in) :: array
7491 character(*,SKG) , intent(in) :: sep
7492 logical(LK) , intent(in) , optional :: keep
7493 end subroutine
7494#endif
7495
7496#if SK1_ENABLED
7497 PURE module subroutine setSplitConDefComDefIns_D0_D0_SK1(field, array, sep, keep)
7498#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7499 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D0_D0_SK1
7500#endif
7501 use pm_kind, only: SKG => SK1
7502 use pm_container, only: css_pdt
7503 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
7504 character(*,SKG) , intent(in) :: array
7505 character(*,SKG) , intent(in) :: sep
7506 logical(LK) , intent(in) , optional :: keep
7507 end subroutine
7508#endif
7509
7510 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7511
7512#if SK5_ENABLED
7513 PURE module subroutine setSplitConDefComDefIns_D1_D0_SK5(field, array, sep, keep)
7514#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7515 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_SK5
7516#endif
7517 use pm_kind, only: SKG => SK5
7518 use pm_container, only: cvs_pdt
7519 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
7520 character(*,SKG) , intent(in) , contiguous :: array(:)
7521 character(*,SKG) , intent(in) :: sep
7522 logical(LK) , intent(in) , optional :: keep
7523 end subroutine
7524#endif
7525
7526#if SK4_ENABLED
7527 PURE module subroutine setSplitConDefComDefIns_D1_D0_SK4(field, array, sep, keep)
7528#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7529 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_SK4
7530#endif
7531 use pm_kind, only: SKG => SK4
7532 use pm_container, only: cvs_pdt
7533 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
7534 character(*,SKG) , intent(in) , contiguous :: array(:)
7535 character(*,SKG) , intent(in) :: sep
7536 logical(LK) , intent(in) , optional :: keep
7537 end subroutine
7538#endif
7539
7540#if SK3_ENABLED
7541 PURE module subroutine setSplitConDefComDefIns_D1_D0_SK3(field, array, sep, keep)
7542#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7543 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_SK3
7544#endif
7545 use pm_kind, only: SKG => SK3
7546 use pm_container, only: cvs_pdt
7547 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
7548 character(*,SKG) , intent(in) , contiguous :: array(:)
7549 character(*,SKG) , intent(in) :: sep
7550 logical(LK) , intent(in) , optional :: keep
7551 end subroutine
7552#endif
7553
7554#if SK2_ENABLED
7555 PURE module subroutine setSplitConDefComDefIns_D1_D0_SK2(field, array, sep, keep)
7556#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7557 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_SK2
7558#endif
7559 use pm_kind, only: SKG => SK2
7560 use pm_container, only: cvs_pdt
7561 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
7562 character(*,SKG) , intent(in) , contiguous :: array(:)
7563 character(*,SKG) , intent(in) :: sep
7564 logical(LK) , intent(in) , optional :: keep
7565 end subroutine
7566#endif
7567
7568#if SK1_ENABLED
7569 PURE module subroutine setSplitConDefComDefIns_D1_D0_SK1(field, array, sep, keep)
7570#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7571 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_SK1
7572#endif
7573 use pm_kind, only: SKG => SK1
7574 use pm_container, only: cvs_pdt
7575 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
7576 character(*,SKG) , intent(in) , contiguous :: array(:)
7577 character(*,SKG) , intent(in) :: sep
7578 logical(LK) , intent(in) , optional :: keep
7579 end subroutine
7580#endif
7581
7582 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7583
7584#if IK5_ENABLED
7585 PURE module subroutine setSplitConDefComDefIns_D1_D0_IK5(field, array, sep, keep)
7586#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7587 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_IK5
7588#endif
7589 use pm_kind, only: IKG => IK5
7590 use pm_container, only: cvi_pdt
7591 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
7592 integer(IKG) , intent(in) , contiguous :: array(:)
7593 integer(IKG) , intent(in) :: sep
7594 logical(LK) , intent(in) , optional :: keep
7595 end subroutine
7596#endif
7597
7598#if IK4_ENABLED
7599 PURE module subroutine setSplitConDefComDefIns_D1_D0_IK4(field, array, sep, keep)
7600#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7601 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_IK4
7602#endif
7603 use pm_kind, only: IKG => IK4
7604 use pm_container, only: cvi_pdt
7605 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
7606 integer(IKG) , intent(in) , contiguous :: array(:)
7607 integer(IKG) , intent(in) :: sep
7608 logical(LK) , intent(in) , optional :: keep
7609 end subroutine
7610#endif
7611
7612#if IK3_ENABLED
7613 PURE module subroutine setSplitConDefComDefIns_D1_D0_IK3(field, array, sep, keep)
7614#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7615 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_IK3
7616#endif
7617 use pm_kind, only: IKG => IK3
7618 use pm_container, only: cvi_pdt
7619 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
7620 integer(IKG) , intent(in) , contiguous :: array(:)
7621 integer(IKG) , intent(in) :: sep
7622 logical(LK) , intent(in) , optional :: keep
7623 end subroutine
7624#endif
7625
7626#if IK2_ENABLED
7627 PURE module subroutine setSplitConDefComDefIns_D1_D0_IK2(field, array, sep, keep)
7628#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7629 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_IK2
7630#endif
7631 use pm_kind, only: IKG => IK2
7632 use pm_container, only: cvi_pdt
7633 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
7634 integer(IKG) , intent(in) , contiguous :: array(:)
7635 integer(IKG) , intent(in) :: sep
7636 logical(LK) , intent(in) , optional :: keep
7637 end subroutine
7638#endif
7639
7640#if IK1_ENABLED
7641 PURE module subroutine setSplitConDefComDefIns_D1_D0_IK1(field, array, sep, keep)
7642#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7643 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_IK1
7644#endif
7645 use pm_kind, only: IKG => IK1
7646 use pm_container, only: cvi_pdt
7647 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
7648 integer(IKG) , intent(in) , contiguous :: array(:)
7649 integer(IKG) , intent(in) :: sep
7650 logical(LK) , intent(in) , optional :: keep
7651 end subroutine
7652#endif
7653
7654 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7655
7656#if LK5_ENABLED
7657 PURE module subroutine setSplitConDefComDefIns_D1_D0_LK5(field, array, sep, keep)
7658#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7659 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_LK5
7660#endif
7661 use pm_kind, only: LKG => LK5
7662 use pm_container, only: cvl_pdt
7663 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
7664 logical(LKG) , intent(in) , contiguous :: array(:)
7665 logical(LKG) , intent(in) :: sep
7666 logical(LK) , intent(in) , optional :: keep
7667 end subroutine
7668#endif
7669
7670#if LK4_ENABLED
7671 PURE module subroutine setSplitConDefComDefIns_D1_D0_LK4(field, array, sep, keep)
7672#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7673 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_LK4
7674#endif
7675 use pm_kind, only: LKG => LK4
7676 use pm_container, only: cvl_pdt
7677 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
7678 logical(LKG) , intent(in) , contiguous :: array(:)
7679 logical(LKG) , intent(in) :: sep
7680 logical(LK) , intent(in) , optional :: keep
7681 end subroutine
7682#endif
7683
7684#if LK3_ENABLED
7685 PURE module subroutine setSplitConDefComDefIns_D1_D0_LK3(field, array, sep, keep)
7686#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7687 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_LK3
7688#endif
7689 use pm_kind, only: LKG => LK3
7690 use pm_container, only: cvl_pdt
7691 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
7692 logical(LKG) , intent(in) , contiguous :: array(:)
7693 logical(LKG) , intent(in) :: sep
7694 logical(LK) , intent(in) , optional :: keep
7695 end subroutine
7696#endif
7697
7698#if LK2_ENABLED
7699 PURE module subroutine setSplitConDefComDefIns_D1_D0_LK2(field, array, sep, keep)
7700#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7701 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_LK2
7702#endif
7703 use pm_kind, only: LKG => LK2
7704 use pm_container, only: cvl_pdt
7705 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
7706 logical(LKG) , intent(in) , contiguous :: array(:)
7707 logical(LKG) , intent(in) :: sep
7708 logical(LK) , intent(in) , optional :: keep
7709 end subroutine
7710#endif
7711
7712#if LK1_ENABLED
7713 PURE module subroutine setSplitConDefComDefIns_D1_D0_LK1(field, array, sep, keep)
7714#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7715 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_LK1
7716#endif
7717 use pm_kind, only: LKG => LK1
7718 use pm_container, only: cvl_pdt
7719 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
7720 logical(LKG) , intent(in) , contiguous :: array(:)
7721 logical(LKG) , intent(in) :: sep
7722 logical(LK) , intent(in) , optional :: keep
7723 end subroutine
7724#endif
7725
7726 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7727
7728#if CK5_ENABLED
7729 PURE module subroutine setSplitConDefComDefIns_D1_D0_CK5(field, array, sep, keep)
7730#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7731 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_CK5
7732#endif
7733 use pm_kind, only: CKG => CK5
7734 use pm_container, only: cvc_pdt
7735 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
7736 complex(CKG) , intent(in) , contiguous :: array(:)
7737 complex(CKG) , intent(in) :: sep
7738 logical(LK) , intent(in) , optional :: keep
7739 end subroutine
7740#endif
7741
7742#if CK4_ENABLED
7743 PURE module subroutine setSplitConDefComDefIns_D1_D0_CK4(field, array, sep, keep)
7744#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7745 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_CK4
7746#endif
7747 use pm_kind, only: CKG => CK4
7748 use pm_container, only: cvc_pdt
7749 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
7750 complex(CKG) , intent(in) , contiguous :: array(:)
7751 complex(CKG) , intent(in) :: sep
7752 logical(LK) , intent(in) , optional :: keep
7753 end subroutine
7754#endif
7755
7756#if CK3_ENABLED
7757 PURE module subroutine setSplitConDefComDefIns_D1_D0_CK3(field, array, sep, keep)
7758#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7759 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_CK3
7760#endif
7761 use pm_kind, only: CKG => CK3
7762 use pm_container, only: cvc_pdt
7763 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
7764 complex(CKG) , intent(in) , contiguous :: array(:)
7765 complex(CKG) , intent(in) :: sep
7766 logical(LK) , intent(in) , optional :: keep
7767 end subroutine
7768#endif
7769
7770#if CK2_ENABLED
7771 PURE module subroutine setSplitConDefComDefIns_D1_D0_CK2(field, array, sep, keep)
7772#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7773 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_CK2
7774#endif
7775 use pm_kind, only: CKG => CK2
7776 use pm_container, only: cvc_pdt
7777 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
7778 complex(CKG) , intent(in) , contiguous :: array(:)
7779 complex(CKG) , intent(in) :: sep
7780 logical(LK) , intent(in) , optional :: keep
7781 end subroutine
7782#endif
7783
7784#if CK1_ENABLED
7785 PURE module subroutine setSplitConDefComDefIns_D1_D0_CK1(field, array, sep, keep)
7786#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7787 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_CK1
7788#endif
7789 use pm_kind, only: CKG => CK1
7790 use pm_container, only: cvc_pdt
7791 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
7792 complex(CKG) , intent(in) , contiguous :: array(:)
7793 complex(CKG) , intent(in) :: sep
7794 logical(LK) , intent(in) , optional :: keep
7795 end subroutine
7796#endif
7797
7798 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7799
7800#if RK5_ENABLED
7801 PURE module subroutine setSplitConDefComDefIns_D1_D0_RK5(field, array, sep, keep)
7802#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7803 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_RK5
7804#endif
7805 use pm_kind, only: RKG => RK5
7806 use pm_container, only: cvr_pdt
7807 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
7808 real(RKG) , intent(in) , contiguous :: array(:)
7809 real(RKG) , intent(in) :: sep
7810 logical(LK) , intent(in) , optional :: keep
7811 end subroutine
7812#endif
7813
7814#if RK4_ENABLED
7815 PURE module subroutine setSplitConDefComDefIns_D1_D0_RK4(field, array, sep, keep)
7816#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7817 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_RK4
7818#endif
7819 use pm_kind, only: RKG => RK4
7820 use pm_container, only: cvr_pdt
7821 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
7822 real(RKG) , intent(in) , contiguous :: array(:)
7823 real(RKG) , intent(in) :: sep
7824 logical(LK) , intent(in) , optional :: keep
7825 end subroutine
7826#endif
7827
7828#if RK3_ENABLED
7829 PURE module subroutine setSplitConDefComDefIns_D1_D0_RK3(field, array, sep, keep)
7830#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7831 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_RK3
7832#endif
7833 use pm_kind, only: RKG => RK3
7834 use pm_container, only: cvr_pdt
7835 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
7836 real(RKG) , intent(in) , contiguous :: array(:)
7837 real(RKG) , intent(in) :: sep
7838 logical(LK) , intent(in) , optional :: keep
7839 end subroutine
7840#endif
7841
7842#if RK2_ENABLED
7843 PURE module subroutine setSplitConDefComDefIns_D1_D0_RK2(field, array, sep, keep)
7844#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7845 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_RK2
7846#endif
7847 use pm_kind, only: RKG => RK2
7848 use pm_container, only: cvr_pdt
7849 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
7850 real(RKG) , intent(in) , contiguous :: array(:)
7851 real(RKG) , intent(in) :: sep
7852 logical(LK) , intent(in) , optional :: keep
7853 end subroutine
7854#endif
7855
7856#if RK1_ENABLED
7857 PURE module subroutine setSplitConDefComDefIns_D1_D0_RK1(field, array, sep, keep)
7858#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7859 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D0_RK1
7860#endif
7861 use pm_kind, only: RKG => RK1
7862 use pm_container, only: cvr_pdt
7863 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
7864 real(RKG) , intent(in) , contiguous :: array(:)
7865 real(RKG) , intent(in) :: sep
7866 logical(LK) , intent(in) , optional :: keep
7867 end subroutine
7868#endif
7869
7870 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7871
7872 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7873 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7874 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7875
7876 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7877
7878#if SK5_ENABLED
7879 module subroutine setSplitConCusComDefIns_D0_D0_SK5(field, array, sep, iseq, keep)
7880#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7881 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D0_D0_SK5
7882#endif
7883 use pm_kind, only: SKG => SK5
7884 use pm_container, only: css_pdt
7885 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
7886 character(*,SKG) , intent(in) :: array
7887 character(*,SKG) , intent(in) :: sep
7888 procedure(logical(LK)) :: iseq
7889 logical(LK) , intent(in) , optional :: keep
7890 end subroutine
7891#endif
7892
7893#if SK4_ENABLED
7894 module subroutine setSplitConCusComDefIns_D0_D0_SK4(field, array, sep, iseq, keep)
7895#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7896 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D0_D0_SK4
7897#endif
7898 use pm_kind, only: SKG => SK4
7899 use pm_container, only: css_pdt
7900 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
7901 character(*,SKG) , intent(in) :: array
7902 character(*,SKG) , intent(in) :: sep
7903 procedure(logical(LK)) :: iseq
7904 logical(LK) , intent(in) , optional :: keep
7905 end subroutine
7906#endif
7907
7908#if SK3_ENABLED
7909 module subroutine setSplitConCusComDefIns_D0_D0_SK3(field, array, sep, iseq, keep)
7910#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7911 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D0_D0_SK3
7912#endif
7913 use pm_kind, only: SKG => SK3
7914 use pm_container, only: css_pdt
7915 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
7916 character(*,SKG) , intent(in) :: array
7917 character(*,SKG) , intent(in) :: sep
7918 procedure(logical(LK)) :: iseq
7919 logical(LK) , intent(in) , optional :: keep
7920 end subroutine
7921#endif
7922
7923#if SK2_ENABLED
7924 module subroutine setSplitConCusComDefIns_D0_D0_SK2(field, array, sep, iseq, keep)
7925#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7926 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D0_D0_SK2
7927#endif
7928 use pm_kind, only: SKG => SK2
7929 use pm_container, only: css_pdt
7930 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
7931 character(*,SKG) , intent(in) :: array
7932 character(*,SKG) , intent(in) :: sep
7933 procedure(logical(LK)) :: iseq
7934 logical(LK) , intent(in) , optional :: keep
7935 end subroutine
7936#endif
7937
7938#if SK1_ENABLED
7939 module subroutine setSplitConCusComDefIns_D0_D0_SK1(field, array, sep, iseq, keep)
7940#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7941 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D0_D0_SK1
7942#endif
7943 use pm_kind, only: SKG => SK1
7944 use pm_container, only: css_pdt
7945 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
7946 character(*,SKG) , intent(in) :: array
7947 character(*,SKG) , intent(in) :: sep
7948 procedure(logical(LK)) :: iseq
7949 logical(LK) , intent(in) , optional :: keep
7950 end subroutine
7951#endif
7952
7953 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7954
7955#if SK5_ENABLED
7956 module subroutine setSplitConCusComDefIns_D1_D0_SK5(field, array, sep, iseq, keep)
7957#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7958 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_SK5
7959#endif
7960 use pm_kind, only: SKG => SK5
7961 use pm_container, only: cvs_pdt
7962 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
7963 character(*,SKG) , intent(in) , contiguous :: array(:)
7964 character(*,SKG) , intent(in) :: sep
7965 procedure(logical(LK)) :: iseq
7966 logical(LK) , intent(in) , optional :: keep
7967 end subroutine
7968#endif
7969
7970#if SK4_ENABLED
7971 module subroutine setSplitConCusComDefIns_D1_D0_SK4(field, array, sep, iseq, keep)
7972#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7973 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_SK4
7974#endif
7975 use pm_kind, only: SKG => SK4
7976 use pm_container, only: cvs_pdt
7977 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
7978 character(*,SKG) , intent(in) , contiguous :: array(:)
7979 character(*,SKG) , intent(in) :: sep
7980 procedure(logical(LK)) :: iseq
7981 logical(LK) , intent(in) , optional :: keep
7982 end subroutine
7983#endif
7984
7985#if SK3_ENABLED
7986 module subroutine setSplitConCusComDefIns_D1_D0_SK3(field, array, sep, iseq, keep)
7987#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
7988 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_SK3
7989#endif
7990 use pm_kind, only: SKG => SK3
7991 use pm_container, only: cvs_pdt
7992 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
7993 character(*,SKG) , intent(in) , contiguous :: array(:)
7994 character(*,SKG) , intent(in) :: sep
7995 procedure(logical(LK)) :: iseq
7996 logical(LK) , intent(in) , optional :: keep
7997 end subroutine
7998#endif
7999
8000#if SK2_ENABLED
8001 module subroutine setSplitConCusComDefIns_D1_D0_SK2(field, array, sep, iseq, keep)
8002#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8003 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_SK2
8004#endif
8005 use pm_kind, only: SKG => SK2
8006 use pm_container, only: cvs_pdt
8007 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
8008 character(*,SKG) , intent(in) , contiguous :: array(:)
8009 character(*,SKG) , intent(in) :: sep
8010 procedure(logical(LK)) :: iseq
8011 logical(LK) , intent(in) , optional :: keep
8012 end subroutine
8013#endif
8014
8015#if SK1_ENABLED
8016 module subroutine setSplitConCusComDefIns_D1_D0_SK1(field, array, sep, iseq, keep)
8017#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8018 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_SK1
8019#endif
8020 use pm_kind, only: SKG => SK1
8021 use pm_container, only: cvs_pdt
8022 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
8023 character(*,SKG) , intent(in) , contiguous :: array(:)
8024 character(*,SKG) , intent(in) :: sep
8025 procedure(logical(LK)) :: iseq
8026 logical(LK) , intent(in) , optional :: keep
8027 end subroutine
8028#endif
8029
8030 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8031
8032#if IK5_ENABLED
8033 module subroutine setSplitConCusComDefIns_D1_D0_IK5(field, array, sep, iseq, keep)
8034#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8035 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_IK5
8036#endif
8037 use pm_kind, only: IKG => IK5
8038 use pm_container, only: cvi_pdt
8039 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
8040 integer(IKG) , intent(in) , contiguous :: array(:)
8041 integer(IKG) , intent(in) :: sep
8042 procedure(logical(LK)) :: iseq
8043 logical(LK) , intent(in) , optional :: keep
8044 end subroutine
8045#endif
8046
8047#if IK4_ENABLED
8048 module subroutine setSplitConCusComDefIns_D1_D0_IK4(field, array, sep, iseq, keep)
8049#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8050 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_IK4
8051#endif
8052 use pm_kind, only: IKG => IK4
8053 use pm_container, only: cvi_pdt
8054 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
8055 integer(IKG) , intent(in) , contiguous :: array(:)
8056 integer(IKG) , intent(in) :: sep
8057 procedure(logical(LK)) :: iseq
8058 logical(LK) , intent(in) , optional :: keep
8059 end subroutine
8060#endif
8061
8062#if IK3_ENABLED
8063 module subroutine setSplitConCusComDefIns_D1_D0_IK3(field, array, sep, iseq, keep)
8064#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8065 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_IK3
8066#endif
8067 use pm_kind, only: IKG => IK3
8068 use pm_container, only: cvi_pdt
8069 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
8070 integer(IKG) , intent(in) , contiguous :: array(:)
8071 integer(IKG) , intent(in) :: sep
8072 procedure(logical(LK)) :: iseq
8073 logical(LK) , intent(in) , optional :: keep
8074 end subroutine
8075#endif
8076
8077#if IK2_ENABLED
8078 module subroutine setSplitConCusComDefIns_D1_D0_IK2(field, array, sep, iseq, keep)
8079#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8080 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_IK2
8081#endif
8082 use pm_kind, only: IKG => IK2
8083 use pm_container, only: cvi_pdt
8084 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
8085 integer(IKG) , intent(in) , contiguous :: array(:)
8086 integer(IKG) , intent(in) :: sep
8087 procedure(logical(LK)) :: iseq
8088 logical(LK) , intent(in) , optional :: keep
8089 end subroutine
8090#endif
8091
8092#if IK1_ENABLED
8093 module subroutine setSplitConCusComDefIns_D1_D0_IK1(field, array, sep, iseq, keep)
8094#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8095 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_IK1
8096#endif
8097 use pm_kind, only: IKG => IK1
8098 use pm_container, only: cvi_pdt
8099 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
8100 integer(IKG) , intent(in) , contiguous :: array(:)
8101 integer(IKG) , intent(in) :: sep
8102 procedure(logical(LK)) :: iseq
8103 logical(LK) , intent(in) , optional :: keep
8104 end subroutine
8105#endif
8106
8107 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8108
8109#if LK5_ENABLED
8110 module subroutine setSplitConCusComDefIns_D1_D0_LK5(field, array, sep, iseq, keep)
8111#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8112 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_LK5
8113#endif
8114 use pm_kind, only: LKG => LK5
8115 use pm_container, only: cvl_pdt
8116 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
8117 logical(LKG) , intent(in) , contiguous :: array(:)
8118 logical(LKG) , intent(in) :: sep
8119 procedure(logical(LK)) :: iseq
8120 logical(LK) , intent(in) , optional :: keep
8121 end subroutine
8122#endif
8123
8124#if LK4_ENABLED
8125 module subroutine setSplitConCusComDefIns_D1_D0_LK4(field, array, sep, iseq, keep)
8126#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8127 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_LK4
8128#endif
8129 use pm_kind, only: LKG => LK4
8130 use pm_container, only: cvl_pdt
8131 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
8132 logical(LKG) , intent(in) , contiguous :: array(:)
8133 logical(LKG) , intent(in) :: sep
8134 procedure(logical(LK)) :: iseq
8135 logical(LK) , intent(in) , optional :: keep
8136 end subroutine
8137#endif
8138
8139#if LK3_ENABLED
8140 module subroutine setSplitConCusComDefIns_D1_D0_LK3(field, array, sep, iseq, keep)
8141#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8142 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_LK3
8143#endif
8144 use pm_kind, only: LKG => LK3
8145 use pm_container, only: cvl_pdt
8146 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
8147 logical(LKG) , intent(in) , contiguous :: array(:)
8148 logical(LKG) , intent(in) :: sep
8149 procedure(logical(LK)) :: iseq
8150 logical(LK) , intent(in) , optional :: keep
8151 end subroutine
8152#endif
8153
8154#if LK2_ENABLED
8155 module subroutine setSplitConCusComDefIns_D1_D0_LK2(field, array, sep, iseq, keep)
8156#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8157 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_LK2
8158#endif
8159 use pm_kind, only: LKG => LK2
8160 use pm_container, only: cvl_pdt
8161 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
8162 logical(LKG) , intent(in) , contiguous :: array(:)
8163 logical(LKG) , intent(in) :: sep
8164 procedure(logical(LK)) :: iseq
8165 logical(LK) , intent(in) , optional :: keep
8166 end subroutine
8167#endif
8168
8169#if LK1_ENABLED
8170 module subroutine setSplitConCusComDefIns_D1_D0_LK1(field, array, sep, iseq, keep)
8171#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8172 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_LK1
8173#endif
8174 use pm_kind, only: LKG => LK1
8175 use pm_container, only: cvl_pdt
8176 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
8177 logical(LKG) , intent(in) , contiguous :: array(:)
8178 logical(LKG) , intent(in) :: sep
8179 procedure(logical(LK)) :: iseq
8180 logical(LK) , intent(in) , optional :: keep
8181 end subroutine
8182#endif
8183
8184 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8185
8186#if CK5_ENABLED
8187 module subroutine setSplitConCusComDefIns_D1_D0_CK5(field, array, sep, iseq, keep)
8188#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8189 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_CK5
8190#endif
8191 use pm_kind, only: CKG => CK5
8192 use pm_container, only: cvc_pdt
8193 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
8194 complex(CKG) , intent(in) , contiguous :: array(:)
8195 complex(CKG) , intent(in) :: sep
8196 procedure(logical(LK)) :: iseq
8197 logical(LK) , intent(in) , optional :: keep
8198 end subroutine
8199#endif
8200
8201#if CK4_ENABLED
8202 module subroutine setSplitConCusComDefIns_D1_D0_CK4(field, array, sep, iseq, keep)
8203#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8204 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_CK4
8205#endif
8206 use pm_kind, only: CKG => CK4
8207 use pm_container, only: cvc_pdt
8208 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
8209 complex(CKG) , intent(in) , contiguous :: array(:)
8210 complex(CKG) , intent(in) :: sep
8211 procedure(logical(LK)) :: iseq
8212 logical(LK) , intent(in) , optional :: keep
8213 end subroutine
8214#endif
8215
8216#if CK3_ENABLED
8217 module subroutine setSplitConCusComDefIns_D1_D0_CK3(field, array, sep, iseq, keep)
8218#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8219 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_CK3
8220#endif
8221 use pm_kind, only: CKG => CK3
8222 use pm_container, only: cvc_pdt
8223 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
8224 complex(CKG) , intent(in) , contiguous :: array(:)
8225 complex(CKG) , intent(in) :: sep
8226 procedure(logical(LK)) :: iseq
8227 logical(LK) , intent(in) , optional :: keep
8228 end subroutine
8229#endif
8230
8231#if CK2_ENABLED
8232 module subroutine setSplitConCusComDefIns_D1_D0_CK2(field, array, sep, iseq, keep)
8233#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8234 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_CK2
8235#endif
8236 use pm_kind, only: CKG => CK2
8237 use pm_container, only: cvc_pdt
8238 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
8239 complex(CKG) , intent(in) , contiguous :: array(:)
8240 complex(CKG) , intent(in) :: sep
8241 procedure(logical(LK)) :: iseq
8242 logical(LK) , intent(in) , optional :: keep
8243 end subroutine
8244#endif
8245
8246#if CK1_ENABLED
8247 module subroutine setSplitConCusComDefIns_D1_D0_CK1(field, array, sep, iseq, keep)
8248#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8249 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_CK1
8250#endif
8251 use pm_kind, only: CKG => CK1
8252 use pm_container, only: cvc_pdt
8253 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
8254 complex(CKG) , intent(in) , contiguous :: array(:)
8255 complex(CKG) , intent(in) :: sep
8256 procedure(logical(LK)) :: iseq
8257 logical(LK) , intent(in) , optional :: keep
8258 end subroutine
8259#endif
8260
8261 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8262
8263#if RK5_ENABLED
8264 module subroutine setSplitConCusComDefIns_D1_D0_RK5(field, array, sep, iseq, keep)
8265#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8266 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_RK5
8267#endif
8268 use pm_kind, only: RKG => RK5
8269 use pm_container, only: cvr_pdt
8270 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
8271 real(RKG) , intent(in) , contiguous :: array(:)
8272 real(RKG) , intent(in) :: sep
8273 procedure(logical(LK)) :: iseq
8274 logical(LK) , intent(in) , optional :: keep
8275 end subroutine
8276#endif
8277
8278#if RK4_ENABLED
8279 module subroutine setSplitConCusComDefIns_D1_D0_RK4(field, array, sep, iseq, keep)
8280#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8281 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_RK4
8282#endif
8283 use pm_kind, only: RKG => RK4
8284 use pm_container, only: cvr_pdt
8285 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
8286 real(RKG) , intent(in) , contiguous :: array(:)
8287 real(RKG) , intent(in) :: sep
8288 procedure(logical(LK)) :: iseq
8289 logical(LK) , intent(in) , optional :: keep
8290 end subroutine
8291#endif
8292
8293#if RK3_ENABLED
8294 module subroutine setSplitConCusComDefIns_D1_D0_RK3(field, array, sep, iseq, keep)
8295#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8296 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_RK3
8297#endif
8298 use pm_kind, only: RKG => RK3
8299 use pm_container, only: cvr_pdt
8300 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
8301 real(RKG) , intent(in) , contiguous :: array(:)
8302 real(RKG) , intent(in) :: sep
8303 procedure(logical(LK)) :: iseq
8304 logical(LK) , intent(in) , optional :: keep
8305 end subroutine
8306#endif
8307
8308#if RK2_ENABLED
8309 module subroutine setSplitConCusComDefIns_D1_D0_RK2(field, array, sep, iseq, keep)
8310#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8311 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_RK2
8312#endif
8313 use pm_kind, only: RKG => RK2
8314 use pm_container, only: cvr_pdt
8315 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
8316 real(RKG) , intent(in) , contiguous :: array(:)
8317 real(RKG) , intent(in) :: sep
8318 procedure(logical(LK)) :: iseq
8319 logical(LK) , intent(in) , optional :: keep
8320 end subroutine
8321#endif
8322
8323#if RK1_ENABLED
8324 module subroutine setSplitConCusComDefIns_D1_D0_RK1(field, array, sep, iseq, keep)
8325#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8326 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D0_RK1
8327#endif
8328 use pm_kind, only: RKG => RK1
8329 use pm_container, only: cvr_pdt
8330 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
8331 real(RKG) , intent(in) , contiguous :: array(:)
8332 real(RKG) , intent(in) :: sep
8333 procedure(logical(LK)) :: iseq
8334 logical(LK) , intent(in) , optional :: keep
8335 end subroutine
8336#endif
8337
8338 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8339
8340 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8341 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8342 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8343
8344 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8345
8346#if SK5_ENABLED
8347 PURE module subroutine setSplitConDefComCusIns_D0_D0_SK5(field, array, sep, instance, sorted, unique, keep)
8348#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8349 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D0_D0_SK5
8350#endif
8351 use pm_kind, only: SKG => SK5
8352 use pm_container, only: css_pdt
8353 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
8354 character(*,SKG) , intent(in) :: array
8355 character(*,SKG) , intent(in) :: sep
8356 integer(IK) , intent(in) , contiguous :: instance(:)
8357 logical(LK) , intent(in) , optional :: sorted
8358 logical(LK) , intent(in) , optional :: unique
8359 logical(LK) , intent(in) , optional :: keep
8360 end subroutine
8361#endif
8362
8363#if SK4_ENABLED
8364 PURE module subroutine setSplitConDefComCusIns_D0_D0_SK4(field, array, sep, instance, sorted, unique, keep)
8365#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8366 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D0_D0_SK4
8367#endif
8368 use pm_kind, only: SKG => SK4
8369 use pm_container, only: css_pdt
8370 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
8371 character(*,SKG) , intent(in) :: array
8372 character(*,SKG) , intent(in) :: sep
8373 integer(IK) , intent(in) , contiguous :: instance(:)
8374 logical(LK) , intent(in) , optional :: sorted
8375 logical(LK) , intent(in) , optional :: unique
8376 logical(LK) , intent(in) , optional :: keep
8377 end subroutine
8378#endif
8379
8380#if SK3_ENABLED
8381 PURE module subroutine setSplitConDefComCusIns_D0_D0_SK3(field, array, sep, instance, sorted, unique, keep)
8382#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8383 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D0_D0_SK3
8384#endif
8385 use pm_kind, only: SKG => SK3
8386 use pm_container, only: css_pdt
8387 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
8388 character(*,SKG) , intent(in) :: array
8389 character(*,SKG) , intent(in) :: sep
8390 integer(IK) , intent(in) , contiguous :: instance(:)
8391 logical(LK) , intent(in) , optional :: sorted
8392 logical(LK) , intent(in) , optional :: unique
8393 logical(LK) , intent(in) , optional :: keep
8394 end subroutine
8395#endif
8396
8397#if SK2_ENABLED
8398 PURE module subroutine setSplitConDefComCusIns_D0_D0_SK2(field, array, sep, instance, sorted, unique, keep)
8399#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8400 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D0_D0_SK2
8401#endif
8402 use pm_kind, only: SKG => SK2
8403 use pm_container, only: css_pdt
8404 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
8405 character(*,SKG) , intent(in) :: array
8406 character(*,SKG) , intent(in) :: sep
8407 integer(IK) , intent(in) , contiguous :: instance(:)
8408 logical(LK) , intent(in) , optional :: sorted
8409 logical(LK) , intent(in) , optional :: unique
8410 logical(LK) , intent(in) , optional :: keep
8411 end subroutine
8412#endif
8413
8414#if SK1_ENABLED
8415 PURE module subroutine setSplitConDefComCusIns_D0_D0_SK1(field, array, sep, instance, sorted, unique, keep)
8416#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8417 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D0_D0_SK1
8418#endif
8419 use pm_kind, only: SKG => SK1
8420 use pm_container, only: css_pdt
8421 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
8422 character(*,SKG) , intent(in) :: array
8423 character(*,SKG) , intent(in) :: sep
8424 integer(IK) , intent(in) , contiguous :: instance(:)
8425 logical(LK) , intent(in) , optional :: sorted
8426 logical(LK) , intent(in) , optional :: unique
8427 logical(LK) , intent(in) , optional :: keep
8428 end subroutine
8429#endif
8430
8431 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8432
8433#if SK5_ENABLED
8434 PURE module subroutine setSplitConDefComCusIns_D1_D0_SK5(field, array, sep, instance, sorted, unique, keep)
8435#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8436 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_SK5
8437#endif
8438 use pm_kind, only: SKG => SK5
8439 use pm_container, only: cvs_pdt
8440 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
8441 character(*,SKG) , intent(in) , contiguous :: array(:)
8442 character(*,SKG) , intent(in) :: sep
8443 integer(IK) , intent(in) , contiguous :: instance(:)
8444 logical(LK) , intent(in) , optional :: sorted
8445 logical(LK) , intent(in) , optional :: unique
8446 logical(LK) , intent(in) , optional :: keep
8447 end subroutine
8448#endif
8449
8450#if SK4_ENABLED
8451 PURE module subroutine setSplitConDefComCusIns_D1_D0_SK4(field, array, sep, instance, sorted, unique, keep)
8452#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8453 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_SK4
8454#endif
8455 use pm_kind, only: SKG => SK4
8456 use pm_container, only: cvs_pdt
8457 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
8458 character(*,SKG) , intent(in) , contiguous :: array(:)
8459 character(*,SKG) , intent(in) :: sep
8460 integer(IK) , intent(in) , contiguous :: instance(:)
8461 logical(LK) , intent(in) , optional :: sorted
8462 logical(LK) , intent(in) , optional :: unique
8463 logical(LK) , intent(in) , optional :: keep
8464 end subroutine
8465#endif
8466
8467#if SK3_ENABLED
8468 PURE module subroutine setSplitConDefComCusIns_D1_D0_SK3(field, array, sep, instance, sorted, unique, keep)
8469#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8470 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_SK3
8471#endif
8472 use pm_kind, only: SKG => SK3
8473 use pm_container, only: cvs_pdt
8474 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
8475 character(*,SKG) , intent(in) , contiguous :: array(:)
8476 character(*,SKG) , intent(in) :: sep
8477 integer(IK) , intent(in) , contiguous :: instance(:)
8478 logical(LK) , intent(in) , optional :: sorted
8479 logical(LK) , intent(in) , optional :: unique
8480 logical(LK) , intent(in) , optional :: keep
8481 end subroutine
8482#endif
8483
8484#if SK2_ENABLED
8485 PURE module subroutine setSplitConDefComCusIns_D1_D0_SK2(field, array, sep, instance, sorted, unique, keep)
8486#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8487 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_SK2
8488#endif
8489 use pm_kind, only: SKG => SK2
8490 use pm_container, only: cvs_pdt
8491 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
8492 character(*,SKG) , intent(in) , contiguous :: array(:)
8493 character(*,SKG) , intent(in) :: sep
8494 integer(IK) , intent(in) , contiguous :: instance(:)
8495 logical(LK) , intent(in) , optional :: sorted
8496 logical(LK) , intent(in) , optional :: unique
8497 logical(LK) , intent(in) , optional :: keep
8498 end subroutine
8499#endif
8500
8501#if SK1_ENABLED
8502 PURE module subroutine setSplitConDefComCusIns_D1_D0_SK1(field, array, sep, instance, sorted, unique, keep)
8503#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8504 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_SK1
8505#endif
8506 use pm_kind, only: SKG => SK1
8507 use pm_container, only: cvs_pdt
8508 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
8509 character(*,SKG) , intent(in) , contiguous :: array(:)
8510 character(*,SKG) , intent(in) :: sep
8511 integer(IK) , intent(in) , contiguous :: instance(:)
8512 logical(LK) , intent(in) , optional :: sorted
8513 logical(LK) , intent(in) , optional :: unique
8514 logical(LK) , intent(in) , optional :: keep
8515 end subroutine
8516#endif
8517
8518 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8519
8520#if IK5_ENABLED
8521 PURE module subroutine setSplitConDefComCusIns_D1_D0_IK5(field, array, sep, instance, sorted, unique, keep)
8522#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8523 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_IK5
8524#endif
8525 use pm_kind, only: IKG => IK5
8526 use pm_container, only: cvi_pdt
8527 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
8528 integer(IKG) , intent(in) , contiguous :: array(:)
8529 integer(IKG) , intent(in) :: sep
8530 integer(IK) , intent(in) , contiguous :: instance(:)
8531 logical(LK) , intent(in) , optional :: sorted
8532 logical(LK) , intent(in) , optional :: unique
8533 logical(LK) , intent(in) , optional :: keep
8534 end subroutine
8535#endif
8536
8537#if IK4_ENABLED
8538 PURE module subroutine setSplitConDefComCusIns_D1_D0_IK4(field, array, sep, instance, sorted, unique, keep)
8539#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8540 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_IK4
8541#endif
8542 use pm_kind, only: IKG => IK4
8543 use pm_container, only: cvi_pdt
8544 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
8545 integer(IKG) , intent(in) , contiguous :: array(:)
8546 integer(IKG) , intent(in) :: sep
8547 integer(IK) , intent(in) , contiguous :: instance(:)
8548 logical(LK) , intent(in) , optional :: sorted
8549 logical(LK) , intent(in) , optional :: unique
8550 logical(LK) , intent(in) , optional :: keep
8551 end subroutine
8552#endif
8553
8554#if IK3_ENABLED
8555 PURE module subroutine setSplitConDefComCusIns_D1_D0_IK3(field, array, sep, instance, sorted, unique, keep)
8556#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8557 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_IK3
8558#endif
8559 use pm_kind, only: IKG => IK3
8560 use pm_container, only: cvi_pdt
8561 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
8562 integer(IKG) , intent(in) , contiguous :: array(:)
8563 integer(IKG) , intent(in) :: sep
8564 integer(IK) , intent(in) , contiguous :: instance(:)
8565 logical(LK) , intent(in) , optional :: sorted
8566 logical(LK) , intent(in) , optional :: unique
8567 logical(LK) , intent(in) , optional :: keep
8568 end subroutine
8569#endif
8570
8571#if IK2_ENABLED
8572 PURE module subroutine setSplitConDefComCusIns_D1_D0_IK2(field, array, sep, instance, sorted, unique, keep)
8573#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8574 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_IK2
8575#endif
8576 use pm_kind, only: IKG => IK2
8577 use pm_container, only: cvi_pdt
8578 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
8579 integer(IKG) , intent(in) , contiguous :: array(:)
8580 integer(IKG) , intent(in) :: sep
8581 integer(IK) , intent(in) , contiguous :: instance(:)
8582 logical(LK) , intent(in) , optional :: sorted
8583 logical(LK) , intent(in) , optional :: unique
8584 logical(LK) , intent(in) , optional :: keep
8585 end subroutine
8586#endif
8587
8588#if IK1_ENABLED
8589 PURE module subroutine setSplitConDefComCusIns_D1_D0_IK1(field, array, sep, instance, sorted, unique, keep)
8590#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8591 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_IK1
8592#endif
8593 use pm_kind, only: IKG => IK1
8594 use pm_container, only: cvi_pdt
8595 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
8596 integer(IKG) , intent(in) , contiguous :: array(:)
8597 integer(IKG) , intent(in) :: sep
8598 integer(IK) , intent(in) , contiguous :: instance(:)
8599 logical(LK) , intent(in) , optional :: sorted
8600 logical(LK) , intent(in) , optional :: unique
8601 logical(LK) , intent(in) , optional :: keep
8602 end subroutine
8603#endif
8604
8605 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8606
8607#if LK5_ENABLED
8608 PURE module subroutine setSplitConDefComCusIns_D1_D0_LK5(field, array, sep, instance, sorted, unique, keep)
8609#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8610 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_LK5
8611#endif
8612 use pm_kind, only: LKG => LK5
8613 use pm_container, only: cvl_pdt
8614 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
8615 logical(LKG) , intent(in) , contiguous :: array(:)
8616 logical(LKG) , intent(in) :: sep
8617 integer(IK) , intent(in) , contiguous :: instance(:)
8618 logical(LK) , intent(in) , optional :: sorted
8619 logical(LK) , intent(in) , optional :: unique
8620 logical(LK) , intent(in) , optional :: keep
8621 end subroutine
8622#endif
8623
8624#if LK4_ENABLED
8625 PURE module subroutine setSplitConDefComCusIns_D1_D0_LK4(field, array, sep, instance, sorted, unique, keep)
8626#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8627 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_LK4
8628#endif
8629 use pm_kind, only: LKG => LK4
8630 use pm_container, only: cvl_pdt
8631 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
8632 logical(LKG) , intent(in) , contiguous :: array(:)
8633 logical(LKG) , intent(in) :: sep
8634 integer(IK) , intent(in) , contiguous :: instance(:)
8635 logical(LK) , intent(in) , optional :: sorted
8636 logical(LK) , intent(in) , optional :: unique
8637 logical(LK) , intent(in) , optional :: keep
8638 end subroutine
8639#endif
8640
8641#if LK3_ENABLED
8642 PURE module subroutine setSplitConDefComCusIns_D1_D0_LK3(field, array, sep, instance, sorted, unique, keep)
8643#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8644 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_LK3
8645#endif
8646 use pm_kind, only: LKG => LK3
8647 use pm_container, only: cvl_pdt
8648 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
8649 logical(LKG) , intent(in) , contiguous :: array(:)
8650 logical(LKG) , intent(in) :: sep
8651 integer(IK) , intent(in) , contiguous :: instance(:)
8652 logical(LK) , intent(in) , optional :: sorted
8653 logical(LK) , intent(in) , optional :: unique
8654 logical(LK) , intent(in) , optional :: keep
8655 end subroutine
8656#endif
8657
8658#if LK2_ENABLED
8659 PURE module subroutine setSplitConDefComCusIns_D1_D0_LK2(field, array, sep, instance, sorted, unique, keep)
8660#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8661 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_LK2
8662#endif
8663 use pm_kind, only: LKG => LK2
8664 use pm_container, only: cvl_pdt
8665 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
8666 logical(LKG) , intent(in) , contiguous :: array(:)
8667 logical(LKG) , intent(in) :: sep
8668 integer(IK) , intent(in) , contiguous :: instance(:)
8669 logical(LK) , intent(in) , optional :: sorted
8670 logical(LK) , intent(in) , optional :: unique
8671 logical(LK) , intent(in) , optional :: keep
8672 end subroutine
8673#endif
8674
8675#if LK1_ENABLED
8676 PURE module subroutine setSplitConDefComCusIns_D1_D0_LK1(field, array, sep, instance, sorted, unique, keep)
8677#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8678 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_LK1
8679#endif
8680 use pm_kind, only: LKG => LK1
8681 use pm_container, only: cvl_pdt
8682 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
8683 logical(LKG) , intent(in) , contiguous :: array(:)
8684 logical(LKG) , intent(in) :: sep
8685 integer(IK) , intent(in) , contiguous :: instance(:)
8686 logical(LK) , intent(in) , optional :: sorted
8687 logical(LK) , intent(in) , optional :: unique
8688 logical(LK) , intent(in) , optional :: keep
8689 end subroutine
8690#endif
8691
8692 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8693
8694#if CK5_ENABLED
8695 PURE module subroutine setSplitConDefComCusIns_D1_D0_CK5(field, array, sep, instance, sorted, unique, keep)
8696#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8697 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_CK5
8698#endif
8699 use pm_kind, only: CKG => CK5
8700 use pm_container, only: cvc_pdt
8701 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
8702 complex(CKG) , intent(in) , contiguous :: array(:)
8703 complex(CKG) , intent(in) :: sep
8704 integer(IK) , intent(in) , contiguous :: instance(:)
8705 logical(LK) , intent(in) , optional :: sorted
8706 logical(LK) , intent(in) , optional :: unique
8707 logical(LK) , intent(in) , optional :: keep
8708 end subroutine
8709#endif
8710
8711#if CK4_ENABLED
8712 PURE module subroutine setSplitConDefComCusIns_D1_D0_CK4(field, array, sep, instance, sorted, unique, keep)
8713#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8714 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_CK4
8715#endif
8716 use pm_kind, only: CKG => CK4
8717 use pm_container, only: cvc_pdt
8718 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
8719 complex(CKG) , intent(in) , contiguous :: array(:)
8720 complex(CKG) , intent(in) :: sep
8721 integer(IK) , intent(in) , contiguous :: instance(:)
8722 logical(LK) , intent(in) , optional :: sorted
8723 logical(LK) , intent(in) , optional :: unique
8724 logical(LK) , intent(in) , optional :: keep
8725 end subroutine
8726#endif
8727
8728#if CK3_ENABLED
8729 PURE module subroutine setSplitConDefComCusIns_D1_D0_CK3(field, array, sep, instance, sorted, unique, keep)
8730#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8731 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_CK3
8732#endif
8733 use pm_kind, only: CKG => CK3
8734 use pm_container, only: cvc_pdt
8735 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
8736 complex(CKG) , intent(in) , contiguous :: array(:)
8737 complex(CKG) , intent(in) :: sep
8738 integer(IK) , intent(in) , contiguous :: instance(:)
8739 logical(LK) , intent(in) , optional :: sorted
8740 logical(LK) , intent(in) , optional :: unique
8741 logical(LK) , intent(in) , optional :: keep
8742 end subroutine
8743#endif
8744
8745#if CK2_ENABLED
8746 PURE module subroutine setSplitConDefComCusIns_D1_D0_CK2(field, array, sep, instance, sorted, unique, keep)
8747#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8748 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_CK2
8749#endif
8750 use pm_kind, only: CKG => CK2
8751 use pm_container, only: cvc_pdt
8752 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
8753 complex(CKG) , intent(in) , contiguous :: array(:)
8754 complex(CKG) , intent(in) :: sep
8755 integer(IK) , intent(in) , contiguous :: instance(:)
8756 logical(LK) , intent(in) , optional :: sorted
8757 logical(LK) , intent(in) , optional :: unique
8758 logical(LK) , intent(in) , optional :: keep
8759 end subroutine
8760#endif
8761
8762#if CK1_ENABLED
8763 PURE module subroutine setSplitConDefComCusIns_D1_D0_CK1(field, array, sep, instance, sorted, unique, keep)
8764#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8765 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_CK1
8766#endif
8767 use pm_kind, only: CKG => CK1
8768 use pm_container, only: cvc_pdt
8769 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
8770 complex(CKG) , intent(in) , contiguous :: array(:)
8771 complex(CKG) , intent(in) :: sep
8772 integer(IK) , intent(in) , contiguous :: instance(:)
8773 logical(LK) , intent(in) , optional :: sorted
8774 logical(LK) , intent(in) , optional :: unique
8775 logical(LK) , intent(in) , optional :: keep
8776 end subroutine
8777#endif
8778
8779 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8780
8781#if RK5_ENABLED
8782 PURE module subroutine setSplitConDefComCusIns_D1_D0_RK5(field, array, sep, instance, sorted, unique, keep)
8783#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8784 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_RK5
8785#endif
8786 use pm_kind, only: RKG => RK5
8787 use pm_container, only: cvr_pdt
8788 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
8789 real(RKG) , intent(in) , contiguous :: array(:)
8790 real(RKG) , intent(in) :: sep
8791 integer(IK) , intent(in) , contiguous :: instance(:)
8792 logical(LK) , intent(in) , optional :: sorted
8793 logical(LK) , intent(in) , optional :: unique
8794 logical(LK) , intent(in) , optional :: keep
8795 end subroutine
8796#endif
8797
8798#if RK4_ENABLED
8799 PURE module subroutine setSplitConDefComCusIns_D1_D0_RK4(field, array, sep, instance, sorted, unique, keep)
8800#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8801 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_RK4
8802#endif
8803 use pm_kind, only: RKG => RK4
8804 use pm_container, only: cvr_pdt
8805 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
8806 real(RKG) , intent(in) , contiguous :: array(:)
8807 real(RKG) , intent(in) :: sep
8808 integer(IK) , intent(in) , contiguous :: instance(:)
8809 logical(LK) , intent(in) , optional :: sorted
8810 logical(LK) , intent(in) , optional :: unique
8811 logical(LK) , intent(in) , optional :: keep
8812 end subroutine
8813#endif
8814
8815#if RK3_ENABLED
8816 PURE module subroutine setSplitConDefComCusIns_D1_D0_RK3(field, array, sep, instance, sorted, unique, keep)
8817#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8818 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_RK3
8819#endif
8820 use pm_kind, only: RKG => RK3
8821 use pm_container, only: cvr_pdt
8822 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
8823 real(RKG) , intent(in) , contiguous :: array(:)
8824 real(RKG) , intent(in) :: sep
8825 integer(IK) , intent(in) , contiguous :: instance(:)
8826 logical(LK) , intent(in) , optional :: sorted
8827 logical(LK) , intent(in) , optional :: unique
8828 logical(LK) , intent(in) , optional :: keep
8829 end subroutine
8830#endif
8831
8832#if RK2_ENABLED
8833 PURE module subroutine setSplitConDefComCusIns_D1_D0_RK2(field, array, sep, instance, sorted, unique, keep)
8834#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8835 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_RK2
8836#endif
8837 use pm_kind, only: RKG => RK2
8838 use pm_container, only: cvr_pdt
8839 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
8840 real(RKG) , intent(in) , contiguous :: array(:)
8841 real(RKG) , intent(in) :: sep
8842 integer(IK) , intent(in) , contiguous :: instance(:)
8843 logical(LK) , intent(in) , optional :: sorted
8844 logical(LK) , intent(in) , optional :: unique
8845 logical(LK) , intent(in) , optional :: keep
8846 end subroutine
8847#endif
8848
8849#if RK1_ENABLED
8850 PURE module subroutine setSplitConDefComCusIns_D1_D0_RK1(field, array, sep, instance, sorted, unique, keep)
8851#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8852 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D0_RK1
8853#endif
8854 use pm_kind, only: RKG => RK1
8855 use pm_container, only: cvr_pdt
8856 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
8857 real(RKG) , intent(in) , contiguous :: array(:)
8858 real(RKG) , intent(in) :: sep
8859 integer(IK) , intent(in) , contiguous :: instance(:)
8860 logical(LK) , intent(in) , optional :: sorted
8861 logical(LK) , intent(in) , optional :: unique
8862 logical(LK) , intent(in) , optional :: keep
8863 end subroutine
8864#endif
8865
8866 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8867
8868 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8869 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8870 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8871
8872 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8873
8874#if SK5_ENABLED
8875 module subroutine setSplitConCusComCusIns_D0_D0_SK5(field, array, sep, iseq, instance, sorted, unique, keep)
8876#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8877 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D0_D0_SK5
8878#endif
8879 use pm_kind, only: SKG => SK5
8880 use pm_container, only: css_pdt
8881 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
8882 character(*,SKG) , intent(in) :: array
8883 character(*,SKG) , intent(in) :: sep
8884 procedure(logical(LK)) :: iseq
8885 integer(IK) , intent(in) , contiguous :: instance(:)
8886 logical(LK) , intent(in) , optional :: sorted
8887 logical(LK) , intent(in) , optional :: unique
8888 logical(LK) , intent(in) , optional :: keep
8889 end subroutine
8890#endif
8891
8892#if SK4_ENABLED
8893 module subroutine setSplitConCusComCusIns_D0_D0_SK4(field, array, sep, iseq, instance, sorted, unique, keep)
8894#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8895 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D0_D0_SK4
8896#endif
8897 use pm_kind, only: SKG => SK4
8898 use pm_container, only: css_pdt
8899 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
8900 character(*,SKG) , intent(in) :: array
8901 character(*,SKG) , intent(in) :: sep
8902 procedure(logical(LK)) :: iseq
8903 integer(IK) , intent(in) , contiguous :: instance(:)
8904 logical(LK) , intent(in) , optional :: sorted
8905 logical(LK) , intent(in) , optional :: unique
8906 logical(LK) , intent(in) , optional :: keep
8907 end subroutine
8908#endif
8909
8910#if SK3_ENABLED
8911 module subroutine setSplitConCusComCusIns_D0_D0_SK3(field, array, sep, iseq, instance, sorted, unique, keep)
8912#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8913 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D0_D0_SK3
8914#endif
8915 use pm_kind, only: SKG => SK3
8916 use pm_container, only: css_pdt
8917 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
8918 character(*,SKG) , intent(in) :: array
8919 character(*,SKG) , intent(in) :: sep
8920 procedure(logical(LK)) :: iseq
8921 integer(IK) , intent(in) , contiguous :: instance(:)
8922 logical(LK) , intent(in) , optional :: sorted
8923 logical(LK) , intent(in) , optional :: unique
8924 logical(LK) , intent(in) , optional :: keep
8925 end subroutine
8926#endif
8927
8928#if SK2_ENABLED
8929 module subroutine setSplitConCusComCusIns_D0_D0_SK2(field, array, sep, iseq, instance, sorted, unique, keep)
8930#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8931 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D0_D0_SK2
8932#endif
8933 use pm_kind, only: SKG => SK2
8934 use pm_container, only: css_pdt
8935 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
8936 character(*,SKG) , intent(in) :: array
8937 character(*,SKG) , intent(in) :: sep
8938 procedure(logical(LK)) :: iseq
8939 integer(IK) , intent(in) , contiguous :: instance(:)
8940 logical(LK) , intent(in) , optional :: sorted
8941 logical(LK) , intent(in) , optional :: unique
8942 logical(LK) , intent(in) , optional :: keep
8943 end subroutine
8944#endif
8945
8946#if SK1_ENABLED
8947 module subroutine setSplitConCusComCusIns_D0_D0_SK1(field, array, sep, iseq, instance, sorted, unique, keep)
8948#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8949 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D0_D0_SK1
8950#endif
8951 use pm_kind, only: SKG => SK1
8952 use pm_container, only: css_pdt
8953 type(css_pdt(SKG)) , intent(out) , allocatable :: field(:)
8954 character(*,SKG) , intent(in) :: array
8955 character(*,SKG) , intent(in) :: sep
8956 procedure(logical(LK)) :: iseq
8957 integer(IK) , intent(in) , contiguous :: instance(:)
8958 logical(LK) , intent(in) , optional :: sorted
8959 logical(LK) , intent(in) , optional :: unique
8960 logical(LK) , intent(in) , optional :: keep
8961 end subroutine
8962#endif
8963
8964 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8965
8966#if SK5_ENABLED
8967 module subroutine setSplitConCusComCusIns_D1_D0_SK5(field, array, sep, iseq, instance, sorted, unique, keep)
8968#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8969 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_SK5
8970#endif
8971 use pm_kind, only: SKG => SK5
8972 use pm_container, only: cvs_pdt
8973 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
8974 character(*,SKG) , intent(in) , contiguous :: array(:)
8975 character(*,SKG) , intent(in) :: sep
8976 procedure(logical(LK)) :: iseq
8977 integer(IK) , intent(in) , contiguous :: instance(:)
8978 logical(LK) , intent(in) , optional :: sorted
8979 logical(LK) , intent(in) , optional :: unique
8980 logical(LK) , intent(in) , optional :: keep
8981 end subroutine
8982#endif
8983
8984#if SK4_ENABLED
8985 module subroutine setSplitConCusComCusIns_D1_D0_SK4(field, array, sep, iseq, instance, sorted, unique, keep)
8986#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
8987 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_SK4
8988#endif
8989 use pm_kind, only: SKG => SK4
8990 use pm_container, only: cvs_pdt
8991 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
8992 character(*,SKG) , intent(in) , contiguous :: array(:)
8993 character(*,SKG) , intent(in) :: sep
8994 procedure(logical(LK)) :: iseq
8995 integer(IK) , intent(in) , contiguous :: instance(:)
8996 logical(LK) , intent(in) , optional :: sorted
8997 logical(LK) , intent(in) , optional :: unique
8998 logical(LK) , intent(in) , optional :: keep
8999 end subroutine
9000#endif
9001
9002#if SK3_ENABLED
9003 module subroutine setSplitConCusComCusIns_D1_D0_SK3(field, array, sep, iseq, instance, sorted, unique, keep)
9004#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9005 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_SK3
9006#endif
9007 use pm_kind, only: SKG => SK3
9008 use pm_container, only: cvs_pdt
9009 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9010 character(*,SKG) , intent(in) , contiguous :: array(:)
9011 character(*,SKG) , intent(in) :: sep
9012 procedure(logical(LK)) :: iseq
9013 integer(IK) , intent(in) , contiguous :: instance(:)
9014 logical(LK) , intent(in) , optional :: sorted
9015 logical(LK) , intent(in) , optional :: unique
9016 logical(LK) , intent(in) , optional :: keep
9017 end subroutine
9018#endif
9019
9020#if SK2_ENABLED
9021 module subroutine setSplitConCusComCusIns_D1_D0_SK2(field, array, sep, iseq, instance, sorted, unique, keep)
9022#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9023 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_SK2
9024#endif
9025 use pm_kind, only: SKG => SK2
9026 use pm_container, only: cvs_pdt
9027 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9028 character(*,SKG) , intent(in) , contiguous :: array(:)
9029 character(*,SKG) , intent(in) :: sep
9030 procedure(logical(LK)) :: iseq
9031 integer(IK) , intent(in) , contiguous :: instance(:)
9032 logical(LK) , intent(in) , optional :: sorted
9033 logical(LK) , intent(in) , optional :: unique
9034 logical(LK) , intent(in) , optional :: keep
9035 end subroutine
9036#endif
9037
9038#if SK1_ENABLED
9039 module subroutine setSplitConCusComCusIns_D1_D0_SK1(field, array, sep, iseq, instance, sorted, unique, keep)
9040#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9041 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_SK1
9042#endif
9043 use pm_kind, only: SKG => SK1
9044 use pm_container, only: cvs_pdt
9045 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9046 character(*,SKG) , intent(in) , contiguous :: array(:)
9047 character(*,SKG) , intent(in) :: sep
9048 procedure(logical(LK)) :: iseq
9049 integer(IK) , intent(in) , contiguous :: instance(:)
9050 logical(LK) , intent(in) , optional :: sorted
9051 logical(LK) , intent(in) , optional :: unique
9052 logical(LK) , intent(in) , optional :: keep
9053 end subroutine
9054#endif
9055
9056 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9057
9058#if IK5_ENABLED
9059 module subroutine setSplitConCusComCusIns_D1_D0_IK5(field, array, sep, iseq, instance, sorted, unique, keep)
9060#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9061 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_IK5
9062#endif
9063 use pm_kind, only: IKG => IK5
9064 use pm_container, only: cvi_pdt
9065 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9066 integer(IKG) , intent(in) , contiguous :: array(:)
9067 integer(IKG) , intent(in) :: sep
9068 procedure(logical(LK)) :: iseq
9069 integer(IK) , intent(in) , contiguous :: instance(:)
9070 logical(LK) , intent(in) , optional :: sorted
9071 logical(LK) , intent(in) , optional :: unique
9072 logical(LK) , intent(in) , optional :: keep
9073 end subroutine
9074#endif
9075
9076#if IK4_ENABLED
9077 module subroutine setSplitConCusComCusIns_D1_D0_IK4(field, array, sep, iseq, instance, sorted, unique, keep)
9078#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9079 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_IK4
9080#endif
9081 use pm_kind, only: IKG => IK4
9082 use pm_container, only: cvi_pdt
9083 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9084 integer(IKG) , intent(in) , contiguous :: array(:)
9085 integer(IKG) , intent(in) :: sep
9086 procedure(logical(LK)) :: iseq
9087 integer(IK) , intent(in) , contiguous :: instance(:)
9088 logical(LK) , intent(in) , optional :: sorted
9089 logical(LK) , intent(in) , optional :: unique
9090 logical(LK) , intent(in) , optional :: keep
9091 end subroutine
9092#endif
9093
9094#if IK3_ENABLED
9095 module subroutine setSplitConCusComCusIns_D1_D0_IK3(field, array, sep, iseq, instance, sorted, unique, keep)
9096#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9097 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_IK3
9098#endif
9099 use pm_kind, only: IKG => IK3
9100 use pm_container, only: cvi_pdt
9101 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9102 integer(IKG) , intent(in) , contiguous :: array(:)
9103 integer(IKG) , intent(in) :: sep
9104 procedure(logical(LK)) :: iseq
9105 integer(IK) , intent(in) , contiguous :: instance(:)
9106 logical(LK) , intent(in) , optional :: sorted
9107 logical(LK) , intent(in) , optional :: unique
9108 logical(LK) , intent(in) , optional :: keep
9109 end subroutine
9110#endif
9111
9112#if IK2_ENABLED
9113 module subroutine setSplitConCusComCusIns_D1_D0_IK2(field, array, sep, iseq, instance, sorted, unique, keep)
9114#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9115 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_IK2
9116#endif
9117 use pm_kind, only: IKG => IK2
9118 use pm_container, only: cvi_pdt
9119 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9120 integer(IKG) , intent(in) , contiguous :: array(:)
9121 integer(IKG) , intent(in) :: sep
9122 procedure(logical(LK)) :: iseq
9123 integer(IK) , intent(in) , contiguous :: instance(:)
9124 logical(LK) , intent(in) , optional :: sorted
9125 logical(LK) , intent(in) , optional :: unique
9126 logical(LK) , intent(in) , optional :: keep
9127 end subroutine
9128#endif
9129
9130#if IK1_ENABLED
9131 module subroutine setSplitConCusComCusIns_D1_D0_IK1(field, array, sep, iseq, instance, sorted, unique, keep)
9132#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9133 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_IK1
9134#endif
9135 use pm_kind, only: IKG => IK1
9136 use pm_container, only: cvi_pdt
9137 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9138 integer(IKG) , intent(in) , contiguous :: array(:)
9139 integer(IKG) , intent(in) :: sep
9140 procedure(logical(LK)) :: iseq
9141 integer(IK) , intent(in) , contiguous :: instance(:)
9142 logical(LK) , intent(in) , optional :: sorted
9143 logical(LK) , intent(in) , optional :: unique
9144 logical(LK) , intent(in) , optional :: keep
9145 end subroutine
9146#endif
9147
9148 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9149
9150#if LK5_ENABLED
9151 module subroutine setSplitConCusComCusIns_D1_D0_LK5(field, array, sep, iseq, instance, sorted, unique, keep)
9152#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9153 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_LK5
9154#endif
9155 use pm_kind, only: LKG => LK5
9156 use pm_container, only: cvl_pdt
9157 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9158 logical(LKG) , intent(in) , contiguous :: array(:)
9159 logical(LKG) , intent(in) :: sep
9160 procedure(logical(LK)) :: iseq
9161 integer(IK) , intent(in) , contiguous :: instance(:)
9162 logical(LK) , intent(in) , optional :: sorted
9163 logical(LK) , intent(in) , optional :: unique
9164 logical(LK) , intent(in) , optional :: keep
9165 end subroutine
9166#endif
9167
9168#if LK4_ENABLED
9169 module subroutine setSplitConCusComCusIns_D1_D0_LK4(field, array, sep, iseq, instance, sorted, unique, keep)
9170#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9171 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_LK4
9172#endif
9173 use pm_kind, only: LKG => LK4
9174 use pm_container, only: cvl_pdt
9175 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9176 logical(LKG) , intent(in) , contiguous :: array(:)
9177 logical(LKG) , intent(in) :: sep
9178 procedure(logical(LK)) :: iseq
9179 integer(IK) , intent(in) , contiguous :: instance(:)
9180 logical(LK) , intent(in) , optional :: sorted
9181 logical(LK) , intent(in) , optional :: unique
9182 logical(LK) , intent(in) , optional :: keep
9183 end subroutine
9184#endif
9185
9186#if LK3_ENABLED
9187 module subroutine setSplitConCusComCusIns_D1_D0_LK3(field, array, sep, iseq, instance, sorted, unique, keep)
9188#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9189 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_LK3
9190#endif
9191 use pm_kind, only: LKG => LK3
9192 use pm_container, only: cvl_pdt
9193 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9194 logical(LKG) , intent(in) , contiguous :: array(:)
9195 logical(LKG) , intent(in) :: sep
9196 procedure(logical(LK)) :: iseq
9197 integer(IK) , intent(in) , contiguous :: instance(:)
9198 logical(LK) , intent(in) , optional :: sorted
9199 logical(LK) , intent(in) , optional :: unique
9200 logical(LK) , intent(in) , optional :: keep
9201 end subroutine
9202#endif
9203
9204#if LK2_ENABLED
9205 module subroutine setSplitConCusComCusIns_D1_D0_LK2(field, array, sep, iseq, instance, sorted, unique, keep)
9206#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9207 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_LK2
9208#endif
9209 use pm_kind, only: LKG => LK2
9210 use pm_container, only: cvl_pdt
9211 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9212 logical(LKG) , intent(in) , contiguous :: array(:)
9213 logical(LKG) , intent(in) :: sep
9214 procedure(logical(LK)) :: iseq
9215 integer(IK) , intent(in) , contiguous :: instance(:)
9216 logical(LK) , intent(in) , optional :: sorted
9217 logical(LK) , intent(in) , optional :: unique
9218 logical(LK) , intent(in) , optional :: keep
9219 end subroutine
9220#endif
9221
9222#if LK1_ENABLED
9223 module subroutine setSplitConCusComCusIns_D1_D0_LK1(field, array, sep, iseq, instance, sorted, unique, keep)
9224#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9225 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_LK1
9226#endif
9227 use pm_kind, only: LKG => LK1
9228 use pm_container, only: cvl_pdt
9229 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9230 logical(LKG) , intent(in) , contiguous :: array(:)
9231 logical(LKG) , intent(in) :: sep
9232 procedure(logical(LK)) :: iseq
9233 integer(IK) , intent(in) , contiguous :: instance(:)
9234 logical(LK) , intent(in) , optional :: sorted
9235 logical(LK) , intent(in) , optional :: unique
9236 logical(LK) , intent(in) , optional :: keep
9237 end subroutine
9238#endif
9239
9240 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9241
9242#if CK5_ENABLED
9243 module subroutine setSplitConCusComCusIns_D1_D0_CK5(field, array, sep, iseq, instance, sorted, unique, keep)
9244#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9245 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_CK5
9246#endif
9247 use pm_kind, only: CKG => CK5
9248 use pm_container, only: cvc_pdt
9249 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
9250 complex(CKG) , intent(in) , contiguous :: array(:)
9251 complex(CKG) , intent(in) :: sep
9252 procedure(logical(LK)) :: iseq
9253 integer(IK) , intent(in) , contiguous :: instance(:)
9254 logical(LK) , intent(in) , optional :: sorted
9255 logical(LK) , intent(in) , optional :: unique
9256 logical(LK) , intent(in) , optional :: keep
9257 end subroutine
9258#endif
9259
9260#if CK4_ENABLED
9261 module subroutine setSplitConCusComCusIns_D1_D0_CK4(field, array, sep, iseq, instance, sorted, unique, keep)
9262#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9263 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_CK4
9264#endif
9265 use pm_kind, only: CKG => CK4
9266 use pm_container, only: cvc_pdt
9267 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
9268 complex(CKG) , intent(in) , contiguous :: array(:)
9269 complex(CKG) , intent(in) :: sep
9270 procedure(logical(LK)) :: iseq
9271 integer(IK) , intent(in) , contiguous :: instance(:)
9272 logical(LK) , intent(in) , optional :: sorted
9273 logical(LK) , intent(in) , optional :: unique
9274 logical(LK) , intent(in) , optional :: keep
9275 end subroutine
9276#endif
9277
9278#if CK3_ENABLED
9279 module subroutine setSplitConCusComCusIns_D1_D0_CK3(field, array, sep, iseq, instance, sorted, unique, keep)
9280#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9281 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_CK3
9282#endif
9283 use pm_kind, only: CKG => CK3
9284 use pm_container, only: cvc_pdt
9285 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
9286 complex(CKG) , intent(in) , contiguous :: array(:)
9287 complex(CKG) , intent(in) :: sep
9288 procedure(logical(LK)) :: iseq
9289 integer(IK) , intent(in) , contiguous :: instance(:)
9290 logical(LK) , intent(in) , optional :: sorted
9291 logical(LK) , intent(in) , optional :: unique
9292 logical(LK) , intent(in) , optional :: keep
9293 end subroutine
9294#endif
9295
9296#if CK2_ENABLED
9297 module subroutine setSplitConCusComCusIns_D1_D0_CK2(field, array, sep, iseq, instance, sorted, unique, keep)
9298#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9299 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_CK2
9300#endif
9301 use pm_kind, only: CKG => CK2
9302 use pm_container, only: cvc_pdt
9303 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
9304 complex(CKG) , intent(in) , contiguous :: array(:)
9305 complex(CKG) , intent(in) :: sep
9306 procedure(logical(LK)) :: iseq
9307 integer(IK) , intent(in) , contiguous :: instance(:)
9308 logical(LK) , intent(in) , optional :: sorted
9309 logical(LK) , intent(in) , optional :: unique
9310 logical(LK) , intent(in) , optional :: keep
9311 end subroutine
9312#endif
9313
9314#if CK1_ENABLED
9315 module subroutine setSplitConCusComCusIns_D1_D0_CK1(field, array, sep, iseq, instance, sorted, unique, keep)
9316#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9317 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_CK1
9318#endif
9319 use pm_kind, only: CKG => CK1
9320 use pm_container, only: cvc_pdt
9321 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
9322 complex(CKG) , intent(in) , contiguous :: array(:)
9323 complex(CKG) , intent(in) :: sep
9324 procedure(logical(LK)) :: iseq
9325 integer(IK) , intent(in) , contiguous :: instance(:)
9326 logical(LK) , intent(in) , optional :: sorted
9327 logical(LK) , intent(in) , optional :: unique
9328 logical(LK) , intent(in) , optional :: keep
9329 end subroutine
9330#endif
9331
9332 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9333
9334#if RK5_ENABLED
9335 module subroutine setSplitConCusComCusIns_D1_D0_RK5(field, array, sep, iseq, instance, sorted, unique, keep)
9336#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9337 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_RK5
9338#endif
9339 use pm_kind, only: RKG => RK5
9340 use pm_container, only: cvr_pdt
9341 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
9342 real(RKG) , intent(in) , contiguous :: array(:)
9343 real(RKG) , intent(in) :: sep
9344 procedure(logical(LK)) :: iseq
9345 integer(IK) , intent(in) , contiguous :: instance(:)
9346 logical(LK) , intent(in) , optional :: sorted
9347 logical(LK) , intent(in) , optional :: unique
9348 logical(LK) , intent(in) , optional :: keep
9349 end subroutine
9350#endif
9351
9352#if RK4_ENABLED
9353 module subroutine setSplitConCusComCusIns_D1_D0_RK4(field, array, sep, iseq, instance, sorted, unique, keep)
9354#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9355 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_RK4
9356#endif
9357 use pm_kind, only: RKG => RK4
9358 use pm_container, only: cvr_pdt
9359 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
9360 real(RKG) , intent(in) , contiguous :: array(:)
9361 real(RKG) , intent(in) :: sep
9362 procedure(logical(LK)) :: iseq
9363 integer(IK) , intent(in) , contiguous :: instance(:)
9364 logical(LK) , intent(in) , optional :: sorted
9365 logical(LK) , intent(in) , optional :: unique
9366 logical(LK) , intent(in) , optional :: keep
9367 end subroutine
9368#endif
9369
9370#if RK3_ENABLED
9371 module subroutine setSplitConCusComCusIns_D1_D0_RK3(field, array, sep, iseq, instance, sorted, unique, keep)
9372#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9373 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_RK3
9374#endif
9375 use pm_kind, only: RKG => RK3
9376 use pm_container, only: cvr_pdt
9377 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
9378 real(RKG) , intent(in) , contiguous :: array(:)
9379 real(RKG) , intent(in) :: sep
9380 procedure(logical(LK)) :: iseq
9381 integer(IK) , intent(in) , contiguous :: instance(:)
9382 logical(LK) , intent(in) , optional :: sorted
9383 logical(LK) , intent(in) , optional :: unique
9384 logical(LK) , intent(in) , optional :: keep
9385 end subroutine
9386#endif
9387
9388#if RK2_ENABLED
9389 module subroutine setSplitConCusComCusIns_D1_D0_RK2(field, array, sep, iseq, instance, sorted, unique, keep)
9390#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9391 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_RK2
9392#endif
9393 use pm_kind, only: RKG => RK2
9394 use pm_container, only: cvr_pdt
9395 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
9396 real(RKG) , intent(in) , contiguous :: array(:)
9397 real(RKG) , intent(in) :: sep
9398 procedure(logical(LK)) :: iseq
9399 integer(IK) , intent(in) , contiguous :: instance(:)
9400 logical(LK) , intent(in) , optional :: sorted
9401 logical(LK) , intent(in) , optional :: unique
9402 logical(LK) , intent(in) , optional :: keep
9403 end subroutine
9404#endif
9405
9406#if RK1_ENABLED
9407 module subroutine setSplitConCusComCusIns_D1_D0_RK1(field, array, sep, iseq, instance, sorted, unique, keep)
9408#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9409 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D0_RK1
9410#endif
9411 use pm_kind, only: RKG => RK1
9412 use pm_container, only: cvr_pdt
9413 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
9414 real(RKG) , intent(in) , contiguous :: array(:)
9415 real(RKG) , intent(in) :: sep
9416 procedure(logical(LK)) :: iseq
9417 integer(IK) , intent(in) , contiguous :: instance(:)
9418 logical(LK) , intent(in) , optional :: sorted
9419 logical(LK) , intent(in) , optional :: unique
9420 logical(LK) , intent(in) , optional :: keep
9421 end subroutine
9422#endif
9423
9424 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9425
9426 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9427 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9428 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9429
9430 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9431
9432#if SK5_ENABLED
9433 PURE module subroutine setSplitConDefComDefIns_D1_D1_SK5(field, array, sep, keep)
9434#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9435 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_SK5
9436#endif
9437 use pm_kind, only: SKG => SK5
9438 use pm_container, only: cvs_pdt
9439 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9440 character(*,SKG) , intent(in) , contiguous :: array(:)
9441 character(*,SKG) , intent(in) , contiguous :: sep(:)
9442 logical(LK) , intent(in) , optional :: keep
9443 end subroutine
9444#endif
9445
9446#if SK4_ENABLED
9447 PURE module subroutine setSplitConDefComDefIns_D1_D1_SK4(field, array, sep, keep)
9448#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9449 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_SK4
9450#endif
9451 use pm_kind, only: SKG => SK4
9452 use pm_container, only: cvs_pdt
9453 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9454 character(*,SKG) , intent(in) , contiguous :: array(:)
9455 character(*,SKG) , intent(in) , contiguous :: sep(:)
9456 logical(LK) , intent(in) , optional :: keep
9457 end subroutine
9458#endif
9459
9460#if SK3_ENABLED
9461 PURE module subroutine setSplitConDefComDefIns_D1_D1_SK3(field, array, sep, keep)
9462#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9463 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_SK3
9464#endif
9465 use pm_kind, only: SKG => SK3
9466 use pm_container, only: cvs_pdt
9467 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9468 character(*,SKG) , intent(in) , contiguous :: array(:)
9469 character(*,SKG) , intent(in) , contiguous :: sep(:)
9470 logical(LK) , intent(in) , optional :: keep
9471 end subroutine
9472#endif
9473
9474#if SK2_ENABLED
9475 PURE module subroutine setSplitConDefComDefIns_D1_D1_SK2(field, array, sep, keep)
9476#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9477 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_SK2
9478#endif
9479 use pm_kind, only: SKG => SK2
9480 use pm_container, only: cvs_pdt
9481 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9482 character(*,SKG) , intent(in) , contiguous :: array(:)
9483 character(*,SKG) , intent(in) , contiguous :: sep(:)
9484 logical(LK) , intent(in) , optional :: keep
9485 end subroutine
9486#endif
9487
9488#if SK1_ENABLED
9489 PURE module subroutine setSplitConDefComDefIns_D1_D1_SK1(field, array, sep, keep)
9490#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9491 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_SK1
9492#endif
9493 use pm_kind, only: SKG => SK1
9494 use pm_container, only: cvs_pdt
9495 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9496 character(*,SKG) , intent(in) , contiguous :: array(:)
9497 character(*,SKG) , intent(in) , contiguous :: sep(:)
9498 logical(LK) , intent(in) , optional :: keep
9499 end subroutine
9500#endif
9501
9502 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9503
9504#if IK5_ENABLED
9505 PURE module subroutine setSplitConDefComDefIns_D1_D1_IK5(field, array, sep, keep)
9506#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9507 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_IK5
9508#endif
9509 use pm_kind, only: IKG => IK5
9510 use pm_container, only: cvi_pdt
9511 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9512 integer(IKG) , intent(in) , contiguous :: array(:)
9513 integer(IKG) , intent(in) , contiguous :: sep(:)
9514 logical(LK) , intent(in) , optional :: keep
9515 end subroutine
9516#endif
9517
9518#if IK4_ENABLED
9519 PURE module subroutine setSplitConDefComDefIns_D1_D1_IK4(field, array, sep, keep)
9520#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9521 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_IK4
9522#endif
9523 use pm_kind, only: IKG => IK4
9524 use pm_container, only: cvi_pdt
9525 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9526 integer(IKG) , intent(in) , contiguous :: array(:)
9527 integer(IKG) , intent(in) , contiguous :: sep(:)
9528 logical(LK) , intent(in) , optional :: keep
9529 end subroutine
9530#endif
9531
9532#if IK3_ENABLED
9533 PURE module subroutine setSplitConDefComDefIns_D1_D1_IK3(field, array, sep, keep)
9534#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9535 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_IK3
9536#endif
9537 use pm_kind, only: IKG => IK3
9538 use pm_container, only: cvi_pdt
9539 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9540 integer(IKG) , intent(in) , contiguous :: array(:)
9541 integer(IKG) , intent(in) , contiguous :: sep(:)
9542 logical(LK) , intent(in) , optional :: keep
9543 end subroutine
9544#endif
9545
9546#if IK2_ENABLED
9547 PURE module subroutine setSplitConDefComDefIns_D1_D1_IK2(field, array, sep, keep)
9548#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9549 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_IK2
9550#endif
9551 use pm_kind, only: IKG => IK2
9552 use pm_container, only: cvi_pdt
9553 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9554 integer(IKG) , intent(in) , contiguous :: array(:)
9555 integer(IKG) , intent(in) , contiguous :: sep(:)
9556 logical(LK) , intent(in) , optional :: keep
9557 end subroutine
9558#endif
9559
9560#if IK1_ENABLED
9561 PURE module subroutine setSplitConDefComDefIns_D1_D1_IK1(field, array, sep, keep)
9562#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9563 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_IK1
9564#endif
9565 use pm_kind, only: IKG => IK1
9566 use pm_container, only: cvi_pdt
9567 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9568 integer(IKG) , intent(in) , contiguous :: array(:)
9569 integer(IKG) , intent(in) , contiguous :: sep(:)
9570 logical(LK) , intent(in) , optional :: keep
9571 end subroutine
9572#endif
9573
9574 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9575
9576#if LK5_ENABLED
9577 PURE module subroutine setSplitConDefComDefIns_D1_D1_LK5(field, array, sep, keep)
9578#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9579 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_LK5
9580#endif
9581 use pm_kind, only: LKG => LK5
9582 use pm_container, only: cvl_pdt
9583 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9584 logical(LKG) , intent(in) , contiguous :: array(:)
9585 logical(LKG) , intent(in) , contiguous :: sep(:)
9586 logical(LK) , intent(in) , optional :: keep
9587 end subroutine
9588#endif
9589
9590#if LK4_ENABLED
9591 PURE module subroutine setSplitConDefComDefIns_D1_D1_LK4(field, array, sep, keep)
9592#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9593 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_LK4
9594#endif
9595 use pm_kind, only: LKG => LK4
9596 use pm_container, only: cvl_pdt
9597 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9598 logical(LKG) , intent(in) , contiguous :: array(:)
9599 logical(LKG) , intent(in) , contiguous :: sep(:)
9600 logical(LK) , intent(in) , optional :: keep
9601 end subroutine
9602#endif
9603
9604#if LK3_ENABLED
9605 PURE module subroutine setSplitConDefComDefIns_D1_D1_LK3(field, array, sep, keep)
9606#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9607 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_LK3
9608#endif
9609 use pm_kind, only: LKG => LK3
9610 use pm_container, only: cvl_pdt
9611 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9612 logical(LKG) , intent(in) , contiguous :: array(:)
9613 logical(LKG) , intent(in) , contiguous :: sep(:)
9614 logical(LK) , intent(in) , optional :: keep
9615 end subroutine
9616#endif
9617
9618#if LK2_ENABLED
9619 PURE module subroutine setSplitConDefComDefIns_D1_D1_LK2(field, array, sep, keep)
9620#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9621 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_LK2
9622#endif
9623 use pm_kind, only: LKG => LK2
9624 use pm_container, only: cvl_pdt
9625 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9626 logical(LKG) , intent(in) , contiguous :: array(:)
9627 logical(LKG) , intent(in) , contiguous :: sep(:)
9628 logical(LK) , intent(in) , optional :: keep
9629 end subroutine
9630#endif
9631
9632#if LK1_ENABLED
9633 PURE module subroutine setSplitConDefComDefIns_D1_D1_LK1(field, array, sep, keep)
9634#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9635 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_LK1
9636#endif
9637 use pm_kind, only: LKG => LK1
9638 use pm_container, only: cvl_pdt
9639 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9640 logical(LKG) , intent(in) , contiguous :: array(:)
9641 logical(LKG) , intent(in) , contiguous :: sep(:)
9642 logical(LK) , intent(in) , optional :: keep
9643 end subroutine
9644#endif
9645
9646 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9647
9648#if CK5_ENABLED
9649 PURE module subroutine setSplitConDefComDefIns_D1_D1_CK5(field, array, sep, keep)
9650#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9651 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_CK5
9652#endif
9653 use pm_kind, only: CKG => CK5
9654 use pm_container, only: cvc_pdt
9655 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
9656 complex(CKG) , intent(in) , contiguous :: array(:)
9657 complex(CKG) , intent(in) , contiguous :: sep(:)
9658 logical(LK) , intent(in) , optional :: keep
9659 end subroutine
9660#endif
9661
9662#if CK4_ENABLED
9663 PURE module subroutine setSplitConDefComDefIns_D1_D1_CK4(field, array, sep, keep)
9664#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9665 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_CK4
9666#endif
9667 use pm_kind, only: CKG => CK4
9668 use pm_container, only: cvc_pdt
9669 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
9670 complex(CKG) , intent(in) , contiguous :: array(:)
9671 complex(CKG) , intent(in) , contiguous :: sep(:)
9672 logical(LK) , intent(in) , optional :: keep
9673 end subroutine
9674#endif
9675
9676#if CK3_ENABLED
9677 PURE module subroutine setSplitConDefComDefIns_D1_D1_CK3(field, array, sep, keep)
9678#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9679 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_CK3
9680#endif
9681 use pm_kind, only: CKG => CK3
9682 use pm_container, only: cvc_pdt
9683 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
9684 complex(CKG) , intent(in) , contiguous :: array(:)
9685 complex(CKG) , intent(in) , contiguous :: sep(:)
9686 logical(LK) , intent(in) , optional :: keep
9687 end subroutine
9688#endif
9689
9690#if CK2_ENABLED
9691 PURE module subroutine setSplitConDefComDefIns_D1_D1_CK2(field, array, sep, keep)
9692#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9693 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_CK2
9694#endif
9695 use pm_kind, only: CKG => CK2
9696 use pm_container, only: cvc_pdt
9697 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
9698 complex(CKG) , intent(in) , contiguous :: array(:)
9699 complex(CKG) , intent(in) , contiguous :: sep(:)
9700 logical(LK) , intent(in) , optional :: keep
9701 end subroutine
9702#endif
9703
9704#if CK1_ENABLED
9705 PURE module subroutine setSplitConDefComDefIns_D1_D1_CK1(field, array, sep, keep)
9706#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9707 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_CK1
9708#endif
9709 use pm_kind, only: CKG => CK1
9710 use pm_container, only: cvc_pdt
9711 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
9712 complex(CKG) , intent(in) , contiguous :: array(:)
9713 complex(CKG) , intent(in) , contiguous :: sep(:)
9714 logical(LK) , intent(in) , optional :: keep
9715 end subroutine
9716#endif
9717
9718 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9719
9720#if RK5_ENABLED
9721 PURE module subroutine setSplitConDefComDefIns_D1_D1_RK5(field, array, sep, keep)
9722#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9723 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_RK5
9724#endif
9725 use pm_kind, only: RKG => RK5
9726 use pm_container, only: cvr_pdt
9727 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
9728 real(RKG) , intent(in) , contiguous :: array(:)
9729 real(RKG) , intent(in) , contiguous :: sep(:)
9730 logical(LK) , intent(in) , optional :: keep
9731 end subroutine
9732#endif
9733
9734#if RK4_ENABLED
9735 PURE module subroutine setSplitConDefComDefIns_D1_D1_RK4(field, array, sep, keep)
9736#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9737 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_RK4
9738#endif
9739 use pm_kind, only: RKG => RK4
9740 use pm_container, only: cvr_pdt
9741 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
9742 real(RKG) , intent(in) , contiguous :: array(:)
9743 real(RKG) , intent(in) , contiguous :: sep(:)
9744 logical(LK) , intent(in) , optional :: keep
9745 end subroutine
9746#endif
9747
9748#if RK3_ENABLED
9749 PURE module subroutine setSplitConDefComDefIns_D1_D1_RK3(field, array, sep, keep)
9750#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9751 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_RK3
9752#endif
9753 use pm_kind, only: RKG => RK3
9754 use pm_container, only: cvr_pdt
9755 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
9756 real(RKG) , intent(in) , contiguous :: array(:)
9757 real(RKG) , intent(in) , contiguous :: sep(:)
9758 logical(LK) , intent(in) , optional :: keep
9759 end subroutine
9760#endif
9761
9762#if RK2_ENABLED
9763 PURE module subroutine setSplitConDefComDefIns_D1_D1_RK2(field, array, sep, keep)
9764#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9765 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_RK2
9766#endif
9767 use pm_kind, only: RKG => RK2
9768 use pm_container, only: cvr_pdt
9769 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
9770 real(RKG) , intent(in) , contiguous :: array(:)
9771 real(RKG) , intent(in) , contiguous :: sep(:)
9772 logical(LK) , intent(in) , optional :: keep
9773 end subroutine
9774#endif
9775
9776#if RK1_ENABLED
9777 PURE module subroutine setSplitConDefComDefIns_D1_D1_RK1(field, array, sep, keep)
9778#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9779 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComDefIns_D1_D1_RK1
9780#endif
9781 use pm_kind, only: RKG => RK1
9782 use pm_container, only: cvr_pdt
9783 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
9784 real(RKG) , intent(in) , contiguous :: array(:)
9785 real(RKG) , intent(in) , contiguous :: sep(:)
9786 logical(LK) , intent(in) , optional :: keep
9787 end subroutine
9788#endif
9789
9790 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9791
9792 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9793 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9794 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9795
9796 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9797
9798#if SK5_ENABLED
9799 module subroutine setSplitConCusComDefIns_D1_D1_SK5(field, array, sep, iseq, keep)
9800#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9801 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_SK5
9802#endif
9803 use pm_kind, only: SKG => SK5
9804 use pm_container, only: cvs_pdt
9805 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9806 character(*,SKG) , intent(in) , contiguous :: array(:)
9807 character(*,SKG) , intent(in) , contiguous :: sep(:)
9808 procedure(logical(LK)) :: iseq
9809 logical(LK) , intent(in) , optional :: keep
9810 end subroutine
9811#endif
9812
9813#if SK4_ENABLED
9814 module subroutine setSplitConCusComDefIns_D1_D1_SK4(field, array, sep, iseq, keep)
9815#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9816 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_SK4
9817#endif
9818 use pm_kind, only: SKG => SK4
9819 use pm_container, only: cvs_pdt
9820 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9821 character(*,SKG) , intent(in) , contiguous :: array(:)
9822 character(*,SKG) , intent(in) , contiguous :: sep(:)
9823 procedure(logical(LK)) :: iseq
9824 logical(LK) , intent(in) , optional :: keep
9825 end subroutine
9826#endif
9827
9828#if SK3_ENABLED
9829 module subroutine setSplitConCusComDefIns_D1_D1_SK3(field, array, sep, iseq, keep)
9830#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9831 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_SK3
9832#endif
9833 use pm_kind, only: SKG => SK3
9834 use pm_container, only: cvs_pdt
9835 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9836 character(*,SKG) , intent(in) , contiguous :: array(:)
9837 character(*,SKG) , intent(in) , contiguous :: sep(:)
9838 procedure(logical(LK)) :: iseq
9839 logical(LK) , intent(in) , optional :: keep
9840 end subroutine
9841#endif
9842
9843#if SK2_ENABLED
9844 module subroutine setSplitConCusComDefIns_D1_D1_SK2(field, array, sep, iseq, keep)
9845#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9846 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_SK2
9847#endif
9848 use pm_kind, only: SKG => SK2
9849 use pm_container, only: cvs_pdt
9850 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9851 character(*,SKG) , intent(in) , contiguous :: array(:)
9852 character(*,SKG) , intent(in) , contiguous :: sep(:)
9853 procedure(logical(LK)) :: iseq
9854 logical(LK) , intent(in) , optional :: keep
9855 end subroutine
9856#endif
9857
9858#if SK1_ENABLED
9859 module subroutine setSplitConCusComDefIns_D1_D1_SK1(field, array, sep, iseq, keep)
9860#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9861 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_SK1
9862#endif
9863 use pm_kind, only: SKG => SK1
9864 use pm_container, only: cvs_pdt
9865 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
9866 character(*,SKG) , intent(in) , contiguous :: array(:)
9867 character(*,SKG) , intent(in) , contiguous :: sep(:)
9868 procedure(logical(LK)) :: iseq
9869 logical(LK) , intent(in) , optional :: keep
9870 end subroutine
9871#endif
9872
9873 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9874
9875#if IK5_ENABLED
9876 module subroutine setSplitConCusComDefIns_D1_D1_IK5(field, array, sep, iseq, keep)
9877#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9878 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_IK5
9879#endif
9880 use pm_kind, only: IKG => IK5
9881 use pm_container, only: cvi_pdt
9882 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9883 integer(IKG) , intent(in) , contiguous :: array(:)
9884 integer(IKG) , intent(in) , contiguous :: sep(:)
9885 procedure(logical(LK)) :: iseq
9886 logical(LK) , intent(in) , optional :: keep
9887 end subroutine
9888#endif
9889
9890#if IK4_ENABLED
9891 module subroutine setSplitConCusComDefIns_D1_D1_IK4(field, array, sep, iseq, keep)
9892#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9893 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_IK4
9894#endif
9895 use pm_kind, only: IKG => IK4
9896 use pm_container, only: cvi_pdt
9897 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9898 integer(IKG) , intent(in) , contiguous :: array(:)
9899 integer(IKG) , intent(in) , contiguous :: sep(:)
9900 procedure(logical(LK)) :: iseq
9901 logical(LK) , intent(in) , optional :: keep
9902 end subroutine
9903#endif
9904
9905#if IK3_ENABLED
9906 module subroutine setSplitConCusComDefIns_D1_D1_IK3(field, array, sep, iseq, keep)
9907#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9908 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_IK3
9909#endif
9910 use pm_kind, only: IKG => IK3
9911 use pm_container, only: cvi_pdt
9912 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9913 integer(IKG) , intent(in) , contiguous :: array(:)
9914 integer(IKG) , intent(in) , contiguous :: sep(:)
9915 procedure(logical(LK)) :: iseq
9916 logical(LK) , intent(in) , optional :: keep
9917 end subroutine
9918#endif
9919
9920#if IK2_ENABLED
9921 module subroutine setSplitConCusComDefIns_D1_D1_IK2(field, array, sep, iseq, keep)
9922#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9923 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_IK2
9924#endif
9925 use pm_kind, only: IKG => IK2
9926 use pm_container, only: cvi_pdt
9927 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9928 integer(IKG) , intent(in) , contiguous :: array(:)
9929 integer(IKG) , intent(in) , contiguous :: sep(:)
9930 procedure(logical(LK)) :: iseq
9931 logical(LK) , intent(in) , optional :: keep
9932 end subroutine
9933#endif
9934
9935#if IK1_ENABLED
9936 module subroutine setSplitConCusComDefIns_D1_D1_IK1(field, array, sep, iseq, keep)
9937#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9938 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_IK1
9939#endif
9940 use pm_kind, only: IKG => IK1
9941 use pm_container, only: cvi_pdt
9942 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
9943 integer(IKG) , intent(in) , contiguous :: array(:)
9944 integer(IKG) , intent(in) , contiguous :: sep(:)
9945 procedure(logical(LK)) :: iseq
9946 logical(LK) , intent(in) , optional :: keep
9947 end subroutine
9948#endif
9949
9950 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
9951
9952#if LK5_ENABLED
9953 module subroutine setSplitConCusComDefIns_D1_D1_LK5(field, array, sep, iseq, keep)
9954#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9955 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_LK5
9956#endif
9957 use pm_kind, only: LKG => LK5
9958 use pm_container, only: cvl_pdt
9959 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9960 logical(LKG) , intent(in) , contiguous :: array(:)
9961 logical(LKG) , intent(in) , contiguous :: sep(:)
9962 procedure(logical(LK)) :: iseq
9963 logical(LK) , intent(in) , optional :: keep
9964 end subroutine
9965#endif
9966
9967#if LK4_ENABLED
9968 module subroutine setSplitConCusComDefIns_D1_D1_LK4(field, array, sep, iseq, keep)
9969#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9970 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_LK4
9971#endif
9972 use pm_kind, only: LKG => LK4
9973 use pm_container, only: cvl_pdt
9974 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9975 logical(LKG) , intent(in) , contiguous :: array(:)
9976 logical(LKG) , intent(in) , contiguous :: sep(:)
9977 procedure(logical(LK)) :: iseq
9978 logical(LK) , intent(in) , optional :: keep
9979 end subroutine
9980#endif
9981
9982#if LK3_ENABLED
9983 module subroutine setSplitConCusComDefIns_D1_D1_LK3(field, array, sep, iseq, keep)
9984#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
9985 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_LK3
9986#endif
9987 use pm_kind, only: LKG => LK3
9988 use pm_container, only: cvl_pdt
9989 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
9990 logical(LKG) , intent(in) , contiguous :: array(:)
9991 logical(LKG) , intent(in) , contiguous :: sep(:)
9992 procedure(logical(LK)) :: iseq
9993 logical(LK) , intent(in) , optional :: keep
9994 end subroutine
9995#endif
9996
9997#if LK2_ENABLED
9998 module subroutine setSplitConCusComDefIns_D1_D1_LK2(field, array, sep, iseq, keep)
9999#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10000 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_LK2
10001#endif
10002 use pm_kind, only: LKG => LK2
10003 use pm_container, only: cvl_pdt
10004 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
10005 logical(LKG) , intent(in) , contiguous :: array(:)
10006 logical(LKG) , intent(in) , contiguous :: sep(:)
10007 procedure(logical(LK)) :: iseq
10008 logical(LK) , intent(in) , optional :: keep
10009 end subroutine
10010#endif
10011
10012#if LK1_ENABLED
10013 module subroutine setSplitConCusComDefIns_D1_D1_LK1(field, array, sep, iseq, keep)
10014#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10015 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_LK1
10016#endif
10017 use pm_kind, only: LKG => LK1
10018 use pm_container, only: cvl_pdt
10019 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
10020 logical(LKG) , intent(in) , contiguous :: array(:)
10021 logical(LKG) , intent(in) , contiguous :: sep(:)
10022 procedure(logical(LK)) :: iseq
10023 logical(LK) , intent(in) , optional :: keep
10024 end subroutine
10025#endif
10026
10027 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10028
10029#if CK5_ENABLED
10030 module subroutine setSplitConCusComDefIns_D1_D1_CK5(field, array, sep, iseq, keep)
10031#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10032 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_CK5
10033#endif
10034 use pm_kind, only: CKG => CK5
10035 use pm_container, only: cvc_pdt
10036 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10037 complex(CKG) , intent(in) , contiguous :: array(:)
10038 complex(CKG) , intent(in) , contiguous :: sep(:)
10039 procedure(logical(LK)) :: iseq
10040 logical(LK) , intent(in) , optional :: keep
10041 end subroutine
10042#endif
10043
10044#if CK4_ENABLED
10045 module subroutine setSplitConCusComDefIns_D1_D1_CK4(field, array, sep, iseq, keep)
10046#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10047 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_CK4
10048#endif
10049 use pm_kind, only: CKG => CK4
10050 use pm_container, only: cvc_pdt
10051 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10052 complex(CKG) , intent(in) , contiguous :: array(:)
10053 complex(CKG) , intent(in) , contiguous :: sep(:)
10054 procedure(logical(LK)) :: iseq
10055 logical(LK) , intent(in) , optional :: keep
10056 end subroutine
10057#endif
10058
10059#if CK3_ENABLED
10060 module subroutine setSplitConCusComDefIns_D1_D1_CK3(field, array, sep, iseq, keep)
10061#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10062 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_CK3
10063#endif
10064 use pm_kind, only: CKG => CK3
10065 use pm_container, only: cvc_pdt
10066 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10067 complex(CKG) , intent(in) , contiguous :: array(:)
10068 complex(CKG) , intent(in) , contiguous :: sep(:)
10069 procedure(logical(LK)) :: iseq
10070 logical(LK) , intent(in) , optional :: keep
10071 end subroutine
10072#endif
10073
10074#if CK2_ENABLED
10075 module subroutine setSplitConCusComDefIns_D1_D1_CK2(field, array, sep, iseq, keep)
10076#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10077 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_CK2
10078#endif
10079 use pm_kind, only: CKG => CK2
10080 use pm_container, only: cvc_pdt
10081 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10082 complex(CKG) , intent(in) , contiguous :: array(:)
10083 complex(CKG) , intent(in) , contiguous :: sep(:)
10084 procedure(logical(LK)) :: iseq
10085 logical(LK) , intent(in) , optional :: keep
10086 end subroutine
10087#endif
10088
10089#if CK1_ENABLED
10090 module subroutine setSplitConCusComDefIns_D1_D1_CK1(field, array, sep, iseq, keep)
10091#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10092 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_CK1
10093#endif
10094 use pm_kind, only: CKG => CK1
10095 use pm_container, only: cvc_pdt
10096 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10097 complex(CKG) , intent(in) , contiguous :: array(:)
10098 complex(CKG) , intent(in) , contiguous :: sep(:)
10099 procedure(logical(LK)) :: iseq
10100 logical(LK) , intent(in) , optional :: keep
10101 end subroutine
10102#endif
10103
10104 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10105
10106#if RK5_ENABLED
10107 module subroutine setSplitConCusComDefIns_D1_D1_RK5(field, array, sep, iseq, keep)
10108#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10109 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_RK5
10110#endif
10111 use pm_kind, only: RKG => RK5
10112 use pm_container, only: cvr_pdt
10113 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
10114 real(RKG) , intent(in) , contiguous :: array(:)
10115 real(RKG) , intent(in) , contiguous :: sep(:)
10116 procedure(logical(LK)) :: iseq
10117 logical(LK) , intent(in) , optional :: keep
10118 end subroutine
10119#endif
10120
10121#if RK4_ENABLED
10122 module subroutine setSplitConCusComDefIns_D1_D1_RK4(field, array, sep, iseq, keep)
10123#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10124 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_RK4
10125#endif
10126 use pm_kind, only: RKG => RK4
10127 use pm_container, only: cvr_pdt
10128 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
10129 real(RKG) , intent(in) , contiguous :: array(:)
10130 real(RKG) , intent(in) , contiguous :: sep(:)
10131 procedure(logical(LK)) :: iseq
10132 logical(LK) , intent(in) , optional :: keep
10133 end subroutine
10134#endif
10135
10136#if RK3_ENABLED
10137 module subroutine setSplitConCusComDefIns_D1_D1_RK3(field, array, sep, iseq, keep)
10138#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10139 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_RK3
10140#endif
10141 use pm_kind, only: RKG => RK3
10142 use pm_container, only: cvr_pdt
10143 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
10144 real(RKG) , intent(in) , contiguous :: array(:)
10145 real(RKG) , intent(in) , contiguous :: sep(:)
10146 procedure(logical(LK)) :: iseq
10147 logical(LK) , intent(in) , optional :: keep
10148 end subroutine
10149#endif
10150
10151#if RK2_ENABLED
10152 module subroutine setSplitConCusComDefIns_D1_D1_RK2(field, array, sep, iseq, keep)
10153#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10154 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_RK2
10155#endif
10156 use pm_kind, only: RKG => RK2
10157 use pm_container, only: cvr_pdt
10158 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
10159 real(RKG) , intent(in) , contiguous :: array(:)
10160 real(RKG) , intent(in) , contiguous :: sep(:)
10161 procedure(logical(LK)) :: iseq
10162 logical(LK) , intent(in) , optional :: keep
10163 end subroutine
10164#endif
10165
10166#if RK1_ENABLED
10167 module subroutine setSplitConCusComDefIns_D1_D1_RK1(field, array, sep, iseq, keep)
10168#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10169 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComDefIns_D1_D1_RK1
10170#endif
10171 use pm_kind, only: RKG => RK1
10172 use pm_container, only: cvr_pdt
10173 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
10174 real(RKG) , intent(in) , contiguous :: array(:)
10175 real(RKG) , intent(in) , contiguous :: sep(:)
10176 procedure(logical(LK)) :: iseq
10177 logical(LK) , intent(in) , optional :: keep
10178 end subroutine
10179#endif
10180
10181 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10182
10183 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10184 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10185 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10186
10187 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10188
10189#if SK5_ENABLED
10190 PURE module subroutine setSplitConDefComCusIns_D1_D1_SK5(field, array, sep, instance, sorted, unique, keep)
10191#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10192 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_SK5
10193#endif
10194 use pm_kind, only: SKG => SK5
10195 use pm_container, only: cvs_pdt
10196 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
10197 character(*,SKG) , intent(in) , contiguous :: array(:)
10198 character(*,SKG) , intent(in) , contiguous :: sep(:)
10199 integer(IK) , intent(in) , contiguous :: instance(:)
10200 logical(LK) , intent(in) , optional :: sorted
10201 logical(LK) , intent(in) , optional :: unique
10202 logical(LK) , intent(in) , optional :: keep
10203 end subroutine
10204#endif
10205
10206#if SK4_ENABLED
10207 PURE module subroutine setSplitConDefComCusIns_D1_D1_SK4(field, array, sep, instance, sorted, unique, keep)
10208#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10209 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_SK4
10210#endif
10211 use pm_kind, only: SKG => SK4
10212 use pm_container, only: cvs_pdt
10213 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
10214 character(*,SKG) , intent(in) , contiguous :: array(:)
10215 character(*,SKG) , intent(in) , contiguous :: sep(:)
10216 integer(IK) , intent(in) , contiguous :: instance(:)
10217 logical(LK) , intent(in) , optional :: sorted
10218 logical(LK) , intent(in) , optional :: unique
10219 logical(LK) , intent(in) , optional :: keep
10220 end subroutine
10221#endif
10222
10223#if SK3_ENABLED
10224 PURE module subroutine setSplitConDefComCusIns_D1_D1_SK3(field, array, sep, instance, sorted, unique, keep)
10225#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10226 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_SK3
10227#endif
10228 use pm_kind, only: SKG => SK3
10229 use pm_container, only: cvs_pdt
10230 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
10231 character(*,SKG) , intent(in) , contiguous :: array(:)
10232 character(*,SKG) , intent(in) , contiguous :: sep(:)
10233 integer(IK) , intent(in) , contiguous :: instance(:)
10234 logical(LK) , intent(in) , optional :: sorted
10235 logical(LK) , intent(in) , optional :: unique
10236 logical(LK) , intent(in) , optional :: keep
10237 end subroutine
10238#endif
10239
10240#if SK2_ENABLED
10241 PURE module subroutine setSplitConDefComCusIns_D1_D1_SK2(field, array, sep, instance, sorted, unique, keep)
10242#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10243 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_SK2
10244#endif
10245 use pm_kind, only: SKG => SK2
10246 use pm_container, only: cvs_pdt
10247 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
10248 character(*,SKG) , intent(in) , contiguous :: array(:)
10249 character(*,SKG) , intent(in) , contiguous :: sep(:)
10250 integer(IK) , intent(in) , contiguous :: instance(:)
10251 logical(LK) , intent(in) , optional :: sorted
10252 logical(LK) , intent(in) , optional :: unique
10253 logical(LK) , intent(in) , optional :: keep
10254 end subroutine
10255#endif
10256
10257#if SK1_ENABLED
10258 PURE module subroutine setSplitConDefComCusIns_D1_D1_SK1(field, array, sep, instance, sorted, unique, keep)
10259#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10260 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_SK1
10261#endif
10262 use pm_kind, only: SKG => SK1
10263 use pm_container, only: cvs_pdt
10264 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
10265 character(*,SKG) , intent(in) , contiguous :: array(:)
10266 character(*,SKG) , intent(in) , contiguous :: sep(:)
10267 integer(IK) , intent(in) , contiguous :: instance(:)
10268 logical(LK) , intent(in) , optional :: sorted
10269 logical(LK) , intent(in) , optional :: unique
10270 logical(LK) , intent(in) , optional :: keep
10271 end subroutine
10272#endif
10273
10274 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10275
10276#if IK5_ENABLED
10277 PURE module subroutine setSplitConDefComCusIns_D1_D1_IK5(field, array, sep, instance, sorted, unique, keep)
10278#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10279 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_IK5
10280#endif
10281 use pm_kind, only: IKG => IK5
10282 use pm_container, only: cvi_pdt
10283 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
10284 integer(IKG) , intent(in) , contiguous :: array(:)
10285 integer(IKG) , intent(in) , contiguous :: sep(:)
10286 integer(IK) , intent(in) , contiguous :: instance(:)
10287 logical(LK) , intent(in) , optional :: sorted
10288 logical(LK) , intent(in) , optional :: unique
10289 logical(LK) , intent(in) , optional :: keep
10290 end subroutine
10291#endif
10292
10293#if IK4_ENABLED
10294 PURE module subroutine setSplitConDefComCusIns_D1_D1_IK4(field, array, sep, instance, sorted, unique, keep)
10295#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10296 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_IK4
10297#endif
10298 use pm_kind, only: IKG => IK4
10299 use pm_container, only: cvi_pdt
10300 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
10301 integer(IKG) , intent(in) , contiguous :: array(:)
10302 integer(IKG) , intent(in) , contiguous :: sep(:)
10303 integer(IK) , intent(in) , contiguous :: instance(:)
10304 logical(LK) , intent(in) , optional :: sorted
10305 logical(LK) , intent(in) , optional :: unique
10306 logical(LK) , intent(in) , optional :: keep
10307 end subroutine
10308#endif
10309
10310#if IK3_ENABLED
10311 PURE module subroutine setSplitConDefComCusIns_D1_D1_IK3(field, array, sep, instance, sorted, unique, keep)
10312#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10313 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_IK3
10314#endif
10315 use pm_kind, only: IKG => IK3
10316 use pm_container, only: cvi_pdt
10317 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
10318 integer(IKG) , intent(in) , contiguous :: array(:)
10319 integer(IKG) , intent(in) , contiguous :: sep(:)
10320 integer(IK) , intent(in) , contiguous :: instance(:)
10321 logical(LK) , intent(in) , optional :: sorted
10322 logical(LK) , intent(in) , optional :: unique
10323 logical(LK) , intent(in) , optional :: keep
10324 end subroutine
10325#endif
10326
10327#if IK2_ENABLED
10328 PURE module subroutine setSplitConDefComCusIns_D1_D1_IK2(field, array, sep, instance, sorted, unique, keep)
10329#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10330 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_IK2
10331#endif
10332 use pm_kind, only: IKG => IK2
10333 use pm_container, only: cvi_pdt
10334 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
10335 integer(IKG) , intent(in) , contiguous :: array(:)
10336 integer(IKG) , intent(in) , contiguous :: sep(:)
10337 integer(IK) , intent(in) , contiguous :: instance(:)
10338 logical(LK) , intent(in) , optional :: sorted
10339 logical(LK) , intent(in) , optional :: unique
10340 logical(LK) , intent(in) , optional :: keep
10341 end subroutine
10342#endif
10343
10344#if IK1_ENABLED
10345 PURE module subroutine setSplitConDefComCusIns_D1_D1_IK1(field, array, sep, instance, sorted, unique, keep)
10346#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10347 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_IK1
10348#endif
10349 use pm_kind, only: IKG => IK1
10350 use pm_container, only: cvi_pdt
10351 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
10352 integer(IKG) , intent(in) , contiguous :: array(:)
10353 integer(IKG) , intent(in) , contiguous :: sep(:)
10354 integer(IK) , intent(in) , contiguous :: instance(:)
10355 logical(LK) , intent(in) , optional :: sorted
10356 logical(LK) , intent(in) , optional :: unique
10357 logical(LK) , intent(in) , optional :: keep
10358 end subroutine
10359#endif
10360
10361 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10362
10363#if LK5_ENABLED
10364 PURE module subroutine setSplitConDefComCusIns_D1_D1_LK5(field, array, sep, instance, sorted, unique, keep)
10365#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10366 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_LK5
10367#endif
10368 use pm_kind, only: LKG => LK5
10369 use pm_container, only: cvl_pdt
10370 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
10371 logical(LKG) , intent(in) , contiguous :: array(:)
10372 logical(LKG) , intent(in) , contiguous :: sep(:)
10373 integer(IK) , intent(in) , contiguous :: instance(:)
10374 logical(LK) , intent(in) , optional :: sorted
10375 logical(LK) , intent(in) , optional :: unique
10376 logical(LK) , intent(in) , optional :: keep
10377 end subroutine
10378#endif
10379
10380#if LK4_ENABLED
10381 PURE module subroutine setSplitConDefComCusIns_D1_D1_LK4(field, array, sep, instance, sorted, unique, keep)
10382#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10383 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_LK4
10384#endif
10385 use pm_kind, only: LKG => LK4
10386 use pm_container, only: cvl_pdt
10387 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
10388 logical(LKG) , intent(in) , contiguous :: array(:)
10389 logical(LKG) , intent(in) , contiguous :: sep(:)
10390 integer(IK) , intent(in) , contiguous :: instance(:)
10391 logical(LK) , intent(in) , optional :: sorted
10392 logical(LK) , intent(in) , optional :: unique
10393 logical(LK) , intent(in) , optional :: keep
10394 end subroutine
10395#endif
10396
10397#if LK3_ENABLED
10398 PURE module subroutine setSplitConDefComCusIns_D1_D1_LK3(field, array, sep, instance, sorted, unique, keep)
10399#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10400 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_LK3
10401#endif
10402 use pm_kind, only: LKG => LK3
10403 use pm_container, only: cvl_pdt
10404 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
10405 logical(LKG) , intent(in) , contiguous :: array(:)
10406 logical(LKG) , intent(in) , contiguous :: sep(:)
10407 integer(IK) , intent(in) , contiguous :: instance(:)
10408 logical(LK) , intent(in) , optional :: sorted
10409 logical(LK) , intent(in) , optional :: unique
10410 logical(LK) , intent(in) , optional :: keep
10411 end subroutine
10412#endif
10413
10414#if LK2_ENABLED
10415 PURE module subroutine setSplitConDefComCusIns_D1_D1_LK2(field, array, sep, instance, sorted, unique, keep)
10416#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10417 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_LK2
10418#endif
10419 use pm_kind, only: LKG => LK2
10420 use pm_container, only: cvl_pdt
10421 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
10422 logical(LKG) , intent(in) , contiguous :: array(:)
10423 logical(LKG) , intent(in) , contiguous :: sep(:)
10424 integer(IK) , intent(in) , contiguous :: instance(:)
10425 logical(LK) , intent(in) , optional :: sorted
10426 logical(LK) , intent(in) , optional :: unique
10427 logical(LK) , intent(in) , optional :: keep
10428 end subroutine
10429#endif
10430
10431#if LK1_ENABLED
10432 PURE module subroutine setSplitConDefComCusIns_D1_D1_LK1(field, array, sep, instance, sorted, unique, keep)
10433#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10434 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_LK1
10435#endif
10436 use pm_kind, only: LKG => LK1
10437 use pm_container, only: cvl_pdt
10438 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
10439 logical(LKG) , intent(in) , contiguous :: array(:)
10440 logical(LKG) , intent(in) , contiguous :: sep(:)
10441 integer(IK) , intent(in) , contiguous :: instance(:)
10442 logical(LK) , intent(in) , optional :: sorted
10443 logical(LK) , intent(in) , optional :: unique
10444 logical(LK) , intent(in) , optional :: keep
10445 end subroutine
10446#endif
10447
10448 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10449
10450#if CK5_ENABLED
10451 PURE module subroutine setSplitConDefComCusIns_D1_D1_CK5(field, array, sep, instance, sorted, unique, keep)
10452#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10453 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_CK5
10454#endif
10455 use pm_kind, only: CKG => CK5
10456 use pm_container, only: cvc_pdt
10457 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10458 complex(CKG) , intent(in) , contiguous :: array(:)
10459 complex(CKG) , intent(in) , contiguous :: sep(:)
10460 integer(IK) , intent(in) , contiguous :: instance(:)
10461 logical(LK) , intent(in) , optional :: sorted
10462 logical(LK) , intent(in) , optional :: unique
10463 logical(LK) , intent(in) , optional :: keep
10464 end subroutine
10465#endif
10466
10467#if CK4_ENABLED
10468 PURE module subroutine setSplitConDefComCusIns_D1_D1_CK4(field, array, sep, instance, sorted, unique, keep)
10469#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10470 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_CK4
10471#endif
10472 use pm_kind, only: CKG => CK4
10473 use pm_container, only: cvc_pdt
10474 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10475 complex(CKG) , intent(in) , contiguous :: array(:)
10476 complex(CKG) , intent(in) , contiguous :: sep(:)
10477 integer(IK) , intent(in) , contiguous :: instance(:)
10478 logical(LK) , intent(in) , optional :: sorted
10479 logical(LK) , intent(in) , optional :: unique
10480 logical(LK) , intent(in) , optional :: keep
10481 end subroutine
10482#endif
10483
10484#if CK3_ENABLED
10485 PURE module subroutine setSplitConDefComCusIns_D1_D1_CK3(field, array, sep, instance, sorted, unique, keep)
10486#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10487 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_CK3
10488#endif
10489 use pm_kind, only: CKG => CK3
10490 use pm_container, only: cvc_pdt
10491 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10492 complex(CKG) , intent(in) , contiguous :: array(:)
10493 complex(CKG) , intent(in) , contiguous :: sep(:)
10494 integer(IK) , intent(in) , contiguous :: instance(:)
10495 logical(LK) , intent(in) , optional :: sorted
10496 logical(LK) , intent(in) , optional :: unique
10497 logical(LK) , intent(in) , optional :: keep
10498 end subroutine
10499#endif
10500
10501#if CK2_ENABLED
10502 PURE module subroutine setSplitConDefComCusIns_D1_D1_CK2(field, array, sep, instance, sorted, unique, keep)
10503#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10504 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_CK2
10505#endif
10506 use pm_kind, only: CKG => CK2
10507 use pm_container, only: cvc_pdt
10508 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10509 complex(CKG) , intent(in) , contiguous :: array(:)
10510 complex(CKG) , intent(in) , contiguous :: sep(:)
10511 integer(IK) , intent(in) , contiguous :: instance(:)
10512 logical(LK) , intent(in) , optional :: sorted
10513 logical(LK) , intent(in) , optional :: unique
10514 logical(LK) , intent(in) , optional :: keep
10515 end subroutine
10516#endif
10517
10518#if CK1_ENABLED
10519 PURE module subroutine setSplitConDefComCusIns_D1_D1_CK1(field, array, sep, instance, sorted, unique, keep)
10520#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10521 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_CK1
10522#endif
10523 use pm_kind, only: CKG => CK1
10524 use pm_container, only: cvc_pdt
10525 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10526 complex(CKG) , intent(in) , contiguous :: array(:)
10527 complex(CKG) , intent(in) , contiguous :: sep(:)
10528 integer(IK) , intent(in) , contiguous :: instance(:)
10529 logical(LK) , intent(in) , optional :: sorted
10530 logical(LK) , intent(in) , optional :: unique
10531 logical(LK) , intent(in) , optional :: keep
10532 end subroutine
10533#endif
10534
10535 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10536
10537#if RK5_ENABLED
10538 PURE module subroutine setSplitConDefComCusIns_D1_D1_RK5(field, array, sep, instance, sorted, unique, keep)
10539#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10540 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_RK5
10541#endif
10542 use pm_kind, only: RKG => RK5
10543 use pm_container, only: cvr_pdt
10544 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
10545 real(RKG) , intent(in) , contiguous :: array(:)
10546 real(RKG) , intent(in) , contiguous :: sep(:)
10547 integer(IK) , intent(in) , contiguous :: instance(:)
10548 logical(LK) , intent(in) , optional :: sorted
10549 logical(LK) , intent(in) , optional :: unique
10550 logical(LK) , intent(in) , optional :: keep
10551 end subroutine
10552#endif
10553
10554#if RK4_ENABLED
10555 PURE module subroutine setSplitConDefComCusIns_D1_D1_RK4(field, array, sep, instance, sorted, unique, keep)
10556#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10557 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_RK4
10558#endif
10559 use pm_kind, only: RKG => RK4
10560 use pm_container, only: cvr_pdt
10561 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
10562 real(RKG) , intent(in) , contiguous :: array(:)
10563 real(RKG) , intent(in) , contiguous :: sep(:)
10564 integer(IK) , intent(in) , contiguous :: instance(:)
10565 logical(LK) , intent(in) , optional :: sorted
10566 logical(LK) , intent(in) , optional :: unique
10567 logical(LK) , intent(in) , optional :: keep
10568 end subroutine
10569#endif
10570
10571#if RK3_ENABLED
10572 PURE module subroutine setSplitConDefComCusIns_D1_D1_RK3(field, array, sep, instance, sorted, unique, keep)
10573#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10574 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_RK3
10575#endif
10576 use pm_kind, only: RKG => RK3
10577 use pm_container, only: cvr_pdt
10578 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
10579 real(RKG) , intent(in) , contiguous :: array(:)
10580 real(RKG) , intent(in) , contiguous :: sep(:)
10581 integer(IK) , intent(in) , contiguous :: instance(:)
10582 logical(LK) , intent(in) , optional :: sorted
10583 logical(LK) , intent(in) , optional :: unique
10584 logical(LK) , intent(in) , optional :: keep
10585 end subroutine
10586#endif
10587
10588#if RK2_ENABLED
10589 PURE module subroutine setSplitConDefComCusIns_D1_D1_RK2(field, array, sep, instance, sorted, unique, keep)
10590#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10591 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_RK2
10592#endif
10593 use pm_kind, only: RKG => RK2
10594 use pm_container, only: cvr_pdt
10595 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
10596 real(RKG) , intent(in) , contiguous :: array(:)
10597 real(RKG) , intent(in) , contiguous :: sep(:)
10598 integer(IK) , intent(in) , contiguous :: instance(:)
10599 logical(LK) , intent(in) , optional :: sorted
10600 logical(LK) , intent(in) , optional :: unique
10601 logical(LK) , intent(in) , optional :: keep
10602 end subroutine
10603#endif
10604
10605#if RK1_ENABLED
10606 PURE module subroutine setSplitConDefComCusIns_D1_D1_RK1(field, array, sep, instance, sorted, unique, keep)
10607#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10608 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConDefComCusIns_D1_D1_RK1
10609#endif
10610 use pm_kind, only: RKG => RK1
10611 use pm_container, only: cvr_pdt
10612 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
10613 real(RKG) , intent(in) , contiguous :: array(:)
10614 real(RKG) , intent(in) , contiguous :: sep(:)
10615 integer(IK) , intent(in) , contiguous :: instance(:)
10616 logical(LK) , intent(in) , optional :: sorted
10617 logical(LK) , intent(in) , optional :: unique
10618 logical(LK) , intent(in) , optional :: keep
10619 end subroutine
10620#endif
10621
10622 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10623
10624 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10625 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10626 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10627
10628 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10629
10630#if SK5_ENABLED
10631 module subroutine setSplitConCusComCusIns_D1_D1_SK5(field, array, sep, iseq, instance, sorted, unique, keep)
10632#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10633 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_SK5
10634#endif
10635 use pm_kind, only: SKG => SK5
10636 use pm_container, only: cvs_pdt
10637 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
10638 character(*,SKG) , intent(in) , contiguous :: array(:)
10639 character(*,SKG) , intent(in) , contiguous :: sep(:)
10640 procedure(logical(LK)) :: iseq
10641 integer(IK) , intent(in) , contiguous :: instance(:)
10642 logical(LK) , intent(in) , optional :: sorted
10643 logical(LK) , intent(in) , optional :: unique
10644 logical(LK) , intent(in) , optional :: keep
10645 end subroutine
10646#endif
10647
10648#if SK4_ENABLED
10649 module subroutine setSplitConCusComCusIns_D1_D1_SK4(field, array, sep, iseq, instance, sorted, unique, keep)
10650#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10651 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_SK4
10652#endif
10653 use pm_kind, only: SKG => SK4
10654 use pm_container, only: cvs_pdt
10655 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
10656 character(*,SKG) , intent(in) , contiguous :: array(:)
10657 character(*,SKG) , intent(in) , contiguous :: sep(:)
10658 procedure(logical(LK)) :: iseq
10659 integer(IK) , intent(in) , contiguous :: instance(:)
10660 logical(LK) , intent(in) , optional :: sorted
10661 logical(LK) , intent(in) , optional :: unique
10662 logical(LK) , intent(in) , optional :: keep
10663 end subroutine
10664#endif
10665
10666#if SK3_ENABLED
10667 module subroutine setSplitConCusComCusIns_D1_D1_SK3(field, array, sep, iseq, instance, sorted, unique, keep)
10668#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10669 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_SK3
10670#endif
10671 use pm_kind, only: SKG => SK3
10672 use pm_container, only: cvs_pdt
10673 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
10674 character(*,SKG) , intent(in) , contiguous :: array(:)
10675 character(*,SKG) , intent(in) , contiguous :: sep(:)
10676 procedure(logical(LK)) :: iseq
10677 integer(IK) , intent(in) , contiguous :: instance(:)
10678 logical(LK) , intent(in) , optional :: sorted
10679 logical(LK) , intent(in) , optional :: unique
10680 logical(LK) , intent(in) , optional :: keep
10681 end subroutine
10682#endif
10683
10684#if SK2_ENABLED
10685 module subroutine setSplitConCusComCusIns_D1_D1_SK2(field, array, sep, iseq, instance, sorted, unique, keep)
10686#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10687 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_SK2
10688#endif
10689 use pm_kind, only: SKG => SK2
10690 use pm_container, only: cvs_pdt
10691 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
10692 character(*,SKG) , intent(in) , contiguous :: array(:)
10693 character(*,SKG) , intent(in) , contiguous :: sep(:)
10694 procedure(logical(LK)) :: iseq
10695 integer(IK) , intent(in) , contiguous :: instance(:)
10696 logical(LK) , intent(in) , optional :: sorted
10697 logical(LK) , intent(in) , optional :: unique
10698 logical(LK) , intent(in) , optional :: keep
10699 end subroutine
10700#endif
10701
10702#if SK1_ENABLED
10703 module subroutine setSplitConCusComCusIns_D1_D1_SK1(field, array, sep, iseq, instance, sorted, unique, keep)
10704#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10705 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_SK1
10706#endif
10707 use pm_kind, only: SKG => SK1
10708 use pm_container, only: cvs_pdt
10709 type(cvs_pdt(SKG)) , intent(out) , allocatable :: field(:)
10710 character(*,SKG) , intent(in) , contiguous :: array(:)
10711 character(*,SKG) , intent(in) , contiguous :: sep(:)
10712 procedure(logical(LK)) :: iseq
10713 integer(IK) , intent(in) , contiguous :: instance(:)
10714 logical(LK) , intent(in) , optional :: sorted
10715 logical(LK) , intent(in) , optional :: unique
10716 logical(LK) , intent(in) , optional :: keep
10717 end subroutine
10718#endif
10719
10720 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10721
10722#if IK5_ENABLED
10723 module subroutine setSplitConCusComCusIns_D1_D1_IK5(field, array, sep, iseq, instance, sorted, unique, keep)
10724#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10725 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_IK5
10726#endif
10727 use pm_kind, only: IKG => IK5
10728 use pm_container, only: cvi_pdt
10729 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
10730 integer(IKG) , intent(in) , contiguous :: array(:)
10731 integer(IKG) , intent(in) , contiguous :: sep(:)
10732 procedure(logical(LK)) :: iseq
10733 integer(IK) , intent(in) , contiguous :: instance(:)
10734 logical(LK) , intent(in) , optional :: sorted
10735 logical(LK) , intent(in) , optional :: unique
10736 logical(LK) , intent(in) , optional :: keep
10737 end subroutine
10738#endif
10739
10740#if IK4_ENABLED
10741 module subroutine setSplitConCusComCusIns_D1_D1_IK4(field, array, sep, iseq, instance, sorted, unique, keep)
10742#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10743 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_IK4
10744#endif
10745 use pm_kind, only: IKG => IK4
10746 use pm_container, only: cvi_pdt
10747 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
10748 integer(IKG) , intent(in) , contiguous :: array(:)
10749 integer(IKG) , intent(in) , contiguous :: sep(:)
10750 procedure(logical(LK)) :: iseq
10751 integer(IK) , intent(in) , contiguous :: instance(:)
10752 logical(LK) , intent(in) , optional :: sorted
10753 logical(LK) , intent(in) , optional :: unique
10754 logical(LK) , intent(in) , optional :: keep
10755 end subroutine
10756#endif
10757
10758#if IK3_ENABLED
10759 module subroutine setSplitConCusComCusIns_D1_D1_IK3(field, array, sep, iseq, instance, sorted, unique, keep)
10760#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10761 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_IK3
10762#endif
10763 use pm_kind, only: IKG => IK3
10764 use pm_container, only: cvi_pdt
10765 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
10766 integer(IKG) , intent(in) , contiguous :: array(:)
10767 integer(IKG) , intent(in) , contiguous :: sep(:)
10768 procedure(logical(LK)) :: iseq
10769 integer(IK) , intent(in) , contiguous :: instance(:)
10770 logical(LK) , intent(in) , optional :: sorted
10771 logical(LK) , intent(in) , optional :: unique
10772 logical(LK) , intent(in) , optional :: keep
10773 end subroutine
10774#endif
10775
10776#if IK2_ENABLED
10777 module subroutine setSplitConCusComCusIns_D1_D1_IK2(field, array, sep, iseq, instance, sorted, unique, keep)
10778#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10779 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_IK2
10780#endif
10781 use pm_kind, only: IKG => IK2
10782 use pm_container, only: cvi_pdt
10783 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
10784 integer(IKG) , intent(in) , contiguous :: array(:)
10785 integer(IKG) , intent(in) , contiguous :: sep(:)
10786 procedure(logical(LK)) :: iseq
10787 integer(IK) , intent(in) , contiguous :: instance(:)
10788 logical(LK) , intent(in) , optional :: sorted
10789 logical(LK) , intent(in) , optional :: unique
10790 logical(LK) , intent(in) , optional :: keep
10791 end subroutine
10792#endif
10793
10794#if IK1_ENABLED
10795 module subroutine setSplitConCusComCusIns_D1_D1_IK1(field, array, sep, iseq, instance, sorted, unique, keep)
10796#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10797 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_IK1
10798#endif
10799 use pm_kind, only: IKG => IK1
10800 use pm_container, only: cvi_pdt
10801 type(cvi_pdt(IKG)) , intent(out) , allocatable :: field(:)
10802 integer(IKG) , intent(in) , contiguous :: array(:)
10803 integer(IKG) , intent(in) , contiguous :: sep(:)
10804 procedure(logical(LK)) :: iseq
10805 integer(IK) , intent(in) , contiguous :: instance(:)
10806 logical(LK) , intent(in) , optional :: sorted
10807 logical(LK) , intent(in) , optional :: unique
10808 logical(LK) , intent(in) , optional :: keep
10809 end subroutine
10810#endif
10811
10812 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10813
10814#if LK5_ENABLED
10815 module subroutine setSplitConCusComCusIns_D1_D1_LK5(field, array, sep, iseq, instance, sorted, unique, keep)
10816#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10817 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_LK5
10818#endif
10819 use pm_kind, only: LKG => LK5
10820 use pm_container, only: cvl_pdt
10821 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
10822 logical(LKG) , intent(in) , contiguous :: array(:)
10823 logical(LKG) , intent(in) , contiguous :: sep(:)
10824 procedure(logical(LK)) :: iseq
10825 integer(IK) , intent(in) , contiguous :: instance(:)
10826 logical(LK) , intent(in) , optional :: sorted
10827 logical(LK) , intent(in) , optional :: unique
10828 logical(LK) , intent(in) , optional :: keep
10829 end subroutine
10830#endif
10831
10832#if LK4_ENABLED
10833 module subroutine setSplitConCusComCusIns_D1_D1_LK4(field, array, sep, iseq, instance, sorted, unique, keep)
10834#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10835 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_LK4
10836#endif
10837 use pm_kind, only: LKG => LK4
10838 use pm_container, only: cvl_pdt
10839 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
10840 logical(LKG) , intent(in) , contiguous :: array(:)
10841 logical(LKG) , intent(in) , contiguous :: sep(:)
10842 procedure(logical(LK)) :: iseq
10843 integer(IK) , intent(in) , contiguous :: instance(:)
10844 logical(LK) , intent(in) , optional :: sorted
10845 logical(LK) , intent(in) , optional :: unique
10846 logical(LK) , intent(in) , optional :: keep
10847 end subroutine
10848#endif
10849
10850#if LK3_ENABLED
10851 module subroutine setSplitConCusComCusIns_D1_D1_LK3(field, array, sep, iseq, instance, sorted, unique, keep)
10852#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10853 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_LK3
10854#endif
10855 use pm_kind, only: LKG => LK3
10856 use pm_container, only: cvl_pdt
10857 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
10858 logical(LKG) , intent(in) , contiguous :: array(:)
10859 logical(LKG) , intent(in) , contiguous :: sep(:)
10860 procedure(logical(LK)) :: iseq
10861 integer(IK) , intent(in) , contiguous :: instance(:)
10862 logical(LK) , intent(in) , optional :: sorted
10863 logical(LK) , intent(in) , optional :: unique
10864 logical(LK) , intent(in) , optional :: keep
10865 end subroutine
10866#endif
10867
10868#if LK2_ENABLED
10869 module subroutine setSplitConCusComCusIns_D1_D1_LK2(field, array, sep, iseq, instance, sorted, unique, keep)
10870#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10871 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_LK2
10872#endif
10873 use pm_kind, only: LKG => LK2
10874 use pm_container, only: cvl_pdt
10875 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
10876 logical(LKG) , intent(in) , contiguous :: array(:)
10877 logical(LKG) , intent(in) , contiguous :: sep(:)
10878 procedure(logical(LK)) :: iseq
10879 integer(IK) , intent(in) , contiguous :: instance(:)
10880 logical(LK) , intent(in) , optional :: sorted
10881 logical(LK) , intent(in) , optional :: unique
10882 logical(LK) , intent(in) , optional :: keep
10883 end subroutine
10884#endif
10885
10886#if LK1_ENABLED
10887 module subroutine setSplitConCusComCusIns_D1_D1_LK1(field, array, sep, iseq, instance, sorted, unique, keep)
10888#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10889 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_LK1
10890#endif
10891 use pm_kind, only: LKG => LK1
10892 use pm_container, only: cvl_pdt
10893 type(cvl_pdt(LKG)) , intent(out) , allocatable :: field(:)
10894 logical(LKG) , intent(in) , contiguous :: array(:)
10895 logical(LKG) , intent(in) , contiguous :: sep(:)
10896 procedure(logical(LK)) :: iseq
10897 integer(IK) , intent(in) , contiguous :: instance(:)
10898 logical(LK) , intent(in) , optional :: sorted
10899 logical(LK) , intent(in) , optional :: unique
10900 logical(LK) , intent(in) , optional :: keep
10901 end subroutine
10902#endif
10903
10904 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10905
10906#if CK5_ENABLED
10907 module subroutine setSplitConCusComCusIns_D1_D1_CK5(field, array, sep, iseq, instance, sorted, unique, keep)
10908#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10909 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_CK5
10910#endif
10911 use pm_kind, only: CKG => CK5
10912 use pm_container, only: cvc_pdt
10913 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10914 complex(CKG) , intent(in) , contiguous :: array(:)
10915 complex(CKG) , intent(in) , contiguous :: sep(:)
10916 procedure(logical(LK)) :: iseq
10917 integer(IK) , intent(in) , contiguous :: instance(:)
10918 logical(LK) , intent(in) , optional :: sorted
10919 logical(LK) , intent(in) , optional :: unique
10920 logical(LK) , intent(in) , optional :: keep
10921 end subroutine
10922#endif
10923
10924#if CK4_ENABLED
10925 module subroutine setSplitConCusComCusIns_D1_D1_CK4(field, array, sep, iseq, instance, sorted, unique, keep)
10926#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10927 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_CK4
10928#endif
10929 use pm_kind, only: CKG => CK4
10930 use pm_container, only: cvc_pdt
10931 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10932 complex(CKG) , intent(in) , contiguous :: array(:)
10933 complex(CKG) , intent(in) , contiguous :: sep(:)
10934 procedure(logical(LK)) :: iseq
10935 integer(IK) , intent(in) , contiguous :: instance(:)
10936 logical(LK) , intent(in) , optional :: sorted
10937 logical(LK) , intent(in) , optional :: unique
10938 logical(LK) , intent(in) , optional :: keep
10939 end subroutine
10940#endif
10941
10942#if CK3_ENABLED
10943 module subroutine setSplitConCusComCusIns_D1_D1_CK3(field, array, sep, iseq, instance, sorted, unique, keep)
10944#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10945 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_CK3
10946#endif
10947 use pm_kind, only: CKG => CK3
10948 use pm_container, only: cvc_pdt
10949 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10950 complex(CKG) , intent(in) , contiguous :: array(:)
10951 complex(CKG) , intent(in) , contiguous :: sep(:)
10952 procedure(logical(LK)) :: iseq
10953 integer(IK) , intent(in) , contiguous :: instance(:)
10954 logical(LK) , intent(in) , optional :: sorted
10955 logical(LK) , intent(in) , optional :: unique
10956 logical(LK) , intent(in) , optional :: keep
10957 end subroutine
10958#endif
10959
10960#if CK2_ENABLED
10961 module subroutine setSplitConCusComCusIns_D1_D1_CK2(field, array, sep, iseq, instance, sorted, unique, keep)
10962#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10963 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_CK2
10964#endif
10965 use pm_kind, only: CKG => CK2
10966 use pm_container, only: cvc_pdt
10967 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10968 complex(CKG) , intent(in) , contiguous :: array(:)
10969 complex(CKG) , intent(in) , contiguous :: sep(:)
10970 procedure(logical(LK)) :: iseq
10971 integer(IK) , intent(in) , contiguous :: instance(:)
10972 logical(LK) , intent(in) , optional :: sorted
10973 logical(LK) , intent(in) , optional :: unique
10974 logical(LK) , intent(in) , optional :: keep
10975 end subroutine
10976#endif
10977
10978#if CK1_ENABLED
10979 module subroutine setSplitConCusComCusIns_D1_D1_CK1(field, array, sep, iseq, instance, sorted, unique, keep)
10980#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
10981 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_CK1
10982#endif
10983 use pm_kind, only: CKG => CK1
10984 use pm_container, only: cvc_pdt
10985 type(cvc_pdt(CKG)) , intent(out) , allocatable :: field(:)
10986 complex(CKG) , intent(in) , contiguous :: array(:)
10987 complex(CKG) , intent(in) , contiguous :: sep(:)
10988 procedure(logical(LK)) :: iseq
10989 integer(IK) , intent(in) , contiguous :: instance(:)
10990 logical(LK) , intent(in) , optional :: sorted
10991 logical(LK) , intent(in) , optional :: unique
10992 logical(LK) , intent(in) , optional :: keep
10993 end subroutine
10994#endif
10995
10996 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10997
10998#if RK5_ENABLED
10999 module subroutine setSplitConCusComCusIns_D1_D1_RK5(field, array, sep, iseq, instance, sorted, unique, keep)
11000#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11001 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_RK5
11002#endif
11003 use pm_kind, only: RKG => RK5
11004 use pm_container, only: cvr_pdt
11005 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
11006 real(RKG) , intent(in) , contiguous :: array(:)
11007 real(RKG) , intent(in) , contiguous :: sep(:)
11008 procedure(logical(LK)) :: iseq
11009 integer(IK) , intent(in) , contiguous :: instance(:)
11010 logical(LK) , intent(in) , optional :: sorted
11011 logical(LK) , intent(in) , optional :: unique
11012 logical(LK) , intent(in) , optional :: keep
11013 end subroutine
11014#endif
11015
11016#if RK4_ENABLED
11017 module subroutine setSplitConCusComCusIns_D1_D1_RK4(field, array, sep, iseq, instance, sorted, unique, keep)
11018#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11019 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_RK4
11020#endif
11021 use pm_kind, only: RKG => RK4
11022 use pm_container, only: cvr_pdt
11023 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
11024 real(RKG) , intent(in) , contiguous :: array(:)
11025 real(RKG) , intent(in) , contiguous :: sep(:)
11026 procedure(logical(LK)) :: iseq
11027 integer(IK) , intent(in) , contiguous :: instance(:)
11028 logical(LK) , intent(in) , optional :: sorted
11029 logical(LK) , intent(in) , optional :: unique
11030 logical(LK) , intent(in) , optional :: keep
11031 end subroutine
11032#endif
11033
11034#if RK3_ENABLED
11035 module subroutine setSplitConCusComCusIns_D1_D1_RK3(field, array, sep, iseq, instance, sorted, unique, keep)
11036#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11037 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_RK3
11038#endif
11039 use pm_kind, only: RKG => RK3
11040 use pm_container, only: cvr_pdt
11041 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
11042 real(RKG) , intent(in) , contiguous :: array(:)
11043 real(RKG) , intent(in) , contiguous :: sep(:)
11044 procedure(logical(LK)) :: iseq
11045 integer(IK) , intent(in) , contiguous :: instance(:)
11046 logical(LK) , intent(in) , optional :: sorted
11047 logical(LK) , intent(in) , optional :: unique
11048 logical(LK) , intent(in) , optional :: keep
11049 end subroutine
11050#endif
11051
11052#if RK2_ENABLED
11053 module subroutine setSplitConCusComCusIns_D1_D1_RK2(field, array, sep, iseq, instance, sorted, unique, keep)
11054#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11055 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_RK2
11056#endif
11057 use pm_kind, only: RKG => RK2
11058 use pm_container, only: cvr_pdt
11059 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
11060 real(RKG) , intent(in) , contiguous :: array(:)
11061 real(RKG) , intent(in) , contiguous :: sep(:)
11062 procedure(logical(LK)) :: iseq
11063 integer(IK) , intent(in) , contiguous :: instance(:)
11064 logical(LK) , intent(in) , optional :: sorted
11065 logical(LK) , intent(in) , optional :: unique
11066 logical(LK) , intent(in) , optional :: keep
11067 end subroutine
11068#endif
11069
11070#if RK1_ENABLED
11071 module subroutine setSplitConCusComCusIns_D1_D1_RK1(field, array, sep, iseq, instance, sorted, unique, keep)
11072#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11073 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitConCusComCusIns_D1_D1_RK1
11074#endif
11075 use pm_kind, only: RKG => RK1
11076 use pm_container, only: cvr_pdt
11077 type(cvr_pdt(RKG)) , intent(out) , allocatable :: field(:)
11078 real(RKG) , intent(in) , contiguous :: array(:)
11079 real(RKG) , intent(in) , contiguous :: sep(:)
11080 procedure(logical(LK)) :: iseq
11081 integer(IK) , intent(in) , contiguous :: instance(:)
11082 logical(LK) , intent(in) , optional :: sorted
11083 logical(LK) , intent(in) , optional :: unique
11084 logical(LK) , intent(in) , optional :: keep
11085 end subroutine
11086#endif
11087
11088 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11089
11090 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11091 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11092 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11093
11094 end interface
11095#endif
11096!PDT_ENABLED
11097
11098 ! Box container
11099
11100 interface setSplit
11101
11102 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11103
11104 PURE module subroutine setSplitBoxDefComDefIns_D0_D0_SK(field, array, sep, keep)
11105#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11106 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComDefIns_D0_D0_SK
11107#endif
11108 use pm_kind, only: SKG => SK
11109 use pm_container, only: css_type
11110 type(css_type) , intent(out) , allocatable :: field(:)
11111 character(*,SKG) , intent(in) :: array
11112 character(*,SKG) , intent(in) :: sep
11113 logical(LK) , intent(in) , optional :: keep
11114 end subroutine
11115
11116 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11117
11118 PURE module subroutine setSplitBoxDefComDefIns_D1_D0_SK(field, array, sep, keep)
11119#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11120 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComDefIns_D1_D0_SK
11121#endif
11122 use pm_kind, only: SKG => SK
11123 use pm_container, only: cvs_type
11124 type(cvs_type) , intent(out) , allocatable :: field(:)
11125 character(*,SKG) , intent(in) , contiguous :: array(:)
11126 character(*,SKG) , intent(in) :: sep
11127 logical(LK) , intent(in) , optional :: keep
11128 end subroutine
11129
11130 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11131
11132 PURE module subroutine setSplitBoxDefComDefIns_D1_D0_IK(field, array, sep, keep)
11133#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11134 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComDefIns_D1_D0_IK
11135#endif
11136 use pm_kind, only: IKG => IK
11137 use pm_container, only: cvi_type
11138 type(cvi_type) , intent(out) , allocatable :: field(:)
11139 integer(IKG) , intent(in) , contiguous :: array(:)
11140 integer(IKG) , intent(in) :: sep
11141 logical(LK) , intent(in) , optional :: keep
11142 end subroutine
11143
11144 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11145
11146 PURE module subroutine setSplitBoxDefComDefIns_D1_D0_LK(field, array, sep, keep)
11147#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11148 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComDefIns_D1_D0_LK
11149#endif
11150 use pm_kind, only: LKG => LK
11151 use pm_container, only: cvl_type
11152 type(cvl_type) , intent(out) , allocatable :: field(:)
11153 logical(LKG) , intent(in) , contiguous :: array(:)
11154 logical(LKG) , intent(in) :: sep
11155 logical(LK) , intent(in) , optional :: keep
11156 end subroutine
11157
11158 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11159
11160 PURE module subroutine setSplitBoxDefComDefIns_D1_D0_CK(field, array, sep, keep)
11161#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11162 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComDefIns_D1_D0_CK
11163#endif
11164 use pm_kind, only: CKG => CK
11165 use pm_container, only: cvc_type
11166 type(cvc_type) , intent(out) , allocatable :: field(:)
11167 complex(CKG) , intent(in) , contiguous :: array(:)
11168 complex(CKG) , intent(in) :: sep
11169 logical(LK) , intent(in) , optional :: keep
11170 end subroutine
11171
11172 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11173
11174 PURE module subroutine setSplitBoxDefComDefIns_D1_D0_RK(field, array, sep, keep)
11175#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11176 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComDefIns_D1_D0_RK
11177#endif
11178 use pm_kind, only: RKG => RK
11179 use pm_container, only: cvr_type
11180 type(cvr_type) , intent(out) , allocatable :: field(:)
11181 real(RKG) , intent(in) , contiguous :: array(:)
11182 real(RKG) , intent(in) :: sep
11183 logical(LK) , intent(in) , optional :: keep
11184 end subroutine
11185
11186 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11187
11188 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11189 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11190 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11191
11192 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11193
11194 module subroutine setSplitBoxCusComDefIns_D0_D0_SK(field, array, sep, iseq, keep)
11195#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11196 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComDefIns_D0_D0_SK
11197#endif
11198 use pm_kind, only: SKG => SK
11199 use pm_container, only: css_type
11200 type(css_type) , intent(out) , allocatable :: field(:)
11201 character(*,SKG) , intent(in) :: array
11202 character(*,SKG) , intent(in) :: sep
11203 procedure(logical(LK)) :: iseq
11204 logical(LK) , intent(in) , optional :: keep
11205 end subroutine
11206
11207 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11208
11209 module subroutine setSplitBoxCusComDefIns_D1_D0_SK(field, array, sep, iseq, keep)
11210#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11211 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComDefIns_D1_D0_SK
11212#endif
11213 use pm_kind, only: SKG => SK
11214 use pm_container, only: cvs_type
11215 type(cvs_type) , intent(out) , allocatable :: field(:)
11216 character(*,SKG) , intent(in) , contiguous :: array(:)
11217 character(*,SKG) , intent(in) :: sep
11218 procedure(logical(LK)) :: iseq
11219 logical(LK) , intent(in) , optional :: keep
11220 end subroutine
11221
11222 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11223
11224 module subroutine setSplitBoxCusComDefIns_D1_D0_IK(field, array, sep, iseq, keep)
11225#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11226 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComDefIns_D1_D0_IK
11227#endif
11228 use pm_kind, only: IKG => IK
11229 use pm_container, only: cvi_type
11230 type(cvi_type) , intent(out) , allocatable :: field(:)
11231 integer(IKG) , intent(in) , contiguous :: array(:)
11232 integer(IKG) , intent(in) :: sep
11233 procedure(logical(LK)) :: iseq
11234 logical(LK) , intent(in) , optional :: keep
11235 end subroutine
11236
11237 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11238
11239 module subroutine setSplitBoxCusComDefIns_D1_D0_LK(field, array, sep, iseq, keep)
11240#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11241 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComDefIns_D1_D0_LK
11242#endif
11243 use pm_kind, only: LKG => LK
11244 use pm_container, only: cvl_type
11245 type(cvl_type) , intent(out) , allocatable :: field(:)
11246 logical(LKG) , intent(in) , contiguous :: array(:)
11247 logical(LKG) , intent(in) :: sep
11248 procedure(logical(LK)) :: iseq
11249 logical(LK) , intent(in) , optional :: keep
11250 end subroutine
11251
11252 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11253
11254 module subroutine setSplitBoxCusComDefIns_D1_D0_CK(field, array, sep, iseq, keep)
11255#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11256 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComDefIns_D1_D0_CK
11257#endif
11258 use pm_kind, only: CKG => CK
11259 use pm_container, only: cvc_type
11260 type(cvc_type) , intent(out) , allocatable :: field(:)
11261 complex(CKG) , intent(in) , contiguous :: array(:)
11262 complex(CKG) , intent(in) :: sep
11263 procedure(logical(LK)) :: iseq
11264 logical(LK) , intent(in) , optional :: keep
11265 end subroutine
11266
11267 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11268
11269 module subroutine setSplitBoxCusComDefIns_D1_D0_RK(field, array, sep, iseq, keep)
11270#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11271 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComDefIns_D1_D0_RK
11272#endif
11273 use pm_kind, only: RKG => RK
11274 use pm_container, only: cvr_type
11275 type(cvr_type) , intent(out) , allocatable :: field(:)
11276 real(RKG) , intent(in) , contiguous :: array(:)
11277 real(RKG) , intent(in) :: sep
11278 procedure(logical(LK)) :: iseq
11279 logical(LK) , intent(in) , optional :: keep
11280 end subroutine
11281
11282 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11283
11284 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11285 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11286 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11287
11288 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11289
11290 PURE module subroutine setSplitBoxDefComCusIns_D0_D0_SK(field, array, sep, instance, sorted, unique, keep)
11291#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11292 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComCusIns_D0_D0_SK
11293#endif
11294 use pm_kind, only: SKG => SK
11295 use pm_container, only: css_type
11296 type(css_type) , intent(out) , allocatable :: field(:)
11297 character(*,SKG) , intent(in) :: array
11298 character(*,SKG) , intent(in) :: sep
11299 integer(IK) , intent(in) , contiguous :: instance(:)
11300 logical(LK) , intent(in) , optional :: sorted
11301 logical(LK) , intent(in) , optional :: unique
11302 logical(LK) , intent(in) , optional :: keep
11303 end subroutine
11304
11305 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11306
11307 PURE module subroutine setSplitBoxDefComCusIns_D1_D0_SK(field, array, sep, instance, sorted, unique, keep)
11308#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11309 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComCusIns_D1_D0_SK
11310#endif
11311 use pm_kind, only: SKG => SK
11312 use pm_container, only: cvs_type
11313 type(cvs_type) , intent(out) , allocatable :: field(:)
11314 character(*,SKG) , intent(in) , contiguous :: array(:)
11315 character(*,SKG) , intent(in) :: sep
11316 integer(IK) , intent(in) , contiguous :: instance(:)
11317 logical(LK) , intent(in) , optional :: sorted
11318 logical(LK) , intent(in) , optional :: unique
11319 logical(LK) , intent(in) , optional :: keep
11320 end subroutine
11321
11322 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11323
11324 PURE module subroutine setSplitBoxDefComCusIns_D1_D0_IK(field, array, sep, instance, sorted, unique, keep)
11325#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11326 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComCusIns_D1_D0_IK
11327#endif
11328 use pm_kind, only: IKG => IK
11329 use pm_container, only: cvi_type
11330 type(cvi_type) , intent(out) , allocatable :: field(:)
11331 integer(IKG) , intent(in) , contiguous :: array(:)
11332 integer(IKG) , intent(in) :: sep
11333 integer(IK) , intent(in) , contiguous :: instance(:)
11334 logical(LK) , intent(in) , optional :: sorted
11335 logical(LK) , intent(in) , optional :: unique
11336 logical(LK) , intent(in) , optional :: keep
11337 end subroutine
11338
11339 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11340
11341 PURE module subroutine setSplitBoxDefComCusIns_D1_D0_LK(field, array, sep, instance, sorted, unique, keep)
11342#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11343 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComCusIns_D1_D0_LK
11344#endif
11345 use pm_kind, only: LKG => LK
11346 use pm_container, only: cvl_type
11347 type(cvl_type) , intent(out) , allocatable :: field(:)
11348 logical(LKG) , intent(in) , contiguous :: array(:)
11349 logical(LKG) , intent(in) :: sep
11350 integer(IK) , intent(in) , contiguous :: instance(:)
11351 logical(LK) , intent(in) , optional :: sorted
11352 logical(LK) , intent(in) , optional :: unique
11353 logical(LK) , intent(in) , optional :: keep
11354 end subroutine
11355
11356 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11357
11358 PURE module subroutine setSplitBoxDefComCusIns_D1_D0_CK(field, array, sep, instance, sorted, unique, keep)
11359#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11360 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComCusIns_D1_D0_CK
11361#endif
11362 use pm_kind, only: CKG => CK
11363 use pm_container, only: cvc_type
11364 type(cvc_type) , intent(out) , allocatable :: field(:)
11365 complex(CKG) , intent(in) , contiguous :: array(:)
11366 complex(CKG) , intent(in) :: sep
11367 integer(IK) , intent(in) , contiguous :: instance(:)
11368 logical(LK) , intent(in) , optional :: sorted
11369 logical(LK) , intent(in) , optional :: unique
11370 logical(LK) , intent(in) , optional :: keep
11371 end subroutine
11372
11373 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11374
11375 PURE module subroutine setSplitBoxDefComCusIns_D1_D0_RK(field, array, sep, instance, sorted, unique, keep)
11376#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11377 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComCusIns_D1_D0_RK
11378#endif
11379 use pm_kind, only: RKG => RK
11380 use pm_container, only: cvr_type
11381 type(cvr_type) , intent(out) , allocatable :: field(:)
11382 real(RKG) , intent(in) , contiguous :: array(:)
11383 real(RKG) , intent(in) :: sep
11384 integer(IK) , intent(in) , contiguous :: instance(:)
11385 logical(LK) , intent(in) , optional :: sorted
11386 logical(LK) , intent(in) , optional :: unique
11387 logical(LK) , intent(in) , optional :: keep
11388 end subroutine
11389
11390 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11391
11392 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11393 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11394 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11395
11396 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11397
11398 module subroutine setSplitBoxCusComCusIns_D0_D0_SK(field, array, sep, iseq, instance, sorted, unique, keep)
11399#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11400 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComCusIns_D0_D0_SK
11401#endif
11402 use pm_kind, only: SKG => SK
11403 use pm_container, only: css_type
11404 type(css_type) , intent(out) , allocatable :: field(:)
11405 character(*,SKG) , intent(in) :: array
11406 character(*,SKG) , intent(in) :: sep
11407 procedure(logical(LK)) :: iseq
11408 integer(IK) , intent(in) , contiguous :: instance(:)
11409 logical(LK) , intent(in) , optional :: sorted
11410 logical(LK) , intent(in) , optional :: unique
11411 logical(LK) , intent(in) , optional :: keep
11412 end subroutine
11413
11414 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11415
11416 module subroutine setSplitBoxCusComCusIns_D1_D0_SK(field, array, sep, iseq, instance, sorted, unique, keep)
11417#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11418 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComCusIns_D1_D0_SK
11419#endif
11420 use pm_kind, only: SKG => SK
11421 use pm_container, only: cvs_type
11422 type(cvs_type) , intent(out) , allocatable :: field(:)
11423 character(*,SKG) , intent(in) , contiguous :: array(:)
11424 character(*,SKG) , intent(in) :: sep
11425 procedure(logical(LK)) :: iseq
11426 integer(IK) , intent(in) , contiguous :: instance(:)
11427 logical(LK) , intent(in) , optional :: sorted
11428 logical(LK) , intent(in) , optional :: unique
11429 logical(LK) , intent(in) , optional :: keep
11430 end subroutine
11431
11432 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11433
11434 module subroutine setSplitBoxCusComCusIns_D1_D0_IK(field, array, sep, iseq, instance, sorted, unique, keep)
11435#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11436 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComCusIns_D1_D0_IK
11437#endif
11438 use pm_kind, only: IKG => IK
11439 use pm_container, only: cvi_type
11440 type(cvi_type) , intent(out) , allocatable :: field(:)
11441 integer(IKG) , intent(in) , contiguous :: array(:)
11442 integer(IKG) , intent(in) :: sep
11443 procedure(logical(LK)) :: iseq
11444 integer(IK) , intent(in) , contiguous :: instance(:)
11445 logical(LK) , intent(in) , optional :: sorted
11446 logical(LK) , intent(in) , optional :: unique
11447 logical(LK) , intent(in) , optional :: keep
11448 end subroutine
11449
11450 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11451
11452 module subroutine setSplitBoxCusComCusIns_D1_D0_LK(field, array, sep, iseq, instance, sorted, unique, keep)
11453#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11454 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComCusIns_D1_D0_LK
11455#endif
11456 use pm_kind, only: LKG => LK
11457 use pm_container, only: cvl_type
11458 type(cvl_type) , intent(out) , allocatable :: field(:)
11459 logical(LKG) , intent(in) , contiguous :: array(:)
11460 logical(LKG) , intent(in) :: sep
11461 procedure(logical(LK)) :: iseq
11462 integer(IK) , intent(in) , contiguous :: instance(:)
11463 logical(LK) , intent(in) , optional :: sorted
11464 logical(LK) , intent(in) , optional :: unique
11465 logical(LK) , intent(in) , optional :: keep
11466 end subroutine
11467
11468 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11469
11470 module subroutine setSplitBoxCusComCusIns_D1_D0_CK(field, array, sep, iseq, instance, sorted, unique, keep)
11471#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11472 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComCusIns_D1_D0_CK
11473#endif
11474 use pm_kind, only: CKG => CK
11475 use pm_container, only: cvc_type
11476 type(cvc_type) , intent(out) , allocatable :: field(:)
11477 complex(CKG) , intent(in) , contiguous :: array(:)
11478 complex(CKG) , intent(in) :: sep
11479 procedure(logical(LK)) :: iseq
11480 integer(IK) , intent(in) , contiguous :: instance(:)
11481 logical(LK) , intent(in) , optional :: sorted
11482 logical(LK) , intent(in) , optional :: unique
11483 logical(LK) , intent(in) , optional :: keep
11484 end subroutine
11485
11486 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11487
11488 module subroutine setSplitBoxCusComCusIns_D1_D0_RK(field, array, sep, iseq, instance, sorted, unique, keep)
11489#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11490 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComCusIns_D1_D0_RK
11491#endif
11492 use pm_kind, only: RKG => RK
11493 use pm_container, only: cvr_type
11494 type(cvr_type) , intent(out) , allocatable :: field(:)
11495 real(RKG) , intent(in) , contiguous :: array(:)
11496 real(RKG) , intent(in) :: sep
11497 procedure(logical(LK)) :: iseq
11498 integer(IK) , intent(in) , contiguous :: instance(:)
11499 logical(LK) , intent(in) , optional :: sorted
11500 logical(LK) , intent(in) , optional :: unique
11501 logical(LK) , intent(in) , optional :: keep
11502 end subroutine
11503
11504 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11505
11506 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11507 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11508 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11509
11510 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11511
11512 PURE module subroutine setSplitBoxDefComDefIns_D1_D1_SK(field, array, sep, keep)
11513#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11514 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComDefIns_D1_D1_SK
11515#endif
11516 use pm_kind, only: SKG => SK
11517 use pm_container, only: cvs_type
11518 type(cvs_type) , intent(out) , allocatable :: field(:)
11519 character(*,SKG) , intent(in) , contiguous :: array(:)
11520 character(*,SKG) , intent(in) , contiguous :: sep(:)
11521 logical(LK) , intent(in) , optional :: keep
11522 end subroutine
11523
11524 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11525
11526 PURE module subroutine setSplitBoxDefComDefIns_D1_D1_IK(field, array, sep, keep)
11527#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11528 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComDefIns_D1_D1_IK
11529#endif
11530 use pm_kind, only: IKG => IK
11531 use pm_container, only: cvi_type
11532 type(cvi_type) , intent(out) , allocatable :: field(:)
11533 integer(IKG) , intent(in) , contiguous :: array(:)
11534 integer(IKG) , intent(in) , contiguous :: sep(:)
11535 logical(LK) , intent(in) , optional :: keep
11536 end subroutine
11537
11538 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11539
11540 PURE module subroutine setSplitBoxDefComDefIns_D1_D1_LK(field, array, sep, keep)
11541#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11542 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComDefIns_D1_D1_LK
11543#endif
11544 use pm_kind, only: LKG => LK
11545 use pm_container, only: cvl_type
11546 type(cvl_type) , intent(out) , allocatable :: field(:)
11547 logical(LKG) , intent(in) , contiguous :: array(:)
11548 logical(LKG) , intent(in) , contiguous :: sep(:)
11549 logical(LK) , intent(in) , optional :: keep
11550 end subroutine
11551
11552 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11553
11554 PURE module subroutine setSplitBoxDefComDefIns_D1_D1_CK(field, array, sep, keep)
11555#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11556 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComDefIns_D1_D1_CK
11557#endif
11558 use pm_kind, only: CKG => CK
11559 use pm_container, only: cvc_type
11560 type(cvc_type) , intent(out) , allocatable :: field(:)
11561 complex(CKG) , intent(in) , contiguous :: array(:)
11562 complex(CKG) , intent(in) , contiguous :: sep(:)
11563 logical(LK) , intent(in) , optional :: keep
11564 end subroutine
11565
11566 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11567
11568 PURE module subroutine setSplitBoxDefComDefIns_D1_D1_RK(field, array, sep, keep)
11569#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11570 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComDefIns_D1_D1_RK
11571#endif
11572 use pm_kind, only: RKG => RK
11573 use pm_container, only: cvr_type
11574 type(cvr_type) , intent(out) , allocatable :: field(:)
11575 real(RKG) , intent(in) , contiguous :: array(:)
11576 real(RKG) , intent(in) , contiguous :: sep(:)
11577 logical(LK) , intent(in) , optional :: keep
11578 end subroutine
11579
11580 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11581
11582 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11583 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11584 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11585
11586 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11587
11588 module subroutine setSplitBoxCusComDefIns_D1_D1_SK(field, array, sep, iseq, keep)
11589#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11590 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComDefIns_D1_D1_SK
11591#endif
11592 use pm_kind, only: SKG => SK
11593 use pm_container, only: cvs_type
11594 type(cvs_type) , intent(out) , allocatable :: field(:)
11595 character(*,SKG) , intent(in) , contiguous :: array(:)
11596 character(*,SKG) , intent(in) , contiguous :: sep(:)
11597 procedure(logical(LK)) :: iseq
11598 logical(LK) , intent(in) , optional :: keep
11599 end subroutine
11600
11601 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11602
11603 module subroutine setSplitBoxCusComDefIns_D1_D1_IK(field, array, sep, iseq, keep)
11604#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11605 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComDefIns_D1_D1_IK
11606#endif
11607 use pm_kind, only: IKG => IK
11608 use pm_container, only: cvi_type
11609 type(cvi_type) , intent(out) , allocatable :: field(:)
11610 integer(IKG) , intent(in) , contiguous :: array(:)
11611 integer(IKG) , intent(in) , contiguous :: sep(:)
11612 procedure(logical(LK)) :: iseq
11613 logical(LK) , intent(in) , optional :: keep
11614 end subroutine
11615
11616 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11617
11618 module subroutine setSplitBoxCusComDefIns_D1_D1_LK(field, array, sep, iseq, keep)
11619#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11620 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComDefIns_D1_D1_LK
11621#endif
11622 use pm_kind, only: LKG => LK
11623 use pm_container, only: cvl_type
11624 type(cvl_type) , intent(out) , allocatable :: field(:)
11625 logical(LKG) , intent(in) , contiguous :: array(:)
11626 logical(LKG) , intent(in) , contiguous :: sep(:)
11627 procedure(logical(LK)) :: iseq
11628 logical(LK) , intent(in) , optional :: keep
11629 end subroutine
11630
11631 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11632
11633 module subroutine setSplitBoxCusComDefIns_D1_D1_CK(field, array, sep, iseq, keep)
11634#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11635 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComDefIns_D1_D1_CK
11636#endif
11637 use pm_kind, only: CKG => CK
11638 use pm_container, only: cvc_type
11639 type(cvc_type) , intent(out) , allocatable :: field(:)
11640 complex(CKG) , intent(in) , contiguous :: array(:)
11641 complex(CKG) , intent(in) , contiguous :: sep(:)
11642 procedure(logical(LK)) :: iseq
11643 logical(LK) , intent(in) , optional :: keep
11644 end subroutine
11645
11646 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11647
11648 module subroutine setSplitBoxCusComDefIns_D1_D1_RK(field, array, sep, iseq, keep)
11649#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11650 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComDefIns_D1_D1_RK
11651#endif
11652 use pm_kind, only: RKG => RK
11653 use pm_container, only: cvr_type
11654 type(cvr_type) , intent(out) , allocatable :: field(:)
11655 real(RKG) , intent(in) , contiguous :: array(:)
11656 real(RKG) , intent(in) , contiguous :: sep(:)
11657 procedure(logical(LK)) :: iseq
11658 logical(LK) , intent(in) , optional :: keep
11659 end subroutine
11660
11661 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11662
11663 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11664 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11665 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11666
11667 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11668
11669 PURE module subroutine setSplitBoxDefComCusIns_D1_D1_SK(field, array, sep, instance, sorted, unique, keep)
11670#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11671 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComCusIns_D1_D1_SK
11672#endif
11673 use pm_kind, only: SKG => SK
11674 use pm_container, only: cvs_type
11675 type(cvs_type) , intent(out) , allocatable :: field(:)
11676 character(*,SKG) , intent(in) , contiguous :: array(:)
11677 character(*,SKG) , intent(in) , contiguous :: sep(:)
11678 integer(IK) , intent(in) , contiguous :: instance(:)
11679 logical(LK) , intent(in) , optional :: sorted
11680 logical(LK) , intent(in) , optional :: unique
11681 logical(LK) , intent(in) , optional :: keep
11682 end subroutine
11683
11684 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11685
11686 PURE module subroutine setSplitBoxDefComCusIns_D1_D1_IK(field, array, sep, instance, sorted, unique, keep)
11687#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11688 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComCusIns_D1_D1_IK
11689#endif
11690 use pm_kind, only: IKG => IK
11691 use pm_container, only: cvi_type
11692 type(cvi_type) , intent(out) , allocatable :: field(:)
11693 integer(IKG) , intent(in) , contiguous :: array(:)
11694 integer(IKG) , intent(in) , contiguous :: sep(:)
11695 integer(IK) , intent(in) , contiguous :: instance(:)
11696 logical(LK) , intent(in) , optional :: sorted
11697 logical(LK) , intent(in) , optional :: unique
11698 logical(LK) , intent(in) , optional :: keep
11699 end subroutine
11700
11701 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11702
11703 PURE module subroutine setSplitBoxDefComCusIns_D1_D1_LK(field, array, sep, instance, sorted, unique, keep)
11704#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11705 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComCusIns_D1_D1_LK
11706#endif
11707 use pm_kind, only: LKG => LK
11708 use pm_container, only: cvl_type
11709 type(cvl_type) , intent(out) , allocatable :: field(:)
11710 logical(LKG) , intent(in) , contiguous :: array(:)
11711 logical(LKG) , intent(in) , contiguous :: sep(:)
11712 integer(IK) , intent(in) , contiguous :: instance(:)
11713 logical(LK) , intent(in) , optional :: sorted
11714 logical(LK) , intent(in) , optional :: unique
11715 logical(LK) , intent(in) , optional :: keep
11716 end subroutine
11717
11718 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11719
11720 PURE module subroutine setSplitBoxDefComCusIns_D1_D1_CK(field, array, sep, instance, sorted, unique, keep)
11721#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11722 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComCusIns_D1_D1_CK
11723#endif
11724 use pm_kind, only: CKG => CK
11725 use pm_container, only: cvc_type
11726 type(cvc_type) , intent(out) , allocatable :: field(:)
11727 complex(CKG) , intent(in) , contiguous :: array(:)
11728 complex(CKG) , intent(in) , contiguous :: sep(:)
11729 integer(IK) , intent(in) , contiguous :: instance(:)
11730 logical(LK) , intent(in) , optional :: sorted
11731 logical(LK) , intent(in) , optional :: unique
11732 logical(LK) , intent(in) , optional :: keep
11733 end subroutine
11734
11735 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11736
11737 PURE module subroutine setSplitBoxDefComCusIns_D1_D1_RK(field, array, sep, instance, sorted, unique, keep)
11738#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11739 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxDefComCusIns_D1_D1_RK
11740#endif
11741 use pm_kind, only: RKG => RK
11742 use pm_container, only: cvr_type
11743 type(cvr_type) , intent(out) , allocatable :: field(:)
11744 real(RKG) , intent(in) , contiguous :: array(:)
11745 real(RKG) , intent(in) , contiguous :: sep(:)
11746 integer(IK) , intent(in) , contiguous :: instance(:)
11747 logical(LK) , intent(in) , optional :: sorted
11748 logical(LK) , intent(in) , optional :: unique
11749 logical(LK) , intent(in) , optional :: keep
11750 end subroutine
11751
11752 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11753
11754 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11755 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11756 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11757
11758 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11759
11760 module subroutine setSplitBoxCusComCusIns_D1_D1_SK(field, array, sep, iseq, instance, sorted, unique, keep)
11761#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11762 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComCusIns_D1_D1_SK
11763#endif
11764 use pm_kind, only: SKG => SK
11765 use pm_container, only: cvs_type
11766 type(cvs_type) , intent(out) , allocatable :: field(:)
11767 character(*,SKG) , intent(in) , contiguous :: array(:)
11768 character(*,SKG) , intent(in) , contiguous :: sep(:)
11769 procedure(logical(LK)) :: iseq
11770 integer(IK) , intent(in) , contiguous :: instance(:)
11771 logical(LK) , intent(in) , optional :: sorted
11772 logical(LK) , intent(in) , optional :: unique
11773 logical(LK) , intent(in) , optional :: keep
11774 end subroutine
11775
11776 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11777
11778 module subroutine setSplitBoxCusComCusIns_D1_D1_IK(field, array, sep, iseq, instance, sorted, unique, keep)
11779#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11780 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComCusIns_D1_D1_IK
11781#endif
11782 use pm_kind, only: IKG => IK
11783 use pm_container, only: cvi_type
11784 type(cvi_type) , intent(out) , allocatable :: field(:)
11785 integer(IKG) , intent(in) , contiguous :: array(:)
11786 integer(IKG) , intent(in) , contiguous :: sep(:)
11787 procedure(logical(LK)) :: iseq
11788 integer(IK) , intent(in) , contiguous :: instance(:)
11789 logical(LK) , intent(in) , optional :: sorted
11790 logical(LK) , intent(in) , optional :: unique
11791 logical(LK) , intent(in) , optional :: keep
11792 end subroutine
11793
11794 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11795
11796 module subroutine setSplitBoxCusComCusIns_D1_D1_LK(field, array, sep, iseq, instance, sorted, unique, keep)
11797#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11798 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComCusIns_D1_D1_LK
11799#endif
11800 use pm_kind, only: LKG => LK
11801 use pm_container, only: cvl_type
11802 type(cvl_type) , intent(out) , allocatable :: field(:)
11803 logical(LKG) , intent(in) , contiguous :: array(:)
11804 logical(LKG) , intent(in) , contiguous :: sep(:)
11805 procedure(logical(LK)) :: iseq
11806 integer(IK) , intent(in) , contiguous :: instance(:)
11807 logical(LK) , intent(in) , optional :: sorted
11808 logical(LK) , intent(in) , optional :: unique
11809 logical(LK) , intent(in) , optional :: keep
11810 end subroutine
11811
11812 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11813
11814 module subroutine setSplitBoxCusComCusIns_D1_D1_CK(field, array, sep, iseq, instance, sorted, unique, keep)
11815#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11816 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComCusIns_D1_D1_CK
11817#endif
11818 use pm_kind, only: CKG => CK
11819 use pm_container, only: cvc_type
11820 type(cvc_type) , intent(out) , allocatable :: field(:)
11821 complex(CKG) , intent(in) , contiguous :: array(:)
11822 complex(CKG) , intent(in) , contiguous :: sep(:)
11823 procedure(logical(LK)) :: iseq
11824 integer(IK) , intent(in) , contiguous :: instance(:)
11825 logical(LK) , intent(in) , optional :: sorted
11826 logical(LK) , intent(in) , optional :: unique
11827 logical(LK) , intent(in) , optional :: keep
11828 end subroutine
11829
11830 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11831
11832 module subroutine setSplitBoxCusComCusIns_D1_D1_RK(field, array, sep, iseq, instance, sorted, unique, keep)
11833#if __INTEL_COMPILER && DLL_ENABLED && (_WIN32 || _WIN64)
11834 !DEC$ ATTRIBUTES DLLEXPORT :: setSplitBoxCusComCusIns_D1_D1_RK
11835#endif
11836 use pm_kind, only: RKG => RK
11837 use pm_container, only: cvr_type
11838 type(cvr_type) , intent(out) , allocatable :: field(:)
11839 real(RKG) , intent(in) , contiguous :: array(:)
11840 real(RKG) , intent(in) , contiguous :: sep(:)
11841 procedure(logical(LK)) :: iseq
11842 integer(IK) , intent(in) , contiguous :: instance(:)
11843 logical(LK) , intent(in) , optional :: sorted
11844 logical(LK) , intent(in) , optional :: unique
11845 logical(LK) , intent(in) , optional :: keep
11846 end subroutine
11847
11848 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11849
11850 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11851 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11852 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11853
11854 end interface
11855
11856!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11857
11858end module pm_arraySplit ! LCOV_EXCL_LINE
Return the parts of the input array split at the requested occurrences of the input sep.
This module contains procedures and generic interfaces for splitting arrays of various types at the s...
character(*, SK), parameter MODULE_NAME
This module contains the derived types for generating allocatable containers of scalar,...
This module defines the relevant Fortran kind type-parameters frequently used in the ParaMonte librar...
Definition: pm_kind.F90:268
integer, parameter SK5
Definition: pm_kind.F90:326
integer, parameter LK1
Definition: pm_kind.F90:412
integer, parameter IK3
Definition: pm_kind.F90:368
integer, parameter RK5
Definition: pm_kind.F90:478
integer, parameter RK4
Definition: pm_kind.F90:489
integer, parameter SK1
Definition: pm_kind.F90:346
integer, parameter IK1
Definition: pm_kind.F90:382
integer, parameter LK5
Definition: pm_kind.F90:392
integer, parameter RK2
Definition: pm_kind.F90:511
integer, parameter RK
The default real kind in the ParaMonte library: real64 in Fortran, c_double in C-Fortran Interoperati...
Definition: pm_kind.F90:543
integer, parameter CK1
Definition: pm_kind.F90:464
integer, parameter RK3
Definition: pm_kind.F90:500
integer, parameter LK
The default logical kind in the ParaMonte library: kind(.true.) in Fortran, kind(....
Definition: pm_kind.F90:541
integer, parameter LK2
Definition: pm_kind.F90:407
integer, parameter LK4
Definition: pm_kind.F90:397
integer, parameter CK5
Definition: pm_kind.F90:420
integer, parameter CK
The default complex kind in the ParaMonte library: real64 in Fortran, c_double_complex in C-Fortran I...
Definition: pm_kind.F90:542
integer, parameter CK4
Definition: pm_kind.F90:431
integer, parameter SK4
Definition: pm_kind.F90:331
integer, parameter LK3
Definition: pm_kind.F90:402
integer, parameter IK2
Definition: pm_kind.F90:375
integer, parameter CK2
Definition: pm_kind.F90:453
integer, parameter SK2
Definition: pm_kind.F90:341
integer, parameter CK3
Definition: pm_kind.F90:442
integer, parameter IK
The default integer kind in the ParaMonte library: int32 in Fortran, c_int32_t in C-Fortran Interoper...
Definition: pm_kind.F90:540
integer, parameter IK4
Definition: pm_kind.F90:361
integer, parameter IK5
Definition: pm_kind.F90:354
integer, parameter SK
The default character kind in the ParaMonte library: kind("a") in Fortran, c_char in C-Fortran Intero...
Definition: pm_kind.F90:539
integer, parameter RK1
Definition: pm_kind.F90:522
integer, parameter SK3
Definition: pm_kind.F90:336
This is the css_pdt parameterized type for generating instances of container of scalar of string obje...
This is the css_type type for generating instances of container of scalar of string objects.
This is the parameterized derived type for generating a container of an allocatable vector component ...
This is the derived type for generating a container of a vector component of type complex of default ...
This is the parameterized derived type for generating a container of a vector component of type integ...
This is the derived type for generating a container of a vector component of type integer of default ...
This is the parameterized derived type for generating a container of an allocatable vector component ...
This is the derived type for generating a container of a vector component of type logical of default ...
This is the parameterized derived type for generating a container of an allocatable vector component ...
This is the derived type for generating a container of a vector component of type real of default kin...
This is the parameterized derived type for generating a container of a vector component of type chara...
This is the derived type for generating a container of a vector component of type character of defaul...