PSGXR38 ; COMPILED XREF FOR FILE #53.1 ; 10/05/22
 ; 
 S DIKZK=1
 S DIKZ(0)=$G(^PS(53.1,DA,0))
 S X=$P($G(DIKZ(0)),U,1)
 I X'="" S ^PS(53.1,"B",$E(X,1,30),DA)=""
 S X=$P($G(DIKZ(0)),U,15)
 I X'="" S XX=X,X="PSGAXR" X ^%ZOSF("TEST") I  S X=XX D ENNPS^PSGAXR
 S X=$P($G(DIKZ(0)),U,2)
 I X'="" I $P($G(^PS(53.1,DA,0)),"^",15),$D(^PS(55,+$P(^(0),U,15),0)),$P($G(^(5.1)),"^",2)'=X S $P(^(5.1),"^",2)=X
 S X=$P($G(DIKZ(0)),U,5)
 I X'="" D
 .N DIK,DIV,DIU,DIN
 .I 'X S DIU=$S($D(^PS(53.1,DA,0)):$P(^(0),"^",6),1:"") I DIU]"" S $P(^(0),"^",6)="" I $O(^DD(53.1,6,1,0)) K DIV S (DIV(0),D0)=DA,DIV="",DIH=53.1,DIG=6 D ^DICR K DIV
 S DIKZ(0)=$G(^PS(53.1,DA,0))
 S X=$P($G(DIKZ(0)),U,7)
 I X'="" D
 .N DIK,DIV,DIU,DIN
 .I X="O",$D(^PS(53.1,DA,2)),$P(^(2),"^",2),$P(^(2),"^",4),$P(^(2),"^",2)'=$P(^(2),"^",4) S DIU=$P(^(2),"^",4),$P(^(2),"^",4)=$P(^(2),"^",2) I $O(^DD(53.1,25,1,0)) K DIV S DIV=$P(^PS(53.1,DA,2),"^",2) X ^DD(53.1,7,1,2,1.4)
 S DIKZ(4)=$G(^PS(53.1,DA,4))
 S X=$P($G(DIKZ(4)),U,1)
 I X'="" S XX=X,X="PSGAXR" X ^%ZOSF("TEST") I  S X=XX D ENNACK^PSGAXR
 S DIKZ(2)=$G(^PS(53.1,DA,2))
 S X=$P($G(DIKZ(2)),U,1)
 I X'="" D
 .N DIK,DIV,DIU,DIN
 .I '$D(DIU(0)),$D(PSGS0Y),PSGS0Y S DIU=$S($D(^PS(53.1,DA,2)):$P(^(2),"^",5),1:"") I DIU'=PSGS0Y S $P(^(2),"^",5)=PSGS0Y I $O(^DD(53.1,39,1,0)) K DIV S (DIV(0),D0)=DA,DIV=PSGS0Y,DIH=53.1,DIG=39 D ^DICR K DIV
 S X=$P($G(DIKZ(2)),U,1)
 I X'="" D
 .N DIK,DIV,DIU,DIN
 .I $D(PSGS0XT),PSGS0XT S DIU=$S($D(^PS(53.1,DA,2)):$P(^(2),"^",6),1:"") I DIU'=PSGS0XT S $P(^(2),"^",6)=PSGS0XT I $O(^DD(53.1,41,1,0)) K DIV S (DIV(0),D0)=DA,DIV=PSGS0XT,DIH=53.1,DIG=41 D ^DICR K DIV
 S DIKZ(0)=$G(^PS(53.1,DA,0))
 S X=$P($G(DIKZ(0)),U,9)
 I X'="" S XX=X,X="PSGAXR" X ^%ZOSF("TEST") I  S X=XX D ENSS^PSGAXR
 S DIKZ(2)=$G(^PS(53.1,DA,2))
 S X=$P($G(DIKZ(2)),U,5)
 I X'="" S PSGS0Y=X
 S X=$P($G(DIKZ(2)),U,5)
 I X'="" I $D(^PS(53.1,DA,2)),$P(^(2),"^")["@" S $P(^(2),"^")=$P($P(^(2),"^"),"@")_"@"_X
 S DIKZ(.1)=$G(^PS(53.1,DA,.1))
 S X=$P($G(DIKZ(.1)),U,1)
 I X'="" D ENNDS^PSGAXR
 S DIKZ(.2)=$G(^PS(53.1,DA,.2))
 S X=$P($G(DIKZ(.2)),U,8)
 I X'="" S ^PS(53.1,"ACX",$E(X,1,30),DA)=""
CR1 S DIXR=502
 K X
 S DIKZ("DSS")=$G(^PS(53.1,DA,"DSS"))
 S X(1)=$P(DIKZ("DSS"),U,1)
 S X(2)=$P(DIKZ(0),U,15)
 S X=$G(X(1))
 I $G(X(1))]"",$G(X(2))]"" D
 . K X1,X2 M X1=X,X2=X
 . S ^PS(53.1,"AD",$E(X(1),1,20),$E(X(2),1,20),DA)=""
CR2 S DIXR=808
 K X
 S DIKZ(0)=$G(^PS(53.1,DA,0))
 S X(1)=$P(DIKZ(0),U,15)
 S DIKZ("DSS")=$G(^PS(53.1,DA,"DSS"))
 S X(2)=$P(DIKZ("DSS"),U,1)
 S X=$G(X(1))
 I $G(X(1))]"",$G(X(2))]"" D
 . K X1,X2 M X1=X,X2=X
 . N DIKXARR M DIKXARR=X S DIKCOND=1
 . S X=$$CHECK3^PSJIMO1() I X
 . S DIKCOND=$G(X) K X M X=DIKXARR
 . Q:'DIKCOND
 . S ^PS(53.1,"CIMO",X(1),X(2),DA)=""
CR3 K X
END G ^PSGXR39
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HPSGXR38   2785     printed  Sep 23, 2025@19:39:51                                                                                                                                                                                                     Page 2
PSGXR38   ; COMPILED XREF FOR FILE #53.1 ; 10/05/22
 +1       ; 
 +2        SET DIKZK=1
 +3        SET DIKZ(0)=$GET(^PS(53.1,DA,0))
 +4        SET X=$PIECE($GET(DIKZ(0)),U,1)
 +5        IF X'=""
               SET ^PS(53.1,"B",$EXTRACT(X,1,30),DA)=""
 +6        SET X=$PIECE($GET(DIKZ(0)),U,15)
 +7        IF X'=""
               SET XX=X
               SET X="PSGAXR"
               XECUTE ^%ZOSF("TEST")
              IF $TEST
                   SET X=XX
                   DO ENNPS^PSGAXR
 +8        SET X=$PIECE($GET(DIKZ(0)),U,2)
 +9        IF X'=""
               IF $PIECE($GET(^PS(53.1,DA,0)),"^",15)
                   IF $DATA(^PS(55,+$PIECE(^(0),U,15),0))
                       IF $PIECE($GET(^(5.1)),"^",2)'=X
                           SET $PIECE(^(5.1),"^",2)=X
 +10       SET X=$PIECE($GET(DIKZ(0)),U,5)
 +11       IF X'=""
               Begin DoDot:1
 +12               NEW DIK,DIV,DIU,DIN
 +13               IF 'X
                       SET DIU=$SELECT($DATA(^PS(53.1,DA,0)):$PIECE(^(0),"^",6),1:"")
                       IF DIU]""
                           SET $PIECE(^(0),"^",6)=""
                           IF $ORDER(^DD(53.1,6,1,0))
                               KILL DIV
                               SET (DIV(0),D0)=DA
                               SET DIV=""
                               SET DIH=53.1
                               SET DIG=6
                               DO ^DICR
                               KILL DIV
               End DoDot:1
 +14       SET DIKZ(0)=$GET(^PS(53.1,DA,0))
 +15       SET X=$PIECE($GET(DIKZ(0)),U,7)
 +16       IF X'=""
               Begin DoDot:1
 +17               NEW DIK,DIV,DIU,DIN
 +18               IF X="O"
                       IF $DATA(^PS(53.1,DA,2))
                           IF $PIECE(^(2),"^",2)
                               IF $PIECE(^(2),"^",4)
                                   IF $PIECE(^(2),"^",2)'=$PIECE(^(2),"^",4)
                                       SET DIU=$PIECE(^(2),"^",4)
                                       SET $PIECE(^(2),"^",4)=$PIECE(^(2),"^",2)
                                       IF $ORDER(^DD(53.1,25,1,0))
                                           KILL DIV
                                           SET DIV=$PIECE(^PS(53.1,DA,2),"^",2)
                                           XECUTE ^DD(53.1,7,1,2,1.4)
               End DoDot:1
 +19       SET DIKZ(4)=$GET(^PS(53.1,DA,4))
 +20       SET X=$PIECE($GET(DIKZ(4)),U,1)
 +21       IF X'=""
               SET XX=X
               SET X="PSGAXR"
               XECUTE ^%ZOSF("TEST")
              IF $TEST
                   SET X=XX
                   DO ENNACK^PSGAXR
 +22       SET DIKZ(2)=$GET(^PS(53.1,DA,2))
 +23       SET X=$PIECE($GET(DIKZ(2)),U,1)
 +24       IF X'=""
               Begin DoDot:1
 +25               NEW DIK,DIV,DIU,DIN
 +26               IF '$DATA(DIU(0))
                       IF $DATA(PSGS0Y)
                           IF PSGS0Y
                               SET DIU=$SELECT($DATA(^PS(53.1,DA,2)):$PIECE(^(2),"^",5),1:"")
                               IF DIU'=PSGS0Y
                                   SET $PIECE(^(2),"^",5)=PSGS0Y
                                   IF $ORDER(^DD(53.1,39,1,0))
                                       KILL DIV
                                       SET (DIV(0),D0)=DA
                                       SET DIV=PSGS0Y
                                       SET DIH=53.1
                                       SET DIG=39
                                       DO ^DICR
                                       KILL DIV
               End DoDot:1
 +27       SET X=$PIECE($GET(DIKZ(2)),U,1)
 +28       IF X'=""
               Begin DoDot:1
 +29               NEW DIK,DIV,DIU,DIN
 +30               IF $DATA(PSGS0XT)
                       IF PSGS0XT
                           SET DIU=$SELECT($DATA(^PS(53.1,DA,2)):$PIECE(^(2),"^",6),1:"")
                           IF DIU'=PSGS0XT
                               SET $PIECE(^(2),"^",6)=PSGS0XT
                               IF $ORDER(^DD(53.1,41,1,0))
                                   KILL DIV
                                   SET (DIV(0),D0)=DA
                                   SET DIV=PSGS0XT
                                   SET DIH=53.1
                                   SET DIG=41
                                   DO ^DICR
                                   KILL DIV
               End DoDot:1
 +31       SET DIKZ(0)=$GET(^PS(53.1,DA,0))
 +32       SET X=$PIECE($GET(DIKZ(0)),U,9)
 +33       IF X'=""
               SET XX=X
               SET X="PSGAXR"
               XECUTE ^%ZOSF("TEST")
              IF $TEST
                   SET X=XX
                   DO ENSS^PSGAXR
 +34       SET DIKZ(2)=$GET(^PS(53.1,DA,2))
 +35       SET X=$PIECE($GET(DIKZ(2)),U,5)
 +36       IF X'=""
               SET PSGS0Y=X
 +37       SET X=$PIECE($GET(DIKZ(2)),U,5)
 +38       IF X'=""
               IF $DATA(^PS(53.1,DA,2))
                   IF $PIECE(^(2),"^")["@"
                       SET $PIECE(^(2),"^")=$PIECE($PIECE(^(2),"^"),"@")_"@"_X
 +39       SET DIKZ(.1)=$GET(^PS(53.1,DA,.1))
 +40       SET X=$PIECE($GET(DIKZ(.1)),U,1)
 +41       IF X'=""
               DO ENNDS^PSGAXR
 +42       SET DIKZ(.2)=$GET(^PS(53.1,DA,.2))
 +43       SET X=$PIECE($GET(DIKZ(.2)),U,8)
 +44       IF X'=""
               SET ^PS(53.1,"ACX",$EXTRACT(X,1,30),DA)=""
CR1        SET DIXR=502
 +1        KILL X
 +2        SET DIKZ("DSS")=$GET(^PS(53.1,DA,"DSS"))
 +3        SET X(1)=$PIECE(DIKZ("DSS"),U,1)
 +4        SET X(2)=$PIECE(DIKZ(0),U,15)
 +5        SET X=$GET(X(1))
 +6        IF $GET(X(1))]""
               IF $GET(X(2))]""
                   Begin DoDot:1
 +7                    KILL X1,X2
                       MERGE X1=X,X2=X
 +8                    SET ^PS(53.1,"AD",$EXTRACT(X(1),1,20),$EXTRACT(X(2),1,20),DA)=""
                   End DoDot:1
CR2        SET DIXR=808
 +1        KILL X
 +2        SET DIKZ(0)=$GET(^PS(53.1,DA,0))
 +3        SET X(1)=$PIECE(DIKZ(0),U,15)
 +4        SET DIKZ("DSS")=$GET(^PS(53.1,DA,"DSS"))
 +5        SET X(2)=$PIECE(DIKZ("DSS"),U,1)
 +6        SET X=$GET(X(1))
 +7        IF $GET(X(1))]""
               IF $GET(X(2))]""
                   Begin DoDot:1
 +8                    KILL X1,X2
                       MERGE X1=X,X2=X
 +9                    NEW DIKXARR
                       MERGE DIKXARR=X
                       SET DIKCOND=1
 +10                   SET X=$$CHECK3^PSJIMO1()
                       IF X
 +11                   SET DIKCOND=$GET(X)
                       KILL X
                       MERGE X=DIKXARR
 +12                   if 'DIKCOND
                           QUIT 
 +13                   SET ^PS(53.1,"CIMO",X(1),X(2),DA)=""
                   End DoDot:1
CR3        KILL X
END        GOTO ^PSGXR39