18. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 7/26/2017 10:13:39 AM Central Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

18.1 Files compared

# Location File Last Modified
1 C:\AraxisMergeCompare\Pri_un\TGZ\vps-mcode-1.4.0 vps-mcode-1.4.0.tar Sat Feb 18 15:04:00 2017 UTC
2 C:\AraxisMergeCompare\Pri_re\TGZ\vps-mcode-1.4.0 vps-mcode-1.4.0.tar Wed Jul 26 13:25:33 2017 UTC

18.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 16 9112
Changed 15 42
Inserted 0 0
Removed 0 0

18.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

18.4 Active regular expressions

No regular expressions were active.

18.5 Comparison detail

  1   package/\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 0000755\x000000 00000\x00000000 000\x0000000000 00000\x00001305 2061140\x000001 1137\x0000 5\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000ust ar  \x0000root\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000roo t\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000package/ kids/\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x00000000755\x0000 0000000\x000000 00000\x00000000 0000000\x000013 052061140\x0000 012071\x0000 5\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000u star  \x0000roo t\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000r oot\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000packag e/kids/VPS _1_19.KID\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000000064 4\x00000001750\x0000 0001750\x000000 000272123\x0000 1304472747 0\x0000012074\x0000  0\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000ustar  \x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000KIDS  Distribut ion saved  on Feb 02,  2017@10:5 2:58
  2   VPS*1.0*19  MRAR FEDE RATED WEB  APPLICATIO N SUPPORT
  3   **KIDS**:V PS*1.0*19^
  4  
  5   **INSTALL  NAME**
  6   VPS*1.0*19
  7   "BLD",9484 ,0)
  8   VPS*1.0*19 ^VPS KIOSK ^0^3170202 ^y
  9   "BLD",9484 ,4,0)
  10   ^9.64PA^^0
  11   "BLD",9484 ,6.3)
  12   19
  13   "BLD",9484 ,"ABPKG")
  14   n
  15   "BLD",9484 ,"INID")
  16   n^n
  17   "BLD",9484 ,"INIT")
  18  
  19   "BLD",9484 ,"KRN",0)
  20   ^9.67PA^77 9.2^20
  21   "BLD",9484 ,"KRN",.4, 0)
  22   .4
  23   "BLD",9484 ,"KRN",.40 1,0)
  24   .401
  25   "BLD",9484 ,"KRN",.40 2,0)
  26   .402
  27   "BLD",9484 ,"KRN",.40 3,0)
  28   .403
  29   "BLD",9484 ,"KRN",.5, 0)
  30   .5
  31   "BLD",9484 ,"KRN",.84 ,0)
  32   .84
  33   "BLD",9484 ,"KRN",3.6 ,0)
  34   3.6
  35   "BLD",9484 ,"KRN",3.8 ,0)
  36   3.8
  37   "BLD",9484 ,"KRN",9.2 ,0)
  38   9.2
  39   "BLD",9484 ,"KRN",9.8 ,0)
  40   9.8
  41   "BLD",9484 ,"KRN",9.8 ,"NM",0)
  42   ^9.68A^14^ 9
  43   "BLD",9484 ,"KRN",9.8 ,"NM",4,0)
  44   VPSXDG^^0^ B70973290
  45   "BLD",9484 ,"KRN",9.8 ,"NM",5,0)
  46   VPSXGMRA^^ 0^B6969961 7
  47   "BLD",9484 ,"KRN",9.8 ,"NM",6,0)
  48   VPSXRX^^0^ B184966405
  49   "BLD",9484 ,"KRN",9.8 ,"NM",7,0)
  50   VPSXSAPX^^ 0^B8965549
  51   "BLD",9484 ,"KRN",9.8 ,"NM",8,0)
  52   VPSXTIU^^0 ^B11745969
  53   "BLD",9484 ,"KRN",9.8 ,"NM",9,0)
  54   VPSXUTL^^0 ^B19411425
  55   "BLD",9484 ,"KRN",9.8 ,"NM",10,0 )
  56   VPSXPSS^^0 ^B5826304
  57   "BLD",9484 ,"KRN",9.8 ,"NM",12,0 )
  58   VPSXRX1^^0 ^B30761970
  59   "BLD",9484 ,"KRN",9.8 ,"NM",14,0 )
  60   VPS19PRE^^ 0^B4458322
  61   "BLD",9484 ,"KRN",9.8 ,"NM","B", "VPS19PRE" ,14)
  62  
  63   "BLD",9484 ,"KRN",9.8 ,"NM","B", "VPSXDG",4 )
  64  
  65   "BLD",9484 ,"KRN",9.8 ,"NM","B", "VPSXGMRA" ,5)
  66  
  67   "BLD",9484 ,"KRN",9.8 ,"NM","B", "VPSXPSS", 10)
  68  
  69   "BLD",9484 ,"KRN",9.8 ,"NM","B", "VPSXRX",6 )
  70  
  71   "BLD",9484 ,"KRN",9.8 ,"NM","B", "VPSXRX1", 12)
  72  
  73   "BLD",9484 ,"KRN",9.8 ,"NM","B", "VPSXSAPX" ,7)
  74  
  75   "BLD",9484 ,"KRN",9.8 ,"NM","B", "VPSXTIU", 8)
  76  
  77   "BLD",9484 ,"KRN",9.8 ,"NM","B", "VPSXUTL", 9)
  78  
  79   "BLD",9484 ,"KRN",19, 0)
  80   19
  81   "BLD",9484 ,"KRN",19. 1,0)
  82   19.1
  83   "BLD",9484 ,"KRN",101 ,0)
  84   101
  85   "BLD",9484 ,"KRN",409 .61,0)
  86   409.61
  87   "BLD",9484 ,"KRN",771 ,0)
  88   771
  89   "BLD",9484 ,"KRN",779 .2,0)
  90   779.2
  91   "BLD",9484 ,"KRN",870 ,0)
  92   870
  93   "BLD",9484 ,"KRN",898 9.51,0)
  94   8989.51
  95   "BLD",9484 ,"KRN",898 9.52,0)
  96   8989.52
  97   "BLD",9484 ,"KRN",899 4,0)
  98   8994
  99   "BLD",9484 ,"KRN",899 4,"NM",0)
  100   ^9.68A^^
  101   "BLD",9484 ,"KRN","B" ,.4,.4)
  102  
  103   "BLD",9484 ,"KRN","B" ,.401,.401 )
  104  
  105   "BLD",9484 ,"KRN","B" ,.402,.402 )
  106  
  107   "BLD",9484 ,"KRN","B" ,.403,.403 )
  108  
  109   "BLD",9484 ,"KRN","B" ,.5,.5)
  110  
  111   "BLD",9484 ,"KRN","B" ,.84,.84)
  112  
  113   "BLD",9484 ,"KRN","B" ,3.6,3.6)
  114  
  115   "BLD",9484 ,"KRN","B" ,3.8,3.8)
  116  
  117   "BLD",9484 ,"KRN","B" ,9.2,9.2)
  118  
  119   "BLD",9484 ,"KRN","B" ,9.8,9.8)
  120  
  121   "BLD",9484 ,"KRN","B" ,19,19)
  122  
  123   "BLD",9484 ,"KRN","B" ,19.1,19.1 )
  124  
  125   "BLD",9484 ,"KRN","B" ,101,101)
  126  
  127   "BLD",9484 ,"KRN","B" ,409.61,40 9.61)
  128  
  129   "BLD",9484 ,"KRN","B" ,771,771)
  130  
  131   "BLD",9484 ,"KRN","B" ,779.2,779 .2)
  132  
  133   "BLD",9484 ,"KRN","B" ,870,870)
  134  
  135   "BLD",9484 ,"KRN","B" ,8989.51,8 989.51)
  136  
  137   "BLD",9484 ,"KRN","B" ,8989.52,8 989.52)
  138  
  139   "BLD",9484 ,"KRN","B" ,8994,8994 )
  140  
  141   "BLD",9484 ,"PRE")
  142   VPS19PRE
  143   "BLD",9484 ,"PRET")
  144  
  145   "BLD",9484 ,"QUES",0)
  146   ^9.62^^
  147   "BLD",9484 ,"REQB",0)
  148   ^9.611^^0
  149   "MBREQ")
  150   0
  151   "PKG",573, -1)
  152   1^1
  153   "PKG",573, 0)
  154   VPS KIOSK^ VPS^RPC co mponents t hat suppor t VPS Kios k.
  155   "PKG",573, 20,0)
  156   ^9.402P^^
  157   "PKG",573, 22,0)
  158   ^9.49I^1^1
  159   "PKG",573, 22,1,0)
  160   1.0
  161   "PKG",573, 22,1,"PAH" ,1,0)
  162   19^3170202 ^1
  163   "PRE")
  164   VPS19PRE
  165   "QUES","XP F1",0)
  166   Y
  167   "QUES","XP F1","??")
  168   ^D REP^XPD H
  169   "QUES","XP F1","A")
  170   Shall I wr ite over y our |FLAG|  File
  171   "QUES","XP F1","B")
  172   YES
  173   "QUES","XP F1","M")
  174   D XPF1^XPD IQ
  175   "QUES","XP F2",0)
  176   Y
  177   "QUES","XP F2","??")
  178   ^D DTA^XPD H
  179   "QUES","XP F2","A")
  180   Want my da ta |FLAG|  yours
  181   "QUES","XP F2","B")
  182   YES
  183   "QUES","XP F2","M")
  184   D XPF2^XPD IQ
  185   "QUES","XP I1",0)
  186   YO
  187   "QUES","XP I1","??")
  188   ^D INHIBIT ^XPDH
  189   "QUES","XP I1","A")
  190   Want KIDS  to INHIBIT  LOGONs du ring the i nstall
  191   "QUES","XP I1","B")
  192   NO
  193   "QUES","XP I1","M")
  194   D XPI1^XPD IQ
  195   "QUES","XP M1",0)
  196   PO^VA(200, :EM
  197   "QUES","XP M1","??")
  198   ^D MG^XPDH
  199   "QUES","XP M1","A")
  200   Enter the  Coordinato r for Mail  Group '|F LAG|'
  201   "QUES","XP M1","B")
  202  
  203   "QUES","XP M1","M")
  204   D XPM1^XPD IQ
  205   "QUES","XP O1",0)
  206   Y
  207   "QUES","XP O1","??")
  208   ^D MENU^XP DH
  209   "QUES","XP O1","A")
  210   Want KIDS  to Rebuild  Menu Tree s Upon Com pletion of  Install
  211   "QUES","XP O1","B")
  212   NO
  213   "QUES","XP O1","M")
  214   D XPO1^XPD IQ
  215   "QUES","XP Z1",0)
  216   Y
  217   "QUES","XP Z1","??")
  218   ^D OPT^XPD H
  219   "QUES","XP Z1","A")
  220   Want to DI SABLE Sche duled Opti ons, Menu  Options, a nd Protoco ls
  221   "QUES","XP Z1","B")
  222   NO
  223   "QUES","XP Z1","M")
  224   D XPZ1^XPD IQ
  225   "QUES","XP Z2",0)
  226   Y
  227   "QUES","XP Z2","??")
  228   ^D RTN^XPD H
  229   "QUES","XP Z2","A")
  230   Want to MO VE routine s to other  CPUs
  231   "QUES","XP Z2","B")
  232   NO
  233   "QUES","XP Z2","M")
  234   D XPZ2^XPD IQ
  235   "RTN")
  236   9
  237   "RTN","VPS 19PRE")
  238   0^14^B4458 322
  239   "RTN","VPS 19PRE",1,0 )
  240   VPS19PRE ; DALOI/BNT  - VPS*1*19  PRE-TRANS PORT AND E NVIRONMENT  CHECK ;11 /20/16 15: 30
  241   "RTN","VPS 19PRE",2,0 )
  242    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 19
  243   "RTN","VPS 19PRE",3,0 )
  244    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  245   "RTN","VPS 19PRE",4,0 )
  246   ENV   ;ENV IRONMENT C HECK FOR I NSTALLING  MRAR
  247   "RTN","VPS 19PRE",5,0 )
  248    ; require  TIU*1.0*3 10
  249   "RTN","VPS 19PRE",6,0 )
  250    ; require  Kernel pa tch XU*8.0 *659
  251   "RTN","VPS 19PRE",7,0 )
  252    ; require  VistA Ser vice Assem bler to be  installed  XSA
  253   "RTN","VPS 19PRE",8,0 )
  254    ;
  255   "RTN","VPS 19PRE",9,0 )
  256    N VPSVAL1 ,VPSVAL2
  257   "RTN","VPS 19PRE",10, 0)
  258    ;
  259   "RTN","VPS 19PRE",11, 0)
  260    S VPSVAL1 =+$$VERSIO N^XPDUTL(" TIU")
  261   "RTN","VPS 19PRE",12, 0)
  262    I VPSVAL1 =1 D
  263   "RTN","VPS 19PRE",13, 0)
  264    .S VPSVAL 2=$$PATCH^ XPDUTL("TI U*1.0*310" )
  265   "RTN","VPS 19PRE",14, 0)
  266    .D:'VPSVA L2 NOGO("T IU*1.0*310 ")
  267   "RTN","VPS 19PRE",15, 0)
  268    .D:+VPSVA L2 GOOD("T IU*1.0*310 ")
  269   "RTN","VPS 19PRE",16, 0)
  270    I VPSVAL1 '=1 D NOGO ("TEXT INT EGRATION U TILITIES   - TIU V.1" )
  271   "RTN","VPS 19PRE",17, 0)
  272    ;
  273   "RTN","VPS 19PRE",18, 0)
  274    S VPSVAL1 =+$$VERSIO N^XPDUTL(" VPS")
  275   "RTN","VPS 19PRE",19, 0)
  276    I VPSVAL1 '=1 D NOGO ("VA POINT  OF SERVIC E (KIOSKS)  - VPS V.1 ")
  277   "RTN","VPS 19PRE",20, 0)
  278    ;
  279   "RTN","VPS 19PRE",21, 0)
  280    S VPSVAL1 =+$$VERSIO N^XPDUTL(" XU")
  281   "RTN","VPS 19PRE",22, 0)
  282    I VPSVAL1 =8 D
  283   "RTN","VPS 19PRE",23, 0)
  284    .S VPSVAL 2=$$PATCH^ XPDUTL("XU *8.0*659")
  285   "RTN","VPS 19PRE",24, 0)
  286    .D:'VPSVA L2 NOGO("X U*8.0*659" )
  287   "RTN","VPS 19PRE",25, 0)
  288    .D:+VPSVA L2 GOOD("X U*8.0*659" )
  289   "RTN","VPS 19PRE",26, 0)
  290    I VPSVAL1 '=8 D NOGO ("VA KERNE L - XU V.8 ")
  291   "RTN","VPS 19PRE",27, 0)
  292    ;
  293   "RTN","VPS 19PRE",28, 0)
  294    S VPSVAL1 =+$$VERSIO N^XPDUTL(" XSA")
  295   "RTN","VPS 19PRE",29, 0)
  296    I VPSVAL1 =1 D GOOD( "XSA*1.0")
  297   "RTN","VPS 19PRE",30, 0)
  298    I VPSVAL1 '=1 D NOGO ("VISTA SE RVICE ASSE MBLER - XS A V.1")
  299   "RTN","VPS 19PRE",31, 0)
  300    ;
  301   "RTN","VPS 19PRE",32, 0)
  302    I +$G(XPD QUIT)>0 D
  303   "RTN","VPS 19PRE",33, 0)
  304    .D BMES^X PDUTL("Ple ase instal l required  patches a nd start t his instal lation aga in.")
  305   "RTN","VPS 19PRE",34, 0)
  306    .D BMES^X PDUTL("Ins tallation  of VPS*1*1 9 now abor ting")
  307   "RTN","VPS 19PRE",35, 0)
  308    ;
  309   "RTN","VPS 19PRE",36, 0)
  310   NOGO(VPSTR ING)  ;Wri tes a mess age to use r that req uired patc h was not  found
  311   "RTN","VPS 19PRE",37, 0)
  312    D BMES^XP DUTL("---  "_VPSTRING _" was NOT  found on  your site.  ---")
  313   "RTN","VPS 19PRE",38, 0)
  314    S XPDQUIT =1
  315   "RTN","VPS 19PRE",39, 0)
  316    Q
  317   "RTN","VPS 19PRE",40, 0)
  318   GOOD(VPSTR ING)  ;Wri tes a mess age to ins taller tha t required  patch was  found
  319   "RTN","VPS 19PRE",41, 0)
  320    D BMES^XP DUTL("FOUN D "_VPSTRI NG)
  321   "RTN","VPS 19PRE",42, 0)
  322    Q
  323   "RTN","VPS XDG")
  324   0^4^B70973 290
  325   "RTN","VPS XDG",1,0)
  326   VPSXDG ;DA LOI/BNT -  MRAR CLINI CAL RECONC ILIATION S ERVICES ;1 1/20/16 15 :30
  327   "RTN","VPS XDG",2,0)
  328    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 19
  329   "RTN","VPS XDG",3,0)
  330    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  331   "RTN","VPS XDG",4,0)
  332    ;
  333   "RTN","VPS XDG",5,0)
  334    ; Externa l Referenc es           DBIA#
  335   "RTN","VPS XDG",6,0)
  336    ; ------- ---------- -           -----
  337   "RTN","VPS XDG",7,0)
  338    ; DGCV                            4156
  339   "RTN","VPS XDG",8,0)
  340    ; DGPFAPI                         3860
  341   "RTN","VPS XDG",9,0)
  342    ; DGMSTAP I                       2716
  343   "RTN","VPS XDG",10,0)
  344    ; DGNTAPI                         3457
  345   "RTN","VPS XDG",11,0)
  346    ; DGRPDB                          4807
  347   "RTN","VPS XDG",12,0)
  348    ; DILFD                           2055
  349   "RTN","VPS XDG",13,0)
  350    ; DIQ                             2056
  351   "RTN","VPS XDG",14,0)
  352    ; IBBAPI                          6391
  353   "RTN","VPS XDG",15,0)
  354    ; MPIF001                         2701
  355   "RTN","VPS XDG",16,0)
  356    ; ORWPT                           3292
  357   "RTN","VPS XDG",17,0)
  358    ; SCAPMC                          1916
  359   "RTN","VPS XDG",18,0)
  360    ; SCAPMCA                         2848
  361   "RTN","VPS XDG",19,0)
  362    ; VADPT                           10061
  363   "RTN","VPS XDG",20,0)
  364    ; VAFCTFU 1                       2990
  365   "RTN","VPS XDG",21,0)
  366    ; VASITE                          10112
  367   "RTN","VPS XDG",22,0)
  368    ; XSAPXUT L                       6458
  369   "RTN","VPS XDG",23,0)
  370    ; XUAF4                           2171
  371   "RTN","VPS XDG",24,0)
  372    Q
  373   "RTN","VPS XDG",25,0)
  374    ;
  375   "RTN","VPS XDG",26,0)
  376   GETPAT(SOU RCE,TARGET ) ; Get Pa tient Demo graphics
  377   "RTN","VPS XDG",27,0)
  378    N ERR,PAT ,X,CNT,VAL UE,DFN,ICN ,FNAME,LNA ME,LAST4SS N,FULLSSN, VPSSITE,VP SSTN
  379   "RTN","VPS XDG",28,0)
  380    S ERR="", CNT=0
  381   "RTN","VPS XDG",29,0)
  382    N X F X=" DFN","ICN"  D INITPAR M^XSAPXUTL (.X)
  383   "RTN","VPS XDG",30,0)
  384    S VPSSITE =$$SITE^VA SITE,VPSST N=$P(VPSSI TE,U,3)
  385   "RTN","VPS XDG",31,0)
  386    I DFN="", ICN]"" S D FN=$$GETDF N^MPIF001( ICN) I +DF N<1 D  Q $ $RESULT^XS APXUTL()
  387   "RTN","VPS XDG",32,0)
  388    . D BLDER ROR^XSAPXU TL(1,"No p atient fou nd for ICN ","GETPAT^ VPSXDG")
  389   "RTN","VPS XDG",33,0)
  390    I DFN,ICN ="" S ICN= $$GETICN^M PIF001(DFN )
  391   "RTN","VPS XDG",34,0)
  392    I '$D(^DP T(DFN,0))  D  Q $$RES ULT^XSAPXU TL()
  393   "RTN","VPS XDG",35,0)
  394    . D BLDER ROR^XSAPXU TL(1,"Pati ent DFN is  undefined ","GETPAT^ VPSXDG")
  395   "RTN","VPS XDG",36,0)
  396    S PAT("ic n")=ICN,PA T("dfn")=D FN
  397   "RTN","VPS XDG",37,0)
  398    S X=$$GET 1^DIQ(38.1 ,DFN_",",2 ,"I") S:$L (X) PAT("s ensitive") =$S(X:"tru e",1:"fals e")
  399   "RTN","VPS XDG",38,0)
  400    ; Load th e Patient  Demographi cs
  401   "RTN","VPS XDG",39,0)
  402    ;D DEM,AT C,SVC,PRF, SUPP,ALIAS ,FAC,INPT, PC,INS,REP ORT  ;SCR  20170202 M RAR-1118 r emoving IN S until ne eded
  403   "RTN","VPS XDG",40,0)
  404    D DEM,ATC ,SVC,PRF,S UPP,ALIAS, FAC,INPT,P C,REPORT
  405   "RTN","VPS XDG",41,0)
  406    ; Kill th e VADPT va riables
  407   "RTN","VPS XDG",42,0)
  408    D KVAR^VA DPT,KVA^VA DPT
  409   "RTN","VPS XDG",43,0)
  410    ;
  411   "RTN","VPS XDG",44,0)
  412    M @TARGET @("results ")=PAT
  413   "RTN","VPS XDG",45,0)
  414    Q $$RESUL T^XSAPXUTL ()
  415   "RTN","VPS XDG",46,0)
  416    ;
  417   "RTN","VPS XDG",47,0)
  418   DEM ; Load  Patient D emographic s
  419   "RTN","VPS XDG",48,0)
  420    N KEY,I,J ,K,X,VADM
  421   "RTN","VPS XDG",49,0)
  422    N VA  ;SC R 20170127  MRAR-1118
  423   "RTN","VPS XDG",50,0)
  424    Q:'DFN
  425   "RTN","VPS XDG",51,0)
  426    D DEM^VAD PT
  427   "RTN","VPS XDG",52,0)
  428    S KEY="na me^ssn^dat eOfBirth^a ge^gender^ dateOfDeat h^remarks^ race^relig ion^marita lStatus"
  429   "RTN","VPS XDG",53,0)
  430    F I=1:1:1 0 S X=VADM (I) I VADM (I)]"" S P AT($P(KEY, U,I))=$S(V ADM(I)[U:$ P(VADM(I), U,2),1:VAD M(I))
  431   "RTN","VPS XDG",54,0)
  432    S PAT("lr dfn")=+$G( ^DPT(DFN," LR"))
  433   "RTN","VPS XDG",55,0)
  434    S:$D(VA(" BID")) PAT ("bid")=$E (X)_VA("BI D")
  435   "RTN","VPS XDG",56,0)
  436    I VADM(11 ) D
  437   "RTN","VPS XDG",57,0)
  438    . N I S I =0
  439   "RTN","VPS XDG",58,0)
  440    . F  S I= $O(VADM(11 ,I)) Q:I<1   D
  441   "RTN","VPS XDG",59,0)
  442    . . S X=+ VADM(11,I) ,PAT("ethn icity",I," name")=$$G ET1^DIQ(10 .2,X_","," .01")
  443   "RTN","VPS XDG",60,0)
  444    . . S PAT ("ethnicit y",I,"hl7V alue")=$$G ET1^DIQ(10 .2,X_","," 3")
  445   "RTN","VPS XDG",61,0)
  446    . . S PAT ("ethnicit y",I,"cdcV alue")=$$G ET1^DIQ(10 .2,X_","," 4")
  447   "RTN","VPS XDG",62,0)
  448    I VADM(12 ) D
  449   "RTN","VPS XDG",63,0)
  450    . N I S I =0
  451   "RTN","VPS XDG",64,0)
  452    . F  S I= $O(VADM(12 ,I)) Q:I<1   D
  453   "RTN","VPS XDG",65,0)
  454    . . S X=+ VADM(12,I) ,PAT("race ",I,"name" )=$$GET1^D IQ(10,X_", ",".01")
  455   "RTN","VPS XDG",66,0)
  456    . . S PAT ("race",I, "hl7Value" )=$$GET1^D IQ(10,X_", ","3")
  457   "RTN","VPS XDG",67,0)
  458    . . S PAT ("race",I, "cdcValue" )=$$GET1^D IQ(10,X_", ","4")
  459   "RTN","VPS XDG",68,0)
  460    Q
  461   "RTN","VPS XDG",69,0)
  462    ;
  463   "RTN","VPS XDG",70,0)
  464   SVC ;-serv ice data
  465   "RTN","VPS XDG",71,0)
  466    N VAEL,VA SV,VAERR,X ,Y,I,AO,IR ,PGF,HNC,M ST,CV
  467   "RTN","VPS XDG",72,0)
  468    D SVC^VAD PT
  469   "RTN","VPS XDG",73,0)
  470    D ELIG^VA DPT
  471   "RTN","VPS XDG",74,0)
  472    S PAT("ve teran")=$S (VAEL(4):" true",1:"f alse")
  473   "RTN","VPS XDG",75,0)
  474    S PAT("sc ")=$S(VAEL (3):"true" ,1:"false" ) S:VAEL(3 ) PAT("scP ercent")=+ $P(VAEL(3) ,U,2)
  475   "RTN","VPS XDG",76,0)
  476    S:VAEL(2)  PAT("serv icePeriod" )=$P(VAEL( 2),U,2)
  477   "RTN","VPS XDG",77,0)
  478    I VAEL(1)  D
  479   "RTN","VPS XDG",78,0)
  480    . S PAT(" eligibilit y",+VAEL(1 ))=$P(VAEL (1),U,2)_" ^1",I=0
  481   "RTN","VPS XDG",79,0)
  482    . F  S I= $O(VAEL(1, I)) Q:I<1   S PAT("el igibility" ,I)=$P(VAE L(1,I),U,2 )
  483   "RTN","VPS XDG",80,0)
  484    S:$L(VAEL (8)) PAT(" eligibilit yStatus")= $P(VAEL(8) ,U,2)
  485   "RTN","VPS XDG",81,0)
  486    S:$L(VAEL (9)) PAT(" meansTest" )=$P(VAEL( 9),U,2)
  487   "RTN","VPS XDG",82,0)
  488    ;
  489   "RTN","VPS XDG",83,0)
  490    ; exposur es
  491   "RTN","VPS XDG",84,0)
  492    S AO=VASV (2),IR=VAS V(3)
  493   "RTN","VPS XDG",85,0)
  494    S PGF=VAS V(11)!VASV (12)!VASV( 13) ;OIF/O EF
  495   "RTN","VPS XDG",86,0)
  496    S X=$$GET CUR^DGNTAP I(DFN,"HNC "),X=+($G( HNC("STAT" )))
  497   "RTN","VPS XDG",87,0)
  498    S HNC=$S( X=4:1,X=5: 1,X=1:0,X= 6:0,1:"")
  499   "RTN","VPS XDG",88,0)
  500    S X=$P($$ GETSTAT^DG MSTAPI(DFN ),U,2),MST =$S(X="Y": 1,X="N":0, 1:"")
  501   "RTN","VPS XDG",89,0)
  502    S X=$$CVE DT^DGCV(DF N),CV=$S(+ X<0:"",+X= 0:0,$P(X,U ,3):1,1:0)
  503   "RTN","VPS XDG",90,0)
  504    I VASV(2)  S PAT("ex posures"," agentOrang e")="true"
  505   "RTN","VPS XDG",91,0)
  506    I VASV(3)  S PAT("ex posures"," radiation" )="true"
  507   "RTN","VPS XDG",92,0)
  508    I VASV(11 ) S PAT("e xposures", "oifConfli cts")="tru e"
  509   "RTN","VPS XDG",93,0)
  510    I VASV(12 ) S PAT("e xposures", "oefConfli cts")="tru e"
  511   "RTN","VPS XDG",94,0)
  512    I VASV(13 ) S PAT("e xposures", "unknownOe fOifConfli cts")="tru e"
  513   "RTN","VPS XDG",95,0)
  514    I HNC S P AT("exposu res","head NeckCancer ")="true"
  515   "RTN","VPS XDG",96,0)
  516    I MST S P AT("exposu res","mili tarySexual Trauma")=" true"
  517   "RTN","VPS XDG",97,0)
  518    I CV S PA T("exposur es","")="t rue"
  519   "RTN","VPS XDG",98,0)
  520    ;
  521   "RTN","VPS XDG",99,0)
  522    ; rated d isabilitie s [DGRPDB]
  523   "RTN","VPS XDG",100,0 )
  524    N VPSDIS, DIS,NM,DX
  525   "RTN","VPS XDG",101,0 )
  526    D RDIS^DG RPDB(DFN,. VPSDIS)
  527   "RTN","VPS XDG",102,0 )
  528    S I=0 F   S I=$O(VPS DIS(I)) Q: I<1  D
  529   "RTN","VPS XDG",103,0 )
  530    . S DIS=V PSDIS(I)
  531   "RTN","VPS XDG",104,0 )
  532    . S NM=$$ GET1^DIQ(3 1,+DIS_"," ,.01),DX=$ $GET1^DIQ( 31,+DIS_", ",2)
  533   "RTN","VPS XDG",105,0 )
  534    . S PAT(" disability ",+DX,"nam e")=NM
  535   "RTN","VPS XDG",106,0 )
  536    . S PAT(" disability ",+DX,"sc" )=$S($P(DI S,U,3):"tr ue",1:"fal se")
  537   "RTN","VPS XDG",107,0 )
  538    . S PAT(" disability ",+DX,"scP ercent")=$ P(DIS,U,2)
  539   "RTN","VPS XDG",108,0 )
  540    Q
  541   "RTN","VPS XDG",109,0 )
  542   PRF ;-pati ent record  flags
  543   "RTN","VPS XDG",110,0 )
  544    N VPSPF,I ,NAME,TEXT
  545   "RTN","VPS XDG",111,0 )
  546    N VPSN    ;SCR 20170 127 MRAR-1 118
  547   "RTN","VPS XDG",112,0 )
  548    Q:'$$GETA CT^DGPFAPI (DFN,"VPSP F")
  549   "RTN","VPS XDG",113,0 )
  550    ;
  551   "RTN","VPS XDG",114,0 )
  552    S VPSN=0  F  S VPSN= $O(VPSPF(V PSN)) Q:VP SN<1  D
  553   "RTN","VPS XDG",115,0 )
  554    . S X=$G( VPSPF(VPSN ,"FLAG"))
  555   "RTN","VPS XDG",116,0 )
  556    . S PAT(" flags",VPS N,"id")=DF N_"~"_$P(X ,U)
  557   "RTN","VPS XDG",117,0 )
  558    . S PAT(" flags",VPS N,"name")= $P(X,U,2)
  559   "RTN","VPS XDG",118,0 )
  560    . S PAT(" flags",VPS N,"approve dBy")=$G(V PSPF(VPSN, "APPRVBY") )
  561   "RTN","VPS XDG",119,0 )
  562    . S PAT(" flags",VPS N,"assigne d")=$P($G( VPSPF(VPSN ,"ASSIGNDT ")),U)
  563   "RTN","VPS XDG",120,0 )
  564    . S PAT(" flags",VPS N,"reviewD ue")=$P($G (VPSPF(VPS N,"REVIEWD T")),U)
  565   "RTN","VPS XDG",121,0 )
  566    . S PAT(" flags",VPS N,"type")= $P($G(VPSP F(VPSN,"FL AGTYPE")), U,2)
  567   "RTN","VPS XDG",122,0 )
  568    . S PAT(" flags",VPS N,"categor y")=$P($G( VPSPF(VPSN ,"CATEGORY ")),U,2)
  569   "RTN","VPS XDG",123,0 )
  570    . S X=$G( VPSPF(VPSN ,"ORIGSITE "))
  571   "RTN","VPS XDG",124,0 )
  572    . S:X PAT ("flags",V PSN,"origS ite")=$$ST A^XUAF4(+X )_U_$P(X,U ,2)
  573   "RTN","VPS XDG",125,0 )
  574    . S X=$G( VPSPF(VPSN ,"OWNER"))
  575   "RTN","VPS XDG",126,0 )
  576    . S:X PAT ("flags",V PSN,"ownSi te")=$$STA ^XUAF4(+X) _U_$P(X,U, 2)
  577   "RTN","VPS XDG",127,0 )
  578    . S X=$G( VPSPF(VPSN ,"TIULINK" )) S:X PAT ("flags",V PSN,"docum entId")=$P (X,U),PAT( "flags",VP SN,"docume ntName")=$ P(X,U,2)
  579   "RTN","VPS XDG",128,0 )
  580    . K TEXT  M TEXT=VPS PF(VPSN,"N ARR") S PA T("flags", VPSN,"cont ent")=$$ST RING^VPSXU TL(.TEXT)
  581   "RTN","VPS XDG",129,0 )
  582    Q
  583   "RTN","VPS XDG",130,0 )
  584   ATC ;-addr ess & tele com
  585   "RTN","VPS XDG",131,0 )
  586    N VAPA,I, X
  587   "RTN","VPS XDG",132,0 )
  588    S VAPA("P ")="" D AD D^VADPT ;p ermanent a ddress
  589   "RTN","VPS XDG",133,0 )
  590    S X="" F  I=1:1:4 S  X=X_VAPA(I )_U
  591   "RTN","VPS XDG",134,0 )
  592    S X=X_$P( VAPA(5),U, 2)_U_$P(VA PA(11),U,2 )
  593   "RTN","VPS XDG",135,0 )
  594    N VPSADD  D ADDRESS^ VPSXUTL(.V PSADD,X)
  595   "RTN","VPS XDG",136,0 )
  596    I $D(VPSA DD)>1 M PA T("address ")=VPSADD
  597   "RTN","VPS XDG",137,0 )
  598    S X=$$FOR MAT^VPSXUT L(VAPA(8)) _U_$$FORMA T^VPSXUTL( $$GET1^DIQ (2,DFN_"," ,.134))_U_ $$FORMAT^V PSXUTL($$G ET1^DIQ(2, DFN_",",.1 32))
  599   "RTN","VPS XDG",138,0 )
  600    N VPSPHN  D TELECOM^ VPSXUTL(.V PSPHN,X)
  601   "RTN","VPS XDG",139,0 )
  602    I $D(VPSP HN)>1 M PA T("telecom ")=VPSPHN
  603   "RTN","VPS XDG",140,0 )
  604    Q
  605   "RTN","VPS XDG",141,0 )
  606   SUPP ;-sup port conta cts
  607   "RTN","VPS XDG",142,0 )
  608    N VAOA,A, I,X,TYPE
  609   "RTN","VPS XDG",143,0 )
  610    F A="",1  K VAOA D
  611   "RTN","VPS XDG",144,0 )
  612    . S:A VAO A("A")=A D  OAD^VADPT  Q:'$L($G( VAOA(9)))
  613   "RTN","VPS XDG",145,0 )
  614    . S TYPE= $S(A=1:"EC ON",1:"NOK ")
  615   "RTN","VPS XDG",146,0 )
  616    . S PAT(" support",T YPE)=VAOA( 9)_U_VAOA( 10) ;name^ relationsh ip
  617   "RTN","VPS XDG",147,0 )
  618    . S X=""  F I=1:1:4  S X=X_VAOA (I)_U
  619   "RTN","VPS XDG",148,0 )
  620    . S X=X_$ P(VAOA(5), U,2)_U_$P( VAOA(11),U ,2)
  621   "RTN","VPS XDG",149,0 )
  622    . N VPSAD D D ADDRES S^VPSXUTL( .VPSADD,X)
  623   "RTN","VPS XDG",150,0 )
  624    . I $D(VP SADD)>1 M  PAT("suppo rt",TYPE," address")= VPSADD
  625   "RTN","VPS XDG",151,0 )
  626    . S I=$S( A=1:.33011 ,1:.21011) ,X=$$FORMA T^VPSXUTL( VAOA(8))_U _U_$$FORMA T^VPSXUTL( $$GET1^DIQ (2,DFN_"," ,I))
  627   "RTN","VPS XDG",152,0 )
  628    . N VPSPH N D TELECO M^VPSXUTL( .VPSPHN,X)
  629   "RTN","VPS XDG",153,0 )
  630    . I $D(VP SPHN)>1 M  PAT("suppo rt",TYPE," telecom")= VPSPHN
  631   "RTN","VPS XDG",154,0 )
  632    Q
  633   "RTN","VPS XDG",155,0 )
  634   ALIAS ;-ot her names  used
  635   "RTN","VPS XDG",156,0 )
  636    N I,X
  637   "RTN","VPS XDG",157,0 )
  638    S I=0 F   S I=$O(^DP T(DFN,.01, I)) Q:I<1   S X=$P($G (^(I,0)),U ) D
  639   "RTN","VPS XDG",158,0 )
  640    . S PAT(" alias",I)= X_U_$P(X," ,")_U_$P(X ,",",2,99)
  641   "RTN","VPS XDG",159,0 )
  642    Q
  643   "RTN","VPS XDG",160,0 )
  644   FAC ;-trea ting facil ities [see  FACLIST^O RWCIRN]
  645   "RTN","VPS XDG",161,0 )
  646    N IFN S D FN=+$G(DFN ) Q:DFN<1
  647   "RTN","VPS XDG",162,0 )
  648    N VPSY,HO ME,LAST,I, X,IEN
  649   "RTN","VPS XDG",163,0 )
  650    I $L($T(T FL^VAFCTFU 1)) D TFL^ VAFCTFU1(. VPSY,DFN)
  651   "RTN","VPS XDG",164,0 )
  652    S HOME=+$ P($G(^DPT( DFN,"MPI") ),U,3) ;ho me facilit y
  653   "RTN","VPS XDG",165,0 )
  654    I $P($G(V PSY(1)),U) <0 D  Q  ; not setup
  655   "RTN","VPS XDG",166,0 )
  656    . S X=$O( ^AUPNVSIT( "AA",DFN,0 )),LAST=$S (X:9999999 -$P(X,".") ,1:"")
  657   "RTN","VPS XDG",167,0 )
  658    . S X=$$S ITE^VASITE
  659   "RTN","VPS XDG",168,0 )
  660    . S PAT(" facility", +X)=$P(X,U ,3)_U_$P(X ,U,2)_U_LA ST_U_$$GET 1^DIQ(4,+X _",",60)
  661   "RTN","VPS XDG",169,0 )
  662    S I=0 F   S I=$O(VPS Y(I)) Q:I< 1  D
  663   "RTN","VPS XDG",170,0 )
  664    . S X=VPS Y(I) Q:$P( X,U)=""  ; unknown
  665   "RTN","VPS XDG",171,0 )
  666    . S IEN=+ $$IEN^XUAF 4($P(X,U))
  667   "RTN","VPS XDG",172,0 )
  668    . I +X=77 6!(+X=200)  S $P(X,U, 2)="DEPT.  OF DEFENSE "
  669   "RTN","VPS XDG",173,0 )
  670    . S PAT(" facility", IEN)=$P(X, U,1,2)_U_$ P($P(X,U,3 ),".")
  671   "RTN","VPS XDG",174,0 )
  672    . ; = stn # ^ name ^  last date  ^ VistA d omain
  673   "RTN","VPS XDG",175,0 )
  674    . S $P(PA T("facilit y",IEN),U, 4)=$$GET1^ DIQ(4,IEN_ ",",60)
  675   "RTN","VPS XDG",176,0 )
  676    . I IEN=H OME S $P(P AT("facili ty",IEN),U ,5)=1
  677   "RTN","VPS XDG",177,0 )
  678    Q
  679   "RTN","VPS XDG",178,0 )
  680   INPT ;-cur rent inpt  status
  681   "RTN","VPS XDG",179,0 )
  682    N ADM,X,V AIN,VAERR, HLOC,SVC
  683   "RTN","VPS XDG",180,0 )
  684    S ADM=+$G (^DPT(DFN, .105)) I A DM D
  685   "RTN","VPS XDG",181,0 )
  686    . D INP^V ADPT
  687   "RTN","VPS XDG",182,0 )
  688    . S PAT(" admitted") =ADM_U_+VA IN(7)
  689   "RTN","VPS XDG",183,0 )
  690    . I VAIN( 4)]"" S PA T("ward")= VAIN(4)
  691   "RTN","VPS XDG",184,0 )
  692    . I VAIN( 5)]"" S PA T("roomBed ")=VAIN(5)
  693   "RTN","VPS XDG",185,0 )
  694    . S HLOC= +$G(^DIC(4 2,+VAIN(4) ,44)),SVC= $P($G(^(0) ),U,3)
  695   "RTN","VPS XDG",186,0 )
  696    . I HLOC] "" S PAT(" location") =HLOC_U_$P (VAIN(4),U ,2)
  697   "RTN","VPS XDG",187,0 )
  698    . S:$L(SV C) PAT("lo cSvc")=SVC _U_$$EXTER NAL^DILFD( 42,.03,,SV C)
  699   "RTN","VPS XDG",188,0 )
  700    . I VAIN( 3)]"" S PA T("special ty")=VAIN( 3)
  701   "RTN","VPS XDG",189,0 )
  702    . D PROVI DER^VPSXUT L(.PAT,VAI N(11),"att ending")
  703   "RTN","VPS XDG",190,0 )
  704    . S X=$$F AC^VPSXUTL (HLOC),PAT ("site")=X
  705   "RTN","VPS XDG",191,0 )
  706    S PAT("in patient")= $S(ADM:"tr ue",1:"fal se")
  707   "RTN","VPS XDG",192,0 )
  708    Q
  709   "RTN","VPS XDG",193,0 )
  710   PC ;-prima ry care
  711   "RTN","VPS XDG",194,0 )
  712    N TEAM,VP SPC,I,X,FA C,ST
  713   "RTN","VPS XDG",195,0 )
  714    S TEAM=$$ INSTPCTM^S CAPMC(DFN)  Q:'TEAM   ;teamIEN^n ame^instIE N^name
  715   "RTN","VPS XDG",196,0 )
  716    S PAT("pc Team")=$P( TEAM,U,1,2 )
  717   "RTN","VPS XDG",197,0 )
  718    D GETALL^ SCAPMCA(DF N,,.VPSPC)
  719   "RTN","VPS XDG",198,0 )
  720    S I=+$O(@ VPSPC@(DFN ,"TM",+TEA M,0)),X=$G (^(I))
  721   "RTN","VPS XDG",199,0 )
  722    S:$P(X,U, 4) PAT("pc Assigned") =$P(X,U,4)
  723   "RTN","VPS XDG",200,0 )
  724    S X=$G(@V PSPC@(DFN, "PCPR",1))  I X D
  725   "RTN","VPS XDG",201,0 )
  726    . D PROVI DER^VPSXUT L(.PAT,+X, "pcProvide r")
  727   "RTN","VPS XDG",202,0 )
  728    . S FAC=$ P(TEAM,U,3 ,4) S:FAC< 1 FAC=$$SI TE^VASITE
  729   "RTN","VPS XDG",203,0 )
  730    . S X=$$P ADD^XUAF4( +FAC) ;str eet^city^s t^zip
  731   "RTN","VPS XDG",204,0 )
  732    . S ST=$$ GET1^DIQ(4 ,+FAC_",", .02) S:ST= "" ST=$P(X ,U,3) ;get  state nam e
  733   "RTN","VPS XDG",205,0 )
  734    . N VPSAD D D ADDRES S^VPSXUTL( .VPSADD,$P (X,U)_"^^^ "_$P(X,U,2 )_U_ST_U_$ P(X,U,4))
  735   "RTN","VPS XDG",206,0 )
  736    . I $D(VP SADD)>1 M  PAT("pcPro vider","ad dress")=VP SADD
  737   "RTN","VPS XDG",207,0 )
  738    K @VPSPC
  739   "RTN","VPS XDG",208,0 )
  740    Q
  741   "RTN","VPS XDG",209,0 )
  742    ;
  743   "RTN","VPS XDG",210,0 )
  744   REPORT ; - - Return t he formatt ed report  text
  745   "RTN","VPS XDG",211,0 )
  746    N REF
  747   "RTN","VPS XDG",212,0 )
  748    D PTINQ^O RWPT(.REF, DFN) ; Ret urn format ted pt inq uiry repor t
  749   "RTN","VPS XDG",213,0 )
  750    M PAT("re portDetail ")=@REF
  751   "RTN","VPS XDG",214,0 )
  752    Q
  753   "RTN","VPS XDG",215,0 )
  754    ;
  755   "RTN","VPS XGMRA")
  756   0^5^B69699 617
  757   "RTN","VPS XGMRA",1,0 )
  758   VPSXGMRA ; DALOI/BNT  - MRAR CLI NICAL RECO NCILIATION  SERVICES  ;11/20/16  15:30
  759   "RTN","VPS XGMRA",2,0 )
  760    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 19
  761   "RTN","VPS XGMRA",3,0 )
  762    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  763   "RTN","VPS XGMRA",4,0 )
  764    ;
  765   "RTN","VPS XGMRA",5,0 )
  766    ; Externa l Referenc es           DBIA#
  767   "RTN","VPS XGMRA",6,0 )
  768    ; ------- ---------- --           -----
  769   "RTN","VPS XGMRA",7,0 )
  770    ; GMRADPT                         10099
  771   "RTN","VPS XGMRA",8,0 )
  772    ; GMRAOR2                         2422
  773   "RTN","VPS XGMRA",9,0 )
  774    ; ORQQAL                          1641
  775   "RTN","VPS XGMRA",10, 0)
  776    ; PSN50P4 1                       4531
  777   "RTN","VPS XGMRA",11, 0)
  778    ; PSN50P6 5                       4543
  779   "RTN","VPS XGMRA",12, 0)
  780    ; PSNAPIS                         2574
  781   "RTN","VPS XGMRA",13, 0)
  782    ; VASITE                          10112
  783   "RTN","VPS XGMRA",14, 0)
  784    ; XSAPXUT L                       6458
  785   "RTN","VPS XGMRA",15, 0)
  786    ;
  787   "RTN","VPS XGMRA",16, 0)
  788    Q
  789   "RTN","VPS XGMRA",17, 0)
  790    ;
  791   "RTN","VPS XGMRA",18, 0)
  792   GETALRG(SO URCE,TARGE T) ; MRAR  Patient AP Is
  793   "RTN","VPS XGMRA",19, 0)
  794    N DFN,SDA TE,EDATE
  795   "RTN","VPS XGMRA",20, 0)
  796    N X F X=" DFN","SDAT E","EDATE"  D INITPAR M^XSAPXUTL (.X)
  797   "RTN","VPS XGMRA",21, 0)
  798    I 'DFN D   Q $$RESUL T^XSAPXUTL ()
  799   "RTN","VPS XGMRA",22, 0)
  800    . D BLDER ROR^XSAPXU TL(1,"Pati ent DFN is  undefined ","GETALRG ^VPSXGMRA" )
  801   "RTN","VPS XGMRA",23, 0)
  802    ; Default  to last 1 30 days
  803   "RTN","VPS XGMRA",24, 0)
  804    I SDATE'] "" S SDATE =$$FMADD^X LFDT(DT,-5 000)
  805   "RTN","VPS XGMRA",25, 0)
  806    I EDATE'] "" S EDATE =DT
  807   "RTN","VPS XGMRA",26, 0)
  808    ; Get All ergy Data
  809   "RTN","VPS XGMRA",27, 0)
  810    N GMRAL,I D D EN1^GM RADPT
  811   "RTN","VPS XGMRA",28, 0)
  812    I 'GMRAL  S @TARGET@ ("results" ,"assessme nt")=$S(GM RAL=0:"nka ",1:"not d one")
  813   "RTN","VPS XGMRA",29, 0)
  814    S @TARGET @("results ","patient Ien")=DFN
  815   "RTN","VPS XGMRA",30, 0)
  816    S ID=0 F   S ID=+$O( GMRAL(ID))  Q:ID<1  D  GMRA1(ID)
  817   "RTN","VPS XGMRA",31, 0)
  818    Q $$RESUL T^XSAPXUTL ()
  819   "RTN","VPS XGMRA",32, 0)
  820    ;
  821   "RTN","VPS XGMRA",33, 0)
  822   GMRA1(ID)  ; -- aller gy/reactio n GMRAL(ID )
  823   "RTN","VPS XGMRA",34, 0)
  824    N GMRA,VP SY,REAC,X, Y,I,VPSUID
  825   "RTN","VPS XGMRA",35, 0)
  826    S GMRA=$G (GMRAL(ID) ) D EN1^GM RAOR2(ID," VPSY")
  827   "RTN","VPS XGMRA",36, 0)
  828    S VPSUID= $$SETUID^V PSXUTL($P( $$SITE^VAS ITE,U,3),D FN,ID,"120 .8")
  829   "RTN","VPS XGMRA",37, 0)
  830    S X=$P(VP SY,U,10) I  $L(X) S X =$$DATE^VP SXUTL(X) S  REAC("ori ginationDa teTime")=X _U_$P(VPSY ,U,10)
  831   "RTN","VPS XGMRA",38, 0)
  832    S X=$$FAC ^VPSXUTL D  FACILITY^ VPSXUTL(X, "REAC")
  833   "RTN","VPS XGMRA",39, 0)
  834    S REAC("k ind")="All ergy / Adv erse React ion"
  835   "RTN","VPS XGMRA",40, 0)
  836    S REAC("l ocalId")=I D,REAC("ui d")=VPSUID
  837   "RTN","VPS XGMRA",41, 0)
  838    S (REAC(" summary"), REAC("caus ativeAgent Name"))=$P (VPSY,U) I  $P(GMRA,U ,9) D
  839   "RTN","VPS XGMRA",42, 0)
  840    . S X=$P( GMRA,U,9), REAC("refe rence")=X
  841   "RTN","VPS XGMRA",43, 0)
  842    . S Y=+$P (X,"(",2)  I 'Y,X["PS DRUG" S Y= 50
  843   "RTN","VPS XGMRA",44, 0)
  844    . S I=$$V UID^VPSXUT L(+X,Y) I  I]"" S REA C("causati veAgentVUI D")=$$SETV URN^VPSXUT L("vuid",I )
  845   "RTN","VPS XGMRA",45, 0)
  846    S REAC("h istorical" )=$S($E($P (VPSY,U,5) )="H":"tru e",1:"fals e")
  847   "RTN","VPS XGMRA",46, 0)
  848    S REAC("o bserved")= $S($E($P(V PSY,U,5))= "O":"true" ,1:"false" )
  849   "RTN","VPS XGMRA",47, 0)
  850    S REAC("a llergyType ")=$P(VPSY ,U,7)
  851   "RTN","VPS XGMRA",48, 0)
  852    S REAC("a llergyType Mechanism" )=$P(VPSY, U,6)
  853   "RTN","VPS XGMRA",49, 0)
  854    I $P(VPSY ,U,4)="VER IFIED",$P( VPSY,U,9)  S REAC("ve rifiedDate Time")=$P( VPSY,U,9)_ U_$$FMTE^X LFDT($P(VP SY,U,9))
  855   "RTN","VPS XGMRA",50, 0)
  856    ; reactio ns
  857   "RTN","VPS XGMRA",51, 0)
  858    N I,Y S I =0 F  S I= $O(GMRAL(I D,"S",I))  Q:I<1  D
  859   "RTN","VPS XGMRA",52, 0)
  860    . S X=$G( GMRAL(ID," S",I))
  861   "RTN","VPS XGMRA",53, 0)
  862    . S REAC( "reactions ",I,"name" )=$P(X,";" )
  863   "RTN","VPS XGMRA",54, 0)
  864    . S Y=$$V UID^VPSXUT L(+$P(X,"; ",2),120.8 3)
  865   "RTN","VPS XGMRA",55, 0)
  866    . S REAC( "reactions ",I,"vuid" )=$$SETVUR N^VPSXUTL( "vuid",Y)
  867   "RTN","VPS XGMRA",56, 0)
  868    ; comment s
  869   "RTN","VPS XGMRA",57, 0)
  870    N I S I=0  F  S I=$O (VPSY("C", I)) Q:I<1   D
  871   "RTN","VPS XGMRA",58, 0)
  872    . S X=$G( VPSY("C",I )) Q:X=""
  873   "RTN","VPS XGMRA",59, 0)
  874    . S REAC( "comments" ,I,"dateTi meEntered" )=$P(X,U)  ;ien^name^ date^type^ text
  875   "RTN","VPS XGMRA",60, 0)
  876    . S REAC( "comments" ,I,"entere dBy")=$P(X ,U,3)
  877   "RTN","VPS XGMRA",61, 0)
  878    . S REAC( "comments" ,I,"commen tType")=$E ($P(X,U,2) )
  879   "RTN","VPS XGMRA",62, 0)
  880    . N J S J =0 F  S J= $O(VPSY("C ",I,J)) Q: J<1  D
  881   "RTN","VPS XGMRA",63, 0)
  882    . . S REA C("comment s",I,"text ",J)=VPSY( "C",I,J,0)
  883   "RTN","VPS XGMRA",64, 0)
  884    ; observa tion date/ times
  885   "RTN","VPS XGMRA",65, 0)
  886    N I S I=0  F  S I=$O (VPSY("O", I)) Q:I<1   D
  887   "RTN","VPS XGMRA",66, 0)
  888    . S X=$G( VPSY("O",I )) Q:X=""
  889   "RTN","VPS XGMRA",67, 0)
  890    . S REAC( "observedD ateTimes", I,"dateTim e")=$$FMTE ^XLFDT($P( X,U))
  891   "RTN","VPS XGMRA",68, 0)
  892    . I $P(X, U,2)]"" S  REAC("obse rvedDateTi mes",I,"se verity")=$ P(X,U,2)
  893   "RTN","VPS XGMRA",69, 0)
  894    ; drug in fo
  895   "RTN","VPS XGMRA",70, 0)
  896    I $D(VPSY ("I")) D
  897   "RTN","VPS XGMRA",71, 0)
  898    . N ROOT  S ROOT=$$B ^PSN50P41
  899   "RTN","VPS XGMRA",72, 0)
  900    . N I,Y S  I=0 F  S  I=$O(VPSY( "I",I)) Q: I<1  S X=$ G(VPSY("I" ,I)) D
  901   "RTN","VPS XGMRA",73, 0)
  902    . . N IEN  S IEN=$O( @ROOT@(X,0 ))
  903   "RTN","VPS XGMRA",74, 0)
  904    . . S REA C("drugIng redient",I ,"name")=X
  905   "RTN","VPS XGMRA",75, 0)
  906    . . S Y=$ $VUID^VPSX UTL(IEN,50 .416)
  907   "RTN","VPS XGMRA",76, 0)
  908    . . S REA C("drugIng redient",I ,"vuid")=$ $SETVURN^V PSXUTL("vu id",Y)
  909   "RTN","VPS XGMRA",77, 0)
  910    I $D(VPSY ("V")) D
  911   "RTN","VPS XGMRA",78, 0)
  912    . N I,Y S  I=0 F  S  I=$O(VPSY( "V",I)) Q: I<1  S X=$ G(VPSY("V" ,I)) D
  913   "RTN","VPS XGMRA",79, 0)
  914    . . D C^P SN50P65("" ,$P(X,U,2) ,"PSN")
  915   "RTN","VPS XGMRA",80, 0)
  916    . . N IEN  S IEN=+$O (^TMP($J," PSN","C",$ P(X,U),0))
  917   "RTN","VPS XGMRA",81, 0)
  918    . . S REA C("drugCla ss",I,"cla ssifiction ")=$P(X,U, 2)
  919   "RTN","VPS XGMRA",82, 0)
  920    . . S Y=$ $VUID^VPSX UTL(IEN,50 .605)
  921   "RTN","VPS XGMRA",83, 0)
  922    . . S REA C("drugCla ss",I,"vui d")=$$SETV URN^VPSXUT L("vuid",Y )
  923   "RTN","VPS XGMRA",84, 0)
  924    ;
  925   "RTN","VPS XGMRA",85, 0)
  926    I GMRA=""  S REAC("r emoved")=1  ;entered  in error
  927   "RTN","VPS XGMRA",86, 0)
  928    N RES D D ETAIL^ORQQ AL(.RES,DF N,ID,ID) ;  RETURN DE TAILED ALL ERGY INFO  FOR SPECIF IED ALLERG IC REACTIO N:
  929   "RTN","VPS XGMRA",87, 0)
  930    M @TARGET @("results ","allergi es",VPSUID ,"reportDe tail")=RES
  931   "RTN","VPS XGMRA",88, 0)
  932    I GMRA=""  S REAC("r emoved")=" true" ;ent ered in er ror
  933   "RTN","VPS XGMRA",89, 0)
  934    M @TARGET @("results ","allergi es",VPSUID )=REAC
  935   "RTN","VPS XGMRA",90, 0)
  936    Q
  937   "RTN","VPS XGMRA",91, 0)
  938    ;
  939   "RTN","VPS XGMRA",92, 0)
  940   GETCAUS(SO URCE,TARGE T) ; Get a  list of C ausative A gents for  an allergy
  941   "RTN","VPS XGMRA",93, 0)
  942    N CNT,NAM E,FILES,FI LE
  943   "RTN","VPS XGMRA",94, 0)
  944    S CNT=0
  945   "RTN","VPS XGMRA",95, 0)
  946    N X F X=" NAME","FIL ES" D INIT PARM^XSAPX UTL(.X)
  947   "RTN","VPS XGMRA",96, 0)
  948    ;
  949   "RTN","VPS XGMRA",97, 0)
  950    I FILES=" " S FILES= "120.82;50 .6;50.67;5 0.605"
  951   "RTN","VPS XGMRA",98, 0)
  952    ; If file s have bee n specifie d do indiv idual sear ches
  953   "RTN","VPS XGMRA",99, 0)
  954    I FILES]" " D  Q $$R ESULT^XSAP XUTL()
  955   "RTN","VPS XGMRA",100 ,0)
  956    . ; This  is a hack  to transla te File nu mbers to A lpha chara cters to p ass XINDEX
  957   "RTN","VPS XGMRA",101 ,0)
  958    . S FILES =$TR(FILES ,"12345678 90.","ABCD EFGHIJP")
  959   "RTN","VPS XGMRA",102 ,0)
  960    . I FILES '[";",$L($ T(@FILES))  D @FILES^ VPSXGMRA(N AME) Q
  961   "RTN","VPS XGMRA",103 ,0)
  962    . S FILE= "" F I=1:1  S FILE=$P (FILES,";" ,I) Q:FILE =""  I $L( $T(@FILE))  D @FILE^V PSXGMRA(NA ME)
  963   "RTN","VPS XGMRA",104 ,0)
  964    . I '$D(@ TARGET@("r esults"))  S @TARGET@ ("results" )="0"
  965   "RTN","VPS XGMRA",105 ,0)
  966    ;
  967   "RTN","VPS XGMRA",106 ,0)
  968    F NAME="A ","B","C", "D","E","F ","G","H", "I","J","K ","L","M", "N","O","P ","Q","R", "S","T","U ","V","W", "X","Y","Z " D
  969   "RTN","VPS XGMRA",107 ,0)
  970    . ;D ABJP HB(NAME),E JPF(NAME), EJPFG(NAME ),EJPFJE(N AME)  ;SCR  20170130  MRAR-1118
  971   "RTN","VPS XGMRA",108 ,0)
  972    . D ABJPH B(TARGET,N AME),EJPF( TARGET,NAM E),EJPFG(T ARGET,NAME ),EJPFJE(N AME)
  973   "RTN","VPS XGMRA",109 ,0)
  974    I '$D(@TA RGET@("res ults")) S  @TARGET@(" results")= "0"
  975   "RTN","VPS XGMRA",110 ,0)
  976    Q $$RESUL T^XSAPXUTL ()
  977   "RTN","VPS XGMRA",111 ,0)
  978    ;
  979   "RTN","VPS XGMRA",112 ,0)
  980   GETSYMP(SO URCE,TARGE T) ; Get t he Signs a nd Symptom s for addi ng allergi es
  981   "RTN","VPS XGMRA",113 ,0)
  982    N RES,NAM E,X
  983   "RTN","VPS XGMRA",114 ,0)
  984    N SYN   ; SCR 201701 27 MRAR-11 18
  985   "RTN","VPS XGMRA",115 ,0)
  986    N I,IEN,X ,NAME,SUB, FROM S I=0 ,FROM=""
  987   "RTN","VPS XGMRA",116 ,0)
  988    K ^TMP($J ,"SIGNS")
  989   "RTN","VPS XGMRA",117 ,0)
  990    M ^TMP($J ,"SIGNS"," B")=^GMRD( 120.83,"B" )
  991   "RTN","VPS XGMRA",118 ,0)
  992    S SYN=""  F  S SYN=$ O(^GMRD(12 0.83,"D",S YN)) Q:SYN =""  S SUB =0 F  S SU B=$O(^GMRD (120.83,"D ",SYN,SUB) ) Q:'+SUB   D  ;233
  993   "RTN","VPS XGMRA",119 ,0)
  994    .S NAME=$ P(^GMRD(12 0.83,SUB,0 ),U) S ^TM P($J,"SIGN S","B",(SY N_" "_"<"_ NAME_">"_U _NAME),SUB )="" ;233
  995   "RTN","VPS XGMRA",120 ,0)
  996    F  S FROM =$O(^TMP($ J,"SIGNS", "B",FROM))  Q:FROM=""   D
  997   "RTN","VPS XGMRA",121 ,0)
  998    . I FROM= "OTHER REA CTION" Q   ;Don't sen d this ent ry
  999   "RTN","VPS XGMRA",122 ,0)
  1000    . S IEN=0  F  S IEN= $O(^TMP($J ,"SIGNS"," B",FROM,IE N)) Q:'IEN   D
  1001   "RTN","VPS XGMRA",123 ,0)
  1002    . . I $L( $T(SCREEN^ XTID)) I $ $SCREEN^XT ID(120.83, .01,IEN_", ") Q  ;Is  term activ e
  1003   "RTN","VPS XGMRA",124 ,0)
  1004    . . S I=I +1
  1005   "RTN","VPS XGMRA",125 ,0)
  1006    . . S @TA RGET@("res ults","sig nsSymptoms ",I)=IEN_U _FROM
  1007   "RTN","VPS XGMRA",126 ,0)
  1008    Q $$RESUL T^XSAPXUTL ()
  1009   "RTN","VPS XGMRA",127 ,0)
  1010    ;
  1011   "RTN","VPS XGMRA",128 ,0)
  1012   FILENAME ;  Display t ext of fil enames for  search tr eeview
  1013   "RTN","VPS XGMRA",129 ,0)
  1014    ;;120.82
  1015   "RTN","VPS XGMRA",130 ,0)
  1016    ;;50.6
  1017   "RTN","VPS XGMRA",131 ,0)
  1018    ;;50.605
  1019   "RTN","VPS XGMRA",132 ,0)
  1020    ;;50.67
  1021   "RTN","VPS XGMRA",133 ,0)
  1022    ;;
  1023   "RTN","VPS XGMRA",134 ,0)
  1024   ABJPHB(X)  ; Search r ecords fro m GMR ALLE RGIES file  for X inp ut
  1025   "RTN","VPS XGMRA",135 ,0)
  1026    N VPSIEN, XB,XD
  1027   "RTN","VPS XGMRA",136 ,0)
  1028    I X="OTHE R ALLERGY/ ADVERSE RE ACTION" Q   ;Don't se nd this en try
  1029   "RTN","VPS XGMRA",137 ,0)
  1030    ; Loop th rough alle rgy names
  1031   "RTN","VPS XGMRA",138 ,0)
  1032    S XB=X F   S XB=$O(^ GMRD(120.8 2,"B",XB))  Q:XB=""   Q:$E(XB,1, $L(X))'=X   D
  1033   "RTN","VPS XGMRA",139 ,0)
  1034    . I XB="O THER ALLER GY/ADVERSE  REACTION"  Q  ;don't  send this  entry
  1035   "RTN","VPS XGMRA",140 ,0)
  1036    . S VPSIE N=$O(^GMRD (120.82,"B ",XB,0))
  1037   "RTN","VPS XGMRA",141 ,0)
  1038    . ;I '$$S CR(120.82, VPSIEN) D  SETRES($P( $G(^GMRD(1 20.82,+VPS IEN,0)),U, 1)_U_U_VPS IEN_";GMRD (120.82,")  ; Set jus t the name    ;SCR 20 170131 MRA R-1118
  1039   "RTN","VPS XGMRA",142 ,0)
  1040     . I '$$S CR(120.82, VPSIEN) D  SETRES(TAR GET,$P($G( ^GMRD(120. 82,+VPSIEN ,0)),U,1)_ U_U_VPSIEN _";GMRD(12 0.82,") ;  Set just t he name
  1041   "RTN","VPS XGMRA",143 ,0)
  1042    ; Exact m atch on al lergy syno nym
  1043   "RTN","VPS XGMRA",144 ,0)
  1044    S XD=X F   S XD=$O(^ GMRD(120.8 2,"D",XD))  Q:XD=""   Q:$E(XD,1, $L(X))'=X   D
  1045   "RTN","VPS XGMRA",145 ,0)
  1046    . I XD="O THER ALLER GY/ADVERSE  REACTION"  Q  ;don't  send this  entry
  1047   "RTN","VPS XGMRA",146 ,0)
  1048    . S VPSIE N=$O(^GMRD (120.82,"D ",XD,0))
  1049   "RTN","VPS XGMRA",147 ,0)
  1050    . ;I '$$S CR(120.82, VPSIEN) D  SETRES($P( $G(^GMRD(1 20.82,+VPS IEN,0)),U, 1)_U_XD_U_ VPSIEN_";G MRD(120.82 ,") ; Set  with synon ym ;SCR 20 170131 MRA R-1118
  1051   "RTN","VPS XGMRA",148 ,0)
  1052    . I '$$SC R(120.82,V PSIEN) D S ETRES(TARG ET,$P($G(^ GMRD(120.8 2,+VPSIEN, 0)),U,1)_U _XD_U_VPSI EN_";GMRD( 120.82,")  ; Set with  synonym
  1053   "RTN","VPS XGMRA",149 ,0)
  1054    Q
  1055   "RTN","VPS XGMRA",150 ,0)
  1056    ;
  1057   "RTN","VPS XGMRA",151 ,0)
  1058    ;EJPF(X)  ; Search r ecords fro m VA GENER IC file fo r X input   ;SCR 2017 0120 MRAR- 1118
  1059   "RTN","VPS XGMRA",152 ,0)
  1060   EJPF(TARGE T,X) ; Sea rch record s from VA  GENERIC fi le for X i nput
  1061   "RTN","VPS XGMRA",153 ,0)
  1062    N VPSIEN, LIST,VAL,N AME
  1063   "RTN","VPS XGMRA",154 ,0)
  1064    S VAL=$$T GTOG2^PSNA PIS(X,.LIS T)
  1065   "RTN","VPS XGMRA",155 ,0)
  1066    I $D(LIST ) S VPSIEN =0 F  S VP SIEN=$O(LI ST(VPSIEN) ) Q:'VPSIE N  D
  1067   "RTN","VPS XGMRA",156 ,0)
  1068    . S NAME= $P(LIST(VP SIEN),U,2)
  1069   "RTN","VPS XGMRA",157 ,0)
  1070    . Q:$E($P (LIST(VPSI EN),U,2),1 ,$L(X))'=X
  1071   "RTN","VPS XGMRA",158 ,0)
  1072    . ;I '$$S CR(50.6,VP SIEN) D SE TRES(NAME_ U_U_VPSIEN _";PSNDF(5 0.6,")  ;S CR 2017013 0 MRAR-111 8
  1073   "RTN","VPS XGMRA",159 ,0)
  1074    . I '$$SC R(50.6,VPS IEN) D SET RES(TARGET ,NAME_U_U_ VPSIEN_";P SNDF(50.6, ")
  1075   "RTN","VPS XGMRA",160 ,0)
  1076    Q
  1077   "RTN","VPS XGMRA",161 ,0)
  1078    ;
  1079   "RTN","VPS XGMRA",162 ,0)
  1080    ;EJPFG(X)  ; Search  records fr om NDC/UPN  file for  X input  ; SCR 201701 30 MRAR-11 18
  1081   "RTN","VPS XGMRA",163 ,0)
  1082   EJPFG(TARG ET,X) ; Se arch recor ds from ND C/UPN file  for X inp ut
  1083   "RTN","VPS XGMRA",164 ,0)
  1084    N VPSIEN, LIST,NAME, I
  1085   "RTN","VPS XGMRA",165 ,0)
  1086    D TRDNAME (X,.LIST)
  1087   "RTN","VPS XGMRA",166 ,0)
  1088    I $D(LIST ) S I=0 F   S I=$O(LI ST(I)) Q:' I  D
  1089   "RTN","VPS XGMRA",167 ,0)
  1090    . S NAME= $P(LIST(I) ,U,2),VPSI EN=$P(LIST (I),U)
  1091   "RTN","VPS XGMRA",168 ,0)
  1092    . Q:$E($P (LIST(I),U ,2),1,$L(X ))'=X
  1093   "RTN","VPS XGMRA",169 ,0)
  1094    . ;I '$$S CR(50.67,V PSIEN) D S ETRES($P(L IST(I),U,2 )_U_U_VPSI EN_";PSNDF (50.67,")
  1095   "RTN","VPS XGMRA",170 ,0)
  1096    . I '$$SC R(50.67,VP SIEN) D SE TRES(TARGE T,$P(LIST( I),U,2)_U_ U_VPSIEN_" ;PSNDF(50. 67,")
  1097   "RTN","VPS XGMRA",171 ,0)
  1098    Q
  1099   "RTN","VPS XGMRA",172 ,0)
  1100    ;
  1101   "RTN","VPS XGMRA",173 ,0)
  1102    ;EJPFJE(X ) ; Search  records f rom VA DRU G CLASS fi le for X i nput  ; SC R 20170130  MRAR-1118
  1103   "RTN","VPS XGMRA",174 ,0)
  1104   EJPFJE(TAR GET,X) ; S earch reco rds from V A DRUG CLA SS file fo r X input
  1105   "RTN","VPS XGMRA",175 ,0)
  1106    N VPSIEN, LIST,NAME, I
  1107   "RTN","VPS XGMRA",176 ,0)
  1108    D CLASRCH (X,.LIST)
  1109   "RTN","VPS XGMRA",177 ,0)
  1110    I $D(LIST ) S I=0 F   S I=$O(LI ST(I)) Q:' I  D
  1111   "RTN","VPS XGMRA",178 ,0)
  1112    . S NAME= $P(LIST(I) ,U,2),VPSI EN=$P(LIST (I),U)
  1113   "RTN","VPS XGMRA",179 ,0)
  1114    . Q:$E($P (LIST(I),U ,2),1,$L(X ))'=X
  1115   "RTN","VPS XGMRA",180 ,0)
  1116    . ;I '$$S CR(50.605, VPSIEN) D  SETRES($P( LIST(I),U, 2)_U_U_50. 605_U_VPSI EN) ; SCR  20170130 M RAR-1118
  1117   "RTN","VPS XGMRA",181 ,0)
  1118    . I '$$SC R(50.605,V PSIEN) D S ETRES(TARG ET,$P(LIST (I),U,2)_U _U_50.605_ U_VPSIEN)
  1119   "RTN","VPS XGMRA",182 ,0)
  1120    K ^TMP($J ,"VPSXGMRA ")
  1121   "RTN","VPS XGMRA",183 ,0)
  1122    Q
  1123   "RTN","VPS XGMRA",184 ,0)
  1124    ;
  1125   "RTN","VPS XGMRA",185 ,0)
  1126   SCR(FILE,I EN) ; Scre en a term  if not act ive
  1127   "RTN","VPS XGMRA",186 ,0)
  1128    N VPSCACH E K VPSCAC HE
  1129   "RTN","VPS XGMRA",187 ,0)
  1130    Q:'$L($T( SCREEN^XTI D)) 0
  1131   "RTN","VPS XGMRA",188 ,0)
  1132    Q $$SCREE N^XTID(FIL E,.01,IEN_ ",","",.VP SCACHE)
  1133   "RTN","VPS XGMRA",189 ,0)
  1134    ;
  1135   "RTN","VPS XGMRA",190 ,0)
  1136   SETRES(VAL UE) ; Sets  the resul ts value w ith the ne xt counter
  1137   "RTN","VPS XGMRA",191 ,0)
  1138    S CNT=CNT +1,@TARGET @("results ","allerge ns",CNT)=V ALUE
  1139   "RTN","VPS XGMRA",192 ,0)
  1140    Q
  1141   "RTN","VPS XGMRA",193 ,0)
  1142    ;
  1143   "RTN","VPS XGMRA",194 ,0)
  1144   CLASRCH(NA ME,LIST) ;
  1145   "RTN","VPS XGMRA",195 ,0)
  1146    K ^TMP($J ,"VPSXGMRA ")
  1147   "RTN","VPS XGMRA",196 ,0)
  1148    D C^PSN50 P65(,NAME, "VPSXGMRA" )
  1149   "RTN","VPS XGMRA",197 ,0)
  1150    I $D(^TMP ($J,"VPSXG MRA","C"))  D
  1151   "RTN","VPS XGMRA",198 ,0)
  1152    . N I S I ="" F  S I =$O(^TMP($ J,"VPSXGMR A","C",I))  Q:I=""  D
  1153   "RTN","VPS XGMRA",199 ,0)
  1154    .. N J S  J=0 F  S J =$O(^TMP($ J,"VPSXGMR A","C",I,J )) Q:'J  S  LIST(J)=J _U_$G(^TMP ($J,"VPSXG MRA",J,1))
  1155   "RTN","VPS XGMRA",200 ,0)
  1156    K ^TMP($J ,"VPSXGMRA ")
  1157   "RTN","VPS XGMRA",201 ,0)
  1158    Q
  1159   "RTN","VPS XGMRA",202 ,0)
  1160   TRDNAME(NA ME,LIST) ;
  1161   "RTN","VPS XGMRA",203 ,0)
  1162    K ^TMP($J ,"VPSXGMRA ")
  1163   "RTN","VPS XGMRA",204 ,0)
  1164    D ALL^PSN 5067(,NAME ,,"VPSXGMR A")
  1165   "RTN","VPS XGMRA",205 ,0)
  1166    I $D(^TMP ($J,"VPSXG MRA","B"))  D
  1167   "RTN","VPS XGMRA",206 ,0)
  1168    . N I S I ="" F  S I =$O(^TMP($ J,"VPSXGMR A","B",I))  Q:I=""  D
  1169   "RTN","VPS XGMRA",207 ,0)
  1170    .. N J,K  S J=$O(^TM P($J,"VPSX GMRA","B", I,0)) Q:'J   S K=$$TG TOG^PSNAPI S(I),LIST( J)=K_U_$G( ^TMP($J,"V PSXGMRA",J ,4))
  1171   "RTN","VPS XGMRA",208 ,0)
  1172    K ^TMP($J ,"VPSXGMRA ")
  1173   "RTN","VPS XGMRA",209 ,0)
  1174    Q
  1175   "RTN","VPS XPSS")
  1176   0^10^B5826 304
  1177   "RTN","VPS XPSS",1,0)
  1178   VPSXPSS ;D ALOI/BNT -  MRAR CLIN ICAL RECON CILIATION  SERVICES ; 11/20/16 1 5:30
  1179   "RTN","VPS XPSS",2,0)
  1180    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 19
  1181   "RTN","VPS XPSS",3,0)
  1182    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  1183   "RTN","VPS XPSS",4,0)
  1184    ;
  1185   "RTN","VPS XPSS",5,0)
  1186    ; Externa l Referenc es           DBIA#
  1187   "RTN","VPS XPSS",6,0)
  1188    ; ------- ---------- --           -----
  1189   "RTN","VPS XPSS",7,0)
  1190    ; PSN5067                         4829
  1191   "RTN","VPS XPSS",8,0)
  1192    ; PSN50P6 8                       4545
  1193   "RTN","VPS XPSS",9,0)
  1194    ; VASITE                          10112
  1195   "RTN","VPS XPSS",10,0 )
  1196    ; XSAPXUT L                       6458
  1197   "RTN","VPS XPSS",11,0 )
  1198    ; XTID                            4631
  1199   "RTN","VPS XPSS",12,0 )
  1200    Q
  1201   "RTN","VPS XPSS",13,0 )
  1202    ;
  1203   "RTN","VPS XPSS",14,0 )
  1204   GETDRGS(SO URCE,TARGE T) ; Get P atient Med s
  1205   "RTN","VPS XPSS",15,0 )
  1206    N DFN,NAM E,LIST,CNT ,I,J,K,VPS SITE,VPSST N
  1207   "RTN","VPS XPSS",16,0 )
  1208    S CNT=0
  1209   "RTN","VPS XPSS",17,0 )
  1210    N X F X=" NAME" D IN ITPARM^XSA PXUTL(.X)
  1211   "RTN","VPS XPSS",18,0 )
  1212    S VPSSITE =$$SITE^VA SITE,VPSST N=$P(VPSSI TE,U,3)
  1213   "RTN","VPS XPSS",19,0 )
  1214    ;
  1215   "RTN","VPS XPSS",20,0 )
  1216    I NAME]""  D TRDNAME (NAME,.LIS T)
  1217   "RTN","VPS XPSS",21,0 )
  1218    I $D(LIST ) S I=0 F   S I=$O(LI ST(I)) Q:' I  D
  1219   "RTN","VPS XPSS",22,0 )
  1220    . Q:$E(LI ST(I),1,$L (NAME))'=N AME
  1221   "RTN","VPS XPSS",23,0 )
  1222    . I '$$SC R(50.67,I)  D
  1223   "RTN","VPS XPSS",24,0 )
  1224    . . ;D SE TRES(LIST( I)_U_50.67 _U_I)  ; S CR 2017013 0 MRAR-111 8
  1225   "RTN","VPS XPSS",25,0 )
  1226    . . D SET RES(TARGET ,LIST(I)_U _50.67_U_I )
  1227   "RTN","VPS XPSS",26,0 )
  1228    . . ; Now  do  D A N P S O   U   T file sea rch
  1229   "RTN","VPS XPSS",27,0 )
  1230    . . N VPR LST D  DNS    D(LIST(I), .VPRLST)
  1231   "RTN","VPS XPSS",28,0 )
  1232    . . I $D( VPRLST) S  J=0 F  S J =$O(VPRLST (J)) Q:'J   D
  1233   "RTN","VPS XPSS",29,0 )
  1234    . . . Q:$ E(VPRLST(J ),1,LIST(I ))'=LIST(I )
  1235   "RTN","VPS XPSS",30,0 )
  1236    . . . ;I  '$$SCR(50. 67,J) D SE TRES(VPRLS T(J)_U_50. 67_U_J)  ;  SCR 20170 130 MRAR-1 118
  1237   "RTN","VPS XPSS",31,0 )
  1238    . . . I ' $$SCR(50.6 7,J) D SET RES(TARGET ,VPRLST(J) _U_50.67_U _J)
  1239   "RTN","VPS XPSS",32,0 )
  1240    I '$D(@TA RGET@("res ults")) S  @TARGET@(" results")= "0"
  1241   "RTN","VPS XPSS",33,0 )
  1242    Q $$RESUL T^XSAPXUTL ()
  1243   "RTN","VPS XPSS",34,0 )
  1244    ;
  1245   "RTN","VPS XPSS",35,0 )
  1246   TRDNAME(NA ME,LIST) ;
  1247   "RTN","VPS XPSS",36,0 )
  1248    N I,J,K,P ROD
  1249   "RTN","VPS XPSS",37,0 )
  1250    K ^TMP($J ,"VPSXPSS" )
  1251   "RTN","VPS XPSS",38,0 )
  1252    D ALL^PSN 5067(,NAME ,,"VPSXPSS ")
  1253   "RTN","VPS XPSS",39,0 )
  1254    I $D(^TMP ($J,"VPSXP SS","B"))  D
  1255   "RTN","VPS XPSS",40,0 )
  1256    . N I S I ="" F  S I =$O(^TMP($ J,"VPSXPSS ","B",I))  Q:I=""  D
  1257   "RTN","VPS XPSS",41,0 )
  1258    . . N J S  J=$O(^TMP ($J,"VPSXP SS","B",I, 0)) Q:'J   D
  1259   "RTN","VPS XPSS",42,0 )
  1260    . . . S L IST(J)=$G( ^TMP($J,"V PSXPSS",J, 4))
  1261   "RTN","VPS XPSS",43,0 )
  1262    K ^TMP($J ,"VPSXPSS" )
  1263   "RTN","VPS XPSS",44,0 )
  1264    Q
  1265   "RTN","VPS XPSS",45,0 )
  1266    ;
  1267   "RTN","VPS XPSS",46,0 )
  1268   DNS    D(NAME,LIS T) ;
  1269   "RTN","VPS XPSS",47,0 )
  1270    N I,J,K
  1271   "RTN","VPS XPSS",48,0 )
  1272    K ^TMP($J ,"VPSVPROD ")
  1273   "RTN","VPS XPSS",49,0 )
  1274    D DATA^PS N50P68(,NA ME,"VPSVPR OD")
  1275   "RTN","VPS XPSS",50,0 )
  1276    I $D(^TMP ($J,"VPSVP ROD","B"))  D
  1277   "RTN","VPS XPSS",51,0 )
  1278    . N I S I ="" F  S I =$O(^TMP($ J,"VPSXPSS ","B",I))  Q:I=""  D
  1279   "RTN","VPS XPSS",52,0 )
  1280    . . N J S  J=$O(^TMP ($J,"VPSXP SS","B",I, 0)) Q:'J   D
  1281   "RTN","VPS XPSS",53,0 )
  1282    . . . S L IST(J)=$G( ^TMP($J,"V PSXPSS",J, 5))
  1283   "RTN","VPS XPSS",54,0 )
  1284    K ^TMP($J ,"VPSVPROD ")
  1285   "RTN","VPS XPSS",55,0 )
  1286    Q
  1287   "RTN","VPS XPSS",56,0 )
  1288    ;
  1289   "RTN","VPS XPSS",57,0 )
  1290   SCR(FILE,I EN) ; Scre en a term  if not act ive
  1291   "RTN","VPS XPSS",58,0 )
  1292    N VPSCACH E K VPSCAC HE
  1293   "RTN","VPS XPSS",59,0 )
  1294    Q:'$L($T( SCREEN^XTI D)) 0
  1295   "RTN","VPS XPSS",60,0 )
  1296    Q $$SCREE N^XTID(FIL E,.01,IEN_ ",","",.VP SCACHE)
  1297   "RTN","VPS XPSS",61,0 )
  1298    ;
  1299   "RTN","VPS XPSS",62,0 )
  1300   SETRES(VAL UE) ; Sets  the resul ts value w ith the ne xt counter
  1301   "RTN","VPS XPSS",63,0 )
  1302    S CNT=CNT +1,@TARGET @("results ","meds",C NT)=VALUE
  1303   "RTN","VPS XPSS",64,0 )
  1304    Q
  1305   "RTN","VPS XRX")
  1306   0^6^B18496 6405
  1307   "RTN","VPS XRX",1,0)
  1308   VPSXRX ;DA LOI/BNT -  MRAR CLINI CAL RECONC ILIATION S ERVICES ;1 1/20/16 15 :30
  1309   "RTN","VPS XRX",2,0)
  1310    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 19
  1311   "RTN","VPS XRX",3,0)
  1312    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  1313   "RTN","VPS XRX",4,0)
  1314    ;
  1315   "RTN","VPS XRX",5,0)
  1316    ; Externa l Referenc es           DBIA#
  1317   "RTN","VPS XRX",6,0)
  1318    ; ------- ---------- --           -----
  1319   "RTN","VPS XRX",7,0)
  1320    ; DIQ                             2056
  1321   "RTN","VPS XRX",8,0)
  1322    ; ORWORR                          3367
  1323   "RTN","VPS XRX",9,0)
  1324    ; PSO52AP I                       4820
  1325   "RTN","VPS XRX",10,0)
  1326    ; PSOORRL                         2400
  1327   "RTN","VPS XRX",11,0)
  1328    ; VASITE                          10112
  1329   "RTN","VPS XRX",12,0)
  1330    ; XLFDT                           10103
  1331   "RTN","VPS XRX",13,0)
  1332    ; XSAPXUT L                       6458
  1333   "RTN","VPS XRX",14,0)
  1334    Q
  1335   "RTN","VPS XRX",15,0)
  1336    ;
  1337   "RTN","VPS XRX",16,0)
  1338   GETMEDS(SO URCE,TARGE T) ; Get P atient Med s
  1339   "RTN","VPS XRX",17,0)
  1340    N DFN,VPS SITE,VPSST N,VPSDATA
  1341   "RTN","VPS XRX",18,0)
  1342    N X F X=" DFN","SDAT E","EDATE"  D INITPAR M^XSAPXUTL (.X)
  1343   "RTN","VPS XRX",19,0)
  1344    S VPSSITE =$$SITE^VA SITE,VPSST N=$P(VPSSI TE,U,3)
  1345   "RTN","VPS XRX",20,0)
  1346    I 'DFN D   Q $$RESUL T^XSAPXUTL ()
  1347   "RTN","VPS XRX",21,0)
  1348    . D BLDER ROR^XSAPXU TL(1,"Pati ent DFN is  undefined ","GETMEDS ^VPSXRX")
  1349   "RTN","VPS XRX",22,0)
  1350    ; Default  to last 1 80 days
  1351   "RTN","VPS XRX",23,0)
  1352    I SDATE'] "" S SDATE =$$FMADD^X LFDT(DT,-1 80)
  1353   "RTN","VPS XRX",24,0)
  1354    I EDATE'] "" S EDATE =DT
  1355   "RTN","VPS XRX",25,0)
  1356    K ^TMP("P S",$J)
  1357   "RTN","VPS XRX",26,0)
  1358    D OCL^PSO ORRL(DFN,S DATE,EDATE ,"")
  1359   "RTN","VPS XRX",27,0)
  1360    N ITMP,FI ELDS,INSTR UCT,COMMEN TS,REASON, NVSDT,TYPE ,ILST,J,VP SOCL S ILS T=0
  1361   "RTN","VPS XRX",28,0)
  1362    S VPSOCL= $NA(^TMP($ J,"VPSOCL" )) K @VPSO CL M @VPSO CL=^TMP("P S",$J) K ^ TMP("PS",$ J)
  1363   "RTN","VPS XRX",29,0)
  1364    S ITMP=""  F  S ITMP =$O(@VPSOC L@(ITMP))  Q:'ITMP  D
  1365   "RTN","VPS XRX",30,0)
  1366    . K INSTR UCT,COMMEN TS,REASON
  1367   "RTN","VPS XRX",31,0)
  1368    . K ^TMP( "VPSACT",$ J,"COMMENT S")
  1369   "RTN","VPS XRX",32,0)
  1370    . S COMME NTS="^TMP( ""VPSACT"" ,$J,""COMM ENTS"")"
  1371   "RTN","VPS XRX",33,0)
  1372    . S (INST RUCT,@COMM ENTS)="",F IELDS=@VPS OCL@(ITMP, 0)
  1373   "RTN","VPS XRX",34,0)
  1374    . S TYPE= $S($P($P(F IELDS,U)," ;",2)="O": "OP",1:"UD ")
  1375   "RTN","VPS XRX",35,0)
  1376    . I $D(@V PSOCL@(ITM P,"CLINIC" ,0)) S TYP E="CP"
  1377   "RTN","VPS XRX",36,0)
  1378    . N LOC,L OCEX S (LO C,LOCEX)=" "
  1379   "RTN","VPS XRX",37,0)
  1380    . I TYPE= "CP" S LOC =$G(@VPSOC L@(ITMP,"C LINIC",0))
  1381   "RTN","VPS XRX",38,0)
  1382    . S:LOC L OCEX=$P($G (^SC(+LOC, 0)),U)_":" _+LOC ;IMO  NEW
  1383   "RTN","VPS XRX",39,0)
  1384    . I TYPE= "OP",$P(FI ELDS,";")[ "N" S TYPE ="NV"
  1385   "RTN","VPS XRX",40,0)
  1386    . I TYPE= "OP",$P(FI ELDS,";")[ "P" S TYPE ="OO" ; Pe nding Outp atient Ord er
  1387   "RTN","VPS XRX",41,0)
  1388    . I TYPE= "UD",$P(FI ELDS,";")[ "P" S TYPE ="IO" ; Pe nding Inpa tient Orde r
  1389   "RTN","VPS XRX",42,0)
  1390    . I $O(@V PSOCL@(ITM P,"A",0))> 0 S TYPE=" IV"
  1391   "RTN","VPS XRX",43,0)
  1392    . I $O(@V PSOCL@(ITM P,"B",0))> 0 S TYPE=" IV"
  1393   "RTN","VPS XRX",44,0)
  1394    . I (TYPE ="UD")!(TY PE="CP") D  UDINST(.I NSTRUCT,IT MP,.VPSOCL ,LOCEX)
  1395   "RTN","VPS XRX",45,0)
  1396    . I TYPE= "OP" D OPI NST(.INSTR UCT,ITMP,. VPSOCL,SDA TE,EDATE,D FN)
  1397   "RTN","VPS XRX",46,0)
  1398    . I TYPE= "IV" D IVI NST(.INSTR UCT,ITMP,. VPSOCL)
  1399   "RTN","VPS XRX",47,0)
  1400    . I TYPE= "NV" D NVI NST(.INSTR UCT,ITMP,. VPSOCL)
  1401   "RTN","VPS XRX",48,0)
  1402    . I TYPE= "OO" D POI NST(.INSTR UCT,ITMP,. VPSOCL)
  1403   "RTN","VPS XRX",49,0)
  1404    . I TYPE= "IO" D PII NST(.INSTR UCT,ITMP,. VPSOCL)
  1405   "RTN","VPS XRX",50,0)
  1406    K ^TMP("P S",$J),^TM P("VPSACT" ,$J),^TMP( $J,"VPSOCL "),^TMP("P S",$J),^TM P($J,"RX52 "),^TMP($J ,"DRUG")
  1407   "RTN","VPS XRX",51,0)
  1408    I '$D(@TA RGET@("res ults")) S  @TARGET@(" results")= "0"
  1409   "RTN","VPS XRX",52,0)
  1410    Q $$RESUL T^XSAPXUTL ()
  1411   "RTN","VPS XRX",53,0)
  1412    ;UDINST(Y ,INDEX,VPS OCL,LOCEX)  ; assembl es instruc tions for  a unit dos e order ;s cr 2017012 7 MRAR-111 8
  1413   "RTN","VPS XRX",54,0)
  1414   UDINST(Y,I NDEX,VPSOC L,LOCEX,TA RGET) ; as sembles in structions  for a uni t dose ord er
  1415   "RTN","VPS XRX",55,0)
  1416    N I,X,RST ,UDIEN,UDU ID
  1417   "RTN","VPS XRX",56,0)
  1418    S X=@VPSO CL@(INDEX, 0)
  1419   "RTN","VPS XRX",57,0)
  1420    S UDIEN=+ $P(X,U)
  1421   "RTN","VPS XRX",58,0)
  1422    S UDUID=$ $SETUID^VP SXUTL(VPSS TN,DFN,UDI EN,"55UD")
  1423   "RTN","VPS XRX",59,0)
  1424    S @TARGET @("results ","unitDos e",UDUID," uid")=UDUI D
  1425   "RTN","VPS XRX",60,0)
  1426    S @TARGET @("results ","unitDos e",UDUID," type")="I"
  1427   "RTN","VPS XRX",61,0)
  1428    I LOCEX]" " S @TARGE T@("result s","unitDo se",UDUID, "location" )=LOCEX
  1429   "RTN","VPS XRX",62,0)
  1430    ;D SETZER O^VPSXRX1( X,"unitDos e",UDUID)    ;2017012 7 MRAR-111 8
  1431   "RTN","VPS XRX",63,0)
  1432    D SETZERO ^VPSXRX1(X ,"unitDose ",UDUID,TA RGET)
  1433   "RTN","VPS XRX",64,0)
  1434    ;D SETMUL T^VPSXRX1( .VPSOCL,IN DEX,"unitD ose",UDUID )   ;20170 127 MRAR-1 118
  1435   "RTN","VPS XRX",65,0)
  1436    D SETMULT ^VPSXRX1(. VPSOCL,IND EX,"unitDo se",UDUID, TARGET)
  1437   "RTN","VPS XRX",66,0)
  1438    ; assembl es start d ate and re asons for  a Unit Dos e med
  1439   "RTN","VPS XRX",67,0)
  1440    N IFNLST, UDLST,UDSD T
  1441   "RTN","VPS XRX",68,0)
  1442    I +$P(X,U ,8) S IFNL ST(1)=+$P( X,U,8) D G ET4V11^ORW ORR(.UDLST ,2,0,.IFNL ST) I $D(U DLST(1)) D
  1443   "RTN","VPS XRX",69,0)
  1444    . S UDSDT =$P(UDLST( 1),U,3)
  1445   "RTN","VPS XRX",70,0)
  1446    . I +UDSD T S @TARGE T@("result s","unitDo se",UDUID, "dateTimeO rdered")=U DSDT_U_$$F MTE^XLFDT( UDSDT)
  1447   "RTN","VPS XRX",71,0)
  1448    . I +$P(U DLST(1),U, 4) S @TARG ET@("resul ts","unitD ose",UDUID ,"startTim eOrdered") =$P(UDLST( 1),U,4)_U_ $$FMTE^XLF DT($P(UDLS T(1),U,4))
  1449   "RTN","VPS XRX",72,0)
  1450    . I +$P(U DLST(1),U, 5) S @TARG ET@("resul ts","unitD ose",UDUID ,"stopTime Ordered")= $P(UDLST(1 ),U,5)_U_$ $FMTE^XLFD T($P(UDLST (1),U,5))
  1451   "RTN","VPS XRX",73,0)
  1452    . I UDLST (3)]"" S @ TARGET@("r esults","u nitDose",U DUID,"orde rComments" )=$E(UDLST (3),2,999)
  1453   "RTN","VPS XRX",74,0)
  1454    . ;I +$P( UDLST(1),U ,10) D PRO VIDER^VPSX RX1(+$P(UD LST(1),U,1 0),UDUID," orderingPr ovider","u nitDose")    ;2017012 7 MRAR-111 8
  1455   "RTN","VPS XRX",75,0)
  1456    . I +$P(U DLST(1),U, 10) D PROV IDER^VPSXR X1(+$P(UDL ST(1),U,10 ),UDUID,"o rderingPro vider","un itDose",TA RGET)
  1457   "RTN","VPS XRX",76,0)
  1458    . S DRUG= $O(^PSDRUG ("B",$P(X, U,2),0))
  1459   "RTN","VPS XRX",77,0)
  1460    . ;I +DRU G D PSDRUG ^VPSXRX1(D RUG,UDUID, "unitDose" )   ;20170 127 MRAR-1 118
  1461   "RTN","VPS XRX",78,0)
  1462    . I +DRUG  D PSDRUG^ VPSXRX1(DR UG,UDUID," unitDose", TARGET)
  1463   "RTN","VPS XRX",79,0)
  1464    Q
  1465   "RTN","VPS XRX",80,0)
  1466   OPINST(Y,I NDEX,VPSOC L,SDATE,ED ATE,DFN) ;  assembles  instructi ons for an  outpatien t prescrip tion
  1467   "RTN","VPS XRX",81,0)
  1468    N I,X,RST ,RXIEN,SIG ,SPINST,RO UTE,SCHED, DRUG,RXDAT ,FILE,FLDN AME,RXUID
  1469   "RTN","VPS XRX",82,0)
  1470    S X=@VPSO CL@(INDEX, 0)
  1471   "RTN","VPS XRX",83,0)
  1472    S RXIEN=+ $P(X,U)
  1473   "RTN","VPS XRX",84,0)
  1474    S RXUID=$ $SETUID^VP SXUTL(VPSS TN,DFN,RXI EN,"52")
  1475   "RTN","VPS XRX",85,0)
  1476    ;D SETZER O^VPSXRX1( X,"outpati ent",RXUID )   ;20170 127 MRAR-1 118
  1477   "RTN","VPS XRX",86,0)
  1478    D SETZERO ^VPSXRX1(X ,"outpatie nt",RXUID, TARGET)
  1479   "RTN","VPS XRX",87,0)
  1480    S @TARGET @("results ","outpati ent",RXUID ,"uid")=RX UID
  1481   "RTN","VPS XRX",88,0)
  1482    S @TARGET @("results ","outpati ent",RXUID ,"type")=" O"
  1483   "RTN","VPS XRX",89,0)
  1484    ;D SETMUL T^VPSXRX1( .VPSOCL,IN DEX,"outpa tient",RXU ID)   ;201 70127 MRAR -1118
  1485   "RTN","VPS XRX",90,0)
  1486    D SETMULT ^VPSXRX1(. VPSOCL,IND EX,"outpat ient",RXUI D,TARGET)
  1487   "RTN","VPS XRX",91,0)
  1488    D RX^PSO5 2API(DFN," RX52",RXIE N,"","",SD ATE,EDATE)
  1489   "RTN","VPS XRX",92,0)
  1490    S RXDAT=$ NA(^TMP($J ,"RX52")), FILE=52
  1491   "RTN","VPS XRX",93,0)
  1492    S RXIEN=0  F  S RXIE N=$O(@RXDA T@(DFN,RXI EN)) Q:'RX IEN  D
  1493   "RTN","VPS XRX",94,0)
  1494    . N FLD S  FLD="" F   S FLD=$O( @RXDAT@(DF N,RXIEN,FL D)) Q:FLD= ""  D
  1495   "RTN","VPS XRX",95,0)
  1496    . . I $D( @RXDAT@(DF N,RXIEN,FL D))=1 D  Q
  1497   "RTN","VPS XRX",96,0)
  1498    . . . ; G et Drug sp ecific fie lds
  1499   "RTN","VPS XRX",97,0)
  1500    . . . ;I  FLD=6 D PS DRUG^VPSXR X1($P(@RXD AT@(DFN,RX IEN,FLD),U ),RXUID,"o utpatient" )   ;20170 127 MRAR-1 118
  1501   "RTN","VPS XRX",98,0)
  1502    . . . I F LD=6 D PSD RUG^VPSXRX 1($P(@RXDA T@(DFN,RXI EN,FLD),U) ,RXUID,"ou tpatient", TARGET)
  1503   "RTN","VPS XRX",99,0)
  1504    . . . S F LDNAME=$$G ETFLD^XSAP XUTL(FILE, FLD)
  1505   "RTN","VPS XRX",100,0 )
  1506    . . . I F LDNAME]"#"  S FLDNAME =$REPLACE( FLDNAME,"# ",$S($E(FL DNAME,1)=" #":"NUMBER  ",1:" NUM BER "))
  1507   "RTN","VPS XRX",101,0 )
  1508    . . . S F LDNAME=$TR (FLDNAME," -_/","   " )
  1509   "RTN","VPS XRX",102,0 )
  1510    . . . S F LDNAME=$$C ONVERT^XSA PXUTL(FLDN AME)
  1511   "RTN","VPS XRX",103,0 )
  1512    . . . I F LDNAME]"", @RXDAT@(DF N,RXIEN,FL D)]"" S @T ARGET@("re sults","ou tpatient", RXUID,FLDN AME)=$S($P (@RXDAT@(D FN,RXIEN,F LD),U,2)]" ":$P(@RXDA T@(DFN,RXI EN,FLD),U, 2),1:@RXDA T@(DFN,RXI EN,FLD))
  1513   "RTN","VPS XRX",104,0 )
  1514    . . . I F LD=9,$P(X, U,5)]"" S  @TARGET@(" results"," outpatient ",RXUID,"r efillsRema ining")=$P (X,U,5)
  1515   "RTN","VPS XRX",105,0 )
  1516    . . . ; G et Provide r details
  1517   "RTN","VPS XRX",106,0 )
  1518    . . . I F LDNAME["pr ovider"!(F LDNAME["Pr ovider"),@ RXDAT@(DFN ,RXIEN,FLD )]"" D
  1519   "RTN","VPS XRX",107,0 )
  1520    . . . . N  PRVSPC D  PROVIDER^V PSXUTL(.PR VSPC,@RXDA T@(DFN,RXI EN,FLD),FL DNAME)
  1521   "RTN","VPS XRX",108,0 )
  1522    . . . . I  $D(PRVSPC )>1 M @TAR GET@("resu lts","outp atient",RX UID)=PRVSP C
  1523   "RTN","VPS XRX",109,0 )
  1524    . . ; If  we are her e then thi s is a glo bal node a nd not a f ield
  1525   "RTN","VPS XRX",110,0 )
  1526    . . I $T( @FLD)]"" D  @FLD
  1527   "RTN","VPS XRX",111,0 )
  1528    Q
  1529   "RTN","VPS XRX",112,0 )
  1530   IVINST(Y,I NDEX,VPSOC L) ; assem bles instr uctions fo r an IV or der
  1531   "RTN","VPS XRX",113,0 )
  1532    N SOLN1,I ,RST,IVDUR ,CNT,IVIEN ,IVUID
  1533   "RTN","VPS XRX",114,0 )
  1534    S IVDUR=" "
  1535   "RTN","VPS XRX",115,0 )
  1536    S X=@VPSO CL@(INDEX, 0)
  1537   "RTN","VPS XRX",116,0 )
  1538    S IVIEN=+ $P(X,U)
  1539   "RTN","VPS XRX",117,0 )
  1540    S IVUID=$ $SETUID^VP SXUTL(VPSS TN,DFN,IVI EN,"55IV")
  1541   "RTN","VPS XRX",118,0 )
  1542    S @TARGET @("results ","iv",IVU ID,"uid")= IVUID
  1543   "RTN","VPS XRX",119,0 )
  1544    S @TARGET @("results ","iv",IVU ID,"type") ="I"
  1545   "RTN","VPS XRX",120,0 )
  1546    ;D SETZER O^VPSXRX1( X,"iv",IVU ID)   ;201 70127 MRAR -1118
  1547   "RTN","VPS XRX",121,0 )
  1548    D SETZERO ^VPSXRX1(X ,"iv",IVUI D,TARGET)
  1549   "RTN","VPS XRX",122,0 )
  1550    ;D SETMUL T^VPSXRX1( .VPSOCL,IN DEX,"iv",I VUID)   ;2 0170127 MR AR-1118
  1551   "RTN","VPS XRX",123,0 )
  1552    D SETMULT ^VPSXRX1(. VPSOCL,IND EX,"iv",IV UID,TARGET )
  1553   "RTN","VPS XRX",124,0 )
  1554    S:$D(@VPS OCL@(INDEX ,"IVLIM",0 )) IVDUR=$ G(@VPSOCL@ (INDEX,"IV LIM",0))
  1555   "RTN","VPS XRX",125,0 )
  1556    I $L(IVDU R) D
  1557   "RTN","VPS XRX",126,0 )
  1558    . N DURU, DURV S DUR U="",DURV= 0
  1559   "RTN","VPS XRX",127,0 )
  1560    . I IVDUR ["dose" D   Q
  1561   "RTN","VPS XRX",128,0 )
  1562    . .S DURV =$P(IVDUR, "doses",2)
  1563   "RTN","VPS XRX",129,0 )
  1564    . .S IVDU R="for a t otal of "_ +DURV_$S(+ DURV=1:"do se",+DURV> 1:" doses" ,1:" dose" )
  1565   "RTN","VPS XRX",130,0 )
  1566    . .S @RST @(@RST)=@R ST@(@RST)_ " "_IVDUR
  1567   "RTN","VPS XRX",131,0 )
  1568    . S DURU= $E(IVDUR,1 ),DURV=$E( IVDUR,2,$L (IVDUR))
  1569   "RTN","VPS XRX",132,0 )
  1570    . I (DURU ="D")!(DUR U="d") S I VDUR="for  "_+DURV_$S (+DURV=1:"  day",+DUR V>1:" days ",1:" day" )
  1571   "RTN","VPS XRX",133,0 )
  1572    . I (DURU ="H")!(DUR U="h") S I VDUR="for  "_+DURV_$S (+DURV=1:"  hours",+D URV>1:" ho urs",1:" h our")
  1573   "RTN","VPS XRX",134,0 )
  1574    . I (DURU ="M")!(DUR U="m") S I VDUR="with  total vol ume "_+DUR V_" ml"
  1575   "RTN","VPS XRX",135,0 )
  1576    . I (DURU ="L")!(DUR U="l") S I VDUR="with  total vol ume "_+DUR V_" L"
  1577   "RTN","VPS XRX",136,0 )
  1578    . S @TARG ET@("resul ts","iv",I VUID,"dura tion")=IVD UR
  1579   "RTN","VPS XRX",137,0 )
  1580    ; assembl es start d ate and re asons for  a IV med
  1581   "RTN","VPS XRX",138,0 )
  1582    N IFNLST, IVLST,IVSD T
  1583   "RTN","VPS XRX",139,0 )
  1584    I +$P(X,U ,8) S IFNL ST(1)=+$P( X,U,8) D G ET4V11^ORW ORR(.IVLST ,2,0,.IFNL ST) I $D(I VLST(1)) D
  1585   "RTN","VPS XRX",140,0 )
  1586    . S IVSDT =$P(IVLST( 1),U,3)
  1587   "RTN","VPS XRX",141,0 )
  1588    . I +IVSD T S @TARGE T@("result s","iv",IV UID,"dateT imeOrdered ")=IVSDT_U _$$FMTE^XL FDT(IVSDT)
  1589   "RTN","VPS XRX",142,0 )
  1590    . I +$P(I VLST(1),U, 4) S @TARG ET@("resul ts","iv",I VUID,"star tTimeOrder ed")=$P(IV LST(1),U,4 )_U_$$FMTE ^XLFDT($P( IVLST(1),U ,4))
  1591   "RTN","VPS XRX",143,0 )
  1592    . I +$P(I VLST(1),U, 5) S @TARG ET@("resul ts","iv",I VUID,"stop TimeOrdere d")=$P(IVL ST(1),U,5) _U_$$FMTE^ XLFDT($P(I VLST(1),U, 5))
  1593   "RTN","VPS XRX",144,0 )
  1594    . I IVLST (3)]"" S @ TARGET@("r esults","i v",IVUID," orderComme nts")=$E(I VLST(3),2, 999)
  1595   "RTN","VPS XRX",145,0 )
  1596    . ;I +$P( IVLST(1),U ,10) D PRO VIDER^VPSX RX1(+$P(IV LST(1),U,1 0),IVUID," orderingPr ovider","i v")   ;SCR  20170127  MRAR-1118
  1597   "RTN","VPS XRX",146,0 )
  1598    . I +$P(I VLST(1),U, 10) D PROV IDER^VPSXR X1(+$P(IVL ST(1),U,10 ),IVUID,"o rderingPro vider","iv ",TARGET)
  1599   "RTN","VPS XRX",147,0 )
  1600    . S DRUG= $O(^PSDRUG ("B",$P(X, U,2),0))
  1601   "RTN","VPS XRX",148,0 )
  1602    . ;I +DRU G D PSDRUG ^VPSXRX1(D RUG,IVUID, "iv")   ;S CR 2017012 7 MRAR-111 8
  1603   "RTN","VPS XRX",149,0 )
  1604    . I +DRUG  D PSDRUG^ VPSXRX1(DR UG,IVUID," iv",TARGET )
  1605   "RTN","VPS XRX",150,0 )
  1606    Q
  1607   "RTN","VPS XRX",151,0 )
  1608   NVINST(Y,I NDEX,VPSOC L) ; assem bles instr uctions fo r a non-VA  med
  1609   "RTN","VPS XRX",152,0 )
  1610    N I,X,RST ,RXUID,NVA ID,NVUID,D RUG
  1611   "RTN","VPS XRX",153,0 )
  1612    S X=@VPSO CL@(INDEX, 0)
  1613   "RTN","VPS XRX",154,0 )
  1614    S NVAID=+ $P(X,U)
  1615   "RTN","VPS XRX",155,0 )
  1616    S NVUID=$ $SETUID^VP SXUTL(VPSS TN,DFN,NVA ID,"55NVA" )
  1617   "RTN","VPS XRX",156,0 )
  1618    S @TARGET @("results ","nonVA", NVUID,"uid ")=NVUID
  1619   "RTN","VPS XRX",157,0 )
  1620    S @TARGET @("results ","nonVA", NVUID,"typ e")="N"
  1621   "RTN","VPS XRX",158,0 )
  1622    ;D SETZER O^VPSXRX1( X,"nonVA", NVUID)   ; SCR 201701 27 MRAR-11 18
  1623   "RTN","VPS XRX",159,0 )
  1624    D SETZERO ^VPSXRX1(X ,"nonVA",N VUID,TARGE T)
  1625   "RTN","VPS XRX",160,0 )
  1626    ; assembl es start d ate and re asons for  a non-VA m ed
  1627   "RTN","VPS XRX",161,0 )
  1628    N IFNLST, NVALST
  1629   "RTN","VPS XRX",162,0 )
  1630    I +$P(X,U ,8) S IFNL ST(1)=+$P( X,U,8) D G ET4V11^ORW ORR(.NVALS T,2,0,.IFN LST) I $D( NVALST(1))  D
  1631   "RTN","VPS XRX",163,0 )
  1632    . S NVSDT =$P(NVALST (1),U,3)
  1633   "RTN","VPS XRX",164,0 )
  1634    . I +NVSD T S @TARGE T@("result s","nonVA" ,NVUID,"da teTimeOrde red")=NVSD T_U_$$FMTE ^XLFDT(NVS DT)
  1635   "RTN","VPS XRX",165,0 )
  1636    . I +$P(N VALST(1),U ,4) S @TAR GET@("resu lts","nonV A",NVUID," startTimeO rdered")=$ P(NVALST(1 ),U,4)_U_$ $FMTE^XLFD T($P(NVALS T(1),U,4))
  1637   "RTN","VPS XRX",166,0 )
  1638    . I +$P(N VALST(1),U ,5) S @TAR GET@("resu lts","nonV A",NVUID," stopTimeOr dered")=$P (NVALST(1) ,U,5)_U_$$ FMTE^XLFDT ($P(NVALST (1),U,5))
  1639   "RTN","VPS XRX",167,0 )
  1640    . I NVALS T(3)]"" S  @TARGET@(" results"," nonVA",NVU ID,"orderC omments")= $E(NVALST( 3),2,999)
  1641   "RTN","VPS XRX",168,0 )
  1642    . ;I +$P( NVALST(1), U,10) D PR OVIDER^VPS XRX1(+$P(N VALST(1),U ,10),NVUID ,"ordering Provider", "nonVA")    ;SCR 2017 0127 MRAR- 1118
  1643   "RTN","VPS XRX",169,0 )
  1644    . I +$P(N VALST(1),U ,10) D PRO VIDER^VPSX RX1(+$P(NV ALST(1),U, 10),NVUID, "orderingP rovider"," nonVA",TAR GET)
  1645   "RTN","VPS XRX",170,0 )
  1646    . ;D SETM ULT^VPSXRX 1(.VPSOCL, INDEX,"non VA",NVUID)    ;SCR 20 170127 MRA R-1118
  1647   "RTN","VPS XRX",171,0 )
  1648    . D SETMU LT^VPSXRX1 (.VPSOCL,I NDEX,"nonV A",NVUID,T ARGET)
  1649   "RTN","VPS XRX",172,0 )
  1650    . S DRUG= $O(^PSDRUG ("B",$P(X, U,2),0))
  1651   "RTN","VPS XRX",173,0 )
  1652    . ;I +DRU G D PSDRUG ^VPSXRX1(D RUG,NVUID, "nonVA")    ;SCR 2017 0127 MRAR- 1118
  1653   "RTN","VPS XRX",174,0 )
  1654    . I +DRUG  D PSDRUG^ VPSXRX1(DR UG,NVUID," nonVA",TAR GET)
  1655   "RTN","VPS XRX",175,0 )
  1656    Q
  1657   "RTN","VPS XRX",176,0 )
  1658   POINST(Y,I NDEX,VPSOC L) ; assem bles instr uctions fo r a Pendin g Outpatie nt Order m ed
  1659   "RTN","VPS XRX",177,0 )
  1660    N I,X,RST ,RXUID,POI D,POUID,DR UG
  1661   "RTN","VPS XRX",178,0 )
  1662    S X=@VPSO CL@(INDEX, 0)
  1663   "RTN","VPS XRX",179,0 )
  1664    S POID=+$ P(X,U)
  1665   "RTN","VPS XRX",180,0 )
  1666    S POUID=$ $SETUID^VP SXUTL(VPSS TN,DFN,POI D,"52.41")
  1667   "RTN","VPS XRX",181,0 )
  1668    S @TARGET @("results ","pending Outpatient Order",POU ID,"uid")= POUID
  1669   "RTN","VPS XRX",182,0 )
  1670    S @TARGET @("results ","pending Outpatient Order",POU ID,"type") ="O"
  1671   "RTN","VPS XRX",183,0 )
  1672    ;D SETZER O^VPSXRX1( X,"pending Outpatient Order",POU ID)   ;SCR  20170127  MRAR-1118
  1673   "RTN","VPS XRX",184,0 )
  1674    D SETZERO ^VPSXRX1(X ,"pendingO utpatientO rder",POUI D,TARGET)
  1675   "RTN","VPS XRX",185,0 )
  1676    ; assembl es start d ate and re asons for  a Pending  Outpatient  med
  1677   "RTN","VPS XRX",186,0 )
  1678    N IFNLST, POLST,POSD T
  1679   "RTN","VPS XRX",187,0 )
  1680    I +$P(X,U ,8) S IFNL ST(1)=+$P( X,U,8) D G ET4V11^ORW ORR(.POLST ,2,0,.IFNL ST) I $D(P OLST(1)) D
  1681   "RTN","VPS XRX",188,0 )
  1682    . S POSDT =$P(POLST( 1),U,3)
  1683   "RTN","VPS XRX",189,0 )
  1684    . I +POSD T S @TARGE T@("result s","pendin gOutpatien tOrder",PO UID,"dateT imeOrdered ")=POSDT_U _$$FMTE^XL FDT(POSDT)
  1685   "RTN","VPS XRX",190,0 )
  1686    . I +$P(P OLST(1),U, 4) S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"star tTimeOrder ed")=$P(PO LST(1),U,4 )_U_$$FMTE ^XLFDT($P( POLST(1),U ,4))
  1687   "RTN","VPS XRX",191,0 )
  1688    . I +$P(P OLST(1),U, 5) S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"stop TimeOrdere d")=$P(POL ST(1),U,5) _U_$$FMTE^ XLFDT($P(P OLST(1),U, 5))
  1689   "RTN","VPS XRX",192,0 )
  1690    . I POLST (3)]"" S @ TARGET@("r esults","p endingOutp atientOrde r",POUID," orderComme nts")=$E(P OLST(3),2, 999)
  1691   "RTN","VPS XRX",193,0 )
  1692    . ;I +$P( POLST(1),U ,10) D PRO VIDER^VPSX RX1(+$P(PO LST(1),U,1 0),POUID," orderingPr ovider","p endingOutp atientOrde r")   ;SCR  20170127  MRAR-1118
  1693   "RTN","VPS XRX",194,0 )
  1694    . I +$P(P OLST(1),U, 10) D PROV IDER^VPSXR X1(+$P(POL ST(1),U,10 ),POUID,"o rderingPro vider","pe ndingOutpa tientOrder ",TARGET)
  1695   "RTN","VPS XRX",195,0 )
  1696    . ;D SETM ULT^VPSXRX 1(.VPSOCL, INDEX,"pen dingOutpat ientOrder" ,POUID)    ;SCR 20170 127 MRAR-1 118
  1697   "RTN","VPS XRX",196,0 )
  1698    . D SETMU LT^VPSXRX1 (.VPSOCL,I NDEX,"pend ingOutpati entOrder", POUID,TARG ET)
  1699   "RTN","VPS XRX",197,0 )
  1700    . S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"numb erOfRefill s")=$$GET1 ^DIQ(52.41 ,POID_",", 13)
  1701   "RTN","VPS XRX",198,0 )
  1702    . S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"ente redBy")=$$ GET1^DIQ(5 2.41,POID_ ",",4)
  1703   "RTN","VPS XRX",199,0 )
  1704    . S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"days Supply")=$ $GET1^DIQ( 52.41,POID _",",101)
  1705   "RTN","VPS XRX",200,0 )
  1706    . S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"logi nDate")=$$ GET1^DIQ(5 2.41,POID_ ",",15)
  1707   "RTN","VPS XRX",201,0 )
  1708    . S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"mail Window")=$ $GET1^DIQ( 52.41,POID _",",19)
  1709   "RTN","VPS XRX",202,0 )
  1710    . S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"pati ent")=$$GE T1^DIQ(52. 41,POID_", ",1)
  1711   "RTN","VPS XRX",203,0 )
  1712    . S DRUG= $O(^PSDRUG ("B",$P(X, U,2),0))
  1713   "RTN","VPS XRX",204,0 )
  1714    . ;I +DRU G D PSDRUG ^VPSXRX1(D RUG,POUID, "pendingOu tpatientOr der")   ;S CR 2017012 7 MRAR-111 8
  1715   "RTN","VPS XRX",205,0 )
  1716    . I +DRUG  D PSDRUG^ VPSXRX1(DR UG,POUID," pendingOut patientOrd er",TARGET )
  1717   "RTN","VPS XRX",206,0 )
  1718    Q
  1719   "RTN","VPS XRX",207,0 )
  1720   PIINST(Y,I NDEX,VPSOC L) ; assem bles instr uctions fo r a Pendin g Inpatien t Order me d
  1721   "RTN","VPS XRX",208,0 )
  1722    N I,X,RST ,PIID,PIUI D,DRUG
  1723   "RTN","VPS XRX",209,0 )
  1724    S X=@VPSO CL@(INDEX, 0)
  1725   "RTN","VPS XRX",210,0 )
  1726    S PIID=+$ P(X,U)
  1727   "RTN","VPS XRX",211,0 )
  1728    S PIUID=$ $SETUID^VP SXUTL(VPSS TN,DFN,PII D,"53.1")
  1729   "RTN","VPS XRX",212,0 )
  1730    S @TARGET @("results ","pending InpatientO rder",PIUI D,"uid")=P IUID
  1731   "RTN","VPS XRX",213,0 )
  1732    S @TARGET @("results ","pending InpatientO rder",PIUI D,"type")= "I"
  1733   "RTN","VPS XRX",214,0 )
  1734    ;D SETZER O^VPSXRX1( X,"pending InpatientO rder",PIUI D)   ;SCR  20170127 M RAR-1118
  1735   "RTN","VPS XRX",215,0 )
  1736    D SETZERO ^VPSXRX1(X ,"pendingI npatientOr der",PIUID ,TARGET)
  1737   "RTN","VPS XRX",216,0 )
  1738    ; assembl es start d ate and re asons for  a Pending  Inpatient  med
  1739   "RTN","VPS XRX",217,0 )
  1740    N IFNLST, PILST,PISD T
  1741   "RTN","VPS XRX",218,0 )
  1742    I +$P(X,U ,8) S IFNL ST(1)=+$P( X,U,8) D G ET4V11^ORW ORR(.PILST ,2,0,.IFNL ST) I $D(P ILST(1)) D
  1743   "RTN","VPS XRX",219,0 )
  1744    . S PISDT =$P(PILST( 1),U,3)
  1745   "RTN","VPS XRX",220,0 )
  1746    . S @TARG ET@("resul ts","pendi ngInpatien tOrder",PI UID,"dateT imeOrdered ")=PISDT_U _$$FMTE^XL FDT(PISDT)
  1747   "RTN","VPS XRX",221,0 )
  1748    . I +$P(P ILST(1),U, 4) S @TARG ET@("resul ts","pendi ngInpatien tOrder",PI UID,"start TimeOrdere d")=$P(PIL ST(1),U,4) _U_$$FMTE^ XLFDT($P(P ILST(1),U, 4))
  1749   "RTN","VPS XRX",222,0 )
  1750    . I +$P(P ILST(1),U, 5) S @TARG ET@("resul ts","pendi ngInpatien tOrder",PI UID,"stopT imeOrdered ")=$P(PILS T(1),U,5)_ U_$$FMTE^X LFDT($P(PI LST(1),U,5 ))
  1751   "RTN","VPS XRX",223,0 )
  1752    . I PILST (3)]"" S @ TARGET@("r esults","p endingInpa tientOrder ",PIUID,"o rderCommen ts")=$E(PI LST(3),2,9 99)
  1753   "RTN","VPS XRX",224,0 )
  1754    . ;I +$P( PILST(1),U ,10) D PRO VIDER^VPSX RX1(+$P(PI LST(1),U,1 0),PIUID," provider", "pendingIn patientOrd er")   ;SC R 20170127  MRAR-1118
  1755   "RTN","VPS XRX",225,0 )
  1756    . I +$P(P ILST(1),U, 10) D PROV IDER^VPSXR X1(+$P(PIL ST(1),U,10 ),PIUID,"p rovider"," pendingInp atientOrde r",TARGET)
  1757   "RTN","VPS XRX",226,0 )
  1758    . ;D SETM ULT^VPSXRX 1(.VPSOCL, INDEX,"pen dingInpati entOrder", PIUID)   ; SCR 201701 27 MRAR-11 18
  1759   "RTN","VPS XRX",227,0 )
  1760    . D SETMU LT^VPSXRX1 (.VPSOCL,I NDEX,"pend ingInpatie ntOrder",P IUID,TARGE T)
  1761   "RTN","VPS XRX",228,0 )
  1762    . S DRUG= $O(^PSDRUG ("B",$P(X, U,2),0))
  1763   "RTN","VPS XRX",229,0 )
  1764    . ;I +DRU G D PSDRUG ^VPSXRX1(D RUG,PIUID, "pendingIn patientOrd er")   ;SC R 20170127  MRAR-1118
  1765   "RTN","VPS XRX",230,0 )
  1766    . I +DRUG  D PSDRUG^ VPSXRX1(DR UG,PIUID," pendingInp atientOrde r",TARGET)
  1767   "RTN","VPS XRX",231,0 )
  1768    Q
  1769   "RTN","VPS XRX",232,0 )
  1770   RF ; Refil ls
  1771   "RTN","VPS XRX",233,0 )
  1772    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  1773   "RTN","VPS XRX",234,0 )
  1774    . ;D RXSL OOP^VPSXRX 1(52.1,RXI EN,"refill s","outpat ient")   ; SCR 201701 27 MRAR-11 18
  1775   "RTN","VPS XRX",235,0 )
  1776    . D RXSLO OP^VPSXRX1 (DFN,VPSST N,52.1,RXI EN,"refill s","outpat ient",$G(R XDAT),$G(R XUID),TARG ET)
  1777   "RTN","VPS XRX",236,0 )
  1778    Q
  1779   "RTN","VPS XRX",237,0 )
  1780   IB ; Integ rated Bill ing info
  1781   "RTN","VPS XRX",238,0 )
  1782    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  1783   "RTN","VPS XRX",239,0 )
  1784    . ;D RXSL OOP^VPSXRX 1(52.1,RXI EN,"integr atedBillin g","outpat ient")   ; SCR 201701 27 MRAR-11 18
  1785   "RTN","VPS XRX",240,0 )
  1786    . D RXSLO OP^VPSXRX1 (DFN,VPSST N,52.1,RXI EN,"integr atedBillin g","outpat ient",$G(R XDAT),$G(R XUID),TARG ET)
  1787   "RTN","VPS XRX",241,0 )
  1788    Q
  1789   "RTN","VPS XRX",242,0 )
  1790   P ; Partia l Refills
  1791   "RTN","VPS XRX",243,0 )
  1792    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  1793   "RTN","VPS XRX",244,0 )
  1794    . ;D RXSL OOP^VPSXRX 1(52.2,RXI EN,"partia lFills","o utpatient" )   ;SCR 2 0170127 MR AR-1118
  1795   "RTN","VPS XRX",245,0 )
  1796    . D RXSLO OP^VPSXRX1 (DFN,VPSST N,52.2,RXI EN,"partia lFills","o utpatient" ,$G(RXDAT) ,$G(RXUID) ,TARGET)
  1797   "RTN","VPS XRX",246,0 )
  1798    Q
  1799   "RTN","VPS XRX",247,0 )
  1800   OI ; Order able Items
  1801   "RTN","VPS XRX",248,0 )
  1802    I $D(@RXD AT@(DFN,RX IEN,FLD)), +$P(@RXDAT @(DFN,RXIE N,FLD,0),U )>0 S @TAR GET@("resu lts","outp atient",RX UID,"order ableItem") =@RXDAT@(D FN,RXIEN,F LD)
  1803   "RTN","VPS XRX",249,0 )
  1804    Q
  1805   "RTN","VPS XRX",250,0 )
  1806   L ; Label  multiple
  1807   "RTN","VPS XRX",251,0 )
  1808    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  1809   "RTN","VPS XRX",252,0 )
  1810    . ;D RXSL OOP^VPSXRX 1(52.032,R XIEN,"labe l","outpat ient")   ; SCR 201701 27 MRAR-11 18
  1811   "RTN","VPS XRX",253,0 )
  1812    . D RXSLO OP^VPSXRX1 (DFN,VPSST N,52.032,R XIEN,"labe l","outpat ient",$G(R XDAT),$G(R XUID),TARG ET)
  1813   "RTN","VPS XRX",254,0 )
  1814    Q
  1815   "RTN","VPS XRX",255,0 )
  1816   S ; SAND n ode
  1817   "RTN","VPS XRX",256,0 )
  1818    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  1819   "RTN","VPS XRX",257,0 )
  1820    . ;D RXSL OOP^VPSXRX 1(52,RXIEN ,"sand","o utpatient" )   ;SCR 2 0170127 MR AR-1118
  1821   "RTN","VPS XRX",258,0 )
  1822    . D RXSLO OP^VPSXRX1 (DFN,VPSST N,52,RXIEN ,"sand","o utpatient" ,$G(RXDAT) ,$G(RXUID) ,TARGET)
  1823   "RTN","VPS XRX",259,0 )
  1824    Q
  1825   "RTN","VPS XRX",260,0 )
  1826   M ; Medica tion SIG
  1827   "RTN","VPS XRX",261,0 )
  1828    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  1829   "RTN","VPS XRX",262,0 )
  1830    . S X=0 F   S X=$O(@ RXDAT@(DFN ,RXIEN,FLD ,X)) Q:'X   D
  1831   "RTN","VPS XRX",263,0 )
  1832    . . I @RX DAT@(DFN,R XIEN,FLD,X ,0)]"" S @ TARGET@("r esults","o utpatient" ,RXUID,"si g",X)=@RXD AT@(DFN,RX IEN,FLD,X, 0)
  1833   "RTN","VPS XRX",264,0 )
  1834    Q
  1835   "RTN","VPS XRX",265,0 )
  1836   C ; CMOP D ata
  1837   "RTN","VPS XRX",266,0 )
  1838    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  1839   "RTN","VPS XRX",267,0 )
  1840    . ;D RXSL OOP^VPSXRX 1(52.01,RX IEN,"cmop" ,"outpatie nt")   ;SC R 20170127  MRAR-1118
  1841   "RTN","VPS XRX",268,0 )
  1842    . D RXSLO OP^VPSXRX1 (DFN,VPSST N,52.01,RX IEN,"cmop" ,"outpatie nt",$G(RXD AT),$G(RXU ID),TARGET )
  1843   "RTN","VPS XRX",269,0 )
  1844    Q
  1845   "RTN","VPS XRX1")
  1846   0^12^B3076 1970
  1847   "RTN","VPS XRX1",1,0)
  1848   VPSXRX1 ;D ALOI/BNT -  MRAR CLIN ICAL RECON CILIATION  SERVICES-C ont. of RX  ;11/20/16  15:30
  1849   "RTN","VPS XRX1",2,0)
  1850    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 19
  1851   "RTN","VPS XRX1",3,0)
  1852    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  1853   "RTN","VPS XRX1",4,0)
  1854    ;
  1855   "RTN","VPS XRX1",5,0)
  1856    ; Externa l Referenc es           DBIA#
  1857   "RTN","VPS XRX1",6,0)
  1858    ; ------- ---------- --           -----
  1859   "RTN","VPS XRX1",7,0)
  1860    ; PSS50                           4533
  1861   "RTN","VPS XRX1",8,0)
  1862    ; VASITE                          10112
  1863   "RTN","VPS XRX1",9,0)
  1864    ; XLFDT                           10103
  1865   "RTN","VPS XRX1",10,0 )
  1866    ; XLFSTR                          10104
  1867   "RTN","VPS XRX1",11,0 )
  1868    ; XSAPXUT L                       6458  
  1869   "RTN","VPS XRX1",12,0 )
  1870    Q
  1871   "RTN","VPS XRX1",13,0 )
  1872    ;
  1873   "RTN","VPS XRX1",14,0 )
  1874    ;SETMULT( VPSOCL,IND EX,TYPE,ID ) ; sets t he multipl es  ;SCR 2 0170127 MR AR-1118
  1875   "RTN","VPS XRX1",15,0 )
  1876   SETMULT(VP SOCL,INDEX ,TYPE,ID,T ARGET) ; s ets the mu ltiples
  1877   "RTN","VPS XRX1",16,0 )
  1878    N I,J,SIG ,SPINST,RO UTE,SCHED, ADMIN,RMV, ADDITVS,SO LUTION
  1879   "RTN","VPS XRX1",17,0 )
  1880    ; SIG for  Outpatien t or INSTR UCTIONS fo r Inpatien t
  1881   "RTN","VPS XRX1",18,0 )
  1882    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"SIG ",I)) Q:'I   S SIG=$G (^(I,0)) D
  1883   "RTN","VPS XRX1",19,0 )
  1884    . S J=J+1  I SIG]""  S @TARGET@ ("results" ,TYPE,ID,$ S(TYPE="ou tpatient": "sig",1:"i nstruction s"),J)=SIG
  1885   "RTN","VPS XRX1",20,0 )
  1886    ; Special  Instructi ons
  1887   "RTN","VPS XRX1",21,0 )
  1888    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"SIO ",I)) Q:'I   S SPINST =$G(^(I,0) ) D
  1889   "RTN","VPS XRX1",22,0 )
  1890    . S J=J+1  I SPINST] "" S @TARG ET@("resul ts",TYPE,I D,"special Instructio ns",J)=SPI NST
  1891   "RTN","VPS XRX1",23,0 )
  1892    ; Med Rou te Abbr.
  1893   "RTN","VPS XRX1",24,0 )
  1894    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"MDR ",I)) Q:'I   S ROUTE= $G(^(I,0))  D
  1895   "RTN","VPS XRX1",25,0 )
  1896    . S J=J+1  I ROUTE]" " S @TARGE T@("result s",TYPE,ID ,"route",J )=ROUTE
  1897   "RTN","VPS XRX1",26,0 )
  1898    ; Schedul e
  1899   "RTN","VPS XRX1",27,0 )
  1900    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"SCH ",I)) Q:'I   S SCHED= $G(^(I,0))  D
  1901   "RTN","VPS XRX1",28,0 )
  1902    . S J=J+1  I SCHED]" " S @TARGE T@("result s",TYPE,ID ,"schedule ",J)=SCHED
  1903   "RTN","VPS XRX1",29,0 )
  1904    ; Adminis tration Ti mes
  1905   "RTN","VPS XRX1",30,0 )
  1906    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"ADM ",I)) Q:'I   S ADMIN= $G(^(I,0))  D
  1907   "RTN","VPS XRX1",31,0 )
  1908    . S J=J+1  I ADMIN]" " S @TARGE T@("result s",TYPE,ID ,"administ rationTime s",J)=ADMI N
  1909   "RTN","VPS XRX1",32,0 )
  1910    ; Removal  Times
  1911   "RTN","VPS XRX1",33,0 )
  1912    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"RMV ",I)) Q:'I   S RMV=$G (^(I,0)) D
  1913   "RTN","VPS XRX1",34,0 )
  1914    . S J=J+1  I RMV]""  S @TARGET@ ("results" ,TYPE,ID," removalTim es",J)=RMV
  1915   "RTN","VPS XRX1",35,0 )
  1916    ; Additiv es
  1917   "RTN","VPS XRX1",36,0 )
  1918    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"A", I)) Q:'I   S ADDITVS= $G(^(I,0))  D
  1919   "RTN","VPS XRX1",37,0 )
  1920    . S J=J+1
  1921   "RTN","VPS XRX1",38,0 )
  1922    . I $P(AD DITVS,U)]" " S @TARGE T@("result s",TYPE,ID ,"additive Name",J)=$ P(ADDITVS, U)
  1923   "RTN","VPS XRX1",39,0 )
  1924    . I $P(AD DITVS,U,2) ]"" S @TAR GET@("resu lts",TYPE, ID,"additi veAmount", J)=$P(ADDI TVS,U,2)
  1925   "RTN","VPS XRX1",40,0 )
  1926    . I $P(AD DITVS,U,3) ]"" S @TAR GET@("resu lts",TYPE, ID,"additi veBottle", J)=$P(ADDI TVS,U,3)
  1927   "RTN","VPS XRX1",41,0 )
  1928    ; Solutio ns
  1929   "RTN","VPS XRX1",42,0 )
  1930    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"B", I)) Q:'I   S SOLUTION =$G(^(I,0) ) D
  1931   "RTN","VPS XRX1",43,0 )
  1932    . S J=J+1
  1933   "RTN","VPS XRX1",44,0 )
  1934    . I $P(SO LUTION,U)] "" S @TARG ET@("resul ts",TYPE,I D,"solutio nName",J)= $P(SOLUTIO N,U)
  1935   "RTN","VPS XRX1",45,0 )
  1936    . I $P(SO LUTION,U,2 )]"" S @TA RGET@("res ults",TYPE ,ID,"solut ionAmount" ,J)=$P(SOL UTION,U,2)
  1937   "RTN","VPS XRX1",46,0 )
  1938    Q
  1939   "RTN","VPS XRX1",47,0 )
  1940    ;
  1941   "RTN","VPS XRX1",48,0 )
  1942    ;SETZERO( X,TYPE,ID)  ; sets th e zero nod e   ;SCR 2 0170127 MR AR-1118
  1943   "RTN","VPS XRX1",49,0 )
  1944   SETZERO(X, TYPE,ID,TA RGET) ; se ts the zer o node
  1945   "RTN","VPS XRX1",50,0 )
  1946    I $P($P(X ,U),";",2) ]"" S @TAR GET@("resu lts",TYPE, ID,"patien tStatus")= $P($P(X,U) ,";",2)
  1947   "RTN","VPS XRX1",51,0 )
  1948    I $P(X,U, 2)]"" S @T ARGET@("re sults",TYP E,ID,"drug ")=$P(X,U, 2)
  1949   "RTN","VPS XRX1",52,0 )
  1950    I $P(X,U, 3)]"" S @T ARGET@("re sults",TYP E,ID,"infu sionRate") =$P(X,U,3)
  1951   "RTN","VPS XRX1",53,0 )
  1952    I $P(X,U, 4)]"" S @T ARGET@("re sults",TYP E,ID,"stop Date")=$P( X,U,4)_U_$ $FMTE^XLFD T($P(X,U,4 ))
  1953   "RTN","VPS XRX1",54,0 )
  1954    I $P(X,U, 5)]"" S @T ARGET@("re sults",TYP E,ID,"refi llsRemaini ng")=$P(X, U,5)
  1955   "RTN","VPS XRX1",55,0 )
  1956    I $P(X,U, 6)]"" S @T ARGET@("re sults",TYP E,ID,"tota lDose")=$P (X,U,6)
  1957   "RTN","VPS XRX1",56,0 )
  1958    I $P(X,U, 7)]"" S @T ARGET@("re sults",TYP E,ID,"unit sPerDose") =$P(X,U,7)
  1959   "RTN","VPS XRX1",57,0 )
  1960    I $P(X,U, 8)]"" S @T ARGET@("re sults",TYP E,ID,"orde rId")=+$P( X,U,8)
  1961   "RTN","VPS XRX1",58,0 )
  1962    I $P(X,U, 9)]"" S @T ARGET@("re sults",TYP E,ID,"stat us")=$P(X, U,9)
  1963   "RTN","VPS XRX1",59,0 )
  1964    I $P(X,U, 10)]"" S @ TARGET@("r esults",TY PE,ID,"las tFillDate" )=$P(X,U,1 0)_U_$$FMT E^XLFDT($P (X,U,10))
  1965   "RTN","VPS XRX1",60,0 )
  1966    I $P(X,U, 11)]"" S @ TARGET@("r esults",TY PE,ID,"day sSupply")= $P(X,U,11)
  1967   "RTN","VPS XRX1",61,0 )
  1968    I $P(X,U, 12)]"" S @ TARGET@("r esults",TY PE,ID,"qua ntity")=$P (X,U,12)
  1969   "RTN","VPS XRX1",62,0 )
  1970    I $P(X,U, 13)]"" S @ TARGET@("r esults",TY PE,ID,"not ToBeGiven" )=$P(X,U,1 3)
  1971   "RTN","VPS XRX1",63,0 )
  1972    I $P(X,U, 14)]"" S @ TARGET@("r esults",TY PE,ID,"pen dingRenewa l")=$S($P( X,U,14):"t rue",1:"fa lse")
  1973   "RTN","VPS XRX1",64,0 )
  1974    I $P(X,U, 15)]"" S @ TARGET@("r esults",TY PE,ID,"sta rtDate")=$ P(X,U,15)_ U_$$FMTE^X LFDT($P(X, U,15))
  1975   "RTN","VPS XRX1",65,0 )
  1976    I $P(X,U, 16)]"" S @ TARGET@("r esults",TY PE,ID,"las tReleaseDa teTime")=$ P(X,U,16)_ U_$$FMTE^X LFDT($P(X, U,16))
  1977   "RTN","VPS XRX1",66,0 )
  1978    I $P(X,U, 17)]"" S @ TARGET@("r esults",TY PE,ID,"las tFillDaySu pply")=$P( X,U,17)
  1979   "RTN","VPS XRX1",67,0 )
  1980    Q
  1981   "RTN","VPS XRX1",68,0 )
  1982    ;
  1983   "RTN","VPS XRX1",69,0 )
  1984    ;PSDRUG(D RUG,UID,TY PE) ; Get  Drug Data     ;SCR 20 170127 MRA R-1118
  1985   "RTN","VPS XRX1",70,0 )
  1986   PSDRUG(DRU G,UID,TYPE ,TARGET) ;  Get Drug  Data
  1987   "RTN","VPS XRX1",71,0 )
  1988    N  DNS    D,VUID
  1989   "RTN","VPS XRX1",72,0 )
  1990    K ^TMP($J ,"DRUG")
  1991   "RTN","VPS XRX1",73,0 )
  1992    D DATA^PS S50(DRUG," ","","","" ,"DRUG")
  1993   "RTN","VPS XRX1",74,0 )
  1994    Q:'$D(^TM P($J,"DRUG ",0))
  1995   "RTN","VPS XRX1",75,0 )
  1996    S @TARGET @("results ",TYPE,UID ,"drugClas sification Code")=$P( $G(^TMP($J ,"DRUG",DR UG,25)),U, 2)
  1997   "RTN","VPS XRX1",76,0 )
  1998    S @TARGET @("results ",TYPE,UID ,"drugClas sification Name")=$P( $G(^TMP($J ,"DRUG",DR UG,25)),U, 3)
  1999   "RTN","VPS XRX1",77,0 )
  2000    S @TARGET @("results ",TYPE,UID ,"dispense Unit")=$G( ^TMP($J,"D RUG",DRUG, 14.5))
  2001   "RTN","VPS XRX1",78,0 )
  2002    S  DNS    D=$G(^TMP( $J,"DRUG", DRUG,22))
  2003   "RTN","VPS XRX1",79,0 )
  2004    I  DNS    D="" S  DNS    D=DRUG_U_$ G(^TMP($J, "DRUG",DRU G,.01)),VU ID=$P($$SI TE^VASITE, U,3)_$$REP EAT^XLFSTR (0,15)_DRU G
  2005   "RTN","VPS XRX1",80,0 )
  2006    E    S VUID=$$V UID^VPSXUT L(+ DNS    D,50.68)
  2007   "RTN","VPS XRX1",81,0 )
  2008    S @TARGET @("results ",TYPE,UID ,"product" )=$P( DNS    D,U,2)
  2009   "RTN","VPS XRX1",82,0 )
  2010    S @TARGET @("results ",TYPE,UID ,"productI d")=$$SETV URN^VPSXUT L("vuid",V UID)
  2011   "RTN","VPS XRX1",83,0 )
  2012    K ^TMP("P SOR",$J)
  2013   "RTN","VPS XRX1",84,0 )
  2014    Q
  2015   "RTN","VPS XRX1",85,0 )
  2016    ;
  2017   "RTN","VPS XRX1",86,0 )
  2018    ;PROVIDER (PRV,UID,F LD,TYPE) ;  Get Provi der Specs   ;SCR 2017 0127 MRAR- 1118
  2019   "RTN","VPS XRX1",87,0 )
  2020   PROVIDER(P RV,UID,FLD ,TYPE,TARG ET) ; Get  Provider S pecs
  2021   "RTN","VPS XRX1",88,0 )
  2022    N X,PROV
  2023   "RTN","VPS XRX1",89,0 )
  2024    D PROVIDE R^VPSXUTL( .PROV,PRV, FLD)
  2025   "RTN","VPS XRX1",90,0 )
  2026    M @TARGET @("results ",TYPE,UID )=PROV
  2027   "RTN","VPS XRX1",91,0 )
  2028    Q
  2029   "RTN","VPS XRX1",92,0 )
  2030    ;
  2031   "RTN","VPS XRX1",93,0 )
  2032    ;RXSLOOP( SFILE,RXIE N,NODE,TYP E) ; Loop  through su bfiles and  get field  names and  values -  SCR 201701 27 MRAR-11 18
  2033   "RTN","VPS XRX1",94,0 )
  2034   RXSLOOP(DF N,VPSSTN,S FILE,RXIEN ,NODE,TYPE ,RXDAT,RXU ID,TARGET)  ; Loop th rough subf iles and g et field n ames and v alues
  2035   "RTN","VPS XRX1",95,0 )
  2036    N X,SFLD, SFLDNAME
  2037   "RTN","VPS XRX1",96,0 )
  2038    I $G(RXUI D)="" S RX UID=$$SETU ID^VPSXUTL (VPSSTN,DF N,RXIEN,"5 2")
  2039   "RTN","VPS XRX1",97,0 )
  2040    S X=0
  2041   "RTN","VPS XRX1",98,0 )
  2042    F  S X=$O (@RXDAT@(D FN,RXIEN,F LD,X)) Q:' X  D
  2043   "RTN","VPS XRX1",99,0 )
  2044    . S SFLD= 0 F  S SFL D=$O(@RXDA T@(DFN,RXI EN,FLD,X,S FLD)) Q:'S FLD  D
  2045   "RTN","VPS XRX1",100, 0)
  2046    . . I $D( @RXDAT@(DF N,RXIEN,FL D,X,SFLD)) =1 D  Q
  2047   "RTN","VPS XRX1",101, 0)
  2048    . . . S S FLDNAME=$$ GETFLD^XSA PXUTL(SFIL E,SFLD)
  2049   "RTN","VPS XRX1",102, 0)
  2050    . . . I S FLDNAME]"# " S SFLDNA ME=$REPLAC E(SFLDNAME ,"#",$S($E (SFLDNAME, 1)="#":"NU MBER ",1:"  NUMBER ") )
  2051   "RTN","VPS XRX1",103, 0)
  2052    . . . S S FLDNAME=$T R(SFLDNAME ,"-_/","    ")
  2053   "RTN","VPS XRX1",104, 0)
  2054    . . . S S FLDNAME=$$ CONVERT^XS APXUTL(SFL DNAME)
  2055   "RTN","VPS XRX1",105, 0)
  2056    . . . I S FLDNAME]"" ,@RXDAT@(D FN,RXIEN,F LD,X,SFLD) ]"" D
  2057   "RTN","VPS XRX1",106, 0)
  2058    . . . .S  @TARGET@(" results",T YPE,RXUID, NODE,X,SFL DNAME)=$S( $P(@RXDAT@ (DFN,RXIEN ,FLD,X,SFL D),U,2)]"" :$P(@RXDAT @(DFN,RXIE N,FLD,X,SF LD),U,2),1 :@RXDAT@(D FN,RXIEN,F LD,X,SFLD) )
  2059   "RTN","VPS XRX1",107, 0)
  2060    Q
  2061   "RTN","VPS XSAPX")
  2062   0^7^B89655 49
  2063   "RTN","VPS XSAPX",1,0 )
  2064   VPSXSAPX ; DALOI/BNT  - MRAR CLI NICAL RECO NCILIATION  SERVICES  ;11/20/16  15:30
  2065   "RTN","VPS XSAPX",2,0 )
  2066    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 19
  2067   "RTN","VPS XSAPX",3,0 )
  2068    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  2069   "RTN","VPS XSAPX",4,0 )
  2070    ;
  2071   "RTN","VPS XSAPX",5,0 )
  2072    ; Externa l Referenc es           DBIA#
  2073   "RTN","VPS XSAPX",6,0 )
  2074    ; ------- ---------- --           -----
  2075   "RTN","VPS XSAPX",7,0 )
  2076    ; XSAPXUT L                       6458
  2077   "RTN","VPS XSAPX",8,0 )
  2078    ;
  2079   "RTN","VPS XSAPX",9,0 )
  2080    Q
  2081   "RTN","VPS XSAPX",10, 0)
  2082    ;
  2083   "RTN","VPS XSAPX",11, 0)
  2084   GETMEDS(SO URCE,TARGE T) ; Get P atient Med s
  2085   "RTN","VPS XSAPX",12, 0)
  2086    ;This fun ction prov ides a lis t of patie nt meds. 
  2087   "RTN","VPS XSAPX",13, 0)
  2088    ;The list  includes  meds from  the the fo llowing lo cations:
  2089   "RTN","VPS XSAPX",14, 0)
  2090    ; - Presc ription fi le #52 (Ou tpatient)
  2091   "RTN","VPS XSAPX",15, 0)
  2092    ; - Pharm acy Patien t #55 (Non -VA) and ( Inpatient)
  2093   "RTN","VPS XSAPX",16, 0)
  2094    ;
  2095   "RTN","VPS XSAPX",17, 0)
  2096    ;Meds are  returned  sorted by  outpatient , iv, unit Dose or no nVA meds.
  2097   "RTN","VPS XSAPX",18, 0)
  2098    ;
  2099   "RTN","VPS XSAPX",19, 0)
  2100    ;###SOURC E INPUT
  2101   "RTN","VPS XSAPX",20, 0)
  2102    ;|Paramet er|Require d/Optional |Descripti on|
  2103   "RTN","VPS XSAPX",21, 0)
  2104    ;|------- --|------- ---------- |--------- --|
  2105   "RTN","VPS XSAPX",22, 0)
  2106    ;|DFN       |(R)                |Patient I EN in the  PATIENT fi le #2|
  2107   "RTN","VPS XSAPX",23, 0)
  2108    ;|SDATE     |(O)                |Date to b egin searc h - Defaul t is 180 d ays in the  past|
  2109   "RTN","VPS XSAPX",24, 0)
  2110    ;|EDATE     |(O)                |Date to e nd search  - Default  is Today|
  2111   "RTN","VPS XSAPX",25, 0)
  2112    ;
  2113   "RTN","VPS XSAPX",26, 0)
  2114    ;###TARGE T OUTPUT
  2115   "RTN","VPS XSAPX",27, 0)
  2116    ;
  2117   "RTN","VPS XSAPX",28, 0)
  2118    ;|Paramet er|Require d/Optional |Descripti on|
  2119   "RTN","VPS XSAPX",29, 0)
  2120    ;|------- --|------- ---------- |--------- --|
  2121   "RTN","VPS XSAPX",30, 0)
  2122    ;|TARGET    |(R)                |The outpu t is a lis t of patie nt medicat ions.|
  2123   "RTN","VPS XSAPX",31, 0)
  2124    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  2125   "RTN","VPS XSAPX",32, 0)
  2126    N XSAERR, RESULTS,XS ASYM
  2127   "RTN","VPS XSAPX",33, 0)
  2128    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  2129   "RTN","VPS XSAPX",34, 0)
  2130    Q $$GETME DS^VPSXRX( .SOURCE,.T ARGET)
  2131   "RTN","VPS XSAPX",35, 0)
  2132    ;
  2133   "RTN","VPS XSAPX",36, 0)
  2134   GETALRG(SO URCE,TARGE T) ; Get P atient All ergies
  2135   "RTN","VPS XSAPX",37, 0)
  2136    ;This fun ction is a  wrapper f or the EN1 ^GMRADPT A PI support ed by ICR#  10099
  2137   "RTN","VPS XSAPX",38, 0)
  2138    ;
  2139   "RTN","VPS XSAPX",39, 0)
  2140    ;Allergie s are retu rned sorte d by a UID  in the fo llowing fo rmat:
  2141   "RTN","VPS XSAPX",40, 0)
  2142    ;STATION# :DFN:FILE  IEN:FILE#
  2143   "RTN","VPS XSAPX",41, 0)
  2144    ;A record  from the  Patient Al lergies fi le #120.8  from Stati on 500 for  a patient
  2145   "RTN","VPS XSAPX",42, 0)
  2146    ;with the  DFN of 20 02123 woul d look lik e this:
  2147   "RTN","VPS XSAPX",43, 0)
  2148    ; '500:20 02123:876: 120.8'
  2149   "RTN","VPS XSAPX",44, 0)
  2150    ;
  2151   "RTN","VPS XSAPX",45, 0)
  2152    ;###SOURC E INPUT
  2153   "RTN","VPS XSAPX",46, 0)
  2154    ;|Paramet er|Require d/Optional |Descripti on|
  2155   "RTN","VPS XSAPX",47, 0)
  2156    ;|------- --|------- ---------- |--------- --|
  2157   "RTN","VPS XSAPX",48, 0)
  2158    ;|DFN       |(R)                |Patient I EN in the  PATIENT fi le #2|
  2159   "RTN","VPS XSAPX",49, 0)
  2160    ;
  2161   "RTN","VPS XSAPX",50, 0)
  2162    ;###TARGE T OUTPUT
  2163   "RTN","VPS XSAPX",51, 0)
  2164    ;
  2165   "RTN","VPS XSAPX",52, 0)
  2166    ;|Paramet er|Require d/Optional |Descripti on|
  2167   "RTN","VPS XSAPX",53, 0)
  2168    ;|------- --|------- ---------- |--------- --|
  2169   "RTN","VPS XSAPX",54, 0)
  2170    ;|TARGET    |(R)                |The outpu t is a lis t of patie nt allergi es, or nka .|
  2171   "RTN","VPS XSAPX",55, 0)
  2172    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  2173   "RTN","VPS XSAPX",56, 0)
  2174    N XSAERR, RESULTS,XS ASYM
  2175   "RTN","VPS XSAPX",57, 0)
  2176    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  2177   "RTN","VPS XSAPX",58, 0)
  2178    Q $$GETAL RG^VPSXGMR A(.SOURCE, .TARGET)
  2179   "RTN","VPS XSAPX",59, 0)
  2180    ;
  2181   "RTN","VPS XSAPX",60, 0)
  2182   GETCA(SOUR CE,TARGET)  ; Get a l ist of All ergy Causa tive Agent s
  2183   "RTN","VPS XSAPX",61, 0)
  2184    ;This fun ction retu rns a list  of Causat ive Agents  for aller gies from  any of the  following  files:
  2185   "RTN","VPS XSAPX",62, 0)
  2186    ; - 120.8 2 GMR ALLE RGIES
  2187   "RTN","VPS XSAPX",63, 0)
  2188    ; - 50.6    VA GENER IC
  2189   "RTN","VPS XSAPX",64, 0)
  2190    ; - 50.67   NDC/UPN
  2191   "RTN","VPS XSAPX",65, 0)
  2192    ; - 50.60 5 VA DRUG  CLASS
  2193   "RTN","VPS XSAPX",66, 0)
  2194    ;
  2195   "RTN","VPS XSAPX",67, 0)
  2196    ;
  2197   "RTN","VPS XSAPX",68, 0)
  2198    ;###SOURC E INPUT
  2199   "RTN","VPS XSAPX",69, 0)
  2200    ;|Paramet er|Require d/Optional |Descripti on|
  2201   "RTN","VPS XSAPX",70, 0)
  2202    ;|------- --|------- ---------- |--------- --|
  2203   "RTN","VPS XSAPX",71, 0)
  2204    ;|NAME      |(O)                |A value u sed to sea rch one of  the Causa tive Agent  files or  null for a ll|
  2205   "RTN","VPS XSAPX",72, 0)
  2206    ;|FILES     |(O)                |A semi-co lon separa ted list o f supporte d files to  search or  null for  all|
  2207   "RTN","VPS XSAPX",73, 0)
  2208    ;
  2209   "RTN","VPS XSAPX",74, 0)
  2210    ;###TARGE T OUTPUT
  2211   "RTN","VPS XSAPX",75, 0)
  2212    ;
  2213   "RTN","VPS XSAPX",76, 0)
  2214    ;|Paramet er|Require d/Optional |Descripti on|
  2215   "RTN","VPS XSAPX",77, 0)
  2216    ;|------- --|------- ---------- |--------- --|
  2217   "RTN","VPS XSAPX",78, 0)
  2218    ;|TARGET    |(R)                |The outpu t is a lis t of patie nt allergi es, or nka .|
  2219   "RTN","VPS XSAPX",79, 0)
  2220    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  2221   "RTN","VPS XSAPX",80, 0)
  2222    N XSAERR, RESULTS,XS ASYM
  2223   "RTN","VPS XSAPX",81, 0)
  2224    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  2225   "RTN","VPS XSAPX",82, 0)
  2226    Q $$GETCA US^VPSXGMR A(.SOURCE, .TARGET)
  2227   "RTN","VPS XSAPX",83, 0)
  2228    ;
  2229   "RTN","VPS XSAPX",84, 0)
  2230   GETSYMP(SO URCE,TARGE T) ; Get a  list of S igns/Sympt oms for ad ding aller gies
  2231   "RTN","VPS XSAPX",85, 0)
  2232    N XSAERR, RESULTS,XS ASYM
  2233   "RTN","VPS XSAPX",86, 0)
  2234    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  2235   "RTN","VPS XSAPX",87, 0)
  2236    Q $$GETSY MP^VPSXGMR A(.SOURCE, .TARGET)
  2237   "RTN","VPS XSAPX",88, 0)
  2238    ;
  2239   "RTN","VPS XSAPX",89, 0)
  2240   GETDRGS(SO URCE,TARGE T) ; Get a  list of D rugs
  2241   "RTN","VPS XSAPX",90, 0)
  2242    N XSAERR, RESULTS,XS ASYM
  2243   "RTN","VPS XSAPX",91, 0)
  2244    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  2245   "RTN","VPS XSAPX",92, 0)
  2246    Q $$GETDR GS^VPSXPSS (.SOURCE,. TARGET)
  2247   "RTN","VPS XSAPX",93, 0)
  2248    ;
  2249   "RTN","VPS XSAPX",94, 0)
  2250   TIUNOTE(SO URCE,TARGE T) ; Creat e a new TI U Signed N ote
  2251   "RTN","VPS XSAPX",95, 0)
  2252    ;This fun ction is a  wrapper f or the NEW ^TIUPNAPI  API suppor ted by ICR # 1911.
  2253   "RTN","VPS XSAPX",96, 0)
  2254    ;This fun ction is o nly approv ed for MRA R use.
  2255   "RTN","VPS XSAPX",97, 0)
  2256    ;
  2257   "RTN","VPS XSAPX",98, 0)
  2258    ;The ID o f the TIU  note is re turned for  a success ful call i n the form at:
  2259   "RTN","VPS XSAPX",99, 0)
  2260    ;STATION# :DFN:FILE  IEN:FILE#
  2261   "RTN","VPS XSAPX",100 ,0)
  2262    ;A record  from Stat ion 500 fo r a patien t with the  DFN of 20 02123
  2263   "RTN","VPS XSAPX",101 ,0)
  2264    ;would lo ok like th is:
  2265   "RTN","VPS XSAPX",102 ,0)
  2266    ; '500:20 02123:1001 0:8925'
  2267   "RTN","VPS XSAPX",103 ,0)
  2268    ;
  2269   "RTN","VPS XSAPX",104 ,0)
  2270    ;###SOURC E INPUT
  2271   "RTN","VPS XSAPX",105 ,0)
  2272    ;|Paramet er|Require d/Optional |Descripti on|
  2273   "RTN","VPS XSAPX",106 ,0)
  2274    ;|------- --|------- ---------- |--------- --|
  2275   "RTN","VPS XSAPX",107 ,0)
  2276    ;|DFN       |(R)                |Patient I EN in the  PATIENT fi le #2|
  2277   "RTN","VPS XSAPX",108 ,0)
  2278    ;|TIUAUTH   |(R)                |Author IE N of the n ote in the  NEW PERSO N file #20 0|
  2279   "RTN","VPS XSAPX",109 ,0)
  2280    ;|TIURDT    |(R)                |Date/time  of note i n FileMan  format|
  2281   "RTN","VPS XSAPX",110 ,0)
  2282    ;|TIUTTL    |(R)                |Name of T IU Documen t Title in  TIU DOCUM ENT DEFINI TION file#  8925.1|
  2283   "RTN","VPS XSAPX",111 ,0)
  2284    ;|TEXT,n    |(R)                |Array of  document t ext in SOU RCE ^TMP($ J,"XSA","I NPUTS","TE XT",1)="Fi rst Line o f Text"|
  2285   "RTN","VPS XSAPX",112 ,0)
  2286    ;|TIULOC    |(O)                |Patient L ocation IE N in the H OSPITAL LO CATION fil e #44|
  2287   "RTN","VPS XSAPX",113 ,0)
  2288    ;|TIUES     |(O)                |1 if TIU  should pro cess E-SIG |
  2289   "RTN","VPS XSAPX",114 ,0)
  2290    ;|TIUESBY   |(C)                |Condition al: if TIU ES=1 the T IUESBY is  IEN of Sig ning Autho rity. Defa ult is Aut hor. This  should be  used if Au thor requi res Co-sig nature and  the Cosig ner has Si gned the d ocument in  the calli ng Applica tion.|
  2291   "RTN","VPS XSAPX",115 ,0)
  2292    ;
  2293   "RTN","VPS XSAPX",116 ,0)
  2294    ;###TARGE T OUTPUT
  2295   "RTN","VPS XSAPX",117 ,0)
  2296    ;
  2297   "RTN","VPS XSAPX",118 ,0)
  2298    ;|Paramet er|Require d/Optional |Descripti on|
  2299   "RTN","VPS XSAPX",119 ,0)
  2300    ;|------- --|------- ---------- |--------- --|
  2301   "RTN","VPS XSAPX",120 ,0)
  2302    ;|TARGET    |(R)                |The outpu t is the U ID of the  TIU Note i f the call  is succes sful.|
  2303   "RTN","VPS XSAPX",121 ,0)
  2304    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  2305   "RTN","VPS XSAPX",122 ,0)
  2306    N XSAERR, RESULTS,XS ASYM
  2307   "RTN","VPS XSAPX",123 ,0)
  2308    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  2309   "RTN","VPS XSAPX",124 ,0)
  2310    Q $$TIUNO TE^VPSXTIU (.SOURCE,. TARGET)
  2311   "RTN","VPS XSAPX",125 ,0)
  2312    ;
  2313   "RTN","VPS XSAPX",126 ,0)
  2314   GETPAT(SOU RCE,TARGET ) ; Get Pa tient Demo graphics
  2315   "RTN","VPS XSAPX",127 ,0)
  2316    ;This fun ction retu rns a list  of patien t demograp hics for t he patient .
  2317   "RTN","VPS XSAPX",128 ,0)
  2318    ;DFN or I CN is requ ired for a  lookup, b ut not bot h together .
  2319   "RTN","VPS XSAPX",129 ,0)
  2320    ;
  2321   "RTN","VPS XSAPX",130 ,0)
  2322    ;###SOURC E INPUT
  2323   "RTN","VPS XSAPX",131 ,0)
  2324    ;|Paramet er|Require d/Optional |Descripti on|
  2325   "RTN","VPS XSAPX",132 ,0)
  2326    ;|------- --|------- ---------- |--------- --|
  2327   "RTN","VPS XSAPX",133 ,0)
  2328    ;|DFN       |(R or n ull)       |IEN in th e PATIENT  file #2|
  2329   "RTN","VPS XSAPX",134 ,0)
  2330    ;|ICN       |(R or n ull)       |Integrati on Control  Number|
  2331   "RTN","VPS XSAPX",135 ,0)
  2332    ;
  2333   "RTN","VPS XSAPX",136 ,0)
  2334    ;###TARGE T OUTPUT
  2335   "RTN","VPS XSAPX",137 ,0)
  2336    ;
  2337   "RTN","VPS XSAPX",138 ,0)
  2338    ;|Paramet er|Require d/Optional |Descripti on|
  2339   "RTN","VPS XSAPX",139 ,0)
  2340    ;|------- --|------- ---------- |--------- --|
  2341   "RTN","VPS XSAPX",140 ,0)
  2342    ;|TARGET    |(R)                |The outpu t is a lis t of patie nt demogra phics|
  2343   "RTN","VPS XSAPX",141 ,0)
  2344    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  2345   "RTN","VPS XSAPX",142 ,0)
  2346    N XSAERR, RESULTS,XS ASYM
  2347   "RTN","VPS XSAPX",143 ,0)
  2348    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  2349   "RTN","VPS XSAPX",144 ,0)
  2350    Q $$GETPA T^VPSXDG(. SOURCE,.TA RGET)
  2351   "RTN","VPS XSAPX",145 ,0)
  2352    ;
  2353   "RTN","VPS XSAPX",146 ,0)
  2354   SIGCHECK(S OURCE,TARG ET) ; Vali dates the  Electronic  Signature  Code ente red by a u ser
  2355   "RTN","VPS XSAPX",147 ,0)
  2356    ;This fun ction retu rns a true  or false  condition  based on w hether a u ser has
  2357   "RTN","VPS XSAPX",148 ,0)
  2358    ;entered  the correc t e-SIG co de or not
  2359   "RTN","VPS XSAPX",149 ,0)
  2360    ;
  2361   "RTN","VPS XSAPX",150 ,0)
  2362    ;###SOURC E INPUT
  2363   "RTN","VPS XSAPX",151 ,0)
  2364    ;|Paramet er|Require d/Optional |Descripti on|
  2365   "RTN","VPS XSAPX",152 ,0)
  2366    ;|------- --|------- ---------- |--------- --|
  2367   "RTN","VPS XSAPX",153 ,0)
  2368    ;|ESCODE    |(R)                |Electroni c Signatur e Code for  logged on  user|
  2369   "RTN","VPS XSAPX",154 ,0)
  2370    ;
  2371   "RTN","VPS XSAPX",155 ,0)
  2372    ;###TARGE T OUTPUT
  2373   "RTN","VPS XSAPX",156 ,0)
  2374    ;
  2375   "RTN","VPS XSAPX",157 ,0)
  2376    ;|Paramet er|Require d/Optional |Descripti on|
  2377   "RTN","VPS XSAPX",158 ,0)
  2378    ;|------- --|------- ---------- |--------- --|
  2379   "RTN","VPS XSAPX",159 ,0)
  2380    ;|TARGET    |(R)                |The outpu t is a boo lean true  or false|
  2381   "RTN","VPS XSAPX",160 ,0)
  2382    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  2383   "RTN","VPS XSAPX",161 ,0)
  2384    N XSAERR, RESULTS,XS ASYM
  2385   "RTN","VPS XSAPX",162 ,0)
  2386    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  2387   "RTN","VPS XSAPX",163 ,0)
  2388    Q $$SIGCH ECK^VPSXTI U(.SOURCE, .TARGET)
  2389   "RTN","VPS XSAPX",164 ,0)
  2390    ;
  2391   "RTN","VPS XSAPX",165 ,0)
  2392   REQCOS(SOU RCE,TARGET ) ; Valida tes whethe r the user  requires  cosigner o r not
  2393   "RTN","VPS XSAPX",166 ,0)
  2394    ;This fun ction retu rns a true  or false  condition  based on w hether a u ser 
  2395   "RTN","VPS XSAPX",167 ,0)
  2396    ;requires  cosignatu re or not.
  2397   "RTN","VPS XSAPX",168 ,0)
  2398    ;
  2399   "RTN","VPS XSAPX",169 ,0)
  2400    ;###SOURC E INPUT
  2401   "RTN","VPS XSAPX",170 ,0)
  2402    ;|Paramet er|Require d/Optional |Descripti on|
  2403   "RTN","VPS XSAPX",171 ,0)
  2404    ;|------- --|------- ---------- |--------- --|
  2405   "RTN","VPS XSAPX",172 ,0)
  2406    ;|VPSTTL    |(R)                |TIU Note  Title Name  i.e. (VPS  MRAR NOTE )|
  2407   "RTN","VPS XSAPX",173 ,0)
  2408    ;
  2409   "RTN","VPS XSAPX",174 ,0)
  2410    ;###TARGE T OUTPUT
  2411   "RTN","VPS XSAPX",175 ,0)
  2412    ;
  2413   "RTN","VPS XSAPX",176 ,0)
  2414    ;|Paramet er|Require d/Optional |Descripti on|
  2415   "RTN","VPS XSAPX",177 ,0)
  2416    ;|------- --|------- ---------- |--------- --|
  2417   "RTN","VPS XSAPX",178 ,0)
  2418    ;|TARGET    |(R)                |The outpu t is a boo lean true  or false|
  2419   "RTN","VPS XSAPX",179 ,0)
  2420    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  2421   "RTN","VPS XSAPX",180 ,0)
  2422    N XSAERR, RESULTS,XS ASYM
  2423   "RTN","VPS XSAPX",181 ,0)
  2424    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  2425   "RTN","VPS XSAPX",182 ,0)
  2426    Q $$REQCO S^VPSXTIU( .SOURCE,.T ARGET)
  2427   "RTN","VPS XTIU")
  2428   0^8^B11745 969
  2429   "RTN","VPS XTIU",1,0)
  2430   VPSXTIU ;D ALOI/BNT -  MRAR CLIN ICAL RECON CILIATION  SERVICES ; 11/20/16 1 5:30
  2431   "RTN","VPS XTIU",2,0)
  2432    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 19
  2433   "RTN","VPS XTIU",3,0)
  2434    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  2435   "RTN","VPS XTIU",4,0)
  2436    ;
  2437   "RTN","VPS XTIU",5,0)
  2438    ; Externa l Referenc es           DBIA#
  2439   "RTN","VPS XTIU",6,0)
  2440    ; ------- ---------- --           -----
  2441   "RTN","VPS XTIU",7,0)
  2442    ; TIUPNAP I                       1911
  2443   "RTN","VPS XTIU",8,0)
  2444    ; TIUPUTU                         3351
  2445   "RTN","VPS XTIU",9,0)
  2446    ; TIUSRVA                         5541
  2447   "RTN","VPS XTIU",10,0 )
  2448    ; VASITE                          10112
  2449   "RTN","VPS XTIU",11,0 )
  2450    ; XSAPXUT L                       6458
  2451   "RTN","VPS XTIU",12,0 )
  2452    ;
  2453   "RTN","VPS XTIU",13,0 )
  2454    Q
  2455   "RTN","VPS XTIU",14,0 )
  2456    ;
  2457   "RTN","VPS XTIU",15,0 )
  2458   TIUNOTE(SO URCE,TARGE T) ; Wrapp er for TIU  API to ad d a new no te
  2459   "RTN","VPS XTIU",16,0 )
  2460    N ERR,RES ,X,CNT,VAL UE,DFN,TIU AUTH,TIURD T,TIUTTL,T EXT,TIULOC ,TIUES,TIU ESBY,VPSSI TE,VPSSTN
  2461   "RTN","VPS XTIU",17,0 )
  2462    S ERR="", CNT=0
  2463   "RTN","VPS XTIU",18,0 )
  2464    N X F X=" DFN","TIUA UTH","TIUR DT","TIUTT L","TEXT", "TIULOC"," TIUES","TI UESBY" D I NITPARM^XS APXUTL(.X)
  2465   "RTN","VPS XTIU",19,0 )
  2466    ;
  2467   "RTN","VPS XTIU",20,0 )
  2468    ; Make su re Patient  is define d
  2469   "RTN","VPS XTIU",21,0 )
  2470    I 'DFN D   Q $$RESUL T^XSAPXUTL ()
  2471   "RTN","VPS XTIU",22,0 )
  2472    . D BLDER ROR^XSAPXU TL(1,"Pati ent DFN is  undefined ","TIUNOTE ^VPSXTIU")
  2473   "RTN","VPS XTIU",23,0 )
  2474    ;
  2475   "RTN","VPS XTIU",24,0 )
  2476    ; Make su re Text ex ists
  2477   "RTN","VPS XTIU",25,0 )
  2478    I $G(@SOU RCE@("TEXT ",1))']""  D  Q $$RES ULT^XSAPXU TL()
  2479   "RTN","VPS XTIU",26,0 )
  2480    . D BLDER ROR^XSAPXU TL(1,"TIU  Document t ext does n ot exist", "TIUNOTE^V PSXTIU")
  2481   "RTN","VPS XTIU",27,0 )
  2482    ; Make su re Author  exists
  2483   "RTN","VPS XTIU",28,0 )
  2484    I 'TIUAUT H D  Q $$R ESULT^XSAP XUTL()
  2485   "RTN","VPS XTIU",29,0 )
  2486    . D BLDER ROR^XSAPXU TL(1,"Auth or is requ ired","TIU NOTE^VPSXT IU")
  2487   "RTN","VPS XTIU",30,0 )
  2488    ; Get the  TIU Docum ent Defini tion IEN f rom the Do cument Tit le
  2489   "RTN","VPS XTIU",31,0 )
  2490    S TIUTTL= $$WHATITLE ^TIUPUTU(T IUTTL)
  2491   "RTN","VPS XTIU",32,0 )
  2492    I TIUTTL' >0 D  Q $$ RESULT^XSA PXUTL()
  2493   "RTN","VPS XTIU",33,0 )
  2494    . D BLDER ROR^XSAPXU TL(1,"TIU  Document T itle is in valid","TI UNOTE^VPSX TIU")
  2495   "RTN","VPS XTIU",34,0 )
  2496    ; Build t he TIU req uired glob al with co rrect $J t o prevent  errors wit h asynchro nous calls
  2497   "RTN","VPS XTIU",35,0 )
  2498    S X="" F   S X=$O(@S OURCE@("TE XT",X)) Q: X=""  D
  2499   "RTN","VPS XTIU",36,0 )
  2500    . ; Set t he value f rom either  a word pr ocessing n ode or a s imple arra y node
  2501   "RTN","VPS XTIU",37,0 )
  2502    . S VALUE =$S($G(@SO URCE@("TEX T",X))]"": @SOURCE@(" TEXT",X),$ G(@SOURCE@ ("TEXT",X, 0))]"":@SO URCE@("TEX T",X,0),1: "")
  2503   "RTN","VPS XTIU",38,0 )
  2504    . I VALUE ]"" S CNT= CNT+1 S ^T MP("TIUP", $J,CNT,0)= VALUE
  2505   "RTN","VPS XTIU",39,0 )
  2506    S ^TMP("T IUP",$J,0) ="^^1^1^"_ DT+1_"^"
  2507   "RTN","VPS XTIU",40,0 )
  2508    ; Check i f TIUESBY  exists and  default t o Author i f not
  2509   "RTN","VPS XTIU",41,0 )
  2510    I 'TIUESB Y S TIUESB Y=TIUAUTH
  2511   "RTN","VPS XTIU",42,0 )
  2512    D NEW^TIU PNAPI(.RES ,DFN,TIUAU TH,TIURDT, TIUTTL,TIU LOC,TIUES, "",TIUESBY ,"","")
  2513   "RTN","VPS XTIU",43,0 )
  2514    K ^TMP("T IUP",$J)
  2515   "RTN","VPS XTIU",44,0 )
  2516    S VPSSITE =$$SITE^VA SITE,VPSST N=$P(VPSSI TE,U,3)
  2517   "RTN","VPS XTIU",45,0 )
  2518    I RES>0 D
  2519   "RTN","VPS XTIU",46,0 )
  2520    . S @TARG ET@("resul ts","stati onNumber") =VPSSTN
  2521   "RTN","VPS XTIU",47,0 )
  2522    . S @TARG ET@("resul ts","siteN ame")=$P(V PSSITE,U,2 )
  2523   "RTN","VPS XTIU",48,0 )
  2524    . S @TARG ET@("resul ts","noteI d")=$$SETU ID^VPSXUTL (VPSSTN,DF N,RES,"892 5")
  2525   "RTN","VPS XTIU",49,0 )
  2526    E  D BLDE RROR^XSAPX UTL(1,RES, "TIUNOTE^V PSXTIU")
  2527   "RTN","VPS XTIU",50,0 )
  2528    Q $$RESUL T^XSAPXUTL ()
  2529   "RTN","VPS XTIU",51,0 )
  2530    ;
  2531   "RTN","VPS XTIU",52,0 )
  2532   SIGCHECK(S OURCE,TARG ET) ; Vali date a log ged on use rs Electro nic Signat ure Code
  2533   "RTN","VPS XTIU",53,0 )
  2534    N ESCODE, X
  2535   "RTN","VPS XTIU",54,0 )
  2536    N X F X=" ESCODE" D  INITPARM^X SAPXUTL(.X )
  2537   "RTN","VPS XTIU",55,0 )
  2538    I ESCODE= "" D  Q $$ RESULT^XSA PXUTL()
  2539   "RTN","VPS XTIU",56,0 )
  2540    . D BLDER ROR^XSAPXU TL(1,"Miss ing Electr onic Signa ture Code" ,"SIGCHECK ^VPSXTIU")
  2541   "RTN","VPS XTIU",57,0 )
  2542    S X=ESCOD E D HASH^X USHSHP
  2543   "RTN","VPS XTIU",58,0 )
  2544    S @TARGET @("results ","esig")= $S($P($G(^ VA(200,DUZ ,20)),U,4) =X:"true", 1:"false")
  2545   "RTN","VPS XTIU",59,0 )
  2546    Q $$RESUL T^XSAPXUTL ()
  2547   "RTN","VPS XTIU",60,0 )
  2548    ;
  2549   "RTN","VPS XTIU",61,0 )
  2550   REQCOS(SOU RCE,TARGET ) ; Valida te if the  logged on  user requi res cosign er or not
  2551   "RTN","VPS XTIU",62,0 )
  2552    N VPSTTL, TIUTTL,RES
  2553   "RTN","VPS XTIU",63,0 )
  2554    N X F X=" VPSTTL" D  INITPARM^X SAPXUTL(.X )
  2555   "RTN","VPS XTIU",64,0 )
  2556    S TIUTTL= $$WHATITLE ^TIUPUTU(V PSTTL)
  2557   "RTN","VPS XTIU",65,0 )
  2558    I TIUTTL' >0 D  Q $$ RESULT^XSA PXUTL()
  2559   "RTN","VPS XTIU",66,0 )
  2560    . D BLDER ROR^XSAPXU TL(1,"Inva lid Docume nt Title", "REQCOS^VP SXTIU")
  2561   "RTN","VPS XTIU",67,0 )
  2562    I 'DUZ D   Q $$RESUL T^XSAPXUTL ()
  2563   "RTN","VPS XTIU",68,0 )
  2564    . D BLDER ROR^XSAPXU TL(1,"Unkn own User", "REQCOS^VP SXTIU")
  2565   "RTN","VPS XTIU",69,0 )
  2566    D REQCOS^ TIUSRVA(.R ES,TIUTTL, "",DUZ,DT)
  2567   "RTN","VPS XTIU",70,0 )
  2568    S @TARGET @("results ","esig")= $S(+RES:"t rue",1:"fa lse")
  2569   "RTN","VPS XTIU",71,0 )
  2570    Q $$RESUL T^XSAPXUTL ()
  2571   "RTN","VPS XUTL")
  2572   0^9^B19411 425
  2573   "RTN","VPS XUTL",1,0)
  2574   VPSXUTL ;D ALOI/BNT -  MRAR CLIN ICAL RECON CILIATION  SERVICES ; 11/20/16 1 5:30
  2575   "RTN","VPS XUTL",2,0)
  2576    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 19
  2577   "RTN","VPS XUTL",3,0)
  2578    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  2579   "RTN","VPS XUTL",4,0)
  2580    ;
  2581   "RTN","VPS XUTL",5,0)
  2582    ; Externa l Referenc es           DBIA#
  2583   "RTN","VPS XUTL",6,0)
  2584    ; ------- ---------- --           -----
  2585   "RTN","VPS XUTL",7,0)
  2586    ; %DT                             10003
  2587   "RTN","VPS XUTL",8,0)
  2588    ; DIQ                             2056
  2589   "RTN","VPS XUTL",9,0)
  2590    ; VASITE                          10112
  2591   "RTN","VPS XUTL",10,0 )
  2592    ; XLFDT                           10103
  2593   "RTN","VPS XUTL",11,0 )
  2594    ; XUAF4                           2171
  2595   "RTN","VPS XUTL",12,0 )
  2596    ; XUSTAX                          4911
  2597   "RTN","VPS XUTL",13,0 )
  2598    Q
  2599   "RTN","VPS XUTL",14,0 )
  2600    ;
  2601   "RTN","VPS XUTL",15,0 )
  2602   DATE(X) ;  -- Return  internal f orm of dat e X
  2603   "RTN","VPS XUTL",16,0 )
  2604    N %DT,Y
  2605   "RTN","VPS XUTL",17,0 )
  2606    S %DT="TX " D ^%DT
  2607   "RTN","VPS XUTL",18,0 )
  2608    Q Y
  2609   "RTN","VPS XUTL",19,0 )
  2610    ;
  2611   "RTN","VPS XUTL",20,0 )
  2612   SETUID(STN ,PAT,ID,AD DDATA) ; - - create u id string
  2613   "RTN","VPS XUTL",21,0 )
  2614    N RESULT
  2615   "RTN","VPS XUTL",22,0 )
  2616    I 'STN S  STN=$P($$S ITE^VASITE ,U,3)
  2617   "RTN","VPS XUTL",23,0 )
  2618    S RESULT= STN_":"_$S ($G(PAT):P AT_":",1:" ")_ID
  2619   "RTN","VPS XUTL",24,0 )
  2620    I $L($G(A DDDATA)) S  RESULT=RE SULT_":"_A DDDATA
  2621   "RTN","VPS XUTL",25,0 )
  2622    Q RESULT
  2623   "RTN","VPS XUTL",26,0 )
  2624    ;
  2625   "RTN","VPS XUTL",27,0 )
  2626   JSONDT(X)  ; -- conve rt FileMan  DT to HL7  DT for JS ON
  2627   "RTN","VPS XUTL",28,0 )
  2628    N D,DATE, M,TIME,Y
  2629   "RTN","VPS XUTL",29,0 )
  2630    S DATE=$P ($$FMTHL7^ XLFDT(X)," -")
  2631   "RTN","VPS XUTL",30,0 )
  2632    I $L(DATE )>8 S TIME =$E(DATE,9 ,$L(DATE))
  2633   "RTN","VPS XUTL",31,0 )
  2634    S Y=$E(DA TE,1,4),M= $E(DATE,5, 6),D=$E(DA TE,7,8)
  2635   "RTN","VPS XUTL",32,0 )
  2636    K DATE
  2637   "RTN","VPS XUTL",33,0 )
  2638    S DATE=Y  I M>0 S DA TE=DATE_M  S:D>0 DATE =DATE_D
  2639   "RTN","VPS XUTL",34,0 )
  2640    I $G(TIME )'="" S DA TE=DATE_TI ME
  2641   "RTN","VPS XUTL",35,0 )
  2642    Q DATE
  2643   "RTN","VPS XUTL",36,0 )
  2644    ;
  2645   "RTN","VPS XUTL",37,0 )
  2646   FACILITY(X ,Y) ; -- a dd facilit y info to  array for  JSON
  2647   "RTN","VPS XUTL",38,0 )
  2648    ;  X=STAT ION NUMBER ^STATION N AME
  2649   "RTN","VPS XUTL",39,0 )
  2650    ;  Y=Vari able array  name
  2651   "RTN","VPS XUTL",40,0 )
  2652    S @Y@("fa cilityCode ")=$P(X,"^ ")
  2653   "RTN","VPS XUTL",41,0 )
  2654    S @Y@("fa cilityName ")=$P(X,"^ ",2)
  2655   "RTN","VPS XUTL",42,0 )
  2656    Q
  2657   "RTN","VPS XUTL",43,0 )
  2658    ;
  2659   "RTN","VPS XUTL",44,0 )
  2660   FAC(X) ; - - return I nstitution  file stat ion# for l ocation X
  2661   "RTN","VPS XUTL",45,0 )
  2662    N HLOC,FA C,Y0,Y S Y =""
  2663   "RTN","VPS XUTL",46,0 )
  2664    S HLOC=$G (^SC(+$G(X ),0)),FAC= $P(HLOC,U, 4)
  2665   "RTN","VPS XUTL",47,0 )
  2666    ; Get P:4  via Med C tr Div, if  not direc tly linked
  2667   "RTN","VPS XUTL",48,0 )
  2668    I 'FAC,$P (HLOC,U,15 ) S FAC=$$ GET1^DIQ(4 4,+$G(X)_" ,","3.5:.0 7","I")
  2669   "RTN","VPS XUTL",49,0 )
  2670    S Y0=$S(F AC:$$NS^XU AF4(FAC),1 :$P($$SITE ^VASITE,U, 2,3)) ;nam e^stn#
  2671   "RTN","VPS XUTL",50,0 )
  2672    S:$L(Y0)  Y=$P(Y0,U, 2)_U_$P(Y0 ,U) ;switc h to stn#^ name
  2673   "RTN","VPS XUTL",51,0 )
  2674    I $L(Y),' Y S $P(Y,U )=FAC
  2675   "RTN","VPS XUTL",52,0 )
  2676    Q Y
  2677   "RTN","VPS XUTL",53,0 )
  2678    ;
  2679   "RTN","VPS XUTL",54,0 )
  2680   VUID(IEN,F ILE) ; --  Return VUI D for item
  2681   "RTN","VPS XUTL",55,0 )
  2682    Q $$GET1^ DIQ(FILE,I EN_",",99. 99)
  2683   "RTN","VPS XUTL",56,0 )
  2684    ;
  2685   "RTN","VPS XUTL",57,0 )
  2686   SETVURN(DO MAIN,VALUE ) ; -- cre ate VA urn
  2687   "RTN","VPS XUTL",58,0 )
  2688    N RESULT  S RESULT=" "
  2689   "RTN","VPS XUTL",59,0 )
  2690    S RESULT= "urn:va:"_ DOMAIN_":" _VALUE
  2691   "RTN","VPS XUTL",60,0 )
  2692    Q RESULT
  2693   "RTN","VPS XUTL",61,0 )
  2694    ;
  2695   "RTN","VPS XUTL",62,0 )
  2696   STRING(ARR AY) ; -- R eturn text  in ARRAY( n) or ARRA Y(n,0) as  a string
  2697   "RTN","VPS XUTL",63,0 )
  2698    N I,X,Y S  Y=""
  2699   "RTN","VPS XUTL",64,0 )
  2700    S I=+$O(A RRAY(""))  I I=0 S I= +$O(ARRAY( 0))
  2701   "RTN","VPS XUTL",65,0 )
  2702    S Y=$S($D (ARRAY(I,0 )):ARRAY(I ,0),1:$G(A RRAY(I)))
  2703   "RTN","VPS XUTL",66,0 )
  2704    F  S I=$O (ARRAY(I))  Q:I<1  D
  2705   "RTN","VPS XUTL",67,0 )
  2706    . S X=$S( $D(ARRAY(I ,0)):ARRAY (I,0),1:AR RAY(I))
  2707   "RTN","VPS XUTL",68,0 )
  2708    . I $E(X) =" " S Y=Y _$C(13,10) _X Q
  2709   "RTN","VPS XUTL",69,0 )
  2710    . S Y=Y_$ S($E(Y,$L( Y))=" ":"" ,1:" ")_X
  2711   "RTN","VPS XUTL",70,0 )
  2712    Q Y
  2713   "RTN","VPS XUTL",71,0 )
  2714    ;
  2715   "RTN","VPS XUTL",72,0 )
  2716   ADDRESS(RE S,X) ; Ret urn Addres s Specs
  2717   "RTN","VPS XUTL",73,0 )
  2718    ; Input:  RES passed  by refere nce will b e returned  with addr ess data
  2719   "RTN","VPS XUTL",74,0 )
  2720    ;         X = addres s data in  format [st reet1^st2^ st3^city^s tate^zip]
  2721   "RTN","VPS XUTL",75,0 )
  2722    I $P(X,U) ]"" S RES( "streetOne ")=$P(X,U)
  2723   "RTN","VPS XUTL",76,0 )
  2724    I $P(X,U, 2)]"" S RE S("streetT wo")=$P(X, U,2)
  2725   "RTN","VPS XUTL",77,0 )
  2726    I $P(X,U, 3)]"" S RE S("streetT hree")=$P( X,U,3)
  2727   "RTN","VPS XUTL",78,0 )
  2728    I $P(X,U, 4)]"" S RE S("city")= $P(X,U,4)
  2729   "RTN","VPS XUTL",79,0 )
  2730    I $P(X,U, 5)]"" S RE S("state") =$P(X,U,5)
  2731   "RTN","VPS XUTL",80,0 )
  2732    I $P(X,U, 6)]"" S RE S("zip")=$ P(X,U,6)
  2733   "RTN","VPS XUTL",81,0 )
  2734    Q
  2735   "RTN","VPS XUTL",82,0 )
  2736    ;
  2737   "RTN","VPS XUTL",83,0 )
  2738   TELECOM(RE S,X) ; Ret urn Teleco m Specs
  2739   "RTN","VPS XUTL",84,0 )
  2740    ; Input:  RES passed  by refere nce will b e returned  with addr ess data
  2741   "RTN","VPS XUTL",85,0 )
  2742    ;         X = addres s data in  format [ho me^cell^wo rk phones]
  2743   "RTN","VPS XUTL",86,0 )
  2744    I $P(X,U, 1)]"" S RE S("homePho ne")=$P(X, U,4)
  2745   "RTN","VPS XUTL",87,0 )
  2746    I $P(X,U, 2)]"" S RE S("cellPho ne")=$P(X, U,5)
  2747   "RTN","VPS XUTL",88,0 )
  2748    I $P(X,U, 3)]"" S RE S("workPho ne")=$P(X, U,6)
  2749   "RTN","VPS XUTL",89,0 )
  2750    Q
  2751   "RTN","VPS XUTL",90,0 )
  2752    ;
  2753   "RTN","VPS XUTL",91,0 )
  2754   PROVIDER(R ES,PRV,FLD ) ; Return  Provider  Specs
  2755   "RTN","VPS XUTL",92,0 )
  2756    ; Input:  RES passed  by refere nce will b e returned  with addr ess data
  2757   "RTN","VPS XUTL",93,0 )
  2758    ;         PRV = Prov ider IEN
  2759   "RTN","VPS XUTL",94,0 )
  2760    ;         FLD = Fiel d name ass ociated wi th Provide r (i.e. "a ttending"  or "pc")
  2761   "RTN","VPS XUTL",95,0 )
  2762    N X
  2763   "RTN","VPS XUTL",96,0 )
  2764    Q:'+PRV
  2765   "RTN","VPS XUTL",97,0 )
  2766    S X=$$PRO VSPC(+PRV)
  2767   "RTN","VPS XUTL",98,0 )
  2768    S RES(FLD _"Name")=$ P(^VA(200, +PRV,0),U)
  2769   "RTN","VPS XUTL",99,0 )
  2770    S RES(FLD _"Code")=+ PRV
  2771   "RTN","VPS XUTL",100, 0)
  2772    I $P(X,U, 5)]"" S RE S(FLD_"Tax onomyCode" )=$P(X,U,5 )
  2773   "RTN","VPS XUTL",101, 0)
  2774    I $P(X,U, 6)]"" S RE S(FLD_"Typ e")=$P(X,U ,6)
  2775   "RTN","VPS XUTL",102, 0)
  2776    I $P(X,U, 7)]"" S RE S(FLD_"Cla ssificatio n")=$P(X,U ,7)
  2777   "RTN","VPS XUTL",103, 0)
  2778    I $P(X,U, 8)]"" S RE S(FLD_"Spe cializatio n")=$P(X,U ,8)
  2779   "RTN","VPS XUTL",104, 0)
  2780    I $P(X,U, 9)]"" S RE S(FLD_"Ser vice")=$P( X,U,9)
  2781   "RTN","VPS XUTL",105, 0)
  2782    I $P(X,U, 1)]"" S RE S(FLD_"Off icePhone") =$P(X,U,1)
  2783   "RTN","VPS XUTL",106, 0)
  2784    I $P(X,U, 2)]"" S RE S(FLD_"Ana logPager") =$P(X,U,2)
  2785   "RTN","VPS XUTL",107, 0)
  2786    I $P(X,U, 3)]"" S RE S(FLD_"Fax ")=$P(X,U, 3)
  2787   "RTN","VPS XUTL",108, 0)
  2788    I $P(X,U, 4)]"" S RE S(FLD_"Ema il")=$P(X, U,4)
  2789   "RTN","VPS XUTL",109, 0)
  2790    Q
  2791   "RTN","VPS XUTL",110, 0)
  2792    ; 
  2793   "RTN","VPS XUTL",111, 0)
  2794   PROVSPC(NP ) ; -- Ret urn contac t & specia lty info f or provide r NP
  2795   "RTN","VPS XUTL",112, 0)
  2796    ; save st rings in ^ TMP("VPSD" ,$J,NP) fo r efficien cy
  2797   "RTN","VPS XUTL",113, 0)
  2798    N X,Y,I,C LS,PAT,X13 ,X15 S NP= +$G(NP) ;p rotect I f or calling  routine
  2799   "RTN","VPS XUTL",114, 0)
  2800    S RES=$G( ^TMP("VPSD ",$J,NP))  I $L(RES)  Q RES
  2801   "RTN","VPS XUTL",115, 0)
  2802    S X13=$G( ^VA(200,NP ,.13)),X15 =$G(^(.15) )
  2803   "RTN","VPS XUTL",116, 0)
  2804    S RES=$P( X13,U,2)_U _$P(X13,U, 7)_U_$P(X1 3,U,6)_U_$ P(X15,U)_U
  2805   "RTN","VPS XUTL",117, 0)
  2806    S X=$$TAX IND^XUSTAX (NP) I $P( X,U,2) D   ;= X12 cod e ^ #8932. 1 ien
  2807   "RTN","VPS XUTL",118, 0)
  2808    . S CLS=$ G(^USC(893 2.1,$P(X,U ,2),0)) Q: CLS=""
  2809   "RTN","VPS XUTL",119, 0)
  2810    . S RES=R ES_$P(X,U) _U_$P(CLS, U,1,3) ;X1 2^type^cla ss^special ization
  2811   "RTN","VPS XUTL",120, 0)
  2812    S $P(RES, U,9)=$$GET 1^DIQ(200, NP_",",29)
  2813   "RTN","VPS XUTL",121, 0)
  2814    S ^TMP("V PSD",$J,NP )=RES
  2815   "RTN","VPS XUTL",122, 0)
  2816    Q RES
  2817   "RTN","VPS XUTL",123, 0)
  2818    ;
  2819   "RTN","VPS XUTL",124, 0)
  2820   FORMAT(X)  ; -- enfor ce (xxx)xx x-xxxx pho ne format
  2821   "RTN","VPS XUTL",125, 0)
  2822    S X=$G(X)  I X?1"("3 N1")"3N1"- "4N.E Q X
  2823   "RTN","VPS XUTL",126, 0)
  2824    N P,N,I,Y  S P=""
  2825   "RTN","VPS XUTL",127, 0)
  2826    F I=1:1:$ L(X) S N=$ E(X,I) I N =+N S P=P_ N
  2827   "RTN","VPS XUTL",128, 0)
  2828    S:$L(P)<1 0 P=$E("00 00000000", 1,10-$L(P) )_P
  2829   "RTN","VPS XUTL",129, 0)
  2830    S Y=$S(P: "("_$E(P,1 ,3)_")"_$E (P,4,6)_"- "_$E(P,7,1 0),1:"")
  2831   "RTN","VPS XUTL",130, 0)
  2832    Q Y
  2833   "RTN","VPS XUTL",131, 0)
  2834    ;
  2835   "RTN","VPS XUTL",132, 0)
  2836    ;SETRES(T YPE,ID,FLD ,VALUE) ;  Set a node  in the TA RGET resul ts array w ith a valu e   ;SCR 2 0170120 MR AR-1118
  2837   "RTN","VPS XUTL",133, 0)
  2838   SETRES(TAR GET,TYPE,I D,FLD,VALU E) ; Set a  node in t he TARGET  results ar ray with a  value
  2839   "RTN","VPS XUTL",134, 0)
  2840    Q:VALUE=" "
  2841   "RTN","VPS XUTL",135, 0)
  2842    S @TARGET @("results ",TYPE,ID, FLD)=VALUE
  2843   "RTN","VPS XUTL",136, 0)
  2844    Q
  2845   "VER")
  2846   8.0^22.0
  2847   **END**
  2848   **END**
  2849   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000p ackage/doc /\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x00000 000755\x0000000 0000\x000000000 00\x00000000000 0000\x000013052 061140\x0000011 704\x0000 5\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000usta r  \x0000root\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000root \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000package/d oc/VPS_1_1 9_Patch_De scription. txt\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x00000000644\x00000 001750\x0000000 1750\x000000000 022006\x0000130 44727470\x00000 15572\x0000 0\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000us tar  \x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000DRAFT V PS*1*19  P ATCH DESCR IPTION
  2850  
  2851   ========== ========== ========== ========== ========== ========== ========== =======
  2852   Run Date:  OCT 13, 20 16                        Design ation: VPS *1*19  TES T v
  2853   Package :  VA POINT O F SERVICE  (KIOSKS)       Priori ty   : MAN DATORY
  2854   Version :  1                                    Status      : UND ER DEVELOP MENT
  2855   ========== ========== ========== ========== ========== ========== ========== =======
  2856   Associated  patches:  (v)XSA*1.0 *0    <<=  must be in stalled BE FORE `VPS* 1*19'
  2857                            TIU*1.0 *310    << = must be  installed  BEFORE `VP S*1*19'
  2858                            XU*8.0* 659    <<=  must be i nstalled B EFORE `VPS *1*19'
  2859  
  2860   Subject:   VPS MRAR
  2861  
  2862   Category:   ENHANCEME NT
  2863  
  2864  
  2865   Descriptio n:
  2866   ========== =
  2867  
  2868   The Medica tion Revie w and Alle rgy/ADR Re view (MRAR ) applicat ion is an 
  2869   implementa tion of De partment o f Veterans  Affairs ( VA) direct ives to 
  2870   provide a  means for  VA medical  staff mem bers (doct ors, clini cians and 
  2871   others as  required)  to be able  to view a  single co mprehensiv e list of 
  2872   all allerg ies, adver se drug re actions (A DR) and me dications  a Veteran 
  2873   may have. 
  2874   The full m edication  list would  include l ocal VA me dications,  
  2875   remote VA  medication s, and non -VA medica tions (non -VA provid er 
  2876   prescribed  medicatio ns filled  at non-VA  pharmacies , VA provi der 
  2877   prescribed  medicatio ns filled  at non-VA  pharmacies , herbals,  over-the 
  2878   counter-me dications,  nutraceut icals, and  alternati ve medicat ions). 
  2879   This revie w process  would occu r in the c ontext of,  and for a  defined 
  2880   period fol lowing, a  clinical e ncounter w ith a Vete ran.
  2881  
  2882   Environmen t Check
  2883   ========== ======
  2884    TEXT INTE GRATION UT ILITIES -  TIU v1  PA TCH 310 mu st be inst alled
  2885    KERNEL XU  v8 patch  659 must b e installe d
  2886    VistA Ser vice Assem bler XSA v .1 must be  installed
  2887  
  2888    If any re quired pat ches are n ot install ed at the  site, the  installati on will ab ort
  2889  
  2890   Patch Comp onents
  2891   ========== ======
  2892  
  2893   Files & Fi elds Assoc iated:
  2894  
  2895   File Name  (#)                 F ield Name  (#)      N ew/Modifie d/Deleted
  2896   ---------- ----------          - ---------- ----     - ---------- ---------
  2897  
  2898  
  2899   Forms Asso ciated:
  2900  
  2901   Form Name                  File  #                   N ew/Modifie d/Deleted
  2902   ---------                  ----- -                   - ---------- ---------
  2903   N/A
  2904  
  2905   Functions  Associated :
  2906  
  2907   Function N ame                      New/Mod ified/Dele ted
  2908   ---------- ---                      ------- ---------- ---
  2909   N/A
  2910  
  2911   HL Logical  Link:
  2912  
  2913   HL Logical  Name                    New/Mod ified/Dele ted
  2914   ---------- -----                    ------- ---------- ---
  2915   N/A
  2916  
  2917   HL7 Applic ation Para meters:
  2918  
  2919   HL7 Parame ter Name                 New/Mod ified/Dele ted
  2920   ---------- --------                 ------- ---------- ---
  2921   N/A
  2922  
  2923   HLO Applic ation Regi stry:
  2924  
  2925   HLO Regist ry Name                  New/Mod ified/Dele ted
  2926   ---------- --------                 ------- ---------- ---
  2927   N/A
  2928  
  2929   Mail Group s Associat ed:
  2930  
  2931   Mail Group  Name                    New/Mod ified/Dele ted
  2932   ---------- -----                    ------- ---------- ---
  2933   N/A
  2934  
  2935   Options As sociated:
  2936  
  2937   Option Nam e                      Type              Ne w/Modified /Deleted
  2938   ---------- -                      ----              -- ---------- --------
  2939   N/A
  2940  
  2941   Parameter  Definition s:
  2942  
  2943   Parameter  Name                                     Ne w/Modified /Deleted
  2944   ---------- ----                                     -- ---------- --------
  2945   N/A
  2946  
  2947   Protocols  Associated :
  2948  
  2949   Protocol N ame                       New/Mo dified/Del eted
  2950   ---------- ---                       ------ ---------- ----
  2951   N/A
  2952  
  2953   Remote Pro cedure Cal ls:
  2954  
  2955   RPC Name                                            Ne w/Modified /Deleted
  2956   --------                                            -- ---------- --------
  2957   N/S
  2958  
  2959   Security K eys Associ ated:
  2960  
  2961   Security K ey Name
  2962   ---------- -------
  2963   N/A
  2964  
  2965   Templates  Associated :
  2966  
  2967   Template N ame      T ype      F ile Name ( #)         New/Modifi ed/Deleted
  2968   ---------- ---      - ---      - ---------- -------    ---------- ----------
  2969   N/A
  2970  
  2971  
  2972   Additional  Informati on:
  2973   N/A
  2974  
  2975  
  2976   New Servic e Requests  (NSRs):
  2977   ---------- ---------- ---------
  2978   N/A
  2979  
  2980  
  2981   Patient Sa fety Issue s (PSIs):
  2982   ---------- ---------- ----------
  2983   N/A
  2984  
  2985  
  2986   Remedy Tic ket(s) & O verviews:
  2987   ---------- ---------- ---------
  2988   N/A
  2989  
  2990  
  2991   Test Sites :
  2992   ---------- -
  2993   Boise
  2994   Memphis
  2995   Hudson Val ley
  2996   Hampton
  2997   South Texa s
  2998  
  2999  
  3000   Documentat ion Retrie val Instru ctions:
  3001   ---------- ---------- ---------- -------
  3002   Updated do cumentatio n describi ng the new  functiona lity intro duced by t his
  3003   patch is a vailable.
  3004  
  3005   The prefer red method  is to FTP  the files  from
  3006   ftp://down load. DNS        . DNS     /.
  3007   This trans mits the f iles from  the first  available  FTP server . Sites ma y
  3008   also elect  to retrie ve softwar e directly  from a sp ecific ser ver as
  3009   follows:
  3010  
  3011   Albany           ftp.fo-alb any. URL            <ftp://ftp .fo-albany . URL         >
  3012   Hines           ftp.D NS     .UR L           <ftp://ft p.DNS      .URL        >
  3013   Salt Lake  City ftp.f o-slc. URL                <ftp://ftp .fo-slc. URL         >
  3014  
  3015  
  3016   The docume ntation wi ll be in t he form of  Adobe Acr obat files .
  3017  
  3018   Documentat ion can al so be foun d on the V A Software  Documenta tion Libra ry
  3019   at: http:/ / URL               /
  3020  
  3021   File Descr iption                               File N ame              FTP  Mode
  3022   ---------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  3023   MRAR Insta ll Guide       vps_1_ 19_ig.pdf           b inary
  3024   MRAR Relea se Notes       vps_1_ 19_rn.pdf           b inary
  3025  
  3026  
  3027   Patch Inst allation:
  3028  
  3029  
  3030   Pre/Post I nstallatio n Overview
  3031   ---------- ---------- ----------
  3032  
  3033  
  3034   Pre-Instal lation Ins tructions
  3035   ---------- ---------- ---------
  3036   This patch  may be in stalled wi th users o n the syst em. This p atch shoul d
  3037   take less  than 5 min utes to in stall.
  3038  
  3039  
  3040   Installati on Instruc tions
  3041   ---------- ---------- -----
  3042   1.  Use th e 'Load a  Distributi on' option  on the KI DS install ation menu .
  3043       When p rompted to  enter a h ost file t ype in [DI R]:VPS_1_1 9.KID,
  3044       Where  [DIR] is t he local d irectory w here the h ost file w as copied  to.
  3045  
  3046   2.  From t he Kernel  Installati on and Dis tribution  System Men u, select
  3047       the In stallation  Menu.  Fr om this me nu, you ma y elect to  use the
  3048       follow ing option . When pro mpted for  the INSTAL L enter th e patch #
  3049       (VPS*1 .0*19):
  3050  
  3051       a. Bac kup a Tran sport Glob al - This  option wil l create a  backup
  3052          mes sage of an y routines  exported  with this  patch. It  will not
  3053          bac kup any ot her change s such as  DD's or te mplates.
  3054       b. Com pare Trans port Globa l to Curre nt System  - This opt ion will
  3055          all ow you to  view all c hanges tha t will be  made when  this patch
  3056          is  installed.   It compa res all co mponents o f this pat ch
  3057          (ro utines, DD 's, templa tes, etc.) .
  3058       c. Ver ify Checks ums in Tra nsport Glo bal - This  option wi ll allow
  3059          you  to ensure  the integ rity of th e routines  that are  in the
  3060          tra nsport glo bal.
  3061  
  3062   3.  From t he Install ation Menu , select t he Install  Package(s ) option a nd
  3063       choose  the patch  to instal l. Enter V PS*1.0*19.
  3064  
  3065   4.  When p romped 'Wa nt to RUN  the Enviro nment Chec k Routine?  YES//' re spond YES
  3066       
  3067          If  all requir ed VistA p atches are  present,  you should  see:
  3068  
  3069           VP S*1.0*19 W ill first  run the En vironment  Check Rout ine, VPS19 PRE
  3070    
  3071           FO UND TIU*1. 0*310
  3072    
  3073           FO UND XU*8.0 *659
  3074    
  3075           FO UND XSA*1. 0
  3076   5. Use INS TALL NAME:  VPS*1.0*1 9 to insta ll this Di stribution .
  3077  
  3078   6.  When p rompted 'W ant KIDS t o Rebuild  Menu Trees  Upon Comp letion of
  3079       Instal l? NO//',  respond NO .
  3080  
  3081   7.  When p rompted 'W ant KIDS t o INHIBIT  LOGONs dur ing the in stall? NO/ /',
  3082       respon d NO.
  3083  
  3084   8.  When p rompted 'W ant to DIS ABLE Sched uled Optio ns, Menu O ptions, an d
  3085       Protoc ols? NO//' , respond  NO.
  3086  
  3087   Post-Insta llation In structions
  3088   ---------- ---------- ----------
  3089   N/A
  3090  
  3091   Routine In formation:
  3092   ========== ==========
  3093  
  3094   Routine Na me: VPS19P RE
  3095   VPS*1*19 E nvironment  Check rou tine 
  3096  
  3097   Routine Na me: VPSXDG
  3098     Get Pati ent Demogr aphics for  MRAR
  3099    
  3100   Routine Na me: VPSXGM RA
  3101     MRAR Pat ient APIs
  3102  
  3103   Routine Na me: VPSXPS
  3104     MRAR Get  Patient M eds
  3105  
  3106   Routine Na me: VPSXRX
  3107     MRAR CLI NICAL RECO NCILIATION  SERVICES
  3108  
  3109   Routine Na me: VPSXRX 1
  3110     Get Drug  data
  3111  
  3112   Routine Na me: VPSXSA PX
  3113     Get Pati ent Allerg ies
  3114     Get a li st of Alle rgy Causat ive Agents
  3115     Get a li st of Sign s/Symptoms  for addin g allergie s
  3116  
  3117   Routine Na me: VPSXTI U
  3118     Wrapper  for TIU AP I to add a  new note
  3119  
  3120   Routine Na me: VPSXUT L
  3121      Utiliti es used by  MRAR VPS  M code
  3122     
  3123   The follow ing routin es are inc luded in t his patch.   The seco nd line of  each
  3124   of these r outines no w looks li ke:
  3125    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**[P atch List] **;Oct 21,  2011;Buil d 19
  3126    
  3127   Routine          Old          Ne w        P atch List
  3128   VPS19PRE         n/a        4458 322    **1 9**
  3129   VPSXDG           n/a       70973 290    **1 9**
  3130   VPSXGMRA         n/a       69699 617    **1 9**
  3131   VPSXPSS          n/a        5826 304    **1 9**
  3132   VPSXRX           n/a       18496 6405   **1 9**
  3133   VPSXRX1          n/a       30761 970    **1 9**
  3134   VPSXSAPX         n/a        8965 549    **1 9**
  3135   VPSXTIU          n/a       11745 969    **1 9**
  3136   VPSXUTL          n/a       19411 425    **1 9**
  3137    
  3138  
  3139   ========== ========== ========== ========== ========== ========== ========== =======
  3140   User Infor mation:  
  3141     Entered  By  :   TO MLIN,BRIAN          D ate Entere d  :   JUN   1,2016
  3142     Complete d By:                          D ate Comple ted:   
  3143     Released  By :                          D ate Releas ed :   
  3144   ========== ========== ========== ========== ========== ========== ========== =======
  3145   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000pack age/README .md\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x00000000 644\x0000000175 0\x00000001750\x0000 0000000016 7\x000013044727 470\x0000010664 \x0000 0\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000ustar   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000ï» ¿# VPS MCo de 
  3146  
  3147   This repo  contains t he MCODE n ecessary t o run the  ehmp-mrar- services c alls to Vi stA.js
  3148  
  3149  
  3150  
  3151  
  3152     
  3153   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000package /routines/ \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x00000000755 \x00000000000\x00000 000000\x0000000 00000000\x00001 3052061140 \x0000013007\x0000 5 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 ustar  \x0000ro ot\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 root\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000packa ge/routine s/VPSXSAPX .xml\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x000000006 44\x00000001750 \x00000001750\x00000 0000017423 \x0000130447274 70\x0000013276\x0000  0\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000ustar  \x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000<?x ml version ="1.0" enc oding="UTF -8"?>
  3154   <Export ge nerator="C ache" vers ion="25" z v="Cache f or Windows  (x86-64)  2015.2.3 ( Build 855) " ts="2017 -01-30 13: 57:24">
  3155   <Routine n ame="VPSXS APX" type= "INT" lang uagemode=" 0" timesta mp="64313, 39363"><![ CDATA[
  3156   VPSXSAPX ; DALOI/BNT  - MRAR CLI NICAL RECO NCILIATION  SERVICES  ;11/20/16  15:30
  3157    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 14
  3158    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  3159    ;
  3160    ; Externa l Referenc es           DBIA#
  3161    ; ------- ---------- --           -----
  3162    ; XSAPXUT L                       6458
  3163    ;
  3164    Q
  3165    ;
  3166   GETMEDS(SO URCE,TARGE T) ; Get P atient Med s
  3167    ;This fun ction prov ides a lis t of patie nt meds. 
  3168    ;The list  includes  meds from  the the fo llowing lo cations:
  3169    ; - Presc ription fi le #52 (Ou tpatient)
  3170    ; - Pharm acy Patien t #55 (Non -VA) and ( Inpatient)
  3171    ;
  3172    ;Meds are  returned  sorted by  outpatient , iv, unit Dose or no nVA meds.
  3173    ;
  3174    ;###SOURC E INPUT
  3175    ;|Paramet er|Require d/Optional |Descripti on|
  3176    ;|------- --|------- ---------- |--------- --|
  3177    ;|DFN       |(R)                |Patient I EN in the  PATIENT fi le #2|
  3178    ;|SDATE     |(O)                |Date to b egin searc h - Defaul t is 180 d ays in the  past|
  3179    ;|EDATE     |(O)                |Date to e nd search  - Default  is Today|
  3180    ;
  3181    ;###TARGE T OUTPUT
  3182    ;
  3183    ;|Paramet er|Require d/Optional |Descripti on|
  3184    ;|------- --|------- ---------- |--------- --|
  3185    ;|TARGET    |(R)                |The outpu t is a lis t of patie nt medicat ions.|
  3186    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  3187    N XSAERR, RESULTS,XS ASYM
  3188    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  3189    Q $$GETME DS^VPSXRX( .SOURCE,.T ARGET)
  3190    ;
  3191   GETALRG(SO URCE,TARGE T) ; Get P atient All ergies
  3192    ;This fun ction is a  wrapper f or the EN1 ^GMRADPT A PI support ed by ICR#  10099
  3193    ;
  3194    ;Allergie s are retu rned sorte d by a UID  in the fo llowing fo rmat:
  3195    ;STATION# :DFN:FILE  IEN:FILE#
  3196    ;A record  from the  Patient Al lergies fi le #120.8  from Stati on 500 for  a patient
  3197    ;with the  DFN of 20 02123 woul d look lik e this:
  3198    ; '500:20 02123:876: 120.8'
  3199    ;
  3200    ;###SOURC E INPUT
  3201    ;|Paramet er|Require d/Optional |Descripti on|
  3202    ;|------- --|------- ---------- |--------- --|
  3203    ;|DFN       |(R)                |Patient I EN in the  PATIENT fi le #2|
  3204    ;
  3205    ;###TARGE T OUTPUT
  3206    ;
  3207    ;|Paramet er|Require d/Optional |Descripti on|
  3208    ;|------- --|------- ---------- |--------- --|
  3209    ;|TARGET    |(R)                |The outpu t is a lis t of patie nt allergi es, or nka .|
  3210    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  3211    N XSAERR, RESULTS,XS ASYM
  3212    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  3213    Q $$GETAL RG^VPSXGMR A(.SOURCE, .TARGET)
  3214    ;
  3215   GETCA(SOUR CE,TARGET)  ; Get a l ist of All ergy Causa tive Agent s
  3216    ;This fun ction retu rns a list  of Causat ive Agents  for aller gies from  any of the  following  files:
  3217    ; - 120.8 2 GMR ALLE RGIES
  3218    ; - 50.6    VA GENER IC
  3219    ; - 50.67   NDC/UPN
  3220    ; - 50.60 5 VA DRUG  CLASS
  3221    ;
  3222    ;
  3223    ;###SOURC E INPUT
  3224    ;|Paramet er|Require d/Optional |Descripti on|
  3225    ;|------- --|------- ---------- |--------- --|
  3226    ;|NAME      |(O)                |A value u sed to sea rch one of  the Causa tive Agent  files or  null for a ll|
  3227    ;|FILES     |(O)                |A semi-co lon separa ted list o f supporte d files to  search or  null for  all|
  3228    ;
  3229    ;###TARGE T OUTPUT
  3230    ;
  3231    ;|Paramet er|Require d/Optional |Descripti on|
  3232    ;|------- --|------- ---------- |--------- --|
  3233    ;|TARGET    |(R)                |The outpu t is a lis t of patie nt allergi es, or nka .|
  3234    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  3235    N XSAERR, RESULTS,XS ASYM
  3236    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  3237    Q $$GETCA US^VPSXGMR A(.SOURCE, .TARGET)
  3238    ;
  3239   GETSYMP(SO URCE,TARGE T) ; Get a  list of S igns/Sympt oms for ad ding aller gies
  3240    N XSAERR, RESULTS,XS ASYM
  3241    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  3242    Q $$GETSY MP^VPSXGMR A(.SOURCE, .TARGET)
  3243    ;
  3244   GETDRGS(SO URCE,TARGE T) ; Get a  list of D rugs
  3245    N XSAERR, RESULTS,XS ASYM
  3246    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  3247    Q $$GETDR GS^VPSXPSS (.SOURCE,. TARGET)
  3248    ;
  3249   TIUNOTE(SO URCE,TARGE T) ; Creat e a new TI U Signed N ote
  3250    ;This fun ction is a  wrapper f or the NEW ^TIUPNAPI  API suppor ted by ICR # 1911.
  3251    ;This fun ction is o nly approv ed for MRA R use.
  3252    ;
  3253    ;The ID o f the TIU  note is re turned for  a success ful call i n the form at:
  3254    ;STATION# :DFN:FILE  IEN:FILE#
  3255    ;A record  from Stat ion 500 fo r a patien t with the  DFN of 20 02123
  3256    ;would lo ok like th is:
  3257    ; '500:20 02123:1001 0:8925'
  3258    ;
  3259    ;###SOURC E INPUT
  3260    ;|Paramet er|Require d/Optional |Descripti on|
  3261    ;|------- --|------- ---------- |--------- --|
  3262    ;|DFN       |(R)                |Patient I EN in the  PATIENT fi le #2|
  3263    ;|TIUAUTH   |(R)                |Author IE N of the n ote in the  NEW PERSO N file #20 0|
  3264    ;|TIURDT    |(R)                |Date/time  of note i n FileMan  format|
  3265    ;|TIUTTL    |(R)                |Name of T IU Documen t Title in  TIU DOCUM ENT DEFINI TION file#  8925.1|
  3266    ;|TEXT,n    |(R)                |Array of  document t ext in SOU RCE ^TMP($ J,"XSA","I NPUTS","TE XT",1)="Fi rst Line o f Text"|
  3267    ;|TIULOC    |(O)                |Patient L ocation IE N in the H OSPITAL LO CATION fil e #44|
  3268    ;|TIUES     |(O)                |1 if TIU  should pro cess E-SIG |
  3269    ;|TIUESBY   |(C)                |Condition al: if TIU ES=1 the T IUESBY is  IEN of Sig ning Autho rity. Defa ult is Aut hor. This  should be  used if Au thor requi res Co-sig nature and  the Cosig ner has Si gned the d ocument in  the calli ng Applica tion.|
  3270    ;
  3271    ;###TARGE T OUTPUT
  3272    ;
  3273    ;|Paramet er|Require d/Optional |Descripti on|
  3274    ;|------- --|------- ---------- |--------- --|
  3275    ;|TARGET    |(R)                |The outpu t is the U ID of the  TIU Note i f the call  is succes sful.|
  3276    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  3277    N XSAERR, RESULTS,XS ASYM
  3278    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  3279    Q $$TIUNO TE^VPSXTIU (.SOURCE,. TARGET)
  3280    ;
  3281   GETPAT(SOU RCE,TARGET ) ; Get Pa tient Demo graphics
  3282    ;This fun ction retu rns a list  of patien t demograp hics for t he patient .
  3283    ;DFN or I CN is requ ired for a  lookup, b ut not bot h together .
  3284    ;
  3285    ;###SOURC E INPUT
  3286    ;|Paramet er|Require d/Optional |Descripti on|
  3287    ;|------- --|------- ---------- |--------- --|
  3288    ;|DFN       |(R or n ull)       |IEN in th e PATIENT  file #2|
  3289    ;|ICN       |(R or n ull)       |Integrati on Control  Number|
  3290    ;
  3291    ;###TARGE T OUTPUT
  3292    ;
  3293    ;|Paramet er|Require d/Optional |Descripti on|
  3294    ;|------- --|------- ---------- |--------- --|
  3295    ;|TARGET    |(R)                |The outpu t is a lis t of patie nt demogra phics|
  3296    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  3297    N XSAERR, RESULTS,XS ASYM
  3298    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  3299    Q $$GETPA T^VPSXDG(. SOURCE,.TA RGET)
  3300    ;
  3301   SIGCHECK(S OURCE,TARG ET) ; Vali dates the  Electronic  Signature  Code ente red by a u ser
  3302    ;This fun ction retu rns a true  or false  condition  based on w hether a u ser has
  3303    ;entered  the correc t e-SIG co de or not
  3304    ;
  3305    ;###SOURC E INPUT
  3306    ;|Paramet er|Require d/Optional |Descripti on|
  3307    ;|------- --|------- ---------- |--------- --|
  3308    ;|ESCODE    |(R)                |Electroni c Signatur e Code for  logged on  user|
  3309    ;
  3310    ;###TARGE T OUTPUT
  3311    ;
  3312    ;|Paramet er|Require d/Optional |Descripti on|
  3313    ;|------- --|------- ---------- |--------- --|
  3314    ;|TARGET    |(R)                |The outpu t is a boo lean true  or false|
  3315    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  3316    N XSAERR, RESULTS,XS ASYM
  3317    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  3318    Q $$SIGCH ECK^VPSXTI U(.SOURCE, .TARGET)
  3319    ;
  3320   REQCOS(SOU RCE,TARGET ) ; Valida tes whethe r the user  requires  cosigner o r not
  3321    ;This fun ction retu rns a true  or false  condition  based on w hether a u ser 
  3322    ;requires  cosignatu re or not.
  3323    ;
  3324    ;###SOURC E INPUT
  3325    ;|Paramet er|Require d/Optional |Descripti on|
  3326    ;|------- --|------- ---------- |--------- --|
  3327    ;|VPSTTL    |(R)                |TIU Note  Title Name  i.e. (VPS  MRAR NOTE )|
  3328    ;
  3329    ;###TARGE T OUTPUT
  3330    ;
  3331    ;|Paramet er|Require d/Optional |Descripti on|
  3332    ;|------- --|------- ---------- |--------- --|
  3333    ;|TARGET    |(R)                |The outpu t is a boo lean true  or false|
  3334    ;-------- ---------- ---------- ---------- ---------- ---------- ---------- ----
  3335    N XSAERR, RESULTS,XS ASYM
  3336    D INIT^XS APXUTL(.SO URCE,.TARG ET)
  3337    Q $$REQCO S^VPSXTIU( .SOURCE,.T ARGET)
  3338   ]]></Routi ne>
  3339   </Export>
  3340   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000pac kage/routi nes/VPSXTI U.xml\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000000 0644\x000000017 50\x00000001750 \x0000000000067 22\x00001304472 7470\x000001316 4\x0000 0\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000ustar   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000< ?xml versi on="1.0" e ncoding="U TF-8"?>
  3341   <Export ge nerator="C ache" vers ion="25" z v="Cache f or Windows  (x86-64)  2015.2.3 ( Build 855) " ts="2017 -01-30 13: 57:52">
  3342   <Routine n ame="VPSXT IU" type=" INT" langu agemode="0 " timestam p="64313,3 9363"><![C DATA[
  3343   VPSXTIU ;D ALOI/BNT -  MRAR CLIN ICAL RECON CILIATION  SERVICES ; 11/20/16 1 5:30
  3344    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 14
  3345    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  3346    ;
  3347    ; Externa l Referenc es           DBIA#
  3348    ; ------- ---------- --           -----
  3349    ; TIUPNAP I                       1911
  3350    ; TIUPUTU                         3351
  3351    ; TIUSRVA                         5541
  3352    ; VASITE                          10112
  3353    ; XSAPXUT L                       6458
  3354    ;
  3355    Q
  3356    ;
  3357   TIUNOTE(SO URCE,TARGE T) ; Wrapp er for TIU  API to ad d a new no te
  3358    N ERR,RES ,X,CNT,VAL UE,DFN,TIU AUTH,TIURD T,TIUTTL,T EXT,TIULOC ,TIUES,TIU ESBY,VPSSI TE,VPSSTN
  3359    S ERR="", CNT=0
  3360    N X F X=" DFN","TIUA UTH","TIUR DT","TIUTT L","TEXT", "TIULOC"," TIUES","TI UESBY" D I NITPARM^XS APXUTL(.X)
  3361    ;
  3362    ; Make su re Patient  is define d
  3363    I 'DFN D   Q $$RESUL T^XSAPXUTL ()
  3364    . D BLDER ROR^XSAPXU TL(1,"Pati ent DFN is  undefined ","TIUNOTE ^VPSXTIU")
  3365    ;
  3366    ; Make su re Text ex ists
  3367    I $G(@SOU RCE@("TEXT ",1))']""  D  Q $$RES ULT^XSAPXU TL()
  3368    . D BLDER ROR^XSAPXU TL(1,"TIU  Document t ext does n ot exist", "TIUNOTE^V PSXTIU")
  3369    ; Make su re Author  exists
  3370    I 'TIUAUT H D  Q $$R ESULT^XSAP XUTL()
  3371    . D BLDER ROR^XSAPXU TL(1,"Auth or is requ ired","TIU NOTE^VPSXT IU")
  3372    ; Get the  TIU Docum ent Defini tion IEN f rom the Do cument Tit le
  3373    S TIUTTL= $$WHATITLE ^TIUPUTU(T IUTTL)
  3374    I TIUTTL' >0 D  Q $$ RESULT^XSA PXUTL()
  3375    . D BLDER ROR^XSAPXU TL(1,"TIU  Document T itle is in valid","TI UNOTE^VPSX TIU")
  3376    ; Build t he TIU req uired glob al with co rrect $J t o prevent  errors wit h asynchro nous calls
  3377    S X="" F   S X=$O(@S OURCE@("TE XT",X)) Q: X=""  D
  3378    . ; Set t he value f rom either  a word pr ocessing n ode or a s imple arra y node
  3379    . S VALUE =$S($G(@SO URCE@("TEX T",X))]"": @SOURCE@(" TEXT",X),$ G(@SOURCE@ ("TEXT",X, 0))]"":@SO URCE@("TEX T",X,0),1: "")
  3380    . I VALUE ]"" S CNT= CNT+1 S ^T MP("TIUP", $J,CNT,0)= VALUE
  3381    S ^TMP("T IUP",$J,0) ="^^1^1^"_ DT+1_"^"
  3382    ; Check i f TIUESBY  exists and  default t o Author i f not
  3383    I 'TIUESB Y S TIUESB Y=TIUAUTH
  3384    D NEW^TIU PNAPI(.RES ,DFN,TIUAU TH,TIURDT, TIUTTL,TIU LOC,TIUES, "",TIUESBY ,"","")
  3385    K ^TMP("T IUP",$J)
  3386    S VPSSITE =$$SITE^VA SITE,VPSST N=$P(VPSSI TE,U,3)
  3387    I RES>0 D
  3388    . S @TARG ET@("resul ts","stati onNumber") =VPSSTN
  3389    . S @TARG ET@("resul ts","siteN ame")=$P(V PSSITE,U,2 )
  3390    . S @TARG ET@("resul ts","noteI d")=$$SETU ID^VPSXUTL (VPSSTN,DF N,RES,"892 5")
  3391    E  D BLDE RROR^XSAPX UTL(1,RES, "TIUNOTE^V PSXTIU")
  3392    Q $$RESUL T^XSAPXUTL ()
  3393    ;
  3394   SIGCHECK(S OURCE,TARG ET) ; Vali date a log ged on use rs Electro nic Signat ure Code
  3395    N ESCODE, X
  3396    N X F X=" ESCODE" D  INITPARM^X SAPXUTL(.X )
  3397    I ESCODE= "" D  Q $$ RESULT^XSA PXUTL()
  3398    . D BLDER ROR^XSAPXU TL(1,"Miss ing Electr onic Signa ture Code" ,"SIGCHECK ^VPSXTIU")
  3399    S X=ESCOD E D HASH^X USHSHP
  3400    S @TARGET @("results ","esig")= $S($P($G(^ VA(200,DUZ ,20)),U,4) =X:"true", 1:"false")
  3401    Q $$RESUL T^XSAPXUTL ()
  3402    ;
  3403   REQCOS(SOU RCE,TARGET ) ; Valida te if the  logged on  user requi res cosign er or not
  3404    N VPSTTL, TIUTTL,RES
  3405    N X F X=" VPSTTL" D  INITPARM^X SAPXUTL(.X )
  3406    S TIUTTL= $$WHATITLE ^TIUPUTU(V PSTTL)
  3407    I TIUTTL' >0 D  Q $$ RESULT^XSA PXUTL()
  3408    . D BLDER ROR^XSAPXU TL(1,"Inva lid Docume nt Title", "REQCOS^VP SXTIU")
  3409    I 'DUZ D   Q $$RESUL T^XSAPXUTL ()
  3410    . D BLDER ROR^XSAPXU TL(1,"Unkn own User", "REQCOS^VP SXTIU")
  3411    D REQCOS^ TIUSRVA(.R ES,TIUTTL, "",DUZ,DT)
  3412    S @TARGET @("results ","esig")= $S(+RES:"t rue",1:"fa lse")
  3413    Q $$RESUL T^XSAPXUTL ()
  3414   ]]></Routi ne>
  3415   </Export>
  3416   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000pack age/routin es/VPS19PR E.xml\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x00000000 644\x0000000175 0\x00000001750\x0000 0000000342 3\x000013044727 470\x0000013166 \x0000 0\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000ustar   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000<? xml versio n="1.0" en coding="UT F-8"?>
  3417   <Export ge nerator="C ache" vers ion="25" z v="Cache f or Windows  (x86-64)  2015.2.3 ( Build 855) " ts="2017 -02-02 11: 13:21">
  3418   <Routine n ame="VPS19 PRE" type= "INT" lang uagemode=" 0" timesta mp="64316, 39431"><![ CDATA[
  3419   VPS19PRE ; DALOI/BNT  - VPS*1*19  PRE-TRANS PORT AND E NVIRONMENT  CHECK ;11 /20/16 15: 30
  3420    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 19
  3421    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  3422   ENV   ;ENV IRONMENT C HECK FOR I NSTALLING  MRAR
  3423    ;  requir e TIU*1.0* 310
  3424    ;  requir e Kernel p atch XU*8. 0*659
  3425    ;  requir e VistA Se rvice Asse mbler to b e installe d XSA
  3426    ;
  3427    N VPSVAL1 ,VPSVAL2
  3428    ;
  3429    S VPSVAL1 =+$$VERSIO N^XPDUTL(" TIU")
  3430    I VPSVAL1 =1 D
  3431    .S VPSVAL 2=$$PATCH^ XPDUTL("TI U*1.0*310" )
  3432    .D:'VPSVA L2 NOGO("T IU*1.0*310 ")
  3433    .D:+VPSVA L2 GOOD("T IU*1.0*310 ")
  3434    I VPSVAL1 '=1 D NOGO ("TEXT INT EGRATION U TILITIES   - TIU V.1" )
  3435    ;
  3436    S VPSVAL1 =+$$VERSIO N^XPDUTL(" VPS")
  3437    I VPSVAL1 '=1 D NOGO ("VA POINT  OF SERVIC E (KIOSKS)  - VPS V.1 ")
  3438    ;
  3439    S VPSVAL1 =+$$VERSIO N^XPDUTL(" XU")
  3440    I VPSVAL1 =8 D
  3441    .S VPSVAL 2=$$PATCH^ XPDUTL("XU *8.0*659")
  3442    .D:'VPSVA L2 NOGO("X U*8.0*659" )
  3443    .D:+VPSVA L2 GOOD("X U*8.0*659" )
  3444    I VPSVAL1 '=8 D NOGO ("VA KERNE L - XU V.8 ")
  3445    ;
  3446    S VPSVAL1 =+$$VERSIO N^XPDUTL(" XSA")
  3447    I VPSVAL1 =1 D GOOD( "XSA*1.0")
  3448    I VPSVAL1 '=1 D NOGO ("VISTA SE RVICE ASSE MBLER - XS A V.1")
  3449    ;
  3450    I +$G(XPD QUIT)>0 D
  3451    .D BMES^X PDUTL("Ple ase instal l required  patches a nd start t his instal lation aga in.")
  3452    .D BMES^X PDUTL("Ins tallation  of VPS*1*1 9 now abor ting")
  3453    ;
  3454   NOGO(VPSTR ING)  ;Wri tes a mess age to use r that req uired patc h was not  found
  3455    D BMES^XP DUTL("---  "_VPSTRING _" was NOT  found on  your site.  ---")
  3456    S XPDQUIT =1
  3457    Q
  3458   GOOD(VPSTR ING)  ;Wri tes a mess age to ins taller tha t required  patch was  found
  3459    D BMES^XP DUTL("FOUN D "_VPSTRI NG)
  3460    Q
  3461   ]]></Routi ne>
  3462   </Export>
  3463   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000pac kage/routi nes/VPSXRX 1.xml\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000000 0644\x000000017 50\x00000001750 \x0000000000141 25\x00001304472 7470\x000001313 1\x0000 0\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000ustar   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000< ?xml versi on="1.0" e ncoding="U TF-8"?>
  3464   <Export ge nerator="C ache" vers ion="25" z v="Cache f or Windows  (x86-64)  2015.2.3 ( Build 855) " ts="2017 -01-30 13: 56:56">
  3465   <Routine n ame="VPSXR X1" type=" INT" langu agemode="0 " timestam p="64313,3 9363"><![C DATA[
  3466   VPSXRX1 ;D ALOI/BNT -  MRAR CLIN ICAL RECON CILIATION  SERVICES-C ont. of RX  ;11/20/16  15:30
  3467    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 14
  3468    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  3469    ;
  3470    ; Externa l Referenc es           DBIA#
  3471    ; ------- ---------- --           -----
  3472    ; PSS50                           4533
  3473    ; VASITE                          10112
  3474    ; XLFDT                           10103
  3475    ; XLFSTR                          10104
  3476    ; XSAPXUT L                       6458  
  3477    Q
  3478    ;
  3479    ;SETMULT( VPSOCL,IND EX,TYPE,ID ) ; sets t he multipl es  ;SCR 2 0170127 MR AR-1118
  3480   SETMULT(VP SOCL,INDEX ,TYPE,ID,T ARGET) ; s ets the mu ltiples
  3481    N I,J,SIG ,SPINST,RO UTE,SCHED, ADMIN,RMV, ADDITVS,SO LUTION
  3482    ; SIG for  Outpatien t or INSTR UCTIONS fo r Inpatien t
  3483    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"SIG ",I)) Q:'I   S SIG=$G (^(I,0)) D
  3484    . S J=J+1  I SIG]""  S @TARGET@ ("results" ,TYPE,ID,$ S(TYPE="ou tpatient": "sig",1:"i nstruction s"),J)=SIG
  3485    ; Special  Instructi ons
  3486    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"SIO ",I)) Q:'I   S SPINST =$G(^(I,0) ) D
  3487    . S J=J+1  I SPINST] "" S @TARG ET@("resul ts",TYPE,I D,"special Instructio ns",J)=SPI NST
  3488    ; Med Rou te Abbr.
  3489    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"MDR ",I)) Q:'I   S ROUTE= $G(^(I,0))  D
  3490    . S J=J+1  I ROUTE]" " S @TARGE T@("result s",TYPE,ID ,"route",J )=ROUTE
  3491    ; Schedul e
  3492    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"SCH ",I)) Q:'I   S SCHED= $G(^(I,0))  D
  3493    . S J=J+1  I SCHED]" " S @TARGE T@("result s",TYPE,ID ,"schedule ",J)=SCHED
  3494    ; Adminis tration Ti mes
  3495    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"ADM ",I)) Q:'I   S ADMIN= $G(^(I,0))  D
  3496    . S J=J+1  I ADMIN]" " S @TARGE T@("result s",TYPE,ID ,"administ rationTime s",J)=ADMI N
  3497    ; Removal  Times
  3498    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"RMV ",I)) Q:'I   S RMV=$G (^(I,0)) D
  3499    . S J=J+1  I RMV]""  S @TARGET@ ("results" ,TYPE,ID," removalTim es",J)=RMV
  3500    ; Additiv es
  3501    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"A", I)) Q:'I   S ADDITVS= $G(^(I,0))  D
  3502    . S J=J+1
  3503    . I $P(AD DITVS,U)]" " S @TARGE T@("result s",TYPE,ID ,"additive Name",J)=$ P(ADDITVS, U)
  3504    . I $P(AD DITVS,U,2) ]"" S @TAR GET@("resu lts",TYPE, ID,"additi veAmount", J)=$P(ADDI TVS,U,2)
  3505    . I $P(AD DITVS,U,3) ]"" S @TAR GET@("resu lts",TYPE, ID,"additi veBottle", J)=$P(ADDI TVS,U,3)
  3506    ; Solutio ns
  3507    S (J,I)=0  F  S I=$O (@VPSOCL@( INDEX,"B", I)) Q:'I   S SOLUTION =$G(^(I,0) ) D
  3508    . S J=J+1
  3509    . I $P(SO LUTION,U)] "" S @TARG ET@("resul ts",TYPE,I D,"solutio nName",J)= $P(SOLUTIO N,U)
  3510    . I $P(SO LUTION,U,2 )]"" S @TA RGET@("res ults",TYPE ,ID,"solut ionAmount" ,J)=$P(SOL UTION,U,2)
  3511    Q
  3512    ;
  3513    ;SETZERO( X,TYPE,ID)  ; sets th e zero nod e   ;SCR 2 0170127 MR AR-1118
  3514   SETZERO(X, TYPE,ID,TA RGET) ; se ts the zer o node
  3515    I $P($P(X ,U),";",2) ]"" S @TAR GET@("resu lts",TYPE, ID,"patien tStatus")= $P($P(X,U) ,";",2)
  3516    I $P(X,U, 2)]"" S @T ARGET@("re sults",TYP E,ID,"drug ")=$P(X,U, 2)
  3517    I $P(X,U, 3)]"" S @T ARGET@("re sults",TYP E,ID,"infu sionRate") =$P(X,U,3)
  3518    I $P(X,U, 4)]"" S @T ARGET@("re sults",TYP E,ID,"stop Date")=$P( X,U,4)_U_$ $FMTE^XLFD T($P(X,U,4 ))
  3519    I $P(X,U, 5)]"" S @T ARGET@("re sults",TYP E,ID,"refi llsRemaini ng")=$P(X, U,5)
  3520    I $P(X,U, 6)]"" S @T ARGET@("re sults",TYP E,ID,"tota lDose")=$P (X,U,6)
  3521    I $P(X,U, 7)]"" S @T ARGET@("re sults",TYP E,ID,"unit sPerDose") =$P(X,U,7)
  3522    I $P(X,U, 8)]"" S @T ARGET@("re sults",TYP E,ID,"orde rId")=+$P( X,U,8)
  3523    I $P(X,U, 9)]"" S @T ARGET@("re sults",TYP E,ID,"stat us")=$P(X, U,9)
  3524    I $P(X,U, 10)]"" S @ TARGET@("r esults",TY PE,ID,"las tFillDate" )=$P(X,U,1 0)_U_$$FMT E^XLFDT($P (X,U,10))
  3525    I $P(X,U, 11)]"" S @ TARGET@("r esults",TY PE,ID,"day sSupply")= $P(X,U,11)
  3526    I $P(X,U, 12)]"" S @ TARGET@("r esults",TY PE,ID,"qua ntity")=$P (X,U,12)
  3527    I $P(X,U, 13)]"" S @ TARGET@("r esults",TY PE,ID,"not ToBeGiven" )=$P(X,U,1 3)
  3528    I $P(X,U, 14)]"" S @ TARGET@("r esults",TY PE,ID,"pen dingRenewa l")=$S($P( X,U,14):"t rue",1:"fa lse")
  3529    I $P(X,U, 15)]"" S @ TARGET@("r esults",TY PE,ID,"sta rtDate")=$ P(X,U,15)_ U_$$FMTE^X LFDT($P(X, U,15))
  3530    I $P(X,U, 16)]"" S @ TARGET@("r esults",TY PE,ID,"las tReleaseDa teTime")=$ P(X,U,16)_ U_$$FMTE^X LFDT($P(X, U,16))
  3531    I $P(X,U, 17)]"" S @ TARGET@("r esults",TY PE,ID,"las tFillDaySu pply")=$P( X,U,17)
  3532    Q
  3533    ;
  3534    ;PSDRUG(D RUG,UID,TY PE) ; Get  Drug Data     ;SCR 20 170127 MRA R-1118
  3535   PSDRUG(DRU G,UID,TYPE ,TARGET) ;  Get Drug  Data
  3536    N  DNS    D,VUID
  3537    K ^TMP($J ,"DRUG")
  3538    D DATA^PS S50(DRUG," ","","","" ,"DRUG")
  3539    Q:'$D(^TM P($J,"DRUG ",0))
  3540    S @TARGET @("results ",TYPE,UID ,"drugClas sification Code")=$P( $G(^TMP($J ,"DRUG",DR UG,25)),U, 2)
  3541    S @TARGET @("results ",TYPE,UID ,"drugClas sification Name")=$P( $G(^TMP($J ,"DRUG",DR UG,25)),U, 3)
  3542    S @TARGET @("results ",TYPE,UID ,"dispense Unit")=$G( ^TMP($J,"D RUG",DRUG, 14.5))
  3543    S  DNS    D=$G(^TMP( $J,"DRUG", DRUG,22))
  3544    I  DNS    D="" S  DNS    D=DRUG_U_$ G(^TMP($J, "DRUG",DRU G,.01)),VU ID=$P($$SI TE^VASITE, U,3)_$$REP EAT^XLFSTR (0,15)_DRU G
  3545    E    S VUID=$$V UID^VPSXUT L(+ DNS    D,50.68)
  3546    S @TARGET @("results ",TYPE,UID ,"product" )=$P( DNS    D,U,2)
  3547    S @TARGET @("results ",TYPE,UID ,"productI d")=$$SETV URN^VPSXUT L("vuid",V UID)
  3548    K ^TMP("P SOR",$J)
  3549    Q
  3550    ;
  3551    ;PROVIDER (PRV,UID,F LD,TYPE) ;  Get Provi der Specs   ;SCR 2017 0127 MRAR- 1118
  3552   PROVIDER(P RV,UID,FLD ,TYPE,TARG ET) ; Get  Provider S pecs
  3553    N X,PROV
  3554    D PROVIDE R^VPSXUTL( .PROV,PRV, FLD)
  3555    M @TARGET @("results ",TYPE,UID )=PROV
  3556    Q
  3557    ;
  3558    ;RXSLOOP( SFILE,RXIE N,NODE,TYP E) ; Loop  through su bfiles and  get field  names and  values -  SCR 201701 27 MRAR-11 18
  3559   RXSLOOP(DF N,VPSSTN,S FILE,RXIEN ,NODE,TYPE ,RXDAT,RXU ID,TARGET)  ; Loop th rough subf iles and g et field n ames and v alues
  3560    N X,SFLD, SFLDNAME
  3561    I $G(RXUI D)="" S RX UID=$$SETU ID^VPSXUTL (VPSSTN,DF N,RXIEN,"5 2")
  3562    S X=0
  3563    F  S X=$O (@RXDAT@(D FN,RXIEN,F LD,X)) Q:' X  D
  3564    . S SFLD= 0 F  S SFL D=$O(@RXDA T@(DFN,RXI EN,FLD,X,S FLD)) Q:'S FLD  D
  3565    . . I $D( @RXDAT@(DF N,RXIEN,FL D,X,SFLD)) =1 D  Q
  3566    . . . S S FLDNAME=$$ GETFLD^XSA PXUTL(SFIL E,SFLD)
  3567    . . . I S FLDNAME]"# " S SFLDNA ME=$REPLAC E(SFLDNAME ,"#",$S($E (SFLDNAME, 1)="#":"NU MBER ",1:"  NUMBER ") )
  3568    . . . S S FLDNAME=$T R(SFLDNAME ,"-_/","    ")
  3569    . . . S S FLDNAME=$$ CONVERT^XS APXUTL(SFL DNAME)
  3570    . . . I S FLDNAME]"" ,@RXDAT@(D FN,RXIEN,F LD,X,SFLD) ]"" D
  3571    . . . .S  @TARGET@(" results",T YPE,RXUID, NODE,X,SFL DNAME)=$S( $P(@RXDAT@ (DFN,RXIEN ,FLD,X,SFL D),U,2)]"" :$P(@RXDAT @(DFN,RXIE N,FLD,X,SF LD),U,2),1 :@RXDAT@(D FN,RXIEN,F LD,X,SFLD) )
  3572    Q
  3573   ]]></Routi ne>
  3574   </Export>
  3575   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000pac kage/routi nes/VPSXUT L.xml\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000000 0644\x000000017 50\x00000001750 \x0000000000122 06\x00001304472 7470\x000001316 1\x0000 0\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000ustar   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000< ?xml versi on="1.0" e ncoding="U TF-8"?>
  3576   <Export ge nerator="C ache" vers ion="25" z v="Cache f or Windows  (x86-64)  2015.2.3 ( Build 855) " ts="2017 -01-30 13: 58:19">
  3577   <Routine n ame="VPSXU TL" type=" INT" langu agemode="0 " timestam p="64313,4 0371.37627 7"><![CDAT A[
  3578   VPSXUTL ;D ALOI/BNT -  MRAR CLIN ICAL RECON CILIATION  SERVICES ; 11/20/16 1 5:30
  3579    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 14
  3580    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  3581    ;
  3582    ; Externa l Referenc es           DBIA#
  3583    ; ------- ---------- --           -----
  3584    ; %DT                             10003
  3585    ; DIQ                             2056
  3586    ; VASITE                          10112
  3587    ; XLFDT                           10103
  3588    ; XUAF4                           2171
  3589    ; XUSTAX                          4911
  3590    Q
  3591    ;
  3592   DATE(X) ;  -- Return  internal f orm of dat e X
  3593    N %DT,Y
  3594    S %DT="TX " D ^%DT
  3595    Q Y
  3596    ;
  3597   SETUID(STN ,PAT,ID,AD DDATA) ; - - create u id string
  3598    N RESULT
  3599    I 'STN S  STN=$P($$S ITE^VASITE ,U,3)
  3600    S RESULT= STN_":"_$S ($G(PAT):P AT_":",1:" ")_ID
  3601    I $L($G(A DDDATA)) S  RESULT=RE SULT_":"_A DDDATA
  3602    Q RESULT
  3603    ;
  3604   JSONDT(X)  ; -- conve rt FileMan  DT to HL7  DT for JS ON
  3605    N D,DATE, M,TIME,Y
  3606    S DATE=$P ($$FMTHL7^ XLFDT(X)," -")
  3607    I $L(DATE )>8 S TIME =$E(DATE,9 ,$L(DATE))
  3608    S Y=$E(DA TE,1,4),M= $E(DATE,5, 6),D=$E(DA TE,7,8)
  3609    K DATE
  3610    S DATE=Y  I M>0 S DA TE=DATE_M  S:D>0 DATE =DATE_D
  3611    I $G(TIME )'="" S DA TE=DATE_TI ME
  3612    Q DATE
  3613    ;
  3614   FACILITY(X ,Y) ; -- a dd facilit y info to  array for  JSON
  3615    ;  X=STAT ION NUMBER ^STATION N AME
  3616    ;  Y=Vari able array  name
  3617    S @Y@("fa cilityCode ")=$P(X,"^ ")
  3618    S @Y@("fa cilityName ")=$P(X,"^ ",2)
  3619    Q
  3620    ;
  3621   FAC(X) ; - - return I nstitution  file stat ion# for l ocation X
  3622    N HLOC,FA C,Y0,Y S Y =""
  3623    S HLOC=$G (^SC(+$G(X ),0)),FAC= $P(HLOC,U, 4)
  3624    ; Get P:4  via Med C tr Div, if  not direc tly linked
  3625    I 'FAC,$P (HLOC,U,15 ) S FAC=$$ GET1^DIQ(4 4,+$G(X)_" ,","3.5:.0 7","I")
  3626    S Y0=$S(F AC:$$NS^XU AF4(FAC),1 :$P($$SITE ^VASITE,U, 2,3)) ;nam e^stn#
  3627    S:$L(Y0)  Y=$P(Y0,U, 2)_U_$P(Y0 ,U) ;switc h to stn#^ name
  3628    I $L(Y),' Y S $P(Y,U )=FAC
  3629    Q Y
  3630    ;
  3631   VUID(IEN,F ILE) ; --  Return VUI D for item
  3632    Q $$GET1^ DIQ(FILE,I EN_",",99. 99)
  3633    ;
  3634   SETVURN(DO MAIN,VALUE ) ; -- cre ate VA urn
  3635    N RESULT  S RESULT=" "
  3636    S RESULT= "urn:va:"_ DOMAIN_":" _VALUE
  3637    Q RESULT
  3638    ;
  3639   STRING(ARR AY) ; -- R eturn text  in ARRAY( n) or ARRA Y(n,0) as  a string
  3640    N I,X,Y S  Y=""
  3641    S I=+$O(A RRAY(""))  I I=0 S I= +$O(ARRAY( 0))
  3642    S Y=$S($D (ARRAY(I,0 )):ARRAY(I ,0),1:$G(A RRAY(I)))
  3643    F  S I=$O (ARRAY(I))  Q:I<1  D
  3644    . S X=$S( $D(ARRAY(I ,0)):ARRAY (I,0),1:AR RAY(I))
  3645    . I $E(X) =" " S Y=Y _$C(13,10) _X Q
  3646    . S Y=Y_$ S($E(Y,$L( Y))=" ":"" ,1:" ")_X
  3647    Q Y
  3648    ;
  3649   ADDRESS(RE S,X) ; Ret urn Addres s Specs
  3650    ; Input:  RES passed  by refere nce will b e returned  with addr ess data
  3651    ;         X = addres s data in  format [st reet1^st2^ st3^city^s tate^zip]
  3652    I $P(X,U) ]"" S RES( "streetOne ")=$P(X,U)
  3653    I $P(X,U, 2)]"" S RE S("streetT wo")=$P(X, U,2)
  3654    I $P(X,U, 3)]"" S RE S("streetT hree")=$P( X,U,3)
  3655    I $P(X,U, 4)]"" S RE S("city")= $P(X,U,4)
  3656    I $P(X,U, 5)]"" S RE S("state") =$P(X,U,5)
  3657    I $P(X,U, 6)]"" S RE S("zip")=$ P(X,U,6)
  3658    Q
  3659    ;
  3660   TELECOM(RE S,X) ; Ret urn Teleco m Specs
  3661    ; Input:  RES passed  by refere nce will b e returned  with addr ess data
  3662    ;         X = addres s data in  format [ho me^cell^wo rk phones]
  3663    I $P(X,U, 1)]"" S RE S("homePho ne")=$P(X, U,4)
  3664    I $P(X,U, 2)]"" S RE S("cellPho ne")=$P(X, U,5)
  3665    I $P(X,U, 3)]"" S RE S("workPho ne")=$P(X, U,6)
  3666    Q
  3667    ;
  3668   PROVIDER(R ES,PRV,FLD ) ; Return  Provider  Specs
  3669    ; Input:  RES passed  by refere nce will b e returned  with addr ess data
  3670    ;         PRV = Prov ider IEN
  3671    ;         FLD = Fiel d name ass ociated wi th Provide r (i.e. "a ttending"  or "pc")
  3672    N X
  3673    Q:'+PRV
  3674    S X=$$PRO VSPC(+PRV)
  3675    S RES(FLD _"Name")=$ P(^VA(200, +PRV,0),U)
  3676    S RES(FLD _"Code")=+ PRV
  3677    I $P(X,U, 5)]"" S RE S(FLD_"Tax onomyCode" )=$P(X,U,5 )
  3678    I $P(X,U, 6)]"" S RE S(FLD_"Typ e")=$P(X,U ,6)
  3679    I $P(X,U, 7)]"" S RE S(FLD_"Cla ssificatio n")=$P(X,U ,7)
  3680    I $P(X,U, 8)]"" S RE S(FLD_"Spe cializatio n")=$P(X,U ,8)
  3681    I $P(X,U, 9)]"" S RE S(FLD_"Ser vice")=$P( X,U,9)
  3682    I $P(X,U, 1)]"" S RE S(FLD_"Off icePhone") =$P(X,U,1)
  3683    I $P(X,U, 2)]"" S RE S(FLD_"Ana logPager") =$P(X,U,2)
  3684    I $P(X,U, 3)]"" S RE S(FLD_"Fax ")=$P(X,U, 3)
  3685    I $P(X,U, 4)]"" S RE S(FLD_"Ema il")=$P(X, U,4)
  3686    Q
  3687    ; 
  3688   PROVSPC(NP ) ; -- Ret urn contac t & specia lty info f or provide r NP
  3689    ; save st rings in ^ TMP("VPSD" ,$J,NP) fo r efficien cy
  3690    N X,Y,I,C LS,PAT,X13 ,X15 S NP= +$G(NP) ;p rotect I f or calling  routine
  3691    S RES=$G( ^TMP("VPSD ",$J,NP))  I $L(RES)  Q RES
  3692    S X13=$G( ^VA(200,NP ,.13)),X15 =$G(^(.15) )
  3693    S RES=$P( X13,U,2)_U _$P(X13,U, 7)_U_$P(X1 3,U,6)_U_$ P(X15,U)_U
  3694    S X=$$TAX IND^XUSTAX (NP) I $P( X,U,2) D   ;= X12 cod e ^ #8932. 1 ien
  3695    . S CLS=$ G(^USC(893 2.1,$P(X,U ,2),0)) Q: CLS=""
  3696    . S RES=R ES_$P(X,U) _U_$P(CLS, U,1,3) ;X1 2^type^cla ss^special ization
  3697    S $P(RES, U,9)=$$GET 1^DIQ(200, NP_",",29)
  3698    S ^TMP("V PSD",$J,NP )=RES
  3699    Q RES
  3700    ;
  3701   FORMAT(X)  ; -- enfor ce (xxx)xx x-xxxx pho ne format
  3702    S X=$G(X)  I X?1"("3 N1")"3N1"- "4N.E Q X
  3703    N P,N,I,Y  S P=""
  3704    F I=1:1:$ L(X) S N=$ E(X,I) I N =+N S P=P_ N
  3705    S:$L(P)<1 0 P=$E("00 00000000", 1,10-$L(P) )_P
  3706    S Y=$S(P: "("_$E(P,1 ,3)_")"_$E (P,4,6)_"- "_$E(P,7,1 0),1:"")
  3707    Q Y
  3708    ;
  3709    ;SETRES(T YPE,ID,FLD ,VALUE) ;  Set a node  in the TA RGET resul ts array w ith a valu e   ;SCR 2 0170120 MR AR-1118
  3710   SETRES(TAR GET,TYPE,I D,FLD,VALU E) ; Set a  node in t he TARGET  results ar ray with a  value
  3711    Q:VALUE=" "
  3712    S @TARGET @("results ",TYPE,ID, FLD)=VALUE
  3713    Q
  3714   ]]></Routi ne>
  3715   </Export>
  3716   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000pa ckage/rout ines/VPSXR X.xml\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x000000 00644\x00000001 750\x0000000175 0\x000000000040 413\x0000130447 27470\x00000130 47\x0000 0\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000ustar   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 <?xml vers ion="1.0"  encoding=" UTF-8"?>
  3717   <Export ge nerator="C ache" vers ion="25" z v="Cache f or Windows  (x86-64)  2015.2.3 ( Build 855) " ts="2017 -01-30 13: 56:27">
  3718   <Routine n ame="VPSXR X" type="I NT" langua gemode="0"  timestamp ="64313,39 363"><![CD ATA[
  3719   VPSXRX ;DA LOI/BNT -  MRAR CLINI CAL RECONC ILIATION S ERVICES ;1 1/20/16 15 :30
  3720    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 14
  3721    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  3722    ;
  3723    ; Externa l Referenc es           DBIA#
  3724    ; ------- ---------- --           -----
  3725    ; DIQ                             2056
  3726    ; ORWORR                          3367
  3727    ; PSO52AP I                       4820
  3728    ; PSOORRL                         2400
  3729    ; VASITE                          10112
  3730    ; XLFDT                           10103
  3731    ; XSAPXUT L                       6458
  3732    Q
  3733    ;
  3734   GETMEDS(SO URCE,TARGE T) ; Get P atient Med s
  3735    N DFN,VPS SITE,VPSST N,VPSDATA
  3736    N X F X=" DFN","SDAT E","EDATE"  D INITPAR M^XSAPXUTL (.X)
  3737    S VPSSITE =$$SITE^VA SITE,VPSST N=$P(VPSSI TE,U,3)
  3738    I 'DFN D   Q $$RESUL T^XSAPXUTL ()
  3739    . D BLDER ROR^XSAPXU TL(1,"Pati ent DFN is  undefined ","GETMEDS ^VPSXRX")
  3740    ; Default  to last 1 80 days
  3741    I SDATE'] "" S SDATE =$$FMADD^X LFDT(DT,-1 80)
  3742    I EDATE'] "" S EDATE =DT
  3743    K ^TMP("P S",$J)
  3744    D OCL^PSO ORRL(DFN,S DATE,EDATE ,"")
  3745    N ITMP,FI ELDS,INSTR UCT,COMMEN TS,REASON, NVSDT,TYPE ,ILST,J,VP SOCL S ILS T=0
  3746    S VPSOCL= $NA(^TMP($ J,"VPSOCL" )) K @VPSO CL M @VPSO CL=^TMP("P S",$J) K ^ TMP("PS",$ J)
  3747    S ITMP=""  F  S ITMP =$O(@VPSOC L@(ITMP))  Q:'ITMP  D
  3748    . K INSTR UCT,COMMEN TS,REASON
  3749    . K ^TMP( "VPSACT",$ J,"COMMENT S")
  3750    . S COMME NTS="^TMP( ""VPSACT"" ,$J,""COMM ENTS"")"
  3751    . S (INST RUCT,@COMM ENTS)="",F IELDS=@VPS OCL@(ITMP, 0)
  3752    . S TYPE= $S($P($P(F IELDS,U)," ;",2)="O": "OP",1:"UD ")
  3753    . I $D(@V PSOCL@(ITM P,"CLINIC" ,0)) S TYP E="CP"
  3754    . N LOC,L OCEX S (LO C,LOCEX)=" "
  3755    . I TYPE= "CP" S LOC =$G(@VPSOC L@(ITMP,"C LINIC",0))
  3756    . S:LOC L OCEX=$P($G (^SC(+LOC, 0)),U)_":" _+LOC ;IMO  NEW
  3757    . I TYPE= "OP",$P(FI ELDS,";")[ "N" S TYPE ="NV"
  3758    . I TYPE= "OP",$P(FI ELDS,";")[ "P" S TYPE ="OO" ; Pe nding Outp atient Ord er
  3759    . I TYPE= "UD",$P(FI ELDS,";")[ "P" S TYPE ="IO" ; Pe nding Inpa tient Orde r
  3760    . I $O(@V PSOCL@(ITM P,"A",0))> 0 S TYPE=" IV"
  3761    . I $O(@V PSOCL@(ITM P,"B",0))> 0 S TYPE=" IV"
  3762    . I (TYPE ="UD")!(TY PE="CP") D  UDINST(.I NSTRUCT,IT MP,.VPSOCL ,LOCEX)
  3763    . I TYPE= "OP" D OPI NST(.INSTR UCT,ITMP,. VPSOCL,SDA TE,EDATE,D FN)
  3764    . I TYPE= "IV" D IVI NST(.INSTR UCT,ITMP,. VPSOCL)
  3765    . I TYPE= "NV" D NVI NST(.INSTR UCT,ITMP,. VPSOCL)
  3766    . I TYPE= "OO" D POI NST(.INSTR UCT,ITMP,. VPSOCL)
  3767    . I TYPE= "IO" D PII NST(.INSTR UCT,ITMP,. VPSOCL)
  3768    K ^TMP("P S",$J),^TM P("VPSACT" ,$J),^TMP( $J,"VPSOCL "),^TMP("P S",$J),^TM P($J,"RX52 "),^TMP($J ,"DRUG")
  3769    I '$D(@TA RGET@("res ults")) S  @TARGET@(" results")= "0"
  3770    Q $$RESUL T^XSAPXUTL ()
  3771    ;UDINST(Y ,INDEX,VPS OCL,LOCEX)  ; assembl es instruc tions for  a unit dos e order ;s cr 2017012 7 MRAR-111 8
  3772   UDINST(Y,I NDEX,VPSOC L,LOCEX,TA RGET) ; as sembles in structions  for a uni t dose ord er
  3773    N I,X,RST ,UDIEN,UDU ID
  3774    S X=@VPSO CL@(INDEX, 0)
  3775    S UDIEN=+ $P(X,U)
  3776    S UDUID=$ $SETUID^VP SXUTL(VPSS TN,DFN,UDI EN,"55UD")
  3777    S @TARGET @("results ","unitDos e",UDUID," uid")=UDUI D
  3778    S @TARGET @("results ","unitDos e",UDUID," type")="I"
  3779    I LOCEX]" " S @TARGE T@("result s","unitDo se",UDUID, "location" )=LOCEX
  3780    ;D SETZER O^VPSXRX1( X,"unitDos e",UDUID)    ;2017012 7 MRAR-111 8
  3781    D SETZERO ^VPSXRX1(X ,"unitDose ",UDUID,TA RGET)
  3782    ;D SETMUL T^VPSXRX1( .VPSOCL,IN DEX,"unitD ose",UDUID )   ;20170 127 MRAR-1 118
  3783    D SETMULT ^VPSXRX1(. VPSOCL,IND EX,"unitDo se",UDUID, TARGET)
  3784    ; assembl es start d ate and re asons for  a Unit Dos e med
  3785    N IFNLST, UDLST,UDSD T
  3786    I +$P(X,U ,8) S IFNL ST(1)=+$P( X,U,8) D G ET4V11^ORW ORR(.UDLST ,2,0,.IFNL ST) I $D(U DLST(1)) D
  3787    . S UDSDT =$P(UDLST( 1),U,3)
  3788    . I +UDSD T S @TARGE T@("result s","unitDo se",UDUID, "dateTimeO rdered")=U DSDT_U_$$F MTE^XLFDT( UDSDT)
  3789    . I +$P(U DLST(1),U, 4) S @TARG ET@("resul ts","unitD ose",UDUID ,"startTim eOrdered") =$P(UDLST( 1),U,4)_U_ $$FMTE^XLF DT($P(UDLS T(1),U,4))
  3790    . I +$P(U DLST(1),U, 5) S @TARG ET@("resul ts","unitD ose",UDUID ,"stopTime Ordered")= $P(UDLST(1 ),U,5)_U_$ $FMTE^XLFD T($P(UDLST (1),U,5))
  3791    . I UDLST (3)]"" S @ TARGET@("r esults","u nitDose",U DUID,"orde rComments" )=$E(UDLST (3),2,999)
  3792    . ;I +$P( UDLST(1),U ,10) D PRO VIDER^VPSX RX1(+$P(UD LST(1),U,1 0),UDUID," orderingPr ovider","u nitDose")    ;2017012 7 MRAR-111 8
  3793    . I +$P(U DLST(1),U, 10) D PROV IDER^VPSXR X1(+$P(UDL ST(1),U,10 ),UDUID,"o rderingPro vider","un itDose",TA RGET)
  3794    . S DRUG= $O(^PSDRUG ("B",$P(X, U,2),0))
  3795    . ;I +DRU G D PSDRUG ^VPSXRX1(D RUG,UDUID, "unitDose" )   ;20170 127 MRAR-1 118
  3796    . I +DRUG  D PSDRUG^ VPSXRX1(DR UG,UDUID," unitDose", TARGET)
  3797    Q
  3798   OPINST(Y,I NDEX,VPSOC L,SDATE,ED ATE,DFN) ;  assembles  instructi ons for an  outpatien t prescrip tion
  3799    N I,X,RST ,RXIEN,SIG ,SPINST,RO UTE,SCHED, DRUG,RXDAT ,FILE,FLDN AME,RXUID
  3800    S X=@VPSO CL@(INDEX, 0)
  3801    S RXIEN=+ $P(X,U)
  3802    S RXUID=$ $SETUID^VP SXUTL(VPSS TN,DFN,RXI EN,"52")
  3803    ;D SETZER O^VPSXRX1( X,"outpati ent",RXUID )   ;20170 127 MRAR-1 118
  3804    D SETZERO ^VPSXRX1(X ,"outpatie nt",RXUID, TARGET)
  3805    S @TARGET @("results ","outpati ent",RXUID ,"uid")=RX UID
  3806    S @TARGET @("results ","outpati ent",RXUID ,"type")=" O"
  3807    ;D SETMUL T^VPSXRX1( .VPSOCL,IN DEX,"outpa tient",RXU ID)   ;201 70127 MRAR -1118
  3808    D SETMULT ^VPSXRX1(. VPSOCL,IND EX,"outpat ient",RXUI D,TARGET)
  3809    D RX^PSO5 2API(DFN," RX52",RXIE N,"","",SD ATE,EDATE)
  3810    S RXDAT=$ NA(^TMP($J ,"RX52")), FILE=52
  3811    S RXIEN=0  F  S RXIE N=$O(@RXDA T@(DFN,RXI EN)) Q:'RX IEN  D
  3812    . N FLD S  FLD="" F   S FLD=$O( @RXDAT@(DF N,RXIEN,FL D)) Q:FLD= ""  D
  3813    . . I $D( @RXDAT@(DF N,RXIEN,FL D))=1 D  Q
  3814    . . . ; G et Drug sp ecific fie lds
  3815    . . . ;I  FLD=6 D PS DRUG^VPSXR X1($P(@RXD AT@(DFN,RX IEN,FLD),U ),RXUID,"o utpatient" )   ;20170 127 MRAR-1 118
  3816    . . . I F LD=6 D PSD RUG^VPSXRX 1($P(@RXDA T@(DFN,RXI EN,FLD),U) ,RXUID,"ou tpatient", TARGET)
  3817    . . . S F LDNAME=$$G ETFLD^XSAP XUTL(FILE, FLD)
  3818    . . . I F LDNAME]"#"  S FLDNAME =$REPLACE( FLDNAME,"# ",$S($E(FL DNAME,1)=" #":"NUMBER  ",1:" NUM BER "))
  3819    . . . S F LDNAME=$TR (FLDNAME," -_/","   " )
  3820    . . . S F LDNAME=$$C ONVERT^XSA PXUTL(FLDN AME)
  3821    . . . I F LDNAME]"", @RXDAT@(DF N,RXIEN,FL D)]"" S @T ARGET@("re sults","ou tpatient", RXUID,FLDN AME)=$S($P (@RXDAT@(D FN,RXIEN,F LD),U,2)]" ":$P(@RXDA T@(DFN,RXI EN,FLD),U, 2),1:@RXDA T@(DFN,RXI EN,FLD))
  3822    . . . I F LD=9,$P(X, U,5)]"" S  @TARGET@(" results"," outpatient ",RXUID,"r efillsRema ining")=$P (X,U,5)
  3823    . . . ; G et Provide r details
  3824    . . . I F LDNAME["pr ovider"!(F LDNAME["Pr ovider"),@ RXDAT@(DFN ,RXIEN,FLD )]"" D
  3825    . . . . N  PRVSPC D  PROVIDER^V PSXUTL(.PR VSPC,@RXDA T@(DFN,RXI EN,FLD),FL DNAME)
  3826    . . . . I  $D(PRVSPC )>1 M @TAR GET@("resu lts","outp atient",RX UID)=PRVSP C
  3827    . . ; If  we are her e then thi s is a glo bal node a nd not a f ield
  3828    . . I $T( @FLD)]"" D  @FLD
  3829    Q
  3830   IVINST(Y,I NDEX,VPSOC L) ; assem bles instr uctions fo r an IV or der
  3831    N SOLN1,I ,RST,IVDUR ,CNT,IVIEN ,IVUID
  3832    S IVDUR=" "
  3833    S X=@VPSO CL@(INDEX, 0)
  3834    S IVIEN=+ $P(X,U)
  3835    S IVUID=$ $SETUID^VP SXUTL(VPSS TN,DFN,IVI EN,"55IV")
  3836    S @TARGET @("results ","iv",IVU ID,"uid")= IVUID
  3837    S @TARGET @("results ","iv",IVU ID,"type") ="I"
  3838    ;D SETZER O^VPSXRX1( X,"iv",IVU ID)   ;201 70127 MRAR -1118
  3839    D SETZERO ^VPSXRX1(X ,"iv",IVUI D,TARGET)
  3840    ;D SETMUL T^VPSXRX1( .VPSOCL,IN DEX,"iv",I VUID)   ;2 0170127 MR AR-1118
  3841    D SETMULT ^VPSXRX1(. VPSOCL,IND EX,"iv",IV UID,TARGET )
  3842    S:$D(@VPS OCL@(INDEX ,"IVLIM",0 )) IVDUR=$ G(@VPSOCL@ (INDEX,"IV LIM",0))
  3843    I $L(IVDU R) D
  3844    . N DURU, DURV S DUR U="",DURV= 0
  3845    . I IVDUR ["dose" D   Q
  3846    . .S DURV =$P(IVDUR, "doses",2)
  3847    . .S IVDU R="for a t otal of "_ +DURV_$S(+ DURV=1:"do se",+DURV> 1:" doses" ,1:" dose" )
  3848    . .S @RST @(@RST)=@R ST@(@RST)_ " "_IVDUR
  3849    . S DURU= $E(IVDUR,1 ),DURV=$E( IVDUR,2,$L (IVDUR))
  3850    . I (DURU ="D")!(DUR U="d") S I VDUR="for  "_+DURV_$S (+DURV=1:"  day",+DUR V>1:" days ",1:" day" )
  3851    . I (DURU ="H")!(DUR U="h") S I VDUR="for  "_+DURV_$S (+DURV=1:"  hours",+D URV>1:" ho urs",1:" h our")
  3852    . I (DURU ="M")!(DUR U="m") S I VDUR="with  total vol ume "_+DUR V_" ml"
  3853    . I (DURU ="L")!(DUR U="l") S I VDUR="with  total vol ume "_+DUR V_" L"
  3854    . S @TARG ET@("resul ts","iv",I VUID,"dura tion")=IVD UR
  3855    ; assembl es start d ate and re asons for  a IV med
  3856    N IFNLST, IVLST,IVSD T
  3857    I +$P(X,U ,8) S IFNL ST(1)=+$P( X,U,8) D G ET4V11^ORW ORR(.IVLST ,2,0,.IFNL ST) I $D(I VLST(1)) D
  3858    . S IVSDT =$P(IVLST( 1),U,3)
  3859    . I +IVSD T S @TARGE T@("result s","iv",IV UID,"dateT imeOrdered ")=IVSDT_U _$$FMTE^XL FDT(IVSDT)
  3860    . I +$P(I VLST(1),U, 4) S @TARG ET@("resul ts","iv",I VUID,"star tTimeOrder ed")=$P(IV LST(1),U,4 )_U_$$FMTE ^XLFDT($P( IVLST(1),U ,4))
  3861    . I +$P(I VLST(1),U, 5) S @TARG ET@("resul ts","iv",I VUID,"stop TimeOrdere d")=$P(IVL ST(1),U,5) _U_$$FMTE^ XLFDT($P(I VLST(1),U, 5))
  3862    . I IVLST (3)]"" S @ TARGET@("r esults","i v",IVUID," orderComme nts")=$E(I VLST(3),2, 999)
  3863    . ;I +$P( IVLST(1),U ,10) D PRO VIDER^VPSX RX1(+$P(IV LST(1),U,1 0),IVUID," orderingPr ovider","i v")   ;SCR  20170127  MRAR-1118
  3864    . I +$P(I VLST(1),U, 10) D PROV IDER^VPSXR X1(+$P(IVL ST(1),U,10 ),IVUID,"o rderingPro vider","iv ",TARGET)
  3865    . S DRUG= $O(^PSDRUG ("B",$P(X, U,2),0))
  3866    . ;I +DRU G D PSDRUG ^VPSXRX1(D RUG,IVUID, "iv")   ;S CR 2017012 7 MRAR-111 8
  3867    . I +DRUG  D PSDRUG^ VPSXRX1(DR UG,IVUID," iv",TARGET )
  3868    Q
  3869   NVINST(Y,I NDEX,VPSOC L) ; assem bles instr uctions fo r a non-VA  med
  3870    N I,X,RST ,RXUID,NVA ID,NVUID,D RUG
  3871    S X=@VPSO CL@(INDEX, 0)
  3872    S NVAID=+ $P(X,U)
  3873    S NVUID=$ $SETUID^VP SXUTL(VPSS TN,DFN,NVA ID,"55NVA" )
  3874    S @TARGET @("results ","nonVA", NVUID,"uid ")=NVUID
  3875    S @TARGET @("results ","nonVA", NVUID,"typ e")="N"
  3876    ;D SETZER O^VPSXRX1( X,"nonVA", NVUID)   ; SCR 201701 27 MRAR-11 18
  3877    D SETZERO ^VPSXRX1(X ,"nonVA",N VUID,TARGE T)
  3878    ; assembl es start d ate and re asons for  a non-VA m ed
  3879    N IFNLST, NVALST
  3880    I +$P(X,U ,8) S IFNL ST(1)=+$P( X,U,8) D G ET4V11^ORW ORR(.NVALS T,2,0,.IFN LST) I $D( NVALST(1))  D
  3881    . S NVSDT =$P(NVALST (1),U,3)
  3882    . I +NVSD T S @TARGE T@("result s","nonVA" ,NVUID,"da teTimeOrde red")=NVSD T_U_$$FMTE ^XLFDT(NVS DT)
  3883    . I +$P(N VALST(1),U ,4) S @TAR GET@("resu lts","nonV A",NVUID," startTimeO rdered")=$ P(NVALST(1 ),U,4)_U_$ $FMTE^XLFD T($P(NVALS T(1),U,4))
  3884    . I +$P(N VALST(1),U ,5) S @TAR GET@("resu lts","nonV A",NVUID," stopTimeOr dered")=$P (NVALST(1) ,U,5)_U_$$ FMTE^XLFDT ($P(NVALST (1),U,5))
  3885    . I NVALS T(3)]"" S  @TARGET@(" results"," nonVA",NVU ID,"orderC omments")= $E(NVALST( 3),2,999)
  3886    . ;I +$P( NVALST(1), U,10) D PR OVIDER^VPS XRX1(+$P(N VALST(1),U ,10),NVUID ,"ordering Provider", "nonVA")    ;SCR 2017 0127 MRAR- 1118
  3887    . I +$P(N VALST(1),U ,10) D PRO VIDER^VPSX RX1(+$P(NV ALST(1),U, 10),NVUID, "orderingP rovider"," nonVA",TAR GET)
  3888    . ;D SETM ULT^VPSXRX 1(.VPSOCL, INDEX,"non VA",NVUID)    ;SCR 20 170127 MRA R-1118
  3889    . D SETMU LT^VPSXRX1 (.VPSOCL,I NDEX,"nonV A",NVUID,T ARGET)
  3890    . S DRUG= $O(^PSDRUG ("B",$P(X, U,2),0))
  3891    . ;I +DRU G D PSDRUG ^VPSXRX1(D RUG,NVUID, "nonVA")    ;SCR 2017 0127 MRAR- 1118
  3892    . I +DRUG  D PSDRUG^ VPSXRX1(DR UG,NVUID," nonVA",TAR GET)
  3893    Q
  3894   POINST(Y,I NDEX,VPSOC L) ; assem bles instr uctions fo r a Pendin g Outpatie nt Order m ed
  3895    N I,X,RST ,RXUID,POI D,POUID,DR UG
  3896    S X=@VPSO CL@(INDEX, 0)
  3897    S POID=+$ P(X,U)
  3898    S POUID=$ $SETUID^VP SXUTL(VPSS TN,DFN,POI D,"52.41")
  3899    S @TARGET @("results ","pending Outpatient Order",POU ID,"uid")= POUID
  3900    S @TARGET @("results ","pending Outpatient Order",POU ID,"type") ="O"
  3901    ;D SETZER O^VPSXRX1( X,"pending Outpatient Order",POU ID)   ;SCR  20170127  MRAR-1118
  3902    D SETZERO ^VPSXRX1(X ,"pendingO utpatientO rder",POUI D,TARGET)
  3903    ; assembl es start d ate and re asons for  a Pending  Outpatient  med
  3904    N IFNLST, POLST,POSD T
  3905    I +$P(X,U ,8) S IFNL ST(1)=+$P( X,U,8) D G ET4V11^ORW ORR(.POLST ,2,0,.IFNL ST) I $D(P OLST(1)) D
  3906    . S POSDT =$P(POLST( 1),U,3)
  3907    . I +POSD T S @TARGE T@("result s","pendin gOutpatien tOrder",PO UID,"dateT imeOrdered ")=POSDT_U _$$FMTE^XL FDT(POSDT)
  3908    . I +$P(P OLST(1),U, 4) S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"star tTimeOrder ed")=$P(PO LST(1),U,4 )_U_$$FMTE ^XLFDT($P( POLST(1),U ,4))
  3909    . I +$P(P OLST(1),U, 5) S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"stop TimeOrdere d")=$P(POL ST(1),U,5) _U_$$FMTE^ XLFDT($P(P OLST(1),U, 5))
  3910    . I POLST (3)]"" S @ TARGET@("r esults","p endingOutp atientOrde r",POUID," orderComme nts")=$E(P OLST(3),2, 999)
  3911    . ;I +$P( POLST(1),U ,10) D PRO VIDER^VPSX RX1(+$P(PO LST(1),U,1 0),POUID," orderingPr ovider","p endingOutp atientOrde r")   ;SCR  20170127  MRAR-1118
  3912    . I +$P(P OLST(1),U, 10) D PROV IDER^VPSXR X1(+$P(POL ST(1),U,10 ),POUID,"o rderingPro vider","pe ndingOutpa tientOrder ",TARGET)
  3913    . ;D SETM ULT^VPSXRX 1(.VPSOCL, INDEX,"pen dingOutpat ientOrder" ,POUID)    ;SCR 20170 127 MRAR-1 118
  3914    . D SETMU LT^VPSXRX1 (.VPSOCL,I NDEX,"pend ingOutpati entOrder", POUID,TARG ET)
  3915    . S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"numb erOfRefill s")=$$GET1 ^DIQ(52.41 ,POID_",", 13)
  3916    . S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"ente redBy")=$$ GET1^DIQ(5 2.41,POID_ ",",4)
  3917    . S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"days Supply")=$ $GET1^DIQ( 52.41,POID _",",101)
  3918    . S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"logi nDate")=$$ GET1^DIQ(5 2.41,POID_ ",",15)
  3919    . S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"mail Window")=$ $GET1^DIQ( 52.41,POID _",",19)
  3920    . S @TARG ET@("resul ts","pendi ngOutpatie ntOrder",P OUID,"pati ent")=$$GE T1^DIQ(52. 41,POID_", ",1)
  3921    . S DRUG= $O(^PSDRUG ("B",$P(X, U,2),0))
  3922    . ;I +DRU G D PSDRUG ^VPSXRX1(D RUG,POUID, "pendingOu tpatientOr der")   ;S CR 2017012 7 MRAR-111 8
  3923    . I +DRUG  D PSDRUG^ VPSXRX1(DR UG,POUID," pendingOut patientOrd er",TARGET )
  3924    Q
  3925   PIINST(Y,I NDEX,VPSOC L) ; assem bles instr uctions fo r a Pendin g Inpatien t Order me d
  3926    N I,X,RST ,PIID,PIUI D,DRUG
  3927    S X=@VPSO CL@(INDEX, 0)
  3928    S PIID=+$ P(X,U)
  3929    S PIUID=$ $SETUID^VP SXUTL(VPSS TN,DFN,PII D,"53.1")
  3930    S @TARGET @("results ","pending InpatientO rder",PIUI D,"uid")=P IUID
  3931    S @TARGET @("results ","pending InpatientO rder",PIUI D,"type")= "I"
  3932    ;D SETZER O^VPSXRX1( X,"pending InpatientO rder",PIUI D)   ;SCR  20170127 M RAR-1118
  3933    D SETZERO ^VPSXRX1(X ,"pendingI npatientOr der",PIUID ,TARGET)
  3934    ; assembl es start d ate and re asons for  a Pending  Inpatient  med
  3935    N IFNLST, PILST,PISD T
  3936    I +$P(X,U ,8) S IFNL ST(1)=+$P( X,U,8) D G ET4V11^ORW ORR(.PILST ,2,0,.IFNL ST) I $D(P ILST(1)) D
  3937    . S PISDT =$P(PILST( 1),U,3)
  3938    . S @TARG ET@("resul ts","pendi ngInpatien tOrder",PI UID,"dateT imeOrdered ")=PISDT_U _$$FMTE^XL FDT(PISDT)
  3939    . I +$P(P ILST(1),U, 4) S @TARG ET@("resul ts","pendi ngInpatien tOrder",PI UID,"start TimeOrdere d")=$P(PIL ST(1),U,4) _U_$$FMTE^ XLFDT($P(P ILST(1),U, 4))
  3940    . I +$P(P ILST(1),U, 5) S @TARG ET@("resul ts","pendi ngInpatien tOrder",PI UID,"stopT imeOrdered ")=$P(PILS T(1),U,5)_ U_$$FMTE^X LFDT($P(PI LST(1),U,5 ))
  3941    . I PILST (3)]"" S @ TARGET@("r esults","p endingInpa tientOrder ",PIUID,"o rderCommen ts")=$E(PI LST(3),2,9 99)
  3942    . ;I +$P( PILST(1),U ,10) D PRO VIDER^VPSX RX1(+$P(PI LST(1),U,1 0),PIUID," provider", "pendingIn patientOrd er")   ;SC R 20170127  MRAR-1118
  3943    . I +$P(P ILST(1),U, 10) D PROV IDER^VPSXR X1(+$P(PIL ST(1),U,10 ),PIUID,"p rovider"," pendingInp atientOrde r",TARGET)
  3944    . ;D SETM ULT^VPSXRX 1(.VPSOCL, INDEX,"pen dingInpati entOrder", PIUID)   ; SCR 201701 27 MRAR-11 18
  3945    . D SETMU LT^VPSXRX1 (.VPSOCL,I NDEX,"pend ingInpatie ntOrder",P IUID,TARGE T)
  3946    . S DRUG= $O(^PSDRUG ("B",$P(X, U,2),0))
  3947    . ;I +DRU G D PSDRUG ^VPSXRX1(D RUG,PIUID, "pendingIn patientOrd er")   ;SC R 20170127  MRAR-1118
  3948    . I +DRUG  D PSDRUG^ VPSXRX1(DR UG,PIUID," pendingInp atientOrde r",TARGET)
  3949    Q
  3950   RF ; Refil ls
  3951    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  3952    . ;D RXSL OOP^VPSXRX 1(52.1,RXI EN,"refill s","outpat ient")   ; SCR 201701 27 MRAR-11 18
  3953    . D RXSLO OP^VPSXRX1 (DFN,VPSST N,52.1,RXI EN,"refill s","outpat ient",$G(R XDAT),$G(R XUID),TARG ET)
  3954    Q
  3955   IB ; Integ rated Bill ing info
  3956    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  3957    . ;D RXSL OOP^VPSXRX 1(52.1,RXI EN,"integr atedBillin g","outpat ient")   ; SCR 201701 27 MRAR-11 18
  3958    . D RXSLO OP^VPSXRX1 (DFN,VPSST N,52.1,RXI EN,"integr atedBillin g","outpat ient",$G(R XDAT),$G(R XUID),TARG ET)
  3959    Q
  3960   P ; Partia l Refills
  3961    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  3962    . ;D RXSL OOP^VPSXRX 1(52.2,RXI EN,"partia lFills","o utpatient" )   ;SCR 2 0170127 MR AR-1118
  3963    . D RXSLO OP^VPSXRX1 (DFN,VPSST N,52.2,RXI EN,"partia lFills","o utpatient" ,$G(RXDAT) ,$G(RXUID) ,TARGET)
  3964    Q
  3965   OI ; Order able Items
  3966    I $D(@RXD AT@(DFN,RX IEN,FLD)), +$P(@RXDAT @(DFN,RXIE N,FLD,0),U )>0 S @TAR GET@("resu lts","outp atient",RX UID,"order ableItem") =@RXDAT@(D FN,RXIEN,F LD)
  3967    Q
  3968   L ; Label  multiple
  3969    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  3970    . ;D RXSL OOP^VPSXRX 1(52.032,R XIEN,"labe l","outpat ient")   ; SCR 201701 27 MRAR-11 18
  3971    . D RXSLO OP^VPSXRX1 (DFN,VPSST N,52.032,R XIEN,"labe l","outpat ient",$G(R XDAT),$G(R XUID),TARG ET)
  3972    Q
  3973   S ; SAND n ode
  3974    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  3975    . ;D RXSL OOP^VPSXRX 1(52,RXIEN ,"sand","o utpatient" )   ;SCR 2 0170127 MR AR-1118
  3976    . D RXSLO OP^VPSXRX1 (DFN,VPSST N,52,RXIEN ,"sand","o utpatient" ,$G(RXDAT) ,$G(RXUID) ,TARGET)
  3977    Q
  3978   M ; Medica tion SIG
  3979    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  3980    . S X=0 F   S X=$O(@ RXDAT@(DFN ,RXIEN,FLD ,X)) Q:'X   D
  3981    . . I @RX DAT@(DFN,R XIEN,FLD,X ,0)]"" S @ TARGET@("r esults","o utpatient" ,RXUID,"si g",X)=@RXD AT@(DFN,RX IEN,FLD,X, 0)
  3982    Q
  3983   C ; CMOP D ata
  3984    I $D(@RXD AT@(DFN,RX IEN,FLD,0) ),+$P(@RXD AT@(DFN,RX IEN,FLD,0) ,U)>0 D
  3985    . ;D RXSL OOP^VPSXRX 1(52.01,RX IEN,"cmop" ,"outpatie nt")   ;SC R 20170127  MRAR-1118
  3986    . D RXSLO OP^VPSXRX1 (DFN,VPSST N,52.01,RX IEN,"cmop" ,"outpatie nt",$G(RXD AT),$G(RXU ID),TARGET )
  3987    Q
  3988   ]]></Routi ne>
  3989   </Export>
  3990   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000packa ge/routine s/VPSXDG.x ml\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x000000006 44\x00000001750 \x00000001750\x00000 0000021762 \x0000130447274 70\x0000013016\x0000  0\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000ustar  \x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000<?x ml version ="1.0" enc oding="UTF -8"?>
  3991   <Export ge nerator="C ache" vers ion="25" z v="Cache f or Windows  (x86-64)  2015.2.3 ( Build 855) " ts="2017 -02-02 11: 14:16">
  3992   <Routine n ame="VPSXD G" type="I NT" langua gemode="0"  timestamp ="64316,39 431"><![CD ATA[
  3993   VPSXDG ;DA LOI/BNT -  MRAR CLINI CAL RECONC ILIATION S ERVICES ;1 1/20/16 15 :30
  3994    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 19
  3995    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  3996    ;
  3997    ; Externa l Referenc es          DBIA#
  3998    ; ------- ---------- --           -----
  3999    ; DGCV                            4156
  4000    ; DGPFAPI                         3860
  4001    ; DGMSTAP I                       2716
  4002    ; DGNTAPI                         3457
  4003    ; DGRPDB                          4807
  4004    ; DILFD                           2055
  4005    ; DIQ                             2056
  4006    ; IBBAPI                          6391
  4007    ; MPIF001                         2701
  4008    ; ORWPT                           3292
  4009    ; SCAPMC                          1916
  4010    ; SCAPMCA                         2848
  4011    ; VADPT                           10061
  4012    ; VAFCTFU 1                       2990
  4013    ; VASITE                          10112
  4014    ; XSAPXUT L                       6458
  4015    ; XUAF4                           2171
  4016    Q
  4017    ;
  4018   GETPAT(SOU RCE,TARGET ) ; Get Pa tient Demo graphics
  4019    N ERR,PAT ,X,CNT,VAL UE,DFN,ICN ,FNAME,LNA ME,LAST4SS N,FULLSSN, VPSSITE,VP SSTN
  4020    S ERR="", CNT=0
  4021    N X F X=" DFN","ICN"  D INITPAR M^XSAPXUTL (.X)
  4022    S VPSSITE =$$SITE^VA SITE,VPSST N=$P(VPSSI TE,U,3)
  4023    I DFN="", ICN]"" S D FN=$$GETDF N^MPIF001( ICN) I +DF N<1 D  Q $ $RESULT^XS APXUTL()
  4024    . D BLDER ROR^XSAPXU TL(1,"No p atient fou nd for ICN ","GETPAT^ VPSXDG")
  4025    I DFN,ICN ="" S ICN= $$GETICN^M PIF001(DFN )
  4026    I '$D(^DP T(DFN,0))  D  Q $$RES ULT^XSAPXU TL()
  4027    . D BLDER ROR^XSAPXU TL(1,"Pati ent DFN is  undefined ","GETPAT^ VPSXDG")
  4028    S PAT("ic n")=ICN,PA T("dfn")=D FN
  4029    S X=$$GET 1^DIQ(38.1 ,DFN_",",2 ,"I") S:$L (X) PAT("s ensitive") =$S(X:"tru e",1:"fals e")
  4030    ; Load th e Patient  Demographi cs
  4031    ;D DEM,AT C,SVC,PRF, SUPP,ALIAS ,FAC,INPT, PC,INS,REP ORT  ;SCR  20170202 M RAR-1118 r emoving IN S until ne eded
  4032    D DEM,ATC ,SVC,PRF,S UPP,ALIAS, FAC,INPT,P C,REPORT
  4033    ; Kill th e VADPT va riables
  4034    D KVAR^VA DPT,KVA^VA DPT
  4035    ;
  4036    M @TARGET @("results ")=PAT
  4037    Q $$RESUL T^XSAPXUTL ()
  4038    ;
  4039   DEM ; Load  Patient D emographic s
  4040    N KEY,I,J ,K,X,VADM
  4041    N VA  ;SC R 20170127  MRAR-1118
  4042    Q:'DFN
  4043    D DEM^VAD PT
  4044    S KEY="na me^ssn^dat eOfBirth^a ge^gender^ dateOfDeat h^remarks^ race^relig ion^marita lStatus"
  4045    F I=1:1:1 0 S X=VADM (I) I VADM (I)]"" S P AT($P(KEY, U,I))=$S(V ADM(I)[U:$ P(VADM(I), U,2),1:VAD M(I))
  4046    S PAT("lr dfn")=+$G( ^DPT(DFN," LR"))
  4047    S:$D(VA(" BID")) PAT ("bid")=$E (X)_VA("BI D")
  4048    I VADM(11 ) D
  4049    . N I S I =0
  4050    . F  S I= $O(VADM(11 ,I)) Q:I<1   D
  4051    . . S X=+ VADM(11,I) ,PAT("ethn icity",I," name")=$$G ET1^DIQ(10 .2,X_","," .01")
  4052    . . S PAT ("ethnicit y",I,"hl7V alue")=$$G ET1^DIQ(10 .2,X_","," 3")
  4053    . . S PAT ("ethnicit y",I,"cdcV alue")=$$G ET1^DIQ(10 .2,X_","," 4")
  4054    I VADM(12 ) D
  4055    . N I S I =0
  4056    . F  S I= $O(VADM(12 ,I)) Q:I<1   D
  4057    . . S X=+ VADM(12,I) ,PAT("race ",I,"name" )=$$GET1^D IQ(10,X_", ",".01")
  4058    . . S PAT ("race",I, "hl7Value" )=$$GET1^D IQ(10,X_", ","3")
  4059    . . S PAT ("race",I, "cdcValue" )=$$GET1^D IQ(10,X_", ","4")
  4060    Q
  4061    ;
  4062   SVC ;-serv ice data
  4063    N VAEL,VA SV,VAERR,X ,Y,I,AO,IR ,PGF,HNC,M ST,CV
  4064    D SVC^VAD PT
  4065    D ELIG^VA DPT
  4066    S PAT("ve teran")=$S (VAEL(4):" true",1:"f alse")
  4067    S PAT("sc ")=$S(VAEL (3):"true" ,1:"false" ) S:VAEL(3 ) PAT("scP ercent")=+ $P(VAEL(3) ,U,2)
  4068    S:VAEL(2)  PAT("serv icePeriod" )=$P(VAEL( 2),U,2)
  4069    I VAEL(1)  D
  4070    . S PAT(" eligibilit y",+VAEL(1 ))=$P(VAEL (1),U,2)_" ^1",I=0
  4071    . F  S I= $O(VAEL(1, I)) Q:I<1   S PAT("el igibility" ,I)=$P(VAE L(1,I),U,2 )
  4072    S:$L(VAEL (8)) PAT(" eligibilit yStatus")= $P(VAEL(8) ,U,2)
  4073    S:$L(VAEL (9)) PAT(" meansTest" )=$P(VAEL( 9),U,2)
  4074    ;
  4075    ; exposur es
  4076    S AO=VASV (2),IR=VAS V(3)
  4077    S PGF=VAS V(11)!VASV (12)!VASV( 13) ;OIF/O EF
  4078    S X=$$GET CUR^DGNTAP I(DFN,"HNC "),X=+($G( HNC("STAT" )))
  4079    S HNC=$S( X=4:1,X=5: 1,X=1:0,X= 6:0,1:"")
  4080    S X=$P($$ GETSTAT^DG MSTAPI(DFN ),U,2),MST =$S(X="Y": 1,X="N":0, 1:"")
  4081    S X=$$CVE DT^DGCV(DF N),CV=$S(+ X<0:"",+X= 0:0,$P(X,U ,3):1,1:0)
  4082    I VASV(2)  S PAT("ex posures"," agentOrang e")="true"
  4083    I VASV(3)  S PAT("ex posures"," radiation" )="true"
  4084    I VASV(11 ) S PAT("e xposures", "oifConfli cts")="tru e"
  4085    I VASV(12 ) S PAT("e xposures", "oefConfli cts")="tru e"
  4086    I VASV(13 ) S PAT("e xposures", "unknownOe fOifConfli cts")="tru e"
  4087    I HNC S P AT("exposu res","head NeckCancer ")="true"
  4088    I MST S P AT("exposu res","mili tarySexual Trauma")=" true"
  4089    I CV S PA T("exposur es","")="t rue"
  4090    ;
  4091    ; rated d isabilitie s [DGRPDB]
  4092    N VPSDIS, DIS,NM,DX
  4093    D RDIS^DG RPDB(DFN,. VPSDIS)
  4094    S I=0 F   S I=$O(VPS DIS(I)) Q: I<1  D
  4095    . S DIS=V PSDIS(I)
  4096    . S NM=$$ GET1^DIQ(3 1,+DIS_"," ,.01),DX=$ $GET1^DIQ( 31,+DIS_", ",2)
  4097    . S PAT(" disability ",+DX,"nam e")=NM
  4098    . S PAT(" disability ",+DX,"sc" )=$S($P(DI S,U,3):"tr ue",1:"fal se")
  4099    . S PAT(" disability ",+DX,"scP ercent")=$ P(DIS,U,2)
  4100    Q
  4101   PRF ;-pati ent record  flags
  4102    N VPSPF,I ,NAME,TEXT
  4103    N VPSN    ;SCR 20170 127 MRAR-1 118
  4104    Q:'$$GETA CT^DGPFAPI (DFN,"VPSP F")
  4105    ;
  4106    S VPSN=0  F  S VPSN= $O(VPSPF(V PSN)) Q:VP SN<1  D
  4107    . S X=$G( VPSPF(VPSN ,"FLAG"))
  4108    . S PAT(" flags",VPS N,"id")=DF N_"~"_$P(X ,U)
  4109    . S PAT(" flags",VPS N,"name")= $P(X,U,2)
  4110    . S PAT(" flags",VPS N,"approve dBy")=$G(V PSPF(VPSN, "APPRVBY") )
  4111    . S PAT(" flags",VPS N,"assigne d")=$P($G( VPSPF(VPSN ,"ASSIGNDT ")),U)
  4112    . S PAT(" flags",VPS N,"reviewD ue")=$P($G (VPSPF(VPS N,"REVIEWD T")),U)
  4113    . S PAT(" flags",VPS N,"type")= $P($G(VPSP F(VPSN,"FL AGTYPE")), U,2)
  4114    . S PAT(" flags",VPS N,"categor y")=$P($G( VPSPF(VPSN ,"CATEGORY ")),U,2)
  4115    . S X=$G( VPSPF(VPSN ,"ORIGSITE "))
  4116    . S:X PAT ("flags",V PSN,"origS ite")=$$ST A^XUAF4(+X )_U_$P(X,U ,2)
  4117    . S X=$G( VPSPF(VPSN ,"OWNER"))
  4118    . S:X PAT ("flags",V PSN,"ownSi te")=$$STA ^XUAF4(+X) _U_$P(X,U, 2)
  4119    . S X=$G( VPSPF(VPSN ,"TIULINK" )) S:X PAT ("flags",V PSN,"docum entId")=$P (X,U),PAT( "flags",VP SN,"docume ntName")=$ P(X,U,2)
  4120    . K TEXT  M TEXT=VPS PF(VPSN,"N ARR") S PA T("flags", VPSN,"cont ent")=$$ST RING^VPSXU TL(.TEXT)
  4121    Q
  4122   ATC ;-addr ess & tele com
  4123    N VAPA,I, X
  4124    S VAPA("P ")="" D AD D^VADPT ;p ermanent a ddress
  4125    S X="" F  I=1:1:4 S  X=X_VAPA(I )_U
  4126    S X=X_$P( VAPA(5),U, 2)_U_$P(VA PA(11),U,2 )
  4127    N VPSADD  D ADDRESS^ VPSXUTL(.V PSADD,X)
  4128    I $D(VPSA DD)>1 M PA T("address ")=VPSADD
  4129    S X=$$FOR MAT^VPSXUT L(VAPA(8)) _U_$$FORMA T^VPSXUTL( $$GET1^DIQ (2,DFN_"," ,.134))_U_ $$FORMAT^V PSXUTL($$G ET1^DIQ(2, DFN_",",.1 32))
  4130    N VPSPHN  D TELECOM^ VPSXUTL(.V PSPHN,X)
  4131    I $D(VPSP HN)>1 M PA T("telecom ")=VPSPHN
  4132    Q
  4133   SUPP ;-sup port conta cts
  4134    N VAOA,A, I,X,TYPE
  4135    F A="",1  K VAOA D
  4136    . S:A VAO A("A")=A D  OAD^VADPT  Q:'$L($G( VAOA(9)))
  4137    . S TYPE= $S(A=1:"EC ON",1:"NOK ")
  4138    . S PAT(" support",T YPE)=VAOA( 9)_U_VAOA( 10) ;name^ relationsh ip
  4139    . S X=""  F I=1:1:4  S X=X_VAOA (I)_U
  4140    . S X=X_$ P(VAOA(5), U,2)_U_$P( VAOA(11),U ,2)
  4141    . N VPSAD D D ADDRES S^VPSXUTL( .VPSADD,X)
  4142    . I $D(VP SADD)>1 M  PAT("suppo rt",TYPE," address")= VPSADD
  4143    . S I=$S( A=1:.33011 ,1:.21011) ,X=$$FORMA T^VPSXUTL( VAOA(8))_U _U_$$FORMA T^VPSXUTL( $$GET1^DIQ (2,DFN_"," ,I))
  4144    . N VPSPH N D TELECO M^VPSXUTL( .VPSPHN,X)
  4145    . I $D(VP SPHN)>1 M  PAT("suppo rt",TYPE," telecom")= VPSPHN
  4146    Q
  4147   ALIAS ;-ot her names  used
  4148    N I,X
  4149    S I=0 F   S I=$O(^DP T(DFN,.01, I)) Q:I<1   S X=$P($G (^(I,0)),U ) D
  4150    . S PAT(" alias",I)= X_U_$P(X," ,")_U_$P(X ,",",2,99)
  4151    Q
  4152   FAC ;-trea ting facil ities [see  FACLIST^O RWCIRN]
  4153    N IFN S D FN=+$G(DFN ) Q:DFN<1
  4154    N VPSY,HO ME,LAST,I, X,IEN
  4155    I $L($T(T FL^VAFCTFU 1)) D TFL^ VAFCTFU1(. VPSY,DFN)
  4156    S HOME=+$ P($G(^DPT( DFN,"MPI") ),U,3) ;ho me facilit y
  4157    I $P($G(V PSY(1)),U) <0 D  Q  ; not setup
  4158    . S X=$O( ^AUPNVSIT( "AA",DFN,0 )),LAST=$S (X:9999999 -$P(X,".") ,1:"")
  4159    . S X=$$S ITE^VASITE
  4160    . S PAT(" facility", +X)=$P(X,U ,3)_U_$P(X ,U,2)_U_LA ST_U_$$GET 1^DIQ(4,+X _",",60)
  4161    S I=0 F   S I=$O(VPS Y(I)) Q:I< 1  D
  4162    . S X=VPS Y(I) Q:$P( X,U)=""  ; unknown
  4163    . S IEN=+ $$IEN^XUAF 4($P(X,U))
  4164    . I +X=77 6!(+X=200)  S $P(X,U, 2)="DEPT.  OF DEFENSE "
  4165    . S PAT(" facility", IEN)=$P(X, U,1,2)_U_$ P($P(X,U,3 ),".")
  4166    . ; = stn # ^ name ^  last date  ^ VistA d omain
  4167    . S $P(PA T("facilit y",IEN),U, 4)=$$GET1^ DIQ(4,IEN_ ",",60)
  4168    . I IEN=H OME S $P(P AT("facili ty",IEN),U ,5)=1
  4169    Q
  4170   INPT ;-cur rent inpt  status
  4171    N ADM,X,V AIN,VAERR, HLOC,SVC
  4172    S ADM=+$G (^DPT(DFN, .105)) I A DM D
  4173    . D INP^V ADPT
  4174    . S PAT(" admitted") =ADM_U_+VA IN(7)
  4175    . I VAIN( 4)]"" S PA T("ward")= VAIN(4)
  4176    . I VAIN( 5)]"" S PA T("roomBed ")=VAIN(5)
  4177    . S HLOC= +$G(^DIC(4 2,+VAIN(4) ,44)),SVC= $P($G(^(0) ),U,3)
  4178    . I HLOC] "" S PAT(" location") =HLOC_U_$P (VAIN(4),U ,2)
  4179    . S:$L(SV C) PAT("lo cSvc")=SVC _U_$$EXTER NAL^DILFD( 42,.03,,SV C)
  4180    . I VAIN( 3)]"" S PA T("special ty")=VAIN( 3)
  4181    . D PROVI DER^VPSXUT L(.PAT,VAI N(11),"att ending")
  4182    . S X=$$F AC^VPSXUTL (HLOC),PAT ("site")=X
  4183    S PAT("in patient")= $S(ADM:"tr ue",1:"fal se")
  4184    Q
  4185   PC ;-prima ry care
  4186    N TEAM,VP SPC,I,X,FA C,ST
  4187    S TEAM=$$ INSTPCTM^S CAPMC(DFN)  Q:'TEAM   ;teamIEN^n ame^instIE N^name
  4188    S PAT("pc Team")=$P( TEAM,U,1,2 )
  4189    D GETALL^ SCAPMCA(DF N,,.VPSPC)
  4190    S I=+$O(@ VPSPC@(DFN ,"TM",+TEA M,0)),X=$G (^(I))
  4191    S:$P(X,U, 4) PAT("pc Assigned") =$P(X,U,4)
  4192    S X=$G(@V PSPC@(DFN, "PCPR",1))  I X D
  4193    . D PROVI DER^VPSXUT L(.PAT,+X, "pcProvide r")
  4194    . S FAC=$ P(TEAM,U,3 ,4) S:FAC< 1 FAC=$$SI TE^VASITE
  4195    . S X=$$P ADD^XUAF4( +FAC) ;str eet^city^s t^zip
  4196    . S ST=$$ GET1^DIQ(4 ,+FAC_",", .02) S:ST= "" ST=$P(X ,U,3) ;get  state nam e
  4197    . N VPSAD D D ADDRES S^VPSXUTL( .VPSADD,$P (X,U)_"^^^ "_$P(X,U,2 )_U_ST_U_$ P(X,U,4))
  4198    . I $D(VP SADD)>1 M  PAT("pcPro vider","ad dress")=VP SADD
  4199    K @VPSPC
  4200    Q
  4201    ;
  4202   REPORT ; - - Return t he formatt ed report  text
  4203    N REF
  4204    D PTINQ^O RWPT(.REF, DFN) ; Ret urn format ted pt inq uiry repor t
  4205    M PAT("re portDetail ")=@REF
  4206    Q
  4207    ;
  4208   ]]></Routi ne>
  4209   </Export>
  4210   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000packag e/routines /VPSXPSS.x ml\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000000064 4\x00000001750\x0000 0001750\x000000 000004721\x0000 1304472747 0\x0000013165\x0000  0\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000ustar  \x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000<?xm l version= "1.0" enco ding="UTF- 8"?>
  4211   <Export ge nerator="C ache" vers ion="25" z v="Cache f or Windows  (x86-64)  2015.2.3 ( Build 855) " ts="2017 -01-30 13: 55:48">
  4212   <Routine n ame="VPSXP SS" type=" INT" langu agemode="0 " timestam p="64313,4 0902.91509 "><![CDATA [
  4213   VPSXPSS ;D ALOI/BNT -  MRAR CLIN ICAL RECON CILIATION  SERVICES ; 11/20/16 1 5:30
  4214    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 14
  4215    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  4216    ;
  4217    ; Externa l Referenc es           DBIA#
  4218    ; ------- ---------- --           -----
  4219    ; PSN5067                         4829
  4220    ; PSN50P6 8                       4545
  4221    ; VASITE                          10112
  4222    ; XSAPXUT L                       6458
  4223    ; XTID                            4631
  4224    Q
  4225    ;
  4226   GETDRGS(SO URCE,TARGE T) ; Get P atient Med s
  4227    N DFN,NAM E,LIST,CNT ,I,J,K,VPS SITE,VPSST N
  4228    S CNT=0
  4229    N X F X=" NAME" D IN ITPARM^XSA PXUTL(.X)
  4230    S VPSSITE =$$SITE^VA SITE,VPSST N=$P(VPSSI TE,U,3)
  4231    ;
  4232    I NAME]""  D TRDNAME (NAME,.LIS T)
  4233    I $D(LIST ) S I=0 F   S I=$O(LI ST(I)) Q:' I  D
  4234    . Q:$E(LI ST(I),1,$L (NAME))'=N AME
  4235    . I '$$SC R(50.67,I)  D
  4236    . . ;D SE TRES(LIST( I)_U_50.67 _U_I)  ; S CR 2017013 0 MRAR-111 8
  4237    . . D SET RES(TARGET ,LIST(I)_U _50.67_U_I )
  4238    . . ; Now  do  D A N P S O   U   T file sea rch
  4239    . . N VPR LST D  DNS    D(LIST(I), .VPRLST)
  4240    . . I $D( VPRLST) S  J=0 F  S J =$O(VPRLST (J)) Q:'J   D
  4241    . . . Q:$ E(VPRLST(J ),1,LIST(I ))'=LIST(I )
  4242    . . . ;I  '$$SCR(50. 67,J) D SE TRES(VPRLS T(J)_U_50. 67_U_J)  ;  SCR 20170 130 MRAR-1 118
  4243    . . . I ' $$SCR(50.6 7,J) D SET RES(TARGET ,VPRLST(J) _U_50.67_U _J)
  4244    I '$D(@TA RGET@("res ults")) S  @TARGET@(" results")= "0"
  4245    Q $$RESUL T^XSAPXUTL ()
  4246    ;
  4247   TRDNAME(NA ME,LIST) ;
  4248    N I,J,K,P ROD
  4249    K ^TMP($J ,"VPSXPSS" )
  4250    D ALL^PSN 5067(,NAME ,,"VPSXPSS ")
  4251    I $D(^TMP ($J,"VPSXP SS","B"))  D
  4252    . N I S I ="" F  S I =$O(^TMP($ J,"VPSXPSS ","B",I))  Q:I=""  D
  4253    . . N J S  J=$O(^TMP ($J,"VPSXP SS","B",I, 0)) Q:'J   D
  4254    . . . S L IST(J)=$G( ^TMP($J,"V PSXPSS",J, 4))
  4255    K ^TMP($J ,"VPSXPSS" )
  4256    Q
  4257    ;
  4258   DNS    D(NAME,LIS T) ;
  4259    N I,J,K
  4260    K ^TMP($J ,"VPSVPROD ")
  4261    D DATA^PS N50P68(,NA ME,"VPSVPR OD")
  4262    I $D(^TMP ($J,"VPSVP ROD","B"))  D
  4263    . N I S I ="" F  S I =$O(^TMP($ J,"VPSXPSS ","B",I))  Q:I=""  D
  4264    . . N J S  J=$O(^TMP ($J,"VPSXP SS","B",I, 0)) Q:'J   D
  4265    . . . S L IST(J)=$G( ^TMP($J,"V PSXPSS",J, 5))
  4266    K ^TMP($J ,"VPSVPROD ")
  4267    Q
  4268    ;
  4269   SCR(FILE,I EN) ; Scre en a term  if not act ive
  4270    N VPSCACH E K VPSCAC HE
  4271    Q:'$L($T( SCREEN^XTI D)) 0
  4272    Q $$SCREE N^XTID(FIL E,.01,IEN_ ",","",.VP SCACHE)
  4273    ;
  4274   SETRES(VAL UE) ; Sets  the resul ts value w ith the ne xt counter
  4275    S CNT=CNT +1,@TARGET @("results ","meds",C NT)=VALUE
  4276    Q
  4277   ]]></Routi ne>
  4278   </Export>
  4279   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000pac kage/routi nes/VPSXGM RA.xml\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000000 0644\x000000017 50\x00000001750 \x0000000000231 25\x00001304472 7470\x000001324 5\x0000 0\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000ustar   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000< ?xml versi on="1.0" e ncoding="U TF-8"?>
  4280   <Export ge nerator="C ache" vers ion="25" z v="Cache f or Windows  (x86-64)  2015.2.3 ( Build 855) " ts="2017 -01-30 13: 55:22">
  4281   <Routine n ame="VPSXG MRA" type= "INT" lang uagemode=" 0" timesta mp="64313, 40825.5197 03"><![CDA TA[
  4282   VPSXGMRA ; DALOI/BNT  - MRAR CLI NICAL RECO NCILIATION  SERVICES  ;11/20/16  15:30
  4283    ;;1.0;VA  POINT OF S ERVICE (KI OSKS);**19 **;Oct 21,  2011;Buil d 14
  4284    ;;Per VHA  Directive  2004-038,  this rout ine should  not be mo dified.
  4285    ;
  4286    ; Externa l Referenc es           DBIA#
  4287    ; ------- ---------- --           -----
  4288    ; GMRADPT                         10099
  4289    ; GMRAOR2                         2422
  4290    ; ORQQAL                          1641
  4291    ; PSN50P4 1                       4531
  4292    ; PSN50P6 5                       4543
  4293    ; PSNAPIS                         2574
  4294    ; VASITE                          10112
  4295    ; XSAPXUT L                       6458
  4296    ;
  4297    Q
  4298    ;
  4299   GETALRG(SO URCE,TARGE T) ; MRAR  Patient AP Is
  4300    N DFN,SDA TE,EDATE
  4301    N X F X=" DFN","SDAT E","EDATE"  D INITPAR M^XSAPXUTL (.X)
  4302    I 'DFN D   Q $$RESUL T^XSAPXUTL ()
  4303    . D BLDER ROR^XSAPXU TL(1,"Pati ent DFN is  undefined ","GETALRG ^VPSXGMRA" )
  4304    ; Default  to last 1 30 days
  4305    I SDATE'] "" S SDATE =$$FMADD^X LFDT(DT,-5 000)
  4306    I EDATE'] "" S EDATE =DT
  4307    ; Get All ergy Data
  4308    N GMRAL,I D D EN1^GM RADPT
  4309    I 'GMRAL  S @TARGET@ ("results" ,"assessme nt")=$S(GM RAL=0:"nka ",1:"not d one")
  4310    S @TARGET @("results ","patient Ien")=DFN
  4311    S ID=0 F   S ID=+$O( GMRAL(ID))  Q:ID<1  D  GMRA1(ID)
  4312    Q $$RESUL T^XSAPXUTL ()
  4313    ;
  4314   GMRA1(ID)  ; -- aller gy/reactio n GMRAL(ID )
  4315    N GMRA,VP SY,REAC,X, Y,I,VPSUID
  4316    S GMRA=$G (GMRAL(ID) ) D EN1^GM RAOR2(ID," VPSY")
  4317    S VPSUID= $$SETUID^V PSXUTL($P( $$SITE^VAS ITE,U,3),D FN,ID,"120 .8")
  4318    S X=$P(VP SY,U,10) I  $L(X) S X =$$DATE^VP SXUTL(X) S  REAC("ori ginationDa teTime")=X _U_$P(VPSY ,U,10)
  4319    S X=$$FAC ^VPSXUTL D  FACILITY^ VPSXUTL(X, "REAC")
  4320    S REAC("k ind")="All ergy / Adv erse React ion"
  4321    S REAC("l ocalId")=I D,REAC("ui d")=VPSUID
  4322    S (REAC(" summary"), REAC("caus ativeAgent Name"))=$P (VPSY,U) I  $P(GMRA,U ,9) D
  4323    . S X=$P( GMRA,U,9), REAC("refe rence")=X
  4324    . S Y=+$P (X,"(",2)  I 'Y,X["PS DRUG" S Y= 50
  4325    . S I=$$V UID^VPSXUT L(+X,Y) I  I]"" S REA C("causati veAgentVUI D")=$$SETV URN^VPSXUT L("vuid",I )
  4326    S REAC("h istorical" )=$S($E($P (VPSY,U,5) )="H":"tru e",1:"fals e")
  4327    S REAC("o bserved")= $S($E($P(V PSY,U,5))= "O":"true" ,1:"false" )
  4328    S REAC("a llergyType ")=$P(VPSY ,U,7)
  4329    S REAC("a llergyType Mechanism" )=$P(VPSY, U,6)
  4330    I $P(VPSY ,U,4)="VER IFIED",$P( VPSY,U,9)  S REAC("ve rifiedDate Time")=$P( VPSY,U,9)_ U_$$FMTE^X LFDT($P(VP SY,U,9))
  4331    ; reactio ns
  4332    N I,Y S I =0 F  S I= $O(GMRAL(I D,"S",I))  Q:I<1  D
  4333    . S X=$G( GMRAL(ID," S",I))
  4334    . S REAC( "reactions ",I,"name" )=$P(X,";" )
  4335    . S Y=$$V UID^VPSXUT L(+$P(X,"; ",2),120.8 3)
  4336    . S REAC( "reactions ",I,"vuid" )=$$SETVUR N^VPSXUTL( "vuid",Y)
  4337    ; comment s
  4338    N I S I=0  F  S I=$O (VPSY("C", I)) Q:I<1   D
  4339    . S X=$G( VPSY("C",I )) Q:X=""
  4340    . S REAC( "comments" ,I,"dateTi meEntered" )=$P(X,U)  ;ien^name^ date^type^ text
  4341    . S REAC( "comments" ,I,"entere dBy")=$P(X ,U,3)
  4342    . S REAC( "comments" ,I,"commen tType")=$E ($P(X,U,2) )
  4343    . N J S J =0 F  S J= $O(VPSY("C ",I,J)) Q: J<1  D
  4344    . . S REA C("comment s",I,"text ",J)=VPSY( "C",I,J,0)
  4345    ; observa tion date/ times
  4346    N I S I=0  F  S I=$O (VPSY("O", I)) Q:I<1   D
  4347    . S X=$G( VPSY("O",I )) Q:X=""
  4348    . S REAC( "observedD ateTimes", I,"dateTim e")=$$FMTE ^XLFDT($P( X,U))
  4349    . I $P(X, U,2)]"" S  REAC("obse rvedDateTi mes",I,"se verity")=$ P(X,U,2)
  4350    ; drug in fo
  4351    I $D(VPSY ("I")) D
  4352    . N ROOT  S ROOT=$$B ^PSN50P41
  4353    . N I,Y S  I=0 F  S  I=$O(VPSY( "I",I)) Q: I<1  S X=$ G(VPSY("I" ,I)) D
  4354    . . N IEN  S IEN=$O( @ROOT@(X,0 ))
  4355    . . S REA C("drugIng redient",I ,"name")=X
  4356    . . S Y=$ $VUID^VPSX UTL(IEN,50 .416)
  4357    . . S REA C("drugIng redient",I ,"vuid")=$ $SETVURN^V PSXUTL("vu id",Y)
  4358    I $D(VPSY ("V")) D
  4359    . N I,Y S  I=0 F  S  I=$O(VPSY( "V",I)) Q: I<1  S X=$ G(VPSY("V" ,I)) D
  4360    . . D C^P SN50P65("" ,$P(X,U,2) ,"PSN")
  4361    . . N IEN  S IEN=+$O (^TMP($J," PSN","C",$ P(X,U),0))
  4362    . . S REA C("drugCla ss",I,"cla ssifiction ")=$P(X,U, 2)
  4363    . . S Y=$ $VUID^VPSX UTL(IEN,50 .605)
  4364    . . S REA C("drugCla ss",I,"vui d")=$$SETV URN^VPSXUT L("vuid",Y )
  4365    ;
  4366    I GMRA=""  S REAC("r emoved")=1  ;entered  in error
  4367    N RES D D ETAIL^ORQQ AL(.RES,DF N,ID,ID) ;  RETURN DE TAILED ALL ERGY INFO  FOR SPECIF IED ALLERG IC REACTIO N:
  4368    M @TARGET @("results ","allergi es",VPSUID ,"reportDe tail")=RES
  4369    I GMRA=""  S REAC("r emoved")=" true" ;ent ered in er ror
  4370    M @TARGET @("results ","allergi es",VPSUID )=REAC
  4371    Q
  4372    ;
  4373   GETCAUS(SO URCE,TARGE T) ; Get a  list of C ausative A gents for  an allergy
  4374    N CNT,NAM E,FILES,FI LE
  4375    S CNT=0
  4376    N X F X=" NAME","FIL ES" D INIT PARM^XSAPX UTL(.X)
  4377    ;
  4378    I FILES=" " S FILES= "120.82;50 .6;50.67;5 0.605"
  4379    ; If file s have bee n specifie d do indiv idual sear ches
  4380    I FILES]" " D  Q $$R ESULT^XSAP XUTL()
  4381    . ; This  is a hack  to transla te File nu mbers to A lpha chara cters to p ass XINDEX
  4382    . S FILES =$TR(FILES ,"12345678 90.","ABCD EFGHIJP")
  4383    . I FILES '[";",$L($ T(@FILES))  D @FILES^ VPSXGMRA(N AME) Q
  4384    . S FILE= "" F I=1:1  S FILE=$P (FILES,";" ,I) Q:FILE =""  I $L( $T(@FILE))  D @FILE^V PSXGMRA(NA ME)
  4385    . I '$D(@ TARGET@("r esults"))  S @TARGET@ ("results" )="0"
  4386    ;
  4387    F NAME="A ","B","C", "D","E","F ","G","H", "I","J","K ","L","M", "N","O","P ","Q","R", "S","T","U ","V","W", "X","Y","Z " D
  4388    . ;D ABJP HB(NAME),E JPF(NAME), EJPFG(NAME ),EJPFJE(N AME)  ;SCR  20170130  MRAR-1118
  4389    . D ABJPH B(TARGET,N AME),EJPF( TARGET,NAM E),EJPFG(T ARGET,NAME ),EJPFJE(N AME)
  4390    I '$D(@TA RGET@("res ults")) S  @TARGET@(" results")= "0"
  4391    Q $$RESUL T^XSAPXUTL ()
  4392    ;
  4393   GETSYMP(SO URCE,TARGE T) ; Get t he Signs a nd Symptom s for addi ng allergi es
  4394    N RES,NAM E,X
  4395    N SYN   ; SCR 201701 27 MRAR-11 18
  4396    N I,IEN,X ,NAME,SUB, FROM S I=0 ,FROM=""
  4397    K ^TMP($J ,"SIGNS")
  4398    M ^TMP($J ,"SIGNS"," B")=^GMRD( 120.83,"B" )
  4399    S SYN=""  F  S SYN=$ O(^GMRD(12 0.83,"D",S YN)) Q:SYN =""  S SUB =0 F  S SU B=$O(^GMRD (120.83,"D ",SYN,SUB) ) Q:'+SUB   D  ;233
  4400    .S NAME=$ P(^GMRD(12 0.83,SUB,0 ),U) S ^TM P($J,"SIGN S","B",(SY N_" "_"<"_ NAME_">"_U _NAME),SUB )="" ;233
  4401    F  S FROM =$O(^TMP($ J,"SIGNS", "B",FROM))  Q:FROM=""   D
  4402    . I FROM= "OTHER REA CTION" Q   ;Don't sen d this ent ry
  4403    . S IEN=0  F  S IEN= $O(^TMP($J ,"SIGNS"," B",FROM,IE N)) Q:'IEN   D
  4404    . . I $L( $T(SCREEN^ XTID)) I $ $SCREEN^XT ID(120.83, .01,IEN_", ") Q  ;Is  term activ e
  4405    . . S I=I +1
  4406    . . S @TA RGET@("res ults","sig nsSymptoms ",I)=IEN_U _FROM
  4407    Q $$RESUL T^XSAPXUTL ()
  4408    ;
  4409   FILENAME ;  Display t ext of fil enames for  search tr eeview
  4410    ;;120.82
  4411    ;;50.6
  4412    ;;50.605
  4413    ;;50.67
  4414    ;;
  4415   ABJPHB(X)  ; Search r ecords fro m GMR ALLE RGIES file  for X inp ut
  4416    N VPSIEN, XB,XD
  4417    I X="OTHE R ALLERGY/ ADVERSE RE ACTION" Q   ;Don't se nd this en try
  4418    ; Loop th rough alle rgy names
  4419    S XB=X F   S XB=$O(^ GMRD(120.8 2,"B",XB))  Q:XB=""   Q:$E(XB,1, $L(X))'=X   D
  4420    . I XB="O THER ALLER GY/ADVERSE  REACTION"  Q  ;don't  send this  entry
  4421    . S VPSIE N=$O(^GMRD (120.82,"B ",XB,0))
  4422    . ;I '$$S CR(120.82, VPSIEN) D  SETRES($P( $G(^GMRD(1 20.82,+VPS IEN,0)),U, 1)_U_U_VPS IEN_";GMRD (120.82,")  ; Set jus t the name    ;SCR 20 170131 MRA R-1118
  4423     . I '$$S CR(120.82, VPSIEN) D  SETRES(TAR GET,$P($G( ^GMRD(120. 82,+VPSIEN ,0)),U,1)_ U_U_VPSIEN _";GMRD(12 0.82,") ;  Set just t he name
  4424    ; Exact m atch on al lergy syno nym
  4425    S XD=X F   S XD=$O(^ GMRD(120.8 2,"D",XD))  Q:XD=""   Q:$E(XD,1, $L(X))'=X   D
  4426    . I XD="O THER ALLER GY/ADVERSE  REACTION"  Q  ;don't  send this  entry
  4427    . S VPSIE N=$O(^GMRD (120.82,"D ",XD,0))
  4428    . ;I '$$S CR(120.82, VPSIEN) D  SETRES($P( $G(^GMRD(1 20.82,+VPS IEN,0)),U, 1)_U_XD_U_ VPSIEN_";G MRD(120.82 ,") ; Set  with synon ym ;SCR 20 170131 MRA R-1118
  4429    . I '$$SC R(120.82,V PSIEN) D S ETRES(TARG ET,$P($G(^ GMRD(120.8 2,+VPSIEN, 0)),U,1)_U _XD_U_VPSI EN_";GMRD( 120.82,")  ; Set with  synonym
  4430    Q
  4431    ;
  4432    ;EJPF(X)  ; Search r ecords fro m VA GENER IC file fo r X input   ;SCR 2017 0120 MRAR- 1118
  4433   EJPF(TARGE T,X) ; Sea rch record s from VA  GENERIC fi le for X i nput
  4434    N VPSIEN, LIST,VAL,N AME
  4435    S VAL=$$T GTOG2^PSNA PIS(X,.LIS T)
  4436    I $D(LIST ) S VPSIEN =0 F  S VP SIEN=$O(LI ST(VPSIEN) ) Q:'VPSIE N  D
  4437    . S NAME= $P(LIST(VP SIEN),U,2)
  4438    . Q:$E($P (LIST(VPSI EN),U,2),1 ,$L(X))'=X
  4439    . ;I '$$S CR(50.6,VP SIEN) D SE TRES(NAME_ U_U_VPSIEN _";PSNDF(5 0.6,")  ;S CR 2017013 0 MRAR-111 8
  4440    . I '$$SC R(50.6,VPS IEN) D SET RES(TARGET ,NAME_U_U_ VPSIEN_";P SNDF(50.6, ")
  4441    Q
  4442    ;
  4443    ;EJPFG(X)  ; Search  records fr om NDC/UPN  file for  X input  ; SCR 201701 30 MRAR-11 18
  4444   EJPFG(TARG ET,X) ; Se arch recor ds from ND C/UPN file  for X inp ut
  4445    N VPSIEN, LIST,NAME, I
  4446    D TRDNAME (X,.LIST)
  4447    I $D(LIST ) S I=0 F   S I=$O(LI ST(I)) Q:' I  D
  4448    . S NAME= $P(LIST(I) ,U,2),VPSI EN=$P(LIST (I),U)
  4449    . Q:$E($P (LIST(I),U ,2),1,$L(X ))'=X
  4450    . ;I '$$S CR(50.67,V PSIEN) D S ETRES($P(L IST(I),U,2 )_U_U_VPSI EN_";PSNDF (50.67,")
  4451    . I '$$SC R(50.67,VP SIEN) D SE TRES(TARGE T,$P(LIST( I),U,2)_U_ U_VPSIEN_" ;PSNDF(50. 67,")
  4452    Q
  4453    ;
  4454    ;EJPFJE(X ) ; Search  records f rom VA DRU G CLASS fi le for X i nput  ; SC R 20170130  MRAR-1118
  4455   EJPFJE(TAR GET,X) ; S earch reco rds from V A DRUG CLA SS file fo r X input
  4456    N VPSIEN, LIST,NAME, I
  4457    D CLASRCH (X,.LIST)
  4458    I $D(LIST ) S I=0 F   S I=$O(LI ST(I)) Q:' I  D
  4459    . S NAME= $P(LIST(I) ,U,2),VPSI EN=$P(LIST (I),U)
  4460    . Q:$E($P (LIST(I),U ,2),1,$L(X ))'=X
  4461    . ;I '$$S CR(50.605, VPSIEN) D  SETRES($P( LIST(I),U, 2)_U_U_50. 605_U_VPSI EN) ; SCR  20170130 M RAR-1118
  4462    . I '$$SC R(50.605,V PSIEN) D S ETRES(TARG ET,$P(LIST (I),U,2)_U _U_50.605_ U_VPSIEN)
  4463    K ^TMP($J ,"VPSXGMRA ")
  4464    Q
  4465    ;
  4466   SCR(FILE,I EN) ; Scre en a term  if not act ive
  4467    N VPSCACH E K VPSCAC HE
  4468    Q:'$L($T( SCREEN^XTI D)) 0
  4469    Q $$SCREE N^XTID(FIL E,.01,IEN_ ",","",.VP SCACHE)
  4470    ;
  4471   SETRES(VAL UE) ; Sets  the resul ts value w ith the ne xt counter
  4472    S CNT=CNT +1,@TARGET @("results ","allerge ns",CNT)=V ALUE
  4473    Q
  4474    ;
  4475   CLASRCH(NA ME,LIST) ;
  4476    K ^TMP($J ,"VPSXGMRA ")
  4477    D C^PSN50 P65(,NAME, "VPSXGMRA" )
  4478    I $D(^TMP ($J,"VPSXG MRA","C"))  D
  4479    . N I S I ="" F  S I =$O(^TMP($ J,"VPSXGMR A","C",I))  Q:I=""  D
  4480    .. N J S  J=0 F  S J =$O(^TMP($ J,"VPSXGMR A","C",I,J )) Q:'J  S  LIST(J)=J _U_$G(^TMP ($J,"VPSXG MRA",J,1))
  4481    K ^TMP($J ,"VPSXGMRA ")
  4482    Q
  4483   TRDNAME(NA ME,LIST) ;
  4484    K ^TMP($J ,"VPSXGMRA ")
  4485    D ALL^PSN 5067(,NAME ,,"VPSXGMR A")
  4486    I $D(^TMP ($J,"VPSXG MRA","B"))  D
  4487    . N I S I ="" F  S I =$O(^TMP($ J,"VPSXGMR A","B",I))  Q:I=""  D
  4488    .. N J,K  S J=$O(^TM P($J,"VPSX GMRA","B", I,0)) Q:'J   S K=$$TG TOG^PSNAPI S(I),LIST( J)=K_U_$G( ^TMP($J,"V PSXGMRA",J ,4))
  4489    K ^TMP($J ,"VPSXGMRA ")
  4490    Q
  4491   ]]></Routi ne>
  4492   </Export>
  4493   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000pac kage/scrip ts/\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000000 0755\x000000000 00\x00000000000 \x0000000000000 00\x00001305206 1140\x000001262 6\x0000 5\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000ustar   \x0000root\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000root\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000p ackage/scr ipts/postI nstall.js\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x00000 000644\x0000000 1750\x000000017 50\x00000000000 2642\x000013044 727532\x0000013 745\x0000 0\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000usta r  \x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000/******** ********** ********** ********** ********** ********** ********** ********** *********
  4494  
  4495     Copyrigh t 2016 Ape x Data Sol utions, LL C.
  4496    http://ww w.apexdata solutions. net/
  4497  
  4498    Licensed  under the  Apache Lic ense, Vers ion 2.0 (t he "Licens e");
  4499    you may n ot use thi s file exc ept in com pliance wi th the Lic ense.
  4500    You may o btain a co py of the  License at
  4501  
  4502    http://ww w.apache.o rg/license s/LICENSE- 2.0
  4503  
  4504    Unless re quired by  applicable  law or ag reed to in  writing,  software
  4505    distribut ed under t he License  is distri buted on a n "AS IS"  BASIS,
  4506    WITHOUT W ARRANTIES  OR CONDITI ONS OF ANY  KIND, eit her expres s or impli ed.
  4507    See the L icense for  the speci fic langua ge governi ng permiss ions and
  4508    limitatio ns under t he License .
  4509  
  4510  
  4511    ********* ********** ********** ********** ********** ********** ********** ********** *******/
  4512  
  4513   "use stric t";
  4514  
  4515   var fs = r equire('fs ');
  4516   var sh = r equire('sh elljs');
  4517   var path =  require(' path');
  4518  
  4519   var filena mes = [
  4520       "kids/ VPS_1_19.K ID"
  4521   ];
  4522  
  4523   // Determi ne paths
  4524   var source Path = pat h.resolve(  path.join ( __dirnam e, ".." )  );
  4525   var target Path = pat h.resolve(  path.join ( __dirnam e, "../../ ../mcode"   ) );
  4526  
  4527   // Create  directory
  4528   if (!fs.ex istsSync(t argetPath) ) {
  4529       consol e.log("Cre ating mcod e director y");
  4530       sh.mkd ir(targetP ath);
  4531   }
  4532  
  4533  
  4534   // Copy th e files
  4535   filenames. forEach(fu nction(fil ename) {
  4536       var so urceFile =  path.join ( sourcePa th, filena me);
  4537       consol e.log("Cop ying " + f ilename +  " to mcode  directory ");
  4538       sh.cp( '-f', sour ceFile, ta rgetPath);
  4539   });
  4540   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000packag e/.npmigno re\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000000064 4\x00000001750\x0000 0001750\x000000 000000021\x0000 1304472747 0\x0000011371\x0000  0\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000ustar  \x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000.tra vis.yml
  4541   dist/\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 package/pa ckage.json \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 0000644\x000000 00000\x00000000 000\x0000000000 01451\x00001305 2061140\x000001 3426\x0000 0\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000ust ar  \x0000root\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000roo t\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000{
  4542     "name":  "vps-mcode ",
  4543     "version ": "1.4.0" ,
  4544     "descrip tion": "M  Code eHMP  MRAR Appli cation",
  4545     "main":  "index.js" ,
  4546     "scripts ": {
  4547       "posti nstall": " node scrip ts/postIns tall.js",
  4548       "commi t": "git-c z",
  4549       "seman tic-releas e": "seman tic-releas e pre && n pm publish  && semant ic-release  post",
  4550       "test" : "exit 0"
  4551     },
  4552     "keyword s": [
  4553       "eHMP" ,
  4554       "MRAR" ,
  4555       "M Cod e"
  4556     ],
  4557     "author" : "",
  4558     "license ": "Apache -2.0",
  4559     "depende ncies": {
  4560       "shell js": "0.5. 3"
  4561     },
  4562     "devDepe ndencies":  {
  4563       "commi tizen": "^ 2.4.1",
  4564       "cz-co nventional -changelog ": "^1.1.4 ",
  4565       "seman tic-releas e": "^4.3. 5"
  4566     },
  4567     "config" : {
  4568       "commi tizen": {
  4569         "pat h": "node_ modules/cz -conventio nal-change log"
  4570       }
  4571     },
  4572     "reposit ory": {
  4573       "type" : "git",
  4574       "url":  "https:// github.com /apexdatas olutions/v ps-mcode.g it"
  4575     }
  4576   }
  4577   \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000\x0000 \x0000\x0000\x0000\x0000\x0000