EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: EPICS CA problems
From: "Jeff Hill" <[email protected]>
To: "'Mark Rivers'" <[email protected]>
Cc: "'Antonio Lanzirotti'" <[email protected]>, "'tech-talk'" <[email protected]>
Date: Wed, 27 Oct 2010 12:09:19 -0600
> Undelivered response bytes=4294967272

This certainly _is_ suspicious; especially so given that this per-client
component of the server isn't using any jumbo buffers, and because the value
0xFFFFFFE8 is suspiciously like an unsigned integer underflow result.
Furthermore, I am looking at the diagnostic code, and I am amazed to
discover that the printf appears to be incorrectly labeling the request and
response bytes; its reversing them. So it would appear that there are
actually 8256 response bytes pending (which better matches with Mark's get
scenario), and maybe no request bytes pending (based on an underflow
situation). Since this might be occurring only in the diagnostic then it may
not be, by itself, implicating a serious bug. Nevertheless, I created two
bug entries for the above two issues with rsrv diagnostics. I _am_ disturbed
about the underflow situation and will be having a closer at the codes use
of these variable in general, nevertheless I am not inclined to guess at
this time that this is causing your issue.

It seems that the strong symptom we currently see is that the server's
thread is probably blocked sending bytes to tcp, and more than likely this
is because the client application isn't periodically calling ca_pend_event.
If you were in the debugger and you saw, in a stack trace, a really large
number of bytes being transferred using the socket send function that would
be an indication of a bug in the server (related to the underflow/overflow).
However, as previously mentioned, the underflow situation appears to be
associated with a diagnostic for the receive side, and the server actually
appears to be blocked on the send side. If there was an underflow/overflow
you would probably see lots of messages on a properly functioning client
side about bogus protocol (bad messages).

Jeff
______________________________________________________
Jeffrey O. Hill           Email        [email protected]
LANL MS H820              Voice        505 665 1831
Los Alamos NM 87545 USA   FAX          505 665 5107

Message content: TSPA


> -----Original Message-----
> From: Mark Rivers [mailto:[email protected]]
> Sent: Wednesday, October 27, 2010 9:48 AM
> To: Jeff Hill; tech-talk
> Cc: Antonio Lanzirotti
> Subject: RE: EPICS CA problems
> 
> Hi Jeff,
> 
> The good news I that I have now reproduced this problem on my lab computer
> at the APS, so I am no longer trying to debug on someone else's system at
> NSLS.
> 
> It hung up when I was running an IDL client on the same machine as the
> IOC.  It is a cygwin-x86 IOC.  When it hung up this is the output of
> "epicsMutexShowAll 1"
> 
> epics> epicsMutexShowAll 1
> ellCount(&mutexList) 78692 ellCount(&freeList) 0
> epicsMutexId 0x13a9e888 source ../caservertask.c line 732
> ownerTid 0x13a9f010 count 1 owned 1
> 
> So there is only 1 mutex with a lock.
> 
> This is the output of "casr 100"
> 
> epics> casr 100
> Channel Access Server V4.11
> Connected circuits:
> TCP 164.54.160.82:57075(corvette.cars.aps.anl.gov): User="epics", V4.11,
> 19 Channels, Priority=0
>         Task Id=0x13736780, Socket FD=12
>         Secs since last send 1937.69, Secs since last receive 2059.90
>         Unprocessed request bytes=0, Undelivered response bytes=0
>         State=up
>         4968 bytes allocated
>         dxpXMAP:PixelsPerBuffer(1rw)    dxpXMAP:PixelsPerBuffer_RBV(1rw)
> dxpXMAP:AutoPixelsPerBuffer(1rw)
>         dxpXMAP:BufferSize_RBV(1rw)     dxpXMAP:CollectMode(1rw)
> dxpXMAP:PixelAdvanceMode(1rw)
>         dxpXMAP:SyncCount(1rw)  dxpXMAP:IgnoreGate(1rw)
> dxpXMAP:InputLogicPolarity(1rw)
>         dxpXMAP:dxp1:CurrentPixel(1rw)  dxpXMAP:NextPixel(1rw)
> dxpXMAP:PixelsPerRun(1rw)
>         dxpXMAP:AutoApply(1rw)  dxpXMAP:Apply(1rw)
> dxpXMAP:MBytesRead_RBV(1rw)
>         dxpXMAP:ReadRate_RBV(1rw)       dxpXMAP:SyncMasterChannel(1rw)
> dxpXMAP:GateMasterChannel(1rw)
>         dxpXMAP:LBUSMasterChannel(1rw)
>         Send Lock
> epicsMutexId 0x13748318 source ../caservertask.c line 732
> ownerTid 0x0 count 0 owned 0
>         Put Notify Lock
> epicsMutexId 0x137355b0 source ../caservertask.c line 733
> ownerTid 0x0 count 0 owned 0
>         Address Queue Lock
> epicsMutexId 0x13735630 source ../caservertask.c line 734
> ownerTid 0x0 count 0 owned 0
>         Event Queue Lock
> epicsMutexId 0x13736238 source ../caservertask.c line 735
> ownerTid 0x0 count 0 owned 0
>         Block Semaphore
> TCP 164.54.160.82:57112(corvette.cars.aps.anl.gov): User="epics", V4.11,
> 25 Channels, Priority=0
>         Task Id=0x100ebf38, Socket FD=3
>         Secs since last send 581.47, Secs since last receive 868.66
>         Unprocessed request bytes=0, Undelivered response bytes=0
>         State=up
>         6480 bytes allocated
>         dxpXMAP:EraseAll(1rw)   dxpXMAP:EraseStart(1rw)
> dxpXMAP:StartAll(1rw)
>         dxpXMAP:StopAll(1rw)    dxpXMAP:Acquiring(1rw)
> dxpXMAP:Acquiring(1rw)
>         dxpXMAP:EnableClientWait(1rw)   dxpXMAP:ClientWait(1rw)
> dxpXMAP:StatusAllOnce(1rw)
>         dxpXMAP:StatusAll(1rw)  dxpXMAP:ReadAll(1rw)
> dxpXMAP:ReadAllOnce(1rw)
>         dxpXMAP:ReadLLParams(1rw)       dxpXMAP:ReadLLParams(1rw)
> dxpXMAP:PresetMode(1rw)
>         dxpXMAP:ElapsedReal(1rw)        dxpXMAP:PresetReal(1rw)
> dxpXMAP:ElapsedLive(1rw)
>         dxpXMAP:PresetLive(1rw) dxpXMAP:PresetEvents(1rw)
> dxpXMAP:PresetTriggers(1rw)
>         dxpXMAP:IDeadTime(1rw)  dxpXMAP:DeadTime(1rw)
> dxpXMAP:PollTime_RBV(1rw)
>         dxpXMAP:PollTime(1rw)
>         Send Lock
> epicsMutexId 0x1010c8e8 source ../caservertask.c line 732
> ownerTid 0x0 count 0 owned 0
>         Put Notify Lock
> epicsMutexId 0x1010c5a8 source ../caservertask.c line 733
> ownerTid 0x0 count 0 owned 0
>         Address Queue Lock
> epicsMutexId 0x139d57d0 source ../caservertask.c line 734
> ownerTid 0x0 count 0 owned 0
>         Event Queue Lock
> epicsMutexId 0x1010ce60 source ../caservertask.c line 735
> ownerTid 0x0 count 0 owned 0
>         Block Semaphore
> TCP 164.54.160.87:2797(XIA-Detector): User="epics", V4.11, 2329 Channels,
> Priority=0
>         Task Id=0x13a9f098, Socket FD=13
>         Secs since last send 584.48, Secs since last receive 584.48
>         Unprocessed request bytes=8256, Undelivered response
> bytes=4294967272
>         State=up
>         478560 bytes allocated
>         dxpXMAP:PresetMode(0rw) dxpXMAP:PresetReal(0rw) dxpXMAP:mca1(1rw)
>         dxpXMAP:mca1(1r-)       dxpXMAP:mca1(1rw)       dxpXMAP:mca1(1rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)       dxpXMAP:mca1(0rw)
>         dxpXMAP:mca2(1rw)       dxpXMAP:mca2(1r-)       dxpXMAP:mca2(1rw)
>         dxpXMAP:mca2(1rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)       dxpXMAP:mca2(0rw)
>         dxpXMAP:mca2(0rw)       dxpXMAP:mca3(1rw)       dxpXMAP:mca3(1r-)
>         dxpXMAP:mca3(1rw)       dxpXMAP:mca3(1rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)
>         dxpXMAP:mca3(0rw)       dxpXMAP:mca3(0rw)       dxpXMAP:mca4(1rw)
>         dxpXMAP:mca4(1r-)       dxpXMAP:mca4(1rw)       dxpXMAP:mca4(1rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)       dxpXMAP:mca4(0rw)
>         dxpXMAP:mca5(1rw)       dxpXMAP:mca5(1r-)       dxpXMAP:mca5(1rw)
>         dxpXMAP:mca5(1rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)       dxpXMAP:mca5(0rw)
>         dxpXMAP:mca5(0rw)       dxpXMAP:mca6(1rw)       dxpXMAP:mca6(1r-)
>         dxpXMAP:mca6(1rw)       dxpXMAP:mca6(1rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)
>         dxpXMAP:mca6(0rw)       dxpXMAP:mca6(0rw)       dxpXMAP:mca7(1rw)
>         dxpXMAP:mca7(1r-)       dxpXMAP:mca7(1rw)       dxpXMAP:mca7(1rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)       dxpXMAP:mca7(0rw)
>         dxpXMAP:mca8(1rw)       dxpXMAP:mca8(1r-)       dxpXMAP:mca8(1rw)
>         dxpXMAP:mca8(1rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)       dxpXMAP:mca8(0rw)
>         dxpXMAP:mca8(0rw)       dxpXMAP:mca9(1rw)       dxpXMAP:mca9(1r-)
>         dxpXMAP:mca9(1rw)       dxpXMAP:mca9(1rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)
>         dxpXMAP:mca9(0rw)       dxpXMAP:mca9(0rw)       dxpXMAP:mca10(1rw)
>         dxpXMAP:mca10(1r-)      dxpXMAP:mca10(1rw)      dxpXMAP:mca10(1rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)      dxpXMAP:mca10(0rw)
>         dxpXMAP:mca11(1rw)      dxpXMAP:mca11(1r-)      dxpXMAP:mca11(1rw)
>         dxpXMAP:mca11(1rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)      dxpXMAP:mca11(0rw)
>         dxpXMAP:mca11(0rw)      dxpXMAP:mca12(1rw)      dxpXMAP:mca12(1r-)
>         dxpXMAP:mca12(1rw)      dxpXMAP:mca12(1rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)
>         dxpXMAP:mca12(0rw)      dxpXMAP:mca12(0rw)      dxpXMAP:mca13(1rw)
>         dxpXMAP:mca13(1r-)      dxpXMAP:mca13(1rw)      dxpXMAP:mca13(1rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)      dxpXMAP:mca13(0rw)
>         dxpXMAP:mca14(1rw)      dxpXMAP:mca14(1r-)      dxpXMAP:mca14(1rw)
>         dxpXMAP:mca14(1rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)      dxpXMAP:mca14(0rw)
>         dxpXMAP:mca14(0rw)      dxpXMAP:mca15(1rw)      dxpXMAP:mca15(1r-)
>         dxpXMAP:mca15(1rw)      dxpXMAP:mca15(1rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)
>         dxpXMAP:mca15(0rw)      dxpXMAP:mca15(0rw)      dxpXMAP:mca16(1rw)
>         dxpXMAP:mca16(1r-)      dxpXMAP:mca16(1rw)      dxpXMAP:mca16(1rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)      dxpXMAP:mca16(0rw)
>         dxpXMAP:ElapsedLive(1rw)        dxpXMAP:ElapsedReal(1rw)
> dxpXMAP:Acquiring(1rw)
>         dxpXMAP:ClientWait(1rw) dxpXMAP:EraseAll(0rw)
> dxpXMAP:StartAll(0rw)
>         dxpXMAP:ReadAll(0rw)
>         Send Lock
> epicsMutexId 0x13a9e888 source ../caservertask.c line 732
> ownerTid 0x13a9f010 count 1 owned 1
>         Put Notify Lock
> epicsMutexId 0x13a9e980 source ../caservertask.c line 733
> ownerTid 0x0 count 0 owned 0
>         Address Queue Lock
> epicsMutexId 0x13a9ea78 source ../caservertask.c line 734
> ownerTid 0x0 count 0 owned 0
>         Event Queue Lock
> epicsMutexId 0x13a9eb70 source ../caservertask.c line 735
> ownerTid 0x0 count 0 owned 0
>         Block Semaphore
> UDP Server:
> UDP 164.54.160.100:1518(): User="", V4.0, 0 Channels, Priority=0
>         Task Id=0x133721f0, Socket FD=9
>         Secs since last send 936.94, Secs since last receive   0.58
>         Unprocessed request bytes=16, Undelivered response bytes=0
>         State=up
>         180 bytes allocated
>         Send Lock
> epicsMutexId 0x133725a8 source ../caservertask.c line 732
> ownerTid 0x0 count 0 owned 0
>         Put Notify Lock
> epicsMutexId 0x133726a0 source ../caservertask.c line 733
> ownerTid 0x0 count 0 owned 0
>         Address Queue Lock
> epicsMutexId 0x13372798 source ../caservertask.c line 734
> ownerTid 0x0 count 0 owned 0
>         Event Queue Lock
> epicsMutexId 0x13372890 source ../caservertask.c line 735
> ownerTid 0x0 count 0 owned 0
>         Block Semaphore
> There are currently 286036 bytes on the server's free list
> 4 client(s), 699 channel(s), 1424 event(s) (monitors) 0 putNotify(s)
> 10 small buffers (16384 bytes ea), and 0 jumbo buffers (1000024 bytes ea)
> The server's resource id conversion table:
> Bucket entries in use = 2373 bytes in use = 54372
> Bucket entries/hash id - mean = 0.579346 std dev = 0.493664 max = 1
> The server's array size limit is 1000024 bytes max
> Channel Access Address List
> 164.54.160.255:5065
> epics>
> 
> 164.54.160.87 is the IP address of the machine running both the IOC and
> the IDL client.  For that client connection it is saying:
> 
>         Unprocessed request bytes=8256, Undelivered response
> bytes=4294967272
>         State=up
> 
> Can you provide any hints on what could be going wrong?  Other diagnostics
> to print out?
> 
> Thanks,
> Mark
> 
> 
> 
> ________________________________
> 
> From: Jeff Hill [mailto:[email protected]]
> Sent: Mon 10/25/2010 4:22 PM
> To: Mark Rivers; 'tech-talk'
> Cc: Antonio Lanzirotti
> Subject: RE: EPICS CA problems
> 
> 
> 
> > TCP 172.16.1.21:1752(X26A-Data): User="X26A User", V4.11, 1837 Channels,
> > Priority=0
> >         Task Id=0x12ec19d0, Socket FD=16
> >         Secs since last send 131528.55, Secs since last receive
> 140881.60
> >         Unprocessed request bytes=8296, Undelivered response bytes=0
> >         State=up
> >         377424 bytes allocated
> 
> There are no response bytes pending, but request bytes _are_ pending (for
> a
> long time). I am going to go out on a limb and guess that the server's
> per-client receive thread is trapped in db_put_field waiting for the db
> scan
> lock, or waiting in the device support's signal write function - probably
> due to a device driver issue. The server's per-client lock is held by the
> receive thread in this situation, and that would shutdown also
> subscription
> updates to this client. The situation can be diagnosed in the debugger.
> Typically the server's per-client receive thread is parked in socket
> receive, and the server's per-client send thread is parked in event flag
> wait. Symptomatic would be wedged in db_put_field (device driver issue) or
> wedged always waiting for the same lock in the same place (deadlock).
> 
> Jeff
> ______________________________________________________
> Jeffrey O. Hill           Email        [email protected]
> LANL MS H820              Voice        505 665 1831
> Los Alamos NM 87545 USA   FAX          505 665 5107
> 
> Message content: TSPA
> 
> 
> > -----Original Message-----
> > From: Mark Rivers [mailto:[email protected]]
> > Sent: Monday, October 25, 2010 10:55 AM
> > To: Jeff Hill; tech-talk
> > Cc: Antonio Lanzirotti
> > Subject: RE: EPICS CA problems
> >
> > Hi Jeff,
> >
> > I have some more information on this.  The problem does NOT appear to be
> a
> > problem with caRepeater crashing.  When the client loses connection to
> the
> > IOC the Windows Task Manager shows that caRepeater is still running on
> the
> > IOC PC.  Normally we had been seeing the problem when the client and the
> > IOC were running on the same computer.
> >
> > However, last night we managed to reproduce the problem with the client
> > running on a separate PC.
> >
> > I have attached the output of casr(100) on the IOC when the client has
> > lost communication.  The IOC server is 172.16.1.20 (X26A-Control) and
> the
> > client is running on 172.16.1.21 (X26A-Data).
> >
> > It appears that when this happens the client loses connection to all PVs
> > on the server.  But we know for sure that it lost connection to
> > X26A:med:Acquiring.
> >
> > I think I see something suspicious in the output.  Here is the start of
> > one block of output from casr for the client machine that has lost
> > connection:
> >
> > TCP 172.16.1.21:1726(X26A-Data): User="X26A User", V4.11, 1755 Channels,
> > Priority=0
> >         Task Id=0x12a022b0, Socket FD=15
> >         Secs since last send   0.02, Secs since last receive   0.02
> >         Unprocessed request bytes=0, Undelivered response bytes=0
> >         State=up
> >         360696 bytes allocated
> >         X26A:med:PresetMode(0rw)        X26A:med:ElapsedReal(1rw)
> > X26A:med:PresetReal(0rw)
> >
> > Here is the start of another block for the same client:
> >
> > TCP 172.16.1.21:1752(X26A-Data): User="X26A User", V4.11, 1837 Channels,
> > Priority=0
> >         Task Id=0x12ec19d0, Socket FD=16
> >         Secs since last send 131528.55, Secs since last receive
> 140881.60
> >         Unprocessed request bytes=8296, Undelivered response bytes=0
> >         State=up
> >         377424 bytes allocated
> >
> > Note that there are unprocessed request bytes there.
> >
> > There is then another block for the same client machine:
> >
> > TCP 172.16.1.21:2735(X26A-Data): User="X26A User", V4.11, 1837 Channels,
> > Priority=0
> >         Task Id=0x12ec0a10, Socket FD=19
> >         Secs since last send 119.81, Secs since last receive 119.82
> >         Unprocessed request bytes=0, Undelivered response bytes=0
> >         State=up
> >         377424 bytes allocated
> >
> > There is also a UDP entry for that client machine:
> >
> > UDP Server:
> > UDP 172.16.1.21:2733(): User="", V4.11, 0 Channels, Priority=0
> >         Task Id=0x1293c4e0, Socket FD=11
> >         Secs since last send 131525.68, Secs since last receive   3.06
> >         Unprocessed request bytes=16, Undelivered response bytes=0
> >         State=up
> >         180 bytes allocated
> >
> >         Send Lock
> >
> > I am not sure how to interpret this.
> >
> > Thanks,
> > Mark
> >
> >
> >
> >
> > -----Original Message-----
> > From: Jeff Hill [mailto:[email protected]]
> > Sent: Tuesday, October 19, 2010 10:33 AM
> > To: Mark Rivers; 'tech-talk'
> > Cc: Antonio Lanzirotti
> > Subject: RE: EPICS CA problems
> >
> > Hi Mark,
> >
> > This is the first I have heard of any issues the ca repeater crashing.
> >
> > Is this running under cygwin or mingw? Compiled by ms visual c or gnu?
> >
> > The stack trace has no symbols so it's hard to determine a cause. If you
> > could fire up the relevant debugger and get a stack trace with symbols
> > that
> > would help. You might need to build base for debugging. Set HOST_OPT=YES
> > in
> > CONFIG_SITE. Also, if you save the debugging session in visual c++ and
> > email
> > it to me I might be able to identify the issue.
> >
> > Jeff
> > ______________________________________________________
> > Jeffrey O. Hill           Email        [email protected]
> > LANL MS H820              Voice        505 665 1831
> > Los Alamos NM 87545 USA   FAX          505 665 5107
> >
> > Message content: TSPA
> >
> >
> > > -----Original Message-----
> > > From: Mark Rivers [mailto:[email protected]]
> > > Sent: Monday, October 18, 2010 7:58 PM
> > > To: tech-talk; Jeff Hill
> > > Cc: Antonio Lanzirotti
> > > Subject: RE: EPICS CA problems
> > >
> > > Folks,
> > >
> > > I learned today that it appears that caRepeater has been crashing on
> > > this system.  I don't know for sure that this problem happens when
> > > caRepeater has died, but that seems likely.  The next time it happens
> > > we will look to see if caRepeater is still running.
> > >
> > > Meanwhile, we have found that there are caRepeater stackdump files,
> > > containing the following:
> > >
> > > Exception: STATUS_ACCESS_VIOLATION at eip=610B9F69
> > > eax=00000000 ebx=00000001 ecx=00000000 edx=0014C6F0 esi=00000000
> > > edi=011DCCD8
> > > ebp=011DCB14 esp=011DCAEC program=C:\Program Files\EPICS WIN32
> > > Extensions\caRepeater.exe, pid 2152, thread unknown (0xC44)
> > > cs=001B ds=0023 es=0023 fs=003B gs=0000 ss=0023
> > > Stack trace:
> > > Frame     Function  Args
> > > 011DCB14  610B9F69  (00000000, 00000000, 00000000, 00000000)
> > > 011DCC24  610BA905  (00000000, 00000000, 00000000, 00000000)
> > > 011DCCE4  610BB67A  (FFFFFFFF, FFFFFFFF, 00000000, 00000000)
> > > 011DCD34  61027DE2  (00000002, 011DCE64, 00000002, 011DCE00)
> > > 011DCDC8  7C87655C  (00000002, 011DCE00, 7C8763C0, 00000002)
> > > End of stack trace
> > >
> > > Has anyone else seen such stackdumps from caRepeater?  This is the
> > > version of caRepeater.exe that is included in the most recent (Nov. 2,
> > > 2007) APS "EPICS Win32 Extensions" package.
> > >
> > > Thanks,
> > > Mark
> > >
> > >
> > > ________________________________
> > >
> > > From: Mark Rivers
> > > Sent: Wed 10/13/2010 11:14 AM
> > > To: tech-talk; 'Jeff Hill'
> > > Cc: Antonio Lanzirotti
> > > Subject: EPICS CA problems
> > >
> > >
> > >
> > > Folks,
> > >
> > > We are having trouble with a Windows IOC at NSLS.  Here are the
> > > symptoms:
> > >
> > > - The IOC is running fine
> > >
> > > - The PC running the IOC has 2 local CA clients connected to the IOC,
> > > medm and IDL.  Occassionally (1-2 times per day) one of these clients
> > > loses its connection to the IOC.  Medm screens go white, IDL says it
> > > cannot find a PV, etc.  This happens when the client was running fine.
> > > It typically only happens to one or the other client, not to both.
> > >
> > > - Restarting the client fixes the problem.
> > >
> > > - The same 2 clients are running on another PC connected to the same
> > > IOC.  Those clients are always fine, they do not lose connection when
> a
> > > client on the PC with the IOC does.
> > >
> > > - Looking at the resources on the Windows machine (CPU, virtual and
> > > physical memory usage) does not indicate any problems.
> > >
> > > How do we go about figuring out what is wrong?
> > >
> > > Thanks,
> > > Mark
> > >
> >
> 
> 




Replies:
RE: EPICS CA problems Mark Rivers
References:
RE: EPICS CA problems Mark Rivers
RE: EPICS CA problems Jeff Hill
RE: EPICS CA problems Mark Rivers
RE: EPICS CA problems Jeff Hill
RE: EPICS CA problems Mark Rivers

Navigate by Date:
Prev: RE: EPICS CA problems Mark Rivers
Next: RE: EPICS CA problems Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: EPICS CA problems Mark Rivers
Next: RE: EPICS CA problems Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 27 Oct 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·