%MACRO R05X76H1; 
%***********************************************************************
************************************************************************

  MACRO NAME:    R05X76H1
  PURPOSE:       RXHCC hierarchies for RXHCCs that are included
                 in software
  COMMENT:       it is assumed that:
                  -MAX number of RXCCs are placed into global macro 
                   variable N_RX in the main macro
                  -the following arrays are set in the main macro
                   ARRAY R(&N_RX)  RXCC1-RXCC&N_RX
                   ARRAY RX(&N_RX) RXHCC1-RXHCC&N_RX
                  -format ICD to RXCC creates only 76 out of &N_RX CMS
                   RXCCs

***********************************************************************;
 %* set to 0 RXHCCs in HIER parameter - taken from software hierarchy 
    variable;
 %MACRO SET0( CC=, HIER= );  
     %LET K=1;                                                                                                                          
     IF RXHCC&CC=1 THEN DO;                                                                                                                
        %DO %UNTIL(%SCAN(&HIER,&K)=);                                                                                                   
          RXHCC%SCAN(&HIER,&K) = 0;                                                                                                     
          %LET K=%EVAL(&K+1);                                                                                                           
        %END;              
    END;        
 %MEND SET0; 
 
 
 %*to copy RXCC into RXHCC;
  DO J=1 TO &N_RX;
     RX(J)=R(J);
  END;

 %*imposing hierarchies;
 /*Neoplasm 1 */   %SET0(CC=15  ,HIER=%STR(16,17,18,19,96,98 ));
 /*Neoplasm 2 */   %SET0(CC=16  ,HIER=%STR(17,18,19,96,98 ));
 /*Neoplasm 3 */   %SET0(CC=17  ,HIER=%STR(18,19 ));
 /*Neoplasm 4 */   %SET0(CC=18  ,HIER=%STR(19 ));
 /*Diabetes 1 */   %SET0(CC=30  ,HIER=%STR(31 ));
 /*Liver 1 */      %SET0(CC=54  ,HIER=%STR(55 ));
 /*GI 1 */         %SET0(CC=65  ,HIER=%STR(66 ));
 /*MSK 3 */        %SET0(CC=82  ,HIER=%STR(83,84,316 ));
 /*MSK 4 */        %SET0(CC=83  ,HIER=%STR(84 ));
 /*Blood 1 */      %SET0(CC=95  ,HIER=%STR(98 ));
 /*Blood 2 */      %SET0(CC=96  ,HIER=%STR(98 ));
 /*Cognitive 2 */  %SET0(CC=111 ,HIER=%STR(112 ));
 /*Psychiatric 1 */%SET0(CC=130 ,HIER=%STR(131,132,133,134,135,145,146,147,148 ));
 /*Psychiatric 2 */%SET0(CC=131 ,HIER=%STR(132,133,134,135 ));
 /*Psychiatric 3 */%SET0(CC=132 ,HIER=%STR(133,134,135 ));
 /*Psychiatric 4 */%SET0(CC=133 ,HIER=%STR(134,135 ));
 /*Psychiatric 5 */%SET0(CC=134 ,HIER=%STR(135 )); 
 /*DD 1 */         %SET0(CC=145 ,HIER=%STR(133,134,135,146,147,148 ));
 /*DD 2 */         %SET0(CC=146 ,HIER=%STR(147,148 ));
 /*DD 3 */         %SET0(CC=147 ,HIER=%STR(148 )); 
 /*Neuro 9 */      %SET0(CC=163 ,HIER=%STR(164,165 ));
 /*Neuro 10 */     %SET0(CC=164 ,HIER=%STR(165 )); 
 /*Heart 1 */      %SET0(CC=185 ,HIER=%STR(186,187 ));
 /*Heart 2 */      %SET0(CC=186 ,HIER=%STR(187 )); 
 /*Lung 1 */       %SET0(CC=225 ,HIER=%STR(226,227 ));
 /*Lung 2 */       %SET0(CC=226 ,HIER=%STR(227 )); 
 /*Kidney 1 */     %SET0(CC=260 ,HIER=%STR(261,262,263,397 ));
 /*Kidney 2 */     %SET0(CC=261 ,HIER=%STR(262,263 ));
 /*Kidney 3 */     %SET0(CC=262 ,HIER=%STR(263 )); 
 /*Transplant 1 */ %SET0(CC=395 ,HIER=%STR(396,397 ));
 /*Transplant 2 */ %SET0(CC=396 ,HIER=%STR(397 )); 
 

%MEND R05X76H1;
