Index: /ccr/trunk/p/C0CMIME.m
===================================================================
--- /ccr/trunk/p/C0CMIME.m	(revision 1184)
+++ /ccr/trunk/p/C0CMIME.m	(revision 1184)
@@ -0,0 +1,275 @@
+C0CMIME ; CCDCCR/GPL - MIME manipulation utilities; 3/8/11
+ ;;1.0;C0C;;Mar 8, 2011;
+ ;Copyright 2008 George Lilly.  Licensed under the terms of the GNU
+ ;General Public License See attached copy of the License.
+ ;
+ ;This program is free software; you can redistribute it and/or modify
+ ;it under the terms of the GNU General Public License as published by
+ ;the Free Software Foundation; either version 2 of the License, or
+ ;(at your option) any later version.
+ ;
+ ;This program is distributed in the hope that it will be useful,
+ ;but WITHOUT ANY WARRANTY; without even the implied warranty of
+ ;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ ;GNU General Public License for more details.
+ ;
+ ;You should have received a copy of the GNU General Public License along
+ ;with this program; if not, write to the Free Software Foundation, Inc.,
+ ;51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ ;
+ Q
+ ;
+TEST(ZDFN) ;
+ D CCRRPC^C0CCCR(.ZCCR,ZDFN) ; GET A CCR TO WORK WITH
+ ;M ZCOPY=ZCCR
+ S ZCOPY(1)=""
+ N ZI S ZI=0
+ F  S ZI=$O(ZCCR(ZI)) Q:ZI=""  D  ; FOR EACH LINE
+ . S ZCOPY(1)=ZCOPY(1)_ZCCR(ZI)
+ ;D ENCODE("ZCOPY",1,ZCOPY(1))
+ S G(1)=$$ENCODE^RGUTUU(ZCOPY(1))
+ D CHUNK("G2","G",45)
+ Q
+ENCODE(ZRTN,ZARY) ;
+ ; ROUTINE TO ENCODE AN XML DOCUMENT FOR SENDING
+ ; ZARY IS PASSED BY NAME
+ ; ZRTN IS PASSED BY REFERENCE AND IS THE RETURN
+ ;
+ S ZCOPY(1)=""
+ N ZI S ZI=0
+ F  S ZI=$O(@ZARY@(ZI)) Q:ZI=""  D  ; FOR EACH LINE
+ . S ZCOPY(1)=ZCOPY(1)_@ZARY@(ZI)
+ N G
+ S G(1)=$$ENCODE^RGUTUU(ZCOPY(1))
+ D CHUNK(ZRTN,"G",45)
+ Q
+ ; THIS ROUTINE WAS COPIED FROM LRSRVR4 AND THEN MODIFIED . THANKS JOHN
+ENCODEOLD(IARY,LRNODE,LRSTR) ; Encode a string, keep remainder for next line
+ ; Call with LRSTR by reference, Remainder returned in LRSTR
+ ; IARY IS PASSED BY NAME
+ S LRQUIT=0,LRLEN=$L(LRSTR)
+ F  D  Q:LRQUIT
+ . I $L(LRSTR)<45 S LRQUIT=1 Q
+ . S LRX=$E(LRSTR,1,45)
+ . S LRNODE=LRNODE+1,@IARY@(LRNODE)=$$UUEN^LRSRVR4(LRX)
+ . S LRSTR=$E(LRSTR,46,LRLEN)
+ Q
+ ;
+TESTMAIL ;
+ ; TEST OF MAILSEND
+ ;S ZTO("glilly@glilly.net")=""
+ S ZTO("mish@nhin.openforum.opensourcevista.net")=""
+ ;S ZTO("martijn@djigzo.com")=""
+ ;S ZTO("profmish@gmail.com")=""
+ ;S ZTO("nanthracite@earthlink.net")=""
+ S ZFROM="ANTHRACITE.NANCY"
+ S ZATTACH=$NA(^GPL("CCR"))
+ I $G(@ZATTACH@(1))="" D  ; NO CCR THERE
+ . D CCRRPC^C0CCCR(.GPL,2) ; GET ONE FROM PATIENT 2
+ . M @ZATTACH=GPL ; PUT IT IN THERE FOR NEXT TIME
+ S ZSUBJECT="TEST OF THE NEW MAILSEND ROUTINE"
+ D MAILSEND(.GR,ZFROM,"ZTO",,ZSUBJECT,,ZATTACH)
+ ZWR GR
+ Q
+ ;
+TESTMAIL2 ;
+ ; TEST OF MAILSEND TO gpl.mdc-crew.net
+ ;S ZTO("glilly@glilly.net")=""
+ S ZTO("LILLY.GEORGE@mdc-crew.net")=""
+ ;S ZTO("martijn@djigzo.com")=""
+ ;S ZTO("profmish@gmail.com")=""
+ ;S ZTO("nanthracite@earthlink.net")=""
+ S ZFROM="ANTHRACITE.NANCY"
+ S ZATTACH=$NA(^GPL("CCR"))
+ I $G(@ZATTACH@(1))="" D  ; NO CCR THERE
+ . D CCRRPC^C0CCCR(.GPL,2) ; GET ONE FROM PATIENT 2
+ . M @ZATTACH=GPL ; PUT IT IN THERE FOR NEXT TIME
+ S ZSUBJECT="TEST OF THE NEW MAILSEND ROUTINE"
+ D MAILSEND(.GR,ZFROM,"ZTO",,ZSUBJECT,,ZATTACH)
+ ZWR GR
+ Q
+ ;
+MAILSEND(RTN,FROM,TO,CC,SUBJECT,MESSAGE,ATTACH,FLAGS) ; MAIL SENDING INTERFACE
+ ; RTN IS THE RETURN ARRAY PASSED BY REFERENCE
+ ; FROM IS PASSED BY VALUE AND IS THE EMAIL ADDRESS OF THE SENDER
+ ;  IF NULL, WILL SEND FROM THE CURRENT DUZ
+ ; TO AND CC ARE RECIEPIENT EMAIL ADDRESSES PASSED BY NAME
+ ;  @TO@("addr1@domain1.net") 
+ ;  @CC@("addr2@domain2.com")  both can be multiples
+ ; SUBJECT IS PASSED BY VALUE AND WILL GO IN THE SUBJECT LINE
+ ; MESSAGE IS PASSED BY NAME AND IS AN ARRAY OF TEXT
+ ; ATTACH IS PASSED BY NAME AND IS AN XML OR HTML FILE TO BE ATTACHED
+ ;
+ N GN
+ S GN=$NA(^TMP($J,"C0CMIME"))
+ K @GN
+ S GM(1)="MIME-Version: 1.0"
+ S GM(2)="Content-Type: multipart/mixed; boudary=""1234567"""
+ S GM(3)=" "
+ S GM(4)=" "
+ S GM(5)="--1234567"
+ ;S GM(5)=$$REPEAT^XLFSTR("-",$L(X))
+ S GM(6)="Content-Type: text/xml; name=""ccr.xml"""
+ S GM(7)="Content-Transfer-Encoding: base64"
+ S GM(8)="Content-Disposition: attachment; filename=""ccr.xml"""
+ S GM(9)=" "
+ S GM(10)=" " ; FOR THE END
+ S GM(11)="--1234567--"
+ S GM(12)=" "
+ S GM(13)=" "
+ K GBLD
+ D QUEUE^C0CXPATH("GBLD","GM",5,9)
+ I $D(ATTACH)'="" D  ; IF WE HAVE AN ATTACHMENT
+ . D ENCODE("G2",ATTACH) ; ENCODE FOR SENDING
+ . D QUEUE^C0CXPATH("GBLD","G2",1,$O(G2(""),-1))
+ D QUEUE^C0CXPATH("GBLD","GM",10,12)
+ D BUILD^C0CXPATH("GBLD",GN)
+ ;S GGG=$NA(^GPL("MIME2"))
+ K @GN@(0) ; KILL THE LINE COUNT
+ K LRINSTR,LRTASK,LRTO,XMERR,XMZ
+ M LRTO=@TO
+ I $D(CC) M LRTO=@CC
+ S LRINSTR("ADDR FLAGS")="R"
+ S LRINSTR("FROM")=$G(FROM)
+ S LRMSUBJ=$G(SUBJECT)
+ S LRMSUBJ=$E(LRMSUBJ,1,65)
+ D SENDMSG^XMXAPI(DUZ,LRMSUBJ,GN,.LRTO,.LRINSTR,.LRTASK)
+ I $G(XMERR)=1 S RTN(1)="ERROR SENDING MESSAGE" Q  ;
+ S RTN(1)="OK"
+ Q
+ ;
+MAILSEND0(LRMSUBJ) ; Send extract back to requestor.
+ ;
+ ;D TEST
+ S GN=$NA(^TMP($J,"C0CMIME"))
+ K @GN
+ ;M @GN=G2
+ S GM(1)="MIME-Version: 1.0"
+ S GM(2)="Content-Type: multipart/mixed; boudary=""1234567"""
+ S GM(3)=" "
+ S GM(4)=" "
+ S GM(5)="--1234567"
+ ;S GM(5)=$$REPEAT^XLFSTR("-",$L(X))
+ S GM(6)="Content-Type: text/xml; name=""ccr.xml"""
+ S GM(7)="Content-Transfer-Encoding: base64"
+ S GM(8)="Content-Disposition: attachment; filename=""ccr.xml"""
+ ;S GM(6)=$$UUBEGFN^LRSRVR2A("CCR.xml")
+ S GM(9)=" "
+ S GM(10)=" " ; FOR THE END
+ S GM(11)="--frontier--"
+ S GM(12)="."
+ S GM(13)=" "
+ K GBLD
+ ;D QUEUE^C0CXPATH("GBLD","GM",1,9)
+ ;D QUEUE^C0CXPATH("GBLD","G2",1,$O(G2(""),-1))
+ ;D QUEUE^C0CXPATH("GBLD","GM",10,13)
+ ;D BUILD^C0CXPATH("GBLD",GN)
+ S GGG=$NA(^GPL("MIME2"))
+ ;D QUEUE^C0CXPATH("GBLD","GM",1,1)
+ D QUEUE^C0CXPATH("GBLD",GGG,21,159)
+ D BUILD^C0CXPATH("GBLD",GN)
+ K @GN@(0) ; KILL THE LINE COUNT
+ K LRINSTR,LRTASK,LRTO,XMERR,XMZ
+ S XQSND="glilly@glilly.net"
+ ;S XQSND="nanthracite@earthlink.net"
+ ;S XQSND="dlefevre@orohosp.com"
+ ;S XQSND="gregwoodhouse@me.com"
+ ;S XQSND="rick.marshall@vistaexpertise.net"
+ S LRTO(XQSND)=""
+ S LRINSTR("ADDR FLAGS")="R"
+ S LRINSTR("FROM")="CCR_PACKAGE"
+ S LRMSUBJ="A SAMPLE CCR"
+ S LRMSUBJ=$E(LRMSUBJ,1,65)
+ D SENDMSG^XMXAPI(9,LRMSUBJ,GN,.LRTO,.LRINSTR,.LRTASK)
+ I $G(XMERR)=1 W !,"ERROR SENDING MESSAGE" Q  ;
+ ;S ^XMB(3.9,LRTASK,1,.1130590,0)="MIME-Version: 1.0"
+ ;S ^XMB(3.9,LRTASK,1,.1130591,0)="Content-type: multipart/mixed; boundary=000e0cd6ae026c3d4b049e7befe9"
+ Q
+ ;
+MAILSEND2(UDFN,ADDR) ; Send extract back to requestor.
+ ;
+ I +$G(UDFN)=0 S UDFN=2 ;
+ D TEST(UDFN)
+ S GN=$NA(^TMP($J,"C0CMIME"))
+ K @GN
+ ;M @GN=G2
+ S GM(1)="MIME-Version: 1.0"
+ S GM(2)="Content-Type: multipart/mixed; boudary=""1234567"""
+ S GM(3)=" "
+ S GM(4)=" "
+ S GM(5)="--1234567"
+ ;S GM(5)=$$REPEAT^XLFSTR("-",$L(X))
+ S GM(6)="Content-Type: text/xml; name=""ccr.xml"""
+ S GM(7)="Content-Transfer-Encoding: base64"
+ S GM(8)="Content-Disposition: attachment; filename=""ccr.xml"""
+ ;S GM(6)=$$UUBEGFN^LRSRVR2A("CCR.xml")
+ S GM(9)=" "
+ S GM(10)=" " ; FOR THE END
+ S GM(11)="--1234567--"
+ S GM(12)=" "
+ S GM(13)=" "
+ K GBLD
+ D QUEUE^C0CXPATH("GBLD","GM",5,9)
+ D QUEUE^C0CXPATH("GBLD","G2",1,$O(G2(""),-1))
+ D QUEUE^C0CXPATH("GBLD","GM",10,12)
+ D BUILD^C0CXPATH("GBLD",GN)
+ S GGG=$NA(^GPL("MIME2"))
+ ;D QUEUE^C0CXPATH("GBLD","GM",1,1)
+ ;D QUEUE^C0CXPATH("GBLD",GGG,21,159)
+ ;D BUILD^C0CXPATH("GBLD",GN)
+ K @GN@(0) ; KILL THE LINE COUNT
+ K LRINSTR,LRTASK,LRTO,XMERR,XMZ
+ I $G(ADDR)'="" S XQSND=ADDR
+ E  S XQSND="glilly@glilly.net"
+ ;S XQSND="nanthracite@earthlink.net"
+ ;S XQSND="dlefevre@orohosp.com"
+ ;S XQSND="gregwoodhouse@me.com"
+ ;S XQSND="rick.marshall@vistaexpertise.net"
+ S LRTO(XQSND)=""
+ ;S LRTO("glilly@glilly.net")=""
+ S LRINSTR("ADDR FLAGS")="R"
+ S LRINSTR("FROM")="ANTHRACITE.NANCY"
+ S LRMSUBJ="Sending a CCR with Mailman"
+ S LRMSUBJ=$E(LRMSUBJ,1,65)
+ D SENDMSG^XMXAPI(9,LRMSUBJ,GN,.LRTO,.LRINSTR,.LRTASK)
+ I $G(XMERR)=1 W !,"ERROR SENDING MESSAGE" Q  ;
+ ;S ^XMB(3.9,LRTASK,1,.1130590,0)="MIME-Version: 1.0"
+ ;S ^XMB(3.9,LRTASK,1,.1130591,0)="Content-type: multipart/mixed; boundary=000e0cd6ae026c3d4b049e7befe9"
+ Q
+ ;
+SIMPLE ;
+ S GN(1)="SIMPLE TEST MESSAGE"
+ K LRINSTR,LRTASK,LRTO,XMERR,XMZ
+ S XQSND="glilly@glilly.net"
+ S LRTO(XQSND)=""
+ S LRINSTR("ADDR FLAGS")="R"
+ S LRINSTR("FROM")="CCR_PACKAGE"
+ S LRMSUBJ="A SAMPLE CCR"
+ S LRMSUBJ=$E(LRMSUBJ,1,65)
+ D SENDMSG^XMXAPI(9,LRMSUBJ,"GN",.LRTO,.LRINSTR,.LRTASK)
+ Q
+CHUNK(OUTXML,INXML,ZSIZE) ; BREAKS INXML INTO ZSIZE BLOCKS
+ ; INXML IS AN ARRAY PASSED BY NAME OF STRINGS
+ ; OUTXML IS ALSO PASSED BY NAME
+ ; IF ZSIZE IS NOT PASSED, 1000 IS USED
+ I '$D(ZSIZE) S ZSIZE=1000 ; DEFAULT BLOCK SIZE
+ N ZB,ZI,ZJ,ZK,ZL,ZN
+ S ZB=ZSIZE-1
+ S ZN=1
+ S ZI=0 ; BEGINNING OF INDEX TO INXML
+ F  S ZI=$O(@INXML@(ZI)) Q:+ZI=0  D  ; FOR EACH STRING IN INXML
+ . S ZL=$L(@INXML@(ZI)) ; LENGTH OF THE STRING
+ . F ZJ=1:ZSIZE:ZL D  ;
+ . . S ZK=$S(ZJ+ZB<ZL:ZJ+ZB,1:ZL) ; END FOR EXTRACT
+ . . S @OUTXML@(ZN)=$E(@INXML@(ZI),ZJ,ZK) ; PULL OUT THE PIECE
+ . . S ZN=ZN+1 ; INCREMENT OUT ARRAY INDEX
+ Q
+ ;
+CLEAN(IARY) ; RUNS THROUGH AN ARRAY PASSED BY NAME AND STRIPS OUT $C(13)
+ ;
+ N ZI S ZI=0
+ F  S ZI=$O(@IARY@(ZI)) Q:+ZI=0  D  ;
+ . S @IARY@(ZI)=$TR(@IARY@(ZI),$C(13)) ;
+ . I $F(@IARY@(ZI)," <") S @IARY@(ZI)="<"_$P(@IARY@(ZI)," <",2) ; RM BLNKS
+ Q
+ ;
Index: /ccr/trunk/p/C0CMXML.m
===================================================================
--- /ccr/trunk/p/C0CMXML.m	(revision 1183)
+++ /ccr/trunk/p/C0CMXML.m	(revision 1184)
@@ -24,8 +24,40 @@
  ; FOR TEMPLATE FILE RELATED ROUTINES, SEE C0CMXP
  ;
-TEST ;
+TEST ; TEST DRIVER ASSUMES A CCR IN ^GPL("CCR")
+ ; LOOK FOR TEST RESULTS IN VARIABLE G
+ ; ACTUALLY, IF NO CCR IS THERE, IT WILL PUT ONE THERE FOR PAT DFN 2
+ ;
+ N GPLCCR S GPLCCR=$NA(^GPL("CCR"))
+ I '$D(@GPLCCR@(1)) D  ; NO CCR THERE
+ . N TGPL
+ . D CCRRPC^C0CCCR(.TGPL,2) ; GET A CCR FOR PAT 2
+ . M @GPLCCR=TGPL ; PUT IT IN THE TEST GLOBAL
+ . K @GPLCCR@(0) ; KILL THE LINE COUNT FOR THE PARSER
+ D EN(.G,GPLCCR)
+ Q
+ ; 
+EN(ZRTN,C0CIN) ; PARSE THE CCR PASSED BY NAME IN C0CIN
+ ; AND RETURN THE XPATH ARRAY THAT RESULTS IN ZRTN, PASSED BY REFERENCE
+ I '$D(@C0CIN@(1)) Q  ;NOTHING PASSED IN
+ K ZRTN
+ N C0CDOCID,REDUX,GARY,GARY2,GARY3
+ S C0CDOCID=$$PARSE(C0CIN)
+ S REDUX="//ContinuityOfCareRecord/Body"
+ D XPATH(1,"/","GIDX","GARY",,REDUX)
+ D SEPARATE^C0CMCCD("GARY2","GARY")
+ S ZI=""
+ F  S ZI=$O(GARY2(ZI)) Q:ZI=""  D  ;
+ . N GTMP,G2
+ . M G2=GARY2(ZI)
+ . D DEMUX2^C0CMXP("GTMP","G2",2)
+ . M GARY3(ZI)=GTMP
+ M ZRTN=GARY3
+ Q
+ ;
+TEST0 ;
  S C0CXMLIN=$NA(^TMP("C0CMXML",$J))
  K GARY
- W $$FTG^%ZISH("/home/vademo2/EHR/p/","mxml-test.xml",$NA(@C0CXMLIN@(1)),3)
+ M @C0CXMLIN=^GPL("CCR")
+ ;W $$FTG^%ZISH("/home/vademo2/CCR/","PAT_774_CCR_V1_0_0.xml",$NA(@C0CXMLIN@(1)),3)
  S C0CDOCID=$$PARSE(C0CXMLIN) W !,"DocID: ",C0CDOCID
  S REDUX="//ContinuityOfCareRecord/Body"
Index: /ccr/trunk/p/C0CPXRM.m
===================================================================
--- /ccr/trunk/p/C0CPXRM.m	(revision 1184)
+++ /ccr/trunk/p/C0CPXRM.m	(revision 1184)
@@ -0,0 +1,74 @@
+C0CPXRM ; 
+;;;
+DOIT ;
+ S G="PXRMXSEPCLINIC3110302.224804" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110302.223957" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110302.223738" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110302.223516" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110302.222158" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110302.213944" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110302.212219" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110302.211506" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110302.002714" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110302.001841" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110302.000846" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110115.141918" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110115.132312" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110115.131653" ZWR ^XTMP(G,*)
+ S G="PXRMXSEPCLINIC3110115.131008" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT988 3110224.210456" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT986 3110224.210456" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT932 3110224.210456" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT932 3110224.210455" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT8015 3110301.215142" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT8015 3110301.215141" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT5265 3110309.124047" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT5265 3110309.124046" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT4742 3101129.221201" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT4742 3101129.215741" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT4710 3101129.215701" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT3297 3101127.123134" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT32495 3110224.194246" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT32493 3110224.194246" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT32354 3110224.194246" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT32354 3110224.194245" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT31106 3110224.175105" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT31090 3110224.175105" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT30339 3110224.175105" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT30339 3110224.175103" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT2761 3110115.174109" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT2761 3110115.174108" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT27327 3110227.013658" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT27327 3110227.013657" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT27327 3110227.013523" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT27327 3110227.013522" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT27253 3110227.012747" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT27253 3110227.012746" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT2559 3110115.170835" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT25549 3110228.231135" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT25549 3110228.231134" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT2205 3101129.215343" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT21092 3110114.195621" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT21092 3110114.193803" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT19640 3110226.032943" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT19640 3110226.032941" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT19353 3101212.162833" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT18780 3110221.215603" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT18156 3101212.152654" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT17800 3110315.202432" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT1650 3110220.192925" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT16110 3110313.224636" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT16004 3110317.151215" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT16004 3110317.150834" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT14955 3110315.165018" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT14816 3110315.164839" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT14816 3110315.164512" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT12415 3110315.135514" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT11797 3110315.131141" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT11573 3110315.131811" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT10728 3110114.025022" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT10578 3110114.021524" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT10243 3110114.020338" ZWR ^XTMP(G,*)
+ S G="PXRM PXK EVENT10105 3101204.230554" ZWR ^XTMP(G,*)
+ Q
+ ;
