/*
** Linker script for PIC24EP512GP806
*/

OUTPUT_ARCH("24EP512GP806")
CRT0_STARTUP(crt0_extendedep.o)
CRT1_STARTUP(crt1_extendedep.o)

OPTIONAL(-lp24EP512GP806)

/*
** Memory Regions
*/
MEMORY
{
  data  (a!xr)   : ORIGIN = 0x1000,        LENGTH = 0xD000
  reset2          : ORIGIN = 0x7FFFFC,      LENGTH = 0x4
  reset          : ORIGIN = 0x7FC000,      LENGTH = 0x4
  program (xr)   : ORIGIN = 0x7FC004,      LENGTH = 0x3DFC
  ivt2            : ORIGIN = 0x7FFE00,      LENGTH = 0x1FA
  ivt            : ORIGIN = 0x7FFFFA,      LENGTH = 0x2
  auxflash (xr)  : ORIGIN = 0x7FC000,      LENGTH = 0
  FGS            : ORIGIN = 0xF80004,      LENGTH = 0x2
  FOSCSEL        : ORIGIN = 0xF80006,      LENGTH = 0x2
  FOSC           : ORIGIN = 0xF80008,      LENGTH = 0x2
  FWDT           : ORIGIN = 0xF8000A,      LENGTH = 0x2
  FPOR           : ORIGIN = 0xF8000C,      LENGTH = 0x2
  FICD           : ORIGIN = 0xF8000E,      LENGTH = 0x2
  FAS            : ORIGIN = 0xF80010,      LENGTH = 0x2
  FUID0          : ORIGIN = 0xF80012,      LENGTH = 0x2
}


__FGS = 0xF80004;
__FOSCSEL = 0xF80006;
__FOSC = 0xF80008;
__FWDT = 0xF8000A;
__FPOR = 0xF8000C;
__FICD = 0xF8000E;
__FAS = 0xF80010;
__FUID0 = 0xF80012;

__IVT_BASE  = 0x7FFFFA;
__DATA_BASE = 0x1000;
__DATA_LENGTH =  0xD000;
__DMA_BASE = 0xD000;
__DMA_END = 0xDFFF;
__CODE_BASE = 0x7FC004;
__CODE_LENGTH = 0x3DFC;


/*
** ==================== Section Map ======================
*/
SECTIONS
{
  /*
  ** ========== Program Memory ==========
  */


  /*
  ** Reset Instruction
  */
  .reset :
  {
        SHORT(ABSOLUTE(__reset));
        SHORT(0x04);
        SHORT((ABSOLUTE(__reset) >> 16) & 0x7F);
        SHORT(0);
  } >reset
  .reset2 :
  {
        SHORT(ABSOLUTE(__reset));
        SHORT(0x04);
        SHORT((ABSOLUTE(__reset) >> 16) & 0x7F);
        SHORT(0);
  } >reset2


  /*
  ** Interrupt Vector Tables
  **
  ** The primary and alternate tables are loaded
  ** here, between sections .reset and .text.
  ** Vector table source code appears below.
  */


  /*
  ** User Code and Library Code
  **
  ** This section must not be assigned to __CODE_BASE,
  ** because CodeGuard(tm) sections may be located there.
  **
  ** Note that input sections *(.text) are not mapped here.
  ** The best-fit allocator locates them, so that .text
  ** may flow around PSV sections as needed.
  */
  .text :
  {
        *(.init);
        *(.user_init);
        KEEP (*(.handle));
        KEEP (*(.isr*));
        *(.libc) *(.libm) *(.libdsp);  /* keep together in this order */
        *(.lib*);
  } >program


  /*
  ** User-Defined Section in Program Memory
  **
  ** note: can specify an address using
  **       the following syntax:
  **
  **       usercode 0x1234 :
  **         {
  **           *(usercode);
  **         } >program
  */
  usercode :
  {
        *(usercode);
  } >program


  /*
  ** User-Defined Constants in Program Memory
  **
  ** For PSV type sections, the Load Memory Address (LMA)
  ** should be specified as follows:
  **
  **       userconst : AT(0x1234)
  **         {
  **           *(userconst);
  **         } >program
  **
  ** Note that mapping PSV sections in linker scripts
  ** is not generally recommended.
  **
  ** Because of page alignment restrictions, memory is
  ** often used more efficiently when PSV sections
  ** do not appear in the linker script.
  **
  ** For more information on memory allocation,
  ** please refer to chapter 10, 'Linker Processing'
  ** in the Assembler, Linker manual (DS51317).
  */


  /*
  ** Configuration Words
  */
  __FGS :
  { KEEP (*(__FGS.sec*))    } >FGS
  __FOSCSEL :
  { KEEP (*(__FOSCSEL.sec*))    } >FOSCSEL
  __FOSC :
  { KEEP (*(__FOSC.sec*))    } >FOSC
  __FWDT :
  { KEEP (*(__FWDT.sec*))    } >FWDT
  __FPOR :
  { KEEP (*(__FPOR.sec*))    } >FPOR
  __FICD :
  { KEEP (*(__FICD.sec*))    } >FICD
  __FAS :
  { KEEP (*(__FAS.sec*))    } >FAS
  __FUID0 :
  { KEEP (*(__FUID0.sec*))    } >FUID0


  /*
  ** =========== Data Memory ===========
  */


  /*
  ** ICD Debug Exec
  **
  ** This section provides optional storage for
  ** the ICD2 debugger. Define a global symbol
  ** named __ICD2RAM to enable ICD2. This section
  ** must be loaded at data address 0x1000.
  */
  .icd __DATA_BASE (NOLOAD):
  {
    . += (DEFINED (__ICD2RAM) ? 0x50 : 0 );
  } > data


  /*
  ** Other sections in data memory are not explicitly mapped.
  ** Instead they are allocated according to their section
  ** attributes, which is most efficient.
  ** 
  ** If a specific arrangement of sections is required
  ** (other than what can be achieved using attributes)
  ** additional sections may be defined here. See chapter
  ** 10.5 in the MPLAB ASM30/LINK30 User's Guide (DS51317)
  ** for more information.
  */


  /*
  ** ========== Debug Info ==============
  */

  .comment        0 : { *(.comment) }

  /*
  ** DWARF-2
  */
  .debug_info     0 : { *(.debug_info) *(.gnu.linkonce.wi.*) }
  .debug_abbrev   0 : { *(.debug_abbrev) }
  .debug_line     0 : { *(.debug_line) }
  .debug_frame    0 : { *(.debug_frame) }
  .debug_str      0 : { *(.debug_str) }
  .debug_loc      0 : { *(.debug_loc) }
  .debug_macinfo  0 : { *(.debug_macinfo) }
  .debug_pubnames 0 : { *(.debug_pubnames) }
  .debug_ranges   0 : { *(.debug_ranges) }
  .debug_aranges  0 : { *(.debug_aranges) }

} /* SECTIONS */

/*
** ================= End of Section Map ================
*/

/*
** Section Map for Interrupt Vector Tables
*/
SECTIONS
{

/*
** Interrupt Vector Table
*/
.ivt __IVT_BASE :
  {
    LONG( DEFINED(__AuxProgFail)    ? ABSOLUTE(__AuxProgFail)    :
         ABSOLUTE(__DefaultInterrupt));
  } >ivt
} /* SECTIONS */


/*
** ============== Equates for SFR Addresses =============
*/

 WREG0        = 0x0;
_WREG0        = 0x0;
 WREG1        = 0x2;
_WREG1        = 0x2;
 WREG2        = 0x4;
_WREG2        = 0x4;
 WREG3        = 0x6;
_WREG3        = 0x6;
 WREG4        = 0x8;
_WREG4        = 0x8;
 WREG5        = 0xA;
_WREG5        = 0xA;
 WREG6        = 0xC;
_WREG6        = 0xC;
 WREG7        = 0xE;
_WREG7        = 0xE;
 WREG8        = 0x10;
_WREG8        = 0x10;
 WREG9        = 0x12;
_WREG9        = 0x12;
 WREG10       = 0x14;
_WREG10       = 0x14;
 WREG11       = 0x16;
_WREG11       = 0x16;
 WREG12       = 0x18;
_WREG12       = 0x18;
 WREG13       = 0x1A;
_WREG13       = 0x1A;
 WREG14       = 0x1C;
_WREG14       = 0x1C;
 WREG15       = 0x1E;
_WREG15       = 0x1E;
 SPLIM        = 0x20;
_SPLIM        = 0x20;
 PCL          = 0x2E;
_PCL          = 0x2E;
 PCH          = 0x30;
_PCH          = 0x30;
 DSRPAG       = 0x32;
_DSRPAG       = 0x32;
_DSRPAGbits   = 0x32;
 DSWPAG       = 0x34;
_DSWPAG       = 0x34;
_DSWPAGbits   = 0x34;
 RCOUNT       = 0x36;
_RCOUNT       = 0x36;
 SR           = 0x42;
_SR           = 0x42;
_SRbits       = 0x42;
 CORCON       = 0x44;
_CORCON       = 0x44;
_CORCONbits   = 0x44;
 DISICNT      = 0x52;
_DISICNT      = 0x52;
 TBLPAG       = 0x54;
_TBLPAG       = 0x54;
_TBLPAGbits   = 0x54;
 MSTRPR       = 0x58;
_MSTRPR       = 0x58;
 TMR1         = 0x100;
_TMR1         = 0x100;
 PR1          = 0x102;
_PR1          = 0x102;
 T1CON        = 0x104;
_T1CON        = 0x104;
_T1CONbits    = 0x104;
 TMR2         = 0x106;
_TMR2         = 0x106;
 TMR3HLD      = 0x108;
_TMR3HLD      = 0x108;
 TMR3         = 0x10A;
_TMR3         = 0x10A;
 PR2          = 0x10C;
_PR2          = 0x10C;
 PR3          = 0x10E;
_PR3          = 0x10E;
 T2CON        = 0x110;
_T2CON        = 0x110;
_T2CONbits    = 0x110;
 T3CON        = 0x112;
_T3CON        = 0x112;
_T3CONbits    = 0x112;
 TMR4         = 0x114;
_TMR4         = 0x114;
 TMR5HLD      = 0x116;
_TMR5HLD      = 0x116;
 TMR5         = 0x118;
_TMR5         = 0x118;
 PR4          = 0x11A;
_PR4          = 0x11A;
 PR5          = 0x11C;
_PR5          = 0x11C;
 T4CON        = 0x11E;
_T4CON        = 0x11E;
_T4CONbits    = 0x11E;
 T5CON        = 0x120;
_T5CON        = 0x120;
_T5CONbits    = 0x120;
 TMR6         = 0x122;
_TMR6         = 0x122;
 TMR7HLD      = 0x124;
_TMR7HLD      = 0x124;
 TMR7         = 0x126;
_TMR7         = 0x126;
 PR6          = 0x128;
_PR6          = 0x128;
 PR7          = 0x12A;
_PR7          = 0x12A;
 T6CON        = 0x12C;
_T6CON        = 0x12C;
_T6CONbits    = 0x12C;
 T7CON        = 0x12E;
_T7CON        = 0x12E;
_T7CONbits    = 0x12E;
 TMR8         = 0x130;
_TMR8         = 0x130;
 TMR9HLD      = 0x132;
_TMR9HLD      = 0x132;
 TMR9         = 0x134;
_TMR9         = 0x134;
 PR8          = 0x136;
_PR8          = 0x136;
 PR9          = 0x138;
_PR9          = 0x138;
 T8CON        = 0x13A;
_T8CON        = 0x13A;
_T8CONbits    = 0x13A;
 T9CON        = 0x13C;
_T9CON        = 0x13C;
_T9CONbits    = 0x13C;
 IC1CON1      = 0x140;
_IC1CON1      = 0x140;
_IC1CON1bits  = 0x140;
 IC1CON2      = 0x142;
_IC1CON2      = 0x142;
_IC1CON2bits  = 0x142;
 IC1BUF       = 0x144;
_IC1BUF       = 0x144;
 IC1TMR       = 0x146;
_IC1TMR       = 0x146;
 IC2CON1      = 0x148;
_IC2CON1      = 0x148;
_IC2CON1bits  = 0x148;
 IC2CON2      = 0x14A;
_IC2CON2      = 0x14A;
_IC2CON2bits  = 0x14A;
 IC2BUF       = 0x14C;
_IC2BUF       = 0x14C;
 IC2TMR       = 0x14E;
_IC2TMR       = 0x14E;
 IC3CON1      = 0x150;
_IC3CON1      = 0x150;
_IC3CON1bits  = 0x150;
 IC3CON2      = 0x152;
_IC3CON2      = 0x152;
_IC3CON2bits  = 0x152;
 IC3BUF       = 0x154;
_IC3BUF       = 0x154;
 IC3TMR       = 0x156;
_IC3TMR       = 0x156;
 IC4CON1      = 0x158;
_IC4CON1      = 0x158;
_IC4CON1bits  = 0x158;
 IC4CON2      = 0x15A;
_IC4CON2      = 0x15A;
_IC4CON2bits  = 0x15A;
 IC4BUF       = 0x15C;
_IC4BUF       = 0x15C;
 IC4TMR       = 0x15E;
_IC4TMR       = 0x15E;
 IC5CON1      = 0x160;
_IC5CON1      = 0x160;
_IC5CON1bits  = 0x160;
 IC5CON2      = 0x162;
_IC5CON2      = 0x162;
_IC5CON2bits  = 0x162;
 IC5BUF       = 0x164;
_IC5BUF       = 0x164;
 IC5TMR       = 0x166;
_IC5TMR       = 0x166;
 IC6CON1      = 0x168;
_IC6CON1      = 0x168;
_IC6CON1bits  = 0x168;
 IC6CON2      = 0x16A;
_IC6CON2      = 0x16A;
_IC6CON2bits  = 0x16A;
 IC6BUF       = 0x16C;
_IC6BUF       = 0x16C;
 IC6TMR       = 0x16E;
_IC6TMR       = 0x16E;
 IC7CON1      = 0x170;
_IC7CON1      = 0x170;
_IC7CON1bits  = 0x170;
 IC7CON2      = 0x172;
_IC7CON2      = 0x172;
_IC7CON2bits  = 0x172;
 IC7BUF       = 0x174;
_IC7BUF       = 0x174;
 IC7TMR       = 0x176;
_IC7TMR       = 0x176;
 IC8CON1      = 0x178;
_IC8CON1      = 0x178;
_IC8CON1bits  = 0x178;
 IC8CON2      = 0x17A;
_IC8CON2      = 0x17A;
_IC8CON2bits  = 0x17A;
 IC8BUF       = 0x17C;
_IC8BUF       = 0x17C;
 IC8TMR       = 0x17E;
_IC8TMR       = 0x17E;
 IC9CON1      = 0x180;
_IC9CON1      = 0x180;
_IC9CON1bits  = 0x180;
 IC9CON2      = 0x182;
_IC9CON2      = 0x182;
_IC9CON2bits  = 0x182;
 IC9BUF       = 0x184;
_IC9BUF       = 0x184;
 IC9TMR       = 0x186;
_IC9TMR       = 0x186;
 IC10CON1     = 0x188;
_IC10CON1     = 0x188;
_IC10CON1bits = 0x188;
 IC10CON2     = 0x18A;
_IC10CON2     = 0x18A;
_IC10CON2bits = 0x18A;
 IC10BUF      = 0x18C;
_IC10BUF      = 0x18C;
 IC10TMR      = 0x18E;
_IC10TMR      = 0x18E;
 IC11CON1     = 0x190;
_IC11CON1     = 0x190;
_IC11CON1bits = 0x190;
 IC11CON2     = 0x192;
_IC11CON2     = 0x192;
_IC11CON2bits = 0x192;
 IC11BUF      = 0x194;
_IC11BUF      = 0x194;
 IC11TMR      = 0x196;
_IC11TMR      = 0x196;
 IC12CON1     = 0x198;
_IC12CON1     = 0x198;
_IC12CON1bits = 0x198;
 IC12CON2     = 0x19A;
_IC12CON2     = 0x19A;
_IC12CON2bits = 0x19A;
 IC12BUF      = 0x19C;
_IC12BUF      = 0x19C;
 IC12TMR      = 0x19E;
_IC12TMR      = 0x19E;
 IC13CON1     = 0x1A0;
_IC13CON1     = 0x1A0;
_IC13CON1bits = 0x1A0;
 IC13CON2     = 0x1A2;
_IC13CON2     = 0x1A2;
_IC13CON2bits = 0x1A2;
 IC13BUF      = 0x1A4;
_IC13BUF      = 0x1A4;
 IC13TMR      = 0x1A6;
_IC13TMR      = 0x1A6;
 IC14CON1     = 0x1A8;
_IC14CON1     = 0x1A8;
_IC14CON1bits = 0x1A8;
 IC14CON2     = 0x1AA;
_IC14CON2     = 0x1AA;
_IC14CON2bits = 0x1AA;
 IC14BUF      = 0x1AC;
_IC14BUF      = 0x1AC;
 IC14TMR      = 0x1AE;
_IC14TMR      = 0x1AE;
 IC15CON1     = 0x1B0;
_IC15CON1     = 0x1B0;
_IC15CON1bits = 0x1B0;
 IC15CON2     = 0x1B2;
_IC15CON2     = 0x1B2;
_IC15CON2bits = 0x1B2;
 IC15BUF      = 0x1B4;
_IC15BUF      = 0x1B4;
 IC15TMR      = 0x1B6;
_IC15TMR      = 0x1B6;
 IC16CON1     = 0x1B8;
_IC16CON1     = 0x1B8;
_IC16CON1bits = 0x1B8;
 IC16CON2     = 0x1BA;
_IC16CON2     = 0x1BA;
_IC16CON2bits = 0x1BA;
 IC16BUF      = 0x1BC;
_IC16BUF      = 0x1BC;
 IC16TMR      = 0x1BE;
_IC16TMR      = 0x1BE;
 I2C1RCV      = 0x200;
_I2C1RCV      = 0x200;
 I2C1TRN      = 0x202;
_I2C1TRN      = 0x202;
 I2C1BRG      = 0x204;
_I2C1BRG      = 0x204;
 I2C1CON      = 0x206;
_I2C1CON      = 0x206;
_I2C1CONbits  = 0x206;
 I2C1STAT     = 0x208;
_I2C1STAT     = 0x208;
_I2C1STATbits = 0x208;
 I2C1ADD      = 0x20A;
_I2C1ADD      = 0x20A;
 I2C1MSK      = 0x20C;
_I2C1MSK      = 0x20C;
 I2C2RCV      = 0x210;
_I2C2RCV      = 0x210;
 I2C2TRN      = 0x212;
_I2C2TRN      = 0x212;
 I2C2BRG      = 0x214;
_I2C2BRG      = 0x214;
 I2C2CON      = 0x216;
_I2C2CON      = 0x216;
_I2C2CONbits  = 0x216;
 I2C2STAT     = 0x218;
_I2C2STAT     = 0x218;
_I2C2STATbits = 0x218;
 I2C2ADD      = 0x21A;
_I2C2ADD      = 0x21A;
 I2C2MSK      = 0x21C;
_I2C2MSK      = 0x21C;
 U1MODE       = 0x220;
_U1MODE       = 0x220;
_U1MODEbits   = 0x220;
 U1STA        = 0x222;
_U1STA        = 0x222;
_U1STAbits    = 0x222;
 U1TXREG      = 0x224;
_U1TXREG      = 0x224;
 U1RXREG      = 0x226;
_U1RXREG      = 0x226;
 U1BRG        = 0x228;
_U1BRG        = 0x228;
 U2MODE       = 0x230;
_U2MODE       = 0x230;
_U2MODEbits   = 0x230;
 U2STA        = 0x232;
_U2STA        = 0x232;
_U2STAbits    = 0x232;
 U2TXREG      = 0x234;
_U2TXREG      = 0x234;
 U2RXREG      = 0x236;
_U2RXREG      = 0x236;
 U2BRG        = 0x238;
_U2BRG        = 0x238;
 SPI1STAT     = 0x240;
_SPI1STAT     = 0x240;
_SPI1STATbits = 0x240;
 SPI1CON1     = 0x242;
_SPI1CON1     = 0x242;
_SPI1CON1bits = 0x242;
 SPI1CON2     = 0x244;
_SPI1CON2     = 0x244;
_SPI1CON2bits = 0x244;
 SPI1BUF      = 0x248;
_SPI1BUF      = 0x248;
 U3MODE       = 0x250;
_U3MODE       = 0x250;
_U3MODEbits   = 0x250;
 U3STA        = 0x252;
_U3STA        = 0x252;
_U3STAbits    = 0x252;
 U3TXREG      = 0x254;
_U3TXREG      = 0x254;
 U3RXREG      = 0x256;
_U3RXREG      = 0x256;
 U3BRG        = 0x258;
_U3BRG        = 0x258;
 SPI2STAT     = 0x260;
_SPI2STAT     = 0x260;
_SPI2STATbits = 0x260;
 SPI2CON1     = 0x262;
_SPI2CON1     = 0x262;
_SPI2CON1bits = 0x262;
 SPI2CON2     = 0x264;
_SPI2CON2     = 0x264;
_SPI2CON2bits = 0x264;
 SPI2BUF      = 0x268;
_SPI2BUF      = 0x268;
 DCICON1      = 0x280;
_DCICON1      = 0x280;
_DCICON1bits  = 0x280;
 DCICON2      = 0x282;
_DCICON2      = 0x282;
_DCICON2bits  = 0x282;
 DCICON3      = 0x284;
_DCICON3      = 0x284;
_DCICON3bits  = 0x284;
 DCISTAT      = 0x286;
_DCISTAT      = 0x286;
_DCISTATbits  = 0x286;
 TSCON        = 0x288;
_TSCON        = 0x288;
_TSCONbits    = 0x288;
 RSCON        = 0x28C;
_RSCON        = 0x28C;
_RSCONbits    = 0x28C;
 RXBUF0       = 0x290;
_RXBUF0       = 0x290;
 RXBUF1       = 0x292;
_RXBUF1       = 0x292;
 RXBUF2       = 0x294;
_RXBUF2       = 0x294;
 RXBUF3       = 0x296;
_RXBUF3       = 0x296;
 TXBUF0       = 0x298;
_TXBUF0       = 0x298;
 TXBUF1       = 0x29A;
_TXBUF1       = 0x29A;
 TXBUF2       = 0x29C;
_TXBUF2       = 0x29C;
 TXBUF3       = 0x29E;
_TXBUF3       = 0x29E;
 SPI3STAT     = 0x2A0;
_SPI3STAT     = 0x2A0;
_SPI3STATbits = 0x2A0;
 SPI3CON1     = 0x2A2;
_SPI3CON1     = 0x2A2;
_SPI3CON1bits = 0x2A2;
 SPI3CON2     = 0x2A4;
_SPI3CON2     = 0x2A4;
_SPI3CON2bits = 0x2A4;
 SPI3BUF      = 0x2A8;
_SPI3BUF      = 0x2A8;
 U4MODE       = 0x2B0;
_U4MODE       = 0x2B0;
_U4MODEbits   = 0x2B0;
 U4STA        = 0x2B2;
_U4STA        = 0x2B2;
_U4STAbits    = 0x2B2;
 U4TXREG      = 0x2B4;
_U4TXREG      = 0x2B4;
 U4RXREG      = 0x2B6;
_U4RXREG      = 0x2B6;
 U4BRG        = 0x2B8;
_U4BRG        = 0x2B8;
 SPI4STAT     = 0x2C0;
_SPI4STAT     = 0x2C0;
_SPI4STATbits = 0x2C0;
 SPI4CON1     = 0x2C2;
_SPI4CON1     = 0x2C2;
_SPI4CON1bits = 0x2C2;
 SPI4CON2     = 0x2C4;
_SPI4CON2     = 0x2C4;
_SPI4CON2bits = 0x2C4;
 SPI4BUF      = 0x2C8;
_SPI4BUF      = 0x2C8;
 ADC1BUF0     = 0x300;
_ADC1BUF0     = 0x300;
 ADC1BUF1     = 0x302;
_ADC1BUF1     = 0x302;
 ADC1BUF2     = 0x304;
_ADC1BUF2     = 0x304;
 ADC1BUF3     = 0x306;
_ADC1BUF3     = 0x306;
 ADC1BUF4     = 0x308;
_ADC1BUF4     = 0x308;
 ADC1BUF5     = 0x30A;
_ADC1BUF5     = 0x30A;
 ADC1BUF6     = 0x30C;
_ADC1BUF6     = 0x30C;
 ADC1BUF7     = 0x30E;
_ADC1BUF7     = 0x30E;
 ADC1BUF8     = 0x310;
_ADC1BUF8     = 0x310;
 ADC1BUF9     = 0x312;
_ADC1BUF9     = 0x312;
 ADC1BUFA     = 0x314;
_ADC1BUFA     = 0x314;
 ADC1BUFB     = 0x316;
_ADC1BUFB     = 0x316;
 ADC1BUFC     = 0x318;
_ADC1BUFC     = 0x318;
 ADC1BUFD     = 0x31A;
_ADC1BUFD     = 0x31A;
 ADC1BUFE     = 0x31C;
_ADC1BUFE     = 0x31C;
 ADC1BUFF     = 0x31E;
_ADC1BUFF     = 0x31E;
 AD1CON1      = 0x320;
_AD1CON1      = 0x320;
_AD1CON1bits  = 0x320;
 AD1CON2      = 0x322;
_AD1CON2      = 0x322;
_AD1CON2bits  = 0x322;
 AD1CON3      = 0x324;
_AD1CON3      = 0x324;
_AD1CON3bits  = 0x324;
 AD1CHS123    = 0x326;
_AD1CHS123    = 0x326;
_AD1CHS123bits = 0x326;
 AD1CHS0      = 0x328;
_AD1CHS0      = 0x328;
_AD1CHS0bits  = 0x328;
 AD1CSSH      = 0x32E;
_AD1CSSH      = 0x32E;
_AD1CSSHbits  = 0x32E;
 AD1CSSL      = 0x330;
_AD1CSSL      = 0x330;
_AD1CSSLbits  = 0x330;
 AD1CON4      = 0x332;
_AD1CON4      = 0x332;
_AD1CON4bits  = 0x332;
 ADC2BUF0     = 0x340;
_ADC2BUF0     = 0x340;
 ADC2BUF1     = 0x342;
_ADC2BUF1     = 0x342;
 ADC2BUF2     = 0x344;
_ADC2BUF2     = 0x344;
 ADC2BUF3     = 0x346;
_ADC2BUF3     = 0x346;
 ADC2BUF4     = 0x348;
_ADC2BUF4     = 0x348;
 ADC2BUF5     = 0x34A;
_ADC2BUF5     = 0x34A;
 ADC2BUF6     = 0x34C;
_ADC2BUF6     = 0x34C;
 ADC2BUF7     = 0x34E;
_ADC2BUF7     = 0x34E;
 ADC2BUF8     = 0x350;
_ADC2BUF8     = 0x350;
 ADC2BUF9     = 0x352;
_ADC2BUF9     = 0x352;
 ADC2BUFA     = 0x354;
_ADC2BUFA     = 0x354;
 ADC2BUFB     = 0x356;
_ADC2BUFB     = 0x356;
 ADC2BUFC     = 0x358;
_ADC2BUFC     = 0x358;
 ADC2BUFD     = 0x35A;
_ADC2BUFD     = 0x35A;
 ADC2BUFE     = 0x35C;
_ADC2BUFE     = 0x35C;
 ADC2BUFF     = 0x35E;
_ADC2BUFF     = 0x35E;
 AD2CON1      = 0x360;
_AD2CON1      = 0x360;
_AD2CON1bits  = 0x360;
 AD2CON2      = 0x362;
_AD2CON2      = 0x362;
_AD2CON2bits  = 0x362;
 AD2CON3      = 0x364;
_AD2CON3      = 0x364;
_AD2CON3bits  = 0x364;
 AD2CHS123    = 0x366;
_AD2CHS123    = 0x366;
_AD2CHS123bits = 0x366;
 AD2CHS0      = 0x368;
_AD2CHS0      = 0x368;
_AD2CHS0bits  = 0x368;
 AD2CSSL      = 0x370;
_AD2CSSL      = 0x370;
_AD2CSSLbits  = 0x370;
 AD2CON4      = 0x372;
_AD2CON4      = 0x372;
_AD2CON4bits  = 0x372;
 C1CTRL1      = 0x400;
_C1CTRL1      = 0x400;
_C1CTRL1bits  = 0x400;
 C1CTRL2      = 0x402;
_C1CTRL2      = 0x402;
_C1CTRL2bits  = 0x402;
 C1VEC        = 0x404;
_C1VEC        = 0x404;
_C1VECbits    = 0x404;
 C1FCTRL      = 0x406;
_C1FCTRL      = 0x406;
_C1FCTRLbits  = 0x406;
 C1FIFO       = 0x408;
_C1FIFO       = 0x408;
_C1FIFObits   = 0x408;
 C1INTF       = 0x40A;
_C1INTF       = 0x40A;
_C1INTFbits   = 0x40A;
 C1INTE       = 0x40C;
_C1INTE       = 0x40C;
_C1INTEbits   = 0x40C;
 C1EC         = 0x40E;
_C1EC         = 0x40E;
_C1ECbits     = 0x40E;
 C1RERRCNT    = 0x40E;
_C1RERRCNT    = 0x40E;
 C1TERRCNT    = 0x40F;
_C1TERRCNT    = 0x40F;
 C1CFG1       = 0x410;
_C1CFG1       = 0x410;
_C1CFG1bits   = 0x410;
 C1CFG2       = 0x412;
_C1CFG2       = 0x412;
_C1CFG2bits   = 0x412;
 C1FEN1       = 0x414;
_C1FEN1       = 0x414;
_C1FEN1bits   = 0x414;
 C1FMSKSEL1   = 0x418;
_C1FMSKSEL1   = 0x418;
_C1FMSKSEL1bits = 0x418;
 C1FMSKSEL2   = 0x41A;
_C1FMSKSEL2   = 0x41A;
_C1FMSKSEL2bits = 0x41A;
 C1BUFPNT1    = 0x420;
_C1BUFPNT1    = 0x420;
_C1BUFPNT1bits = 0x420;
 C1RXFUL1     = 0x420;
_C1RXFUL1     = 0x420;
_C1RXFUL1bits = 0x420;
 C1BUFPNT2    = 0x422;
_C1BUFPNT2    = 0x422;
_C1BUFPNT2bits = 0x422;
 C1RXFUL2     = 0x422;
_C1RXFUL2     = 0x422;
_C1RXFUL2bits = 0x422;
 C1BUFPNT3    = 0x424;
_C1BUFPNT3    = 0x424;
_C1BUFPNT3bits = 0x424;
 C1BUFPNT4    = 0x426;
_C1BUFPNT4    = 0x426;
_C1BUFPNT4bits = 0x426;
 C1RXOVF1     = 0x428;
_C1RXOVF1     = 0x428;
_C1RXOVF1bits = 0x428;
 C1RXOVF2     = 0x42A;
_C1RXOVF2     = 0x42A;
_C1RXOVF2bits = 0x42A;
 C1RXM0SID    = 0x430;
_C1RXM0SID    = 0x430;
_C1RXM0SIDbits = 0x430;
 C1TR01CON    = 0x430;
_C1TR01CON    = 0x430;
_C1TR01CONbits = 0x430;
 C1RXM0EID    = 0x432;
_C1RXM0EID    = 0x432;
_C1RXM0EIDbits = 0x432;
 C1TR23CON    = 0x432;
_C1TR23CON    = 0x432;
_C1TR23CONbits = 0x432;
 C1RXM1SID    = 0x434;
_C1RXM1SID    = 0x434;
_C1RXM1SIDbits = 0x434;
 C1TR45CON    = 0x434;
_C1TR45CON    = 0x434;
_C1TR45CONbits = 0x434;
 C1RXM1EID    = 0x436;
_C1RXM1EID    = 0x436;
_C1RXM1EIDbits = 0x436;
 C1TR67CON    = 0x436;
_C1TR67CON    = 0x436;
_C1TR67CONbits = 0x436;
 C1RXM2SID    = 0x438;
_C1RXM2SID    = 0x438;
_C1RXM2SIDbits = 0x438;
 C1RXM2EID    = 0x43A;
_C1RXM2EID    = 0x43A;
_C1RXM2EIDbits = 0x43A;
 C1RXD        = 0x440;
_C1RXD        = 0x440;
 C1RXF0SID    = 0x440;
_C1RXF0SID    = 0x440;
_C1RXF0SIDbits = 0x440;
 C1RXF0EID    = 0x442;
_C1RXF0EID    = 0x442;
_C1RXF0EIDbits = 0x442;
 C1TXD        = 0x442;
_C1TXD        = 0x442;
_C1TXDbits    = 0x442;
 C1RXF1SID    = 0x444;
_C1RXF1SID    = 0x444;
_C1RXF1SIDbits = 0x444;
 C1RXF1EID    = 0x446;
_C1RXF1EID    = 0x446;
_C1RXF1EIDbits = 0x446;
 C1RXF2SID    = 0x448;
_C1RXF2SID    = 0x448;
_C1RXF2SIDbits = 0x448;
 C1RXF2EID    = 0x44A;
_C1RXF2EID    = 0x44A;
_C1RXF2EIDbits = 0x44A;
 C1RXF3SID    = 0x44C;
_C1RXF3SID    = 0x44C;
_C1RXF3SIDbits = 0x44C;
 C1RXF3EID    = 0x44E;
_C1RXF3EID    = 0x44E;
_C1RXF3EIDbits = 0x44E;
 C1RXF4SID    = 0x450;
_C1RXF4SID    = 0x450;
_C1RXF4SIDbits = 0x450;
 C1RXF4EID    = 0x452;
_C1RXF4EID    = 0x452;
_C1RXF4EIDbits = 0x452;
 C1RXF5SID    = 0x454;
_C1RXF5SID    = 0x454;
_C1RXF5SIDbits = 0x454;
 C1RXF5EID    = 0x456;
_C1RXF5EID    = 0x456;
_C1RXF5EIDbits = 0x456;
 C1RXF6SID    = 0x458;
_C1RXF6SID    = 0x458;
_C1RXF6SIDbits = 0x458;
 C1RXF6EID    = 0x45A;
_C1RXF6EID    = 0x45A;
_C1RXF6EIDbits = 0x45A;
 C1RXF7SID    = 0x45C;
_C1RXF7SID    = 0x45C;
_C1RXF7SIDbits = 0x45C;
 C1RXF7EID    = 0x45E;
_C1RXF7EID    = 0x45E;
_C1RXF7EIDbits = 0x45E;
 C1RXF8SID    = 0x460;
_C1RXF8SID    = 0x460;
_C1RXF8SIDbits = 0x460;
 C1RXF8EID    = 0x462;
_C1RXF8EID    = 0x462;
_C1RXF8EIDbits = 0x462;
 C1RXF9SID    = 0x464;
_C1RXF9SID    = 0x464;
_C1RXF9SIDbits = 0x464;
 C1RXF9EID    = 0x466;
_C1RXF9EID    = 0x466;
_C1RXF9EIDbits = 0x466;
 C1RXF10SID   = 0x468;
_C1RXF10SID   = 0x468;
_C1RXF10SIDbits = 0x468;
 C1RXF10EID   = 0x46A;
_C1RXF10EID   = 0x46A;
_C1RXF10EIDbits = 0x46A;
 C1RXF11SID   = 0x46C;
_C1RXF11SID   = 0x46C;
_C1RXF11SIDbits = 0x46C;
 C1RXF11EID   = 0x46E;
_C1RXF11EID   = 0x46E;
_C1RXF11EIDbits = 0x46E;
 C1RXF12SID   = 0x470;
_C1RXF12SID   = 0x470;
_C1RXF12SIDbits = 0x470;
 C1RXF12EID   = 0x472;
_C1RXF12EID   = 0x472;
_C1RXF12EIDbits = 0x472;
 C1RXF13SID   = 0x474;
_C1RXF13SID   = 0x474;
_C1RXF13SIDbits = 0x474;
 C1RXF13EID   = 0x476;
_C1RXF13EID   = 0x476;
_C1RXF13EIDbits = 0x476;
 C1RXF14SID   = 0x478;
_C1RXF14SID   = 0x478;
_C1RXF14SIDbits = 0x478;
 C1RXF14EID   = 0x47A;
_C1RXF14EID   = 0x47A;
_C1RXF14EIDbits = 0x47A;
 C1RXF15SID   = 0x47C;
_C1RXF15SID   = 0x47C;
_C1RXF15SIDbits = 0x47C;
 C1RXF15EID   = 0x47E;
_C1RXF15EID   = 0x47E;
_C1RXF15EIDbits = 0x47E;
 C2CTRL1      = 0x500;
_C2CTRL1      = 0x500;
_C2CTRL1bits  = 0x500;
 C2CTRL2      = 0x502;
_C2CTRL2      = 0x502;
_C2CTRL2bits  = 0x502;
 C2VEC        = 0x504;
_C2VEC        = 0x504;
_C2VECbits    = 0x504;
 C2FCTRL      = 0x506;
_C2FCTRL      = 0x506;
_C2FCTRLbits  = 0x506;
 C2FIFO       = 0x508;
_C2FIFO       = 0x508;
_C2FIFObits   = 0x508;
 C2INTF       = 0x50A;
_C2INTF       = 0x50A;
_C2INTFbits   = 0x50A;
 C2INTE       = 0x50C;
_C2INTE       = 0x50C;
_C2INTEbits   = 0x50C;
 C2EC         = 0x50E;
_C2EC         = 0x50E;
_C2ECbits     = 0x50E;
 C2RERRCNT    = 0x50E;
_C2RERRCNT    = 0x50E;
 C2TERRCNT    = 0x50F;
_C2TERRCNT    = 0x50F;
 C2CFG1       = 0x510;
_C2CFG1       = 0x510;
_C2CFG1bits   = 0x510;
 C2CFG2       = 0x512;
_C2CFG2       = 0x512;
_C2CFG2bits   = 0x512;
 C2FEN1       = 0x514;
_C2FEN1       = 0x514;
_C2FEN1bits   = 0x514;
 C2FMSKSEL1   = 0x518;
_C2FMSKSEL1   = 0x518;
_C2FMSKSEL1bits = 0x518;
 C2FMSKSEL2   = 0x51A;
_C2FMSKSEL2   = 0x51A;
_C2FMSKSEL2bits = 0x51A;
 C2BUFPNT1    = 0x520;
_C2BUFPNT1    = 0x520;
_C2BUFPNT1bits = 0x520;
 C2RXFUL1     = 0x520;
_C2RXFUL1     = 0x520;
_C2RXFUL1bits = 0x520;
 C2BUFPNT2    = 0x522;
_C2BUFPNT2    = 0x522;
_C2BUFPNT2bits = 0x522;
 C2RXFUL2     = 0x522;
_C2RXFUL2     = 0x522;
_C2RXFUL2bits = 0x522;
 C2BUFPNT3    = 0x524;
_C2BUFPNT3    = 0x524;
_C2BUFPNT3bits = 0x524;
 C2BUFPNT4    = 0x526;
_C2BUFPNT4    = 0x526;
_C2BUFPNT4bits = 0x526;
 C2RXOVF1     = 0x528;
_C2RXOVF1     = 0x528;
_C2RXOVF1bits = 0x528;
 C2RXOVF2     = 0x52A;
_C2RXOVF2     = 0x52A;
_C2RXOVF2bits = 0x52A;
 C2RXM0SID    = 0x530;
_C2RXM0SID    = 0x530;
_C2RXM0SIDbits = 0x530;
 C2TR01CON    = 0x530;
_C2TR01CON    = 0x530;
_C2TR01CONbits = 0x530;
 C2RXM0EID    = 0x532;
_C2RXM0EID    = 0x532;
_C2RXM0EIDbits = 0x532;
 C2TR23CON    = 0x532;
_C2TR23CON    = 0x532;
_C2TR23CONbits = 0x532;
 C2RXM1SID    = 0x534;
_C2RXM1SID    = 0x534;
_C2RXM1SIDbits = 0x534;
 C2TR45CON    = 0x534;
_C2TR45CON    = 0x534;
_C2TR45CONbits = 0x534;
 C2RXM1EID    = 0x536;
_C2RXM1EID    = 0x536;
_C2RXM1EIDbits = 0x536;
 C2TR67CON    = 0x536;
_C2TR67CON    = 0x536;
_C2TR67CONbits = 0x536;
 C2RXM2SID    = 0x538;
_C2RXM2SID    = 0x538;
_C2RXM2SIDbits = 0x538;
 C2RXM2EID    = 0x53A;
_C2RXM2EID    = 0x53A;
_C2RXM2EIDbits = 0x53A;
 C2RXD        = 0x540;
_C2RXD        = 0x540;
 C2RXF0SID    = 0x540;
_C2RXF0SID    = 0x540;
_C2RXF0SIDbits = 0x540;
 C2RXF0EID    = 0x542;
_C2RXF0EID    = 0x542;
_C2RXF0EIDbits = 0x542;
 C2TXD        = 0x542;
_C2TXD        = 0x542;
_C2TXDbits    = 0x542;
 C2RXF1SID    = 0x544;
_C2RXF1SID    = 0x544;
_C2RXF1SIDbits = 0x544;
 C2RXF1EID    = 0x546;
_C2RXF1EID    = 0x546;
_C2RXF1EIDbits = 0x546;
 C2RXF2SID    = 0x548;
_C2RXF2SID    = 0x548;
_C2RXF2SIDbits = 0x548;
 C2RXF2EID    = 0x54A;
_C2RXF2EID    = 0x54A;
_C2RXF2EIDbits = 0x54A;
 C2RXF3SID    = 0x54C;
_C2RXF3SID    = 0x54C;
_C2RXF3SIDbits = 0x54C;
 C2RXF3EID    = 0x54E;
_C2RXF3EID    = 0x54E;
_C2RXF3EIDbits = 0x54E;
 C2RXF4SID    = 0x550;
_C2RXF4SID    = 0x550;
_C2RXF4SIDbits = 0x550;
 C2RXF4EID    = 0x552;
_C2RXF4EID    = 0x552;
_C2RXF4EIDbits = 0x552;
 C2RXF5SID    = 0x554;
_C2RXF5SID    = 0x554;
_C2RXF5SIDbits = 0x554;
 C2RXF5EID    = 0x556;
_C2RXF5EID    = 0x556;
_C2RXF5EIDbits = 0x556;
 C2RXF6SID    = 0x558;
_C2RXF6SID    = 0x558;
_C2RXF6SIDbits = 0x558;
 C2RXF6EID    = 0x55A;
_C2RXF6EID    = 0x55A;
_C2RXF6EIDbits = 0x55A;
 C2RXF7SID    = 0x55C;
_C2RXF7SID    = 0x55C;
_C2RXF7SIDbits = 0x55C;
 C2RXF7EID    = 0x55E;
_C2RXF7EID    = 0x55E;
_C2RXF7EIDbits = 0x55E;
 C2RXF8SID    = 0x560;
_C2RXF8SID    = 0x560;
_C2RXF8SIDbits = 0x560;
 C2RXF8EID    = 0x562;
_C2RXF8EID    = 0x562;
_C2RXF8EIDbits = 0x562;
 C2RXF9SID    = 0x564;
_C2RXF9SID    = 0x564;
_C2RXF9SIDbits = 0x564;
 C2RXF9EID    = 0x566;
_C2RXF9EID    = 0x566;
_C2RXF9EIDbits = 0x566;
 C2RXF10SID   = 0x568;
_C2RXF10SID   = 0x568;
_C2RXF10SIDbits = 0x568;
 C2RXF10EID   = 0x56A;
_C2RXF10EID   = 0x56A;
_C2RXF10EIDbits = 0x56A;
 C2RXF11SID   = 0x56C;
_C2RXF11SID   = 0x56C;
_C2RXF11SIDbits = 0x56C;
 C2RXF11EID   = 0x56E;
_C2RXF11EID   = 0x56E;
_C2RXF11EIDbits = 0x56E;
 C2RXF12SID   = 0x570;
_C2RXF12SID   = 0x570;
_C2RXF12SIDbits = 0x570;
 C2RXF12EID   = 0x572;
_C2RXF12EID   = 0x572;
_C2RXF12EIDbits = 0x572;
 C2RXF13SID   = 0x574;
_C2RXF13SID   = 0x574;
_C2RXF13SIDbits = 0x574;
 C2RXF13EID   = 0x576;
_C2RXF13EID   = 0x576;
_C2RXF13EIDbits = 0x576;
 C2RXF14SID   = 0x578;
_C2RXF14SID   = 0x578;
_C2RXF14SIDbits = 0x578;
 C2RXF14EID   = 0x57A;
_C2RXF14EID   = 0x57A;
_C2RXF14EIDbits = 0x57A;
 C2RXF15SID   = 0x57C;
_C2RXF15SID   = 0x57C;
_C2RXF15SIDbits = 0x57C;
 C2RXF15EID   = 0x57E;
_C2RXF15EID   = 0x57E;
_C2RXF15EIDbits = 0x57E;
 PMCON        = 0x600;
_PMCON        = 0x600;
_PMCONbits    = 0x600;
 PMMODE       = 0x602;
_PMMODE       = 0x602;
_PMMODEbits   = 0x602;
 PMADDR       = 0x604;
_PMADDR       = 0x604;
_PMADDRbits   = 0x604;
 PMDOUT1      = 0x604;
_PMDOUT1      = 0x604;
_PMDOUT1bits  = 0x604;
 PMDOUT2      = 0x606;
_PMDOUT2      = 0x606;
 PMDIN1       = 0x608;
_PMDIN1       = 0x608;
 PMDIN2       = 0x60A;
_PMDIN2       = 0x60A;
 PMAEN        = 0x60C;
_PMAEN        = 0x60C;
_PMAENbits    = 0x60C;
 PMSTAT       = 0x60E;
_PMSTAT       = 0x60E;
_PMSTATbits   = 0x60E;
 ALRMVAL      = 0x620;
_ALRMVAL      = 0x620;
 ALCFGRPT     = 0x622;
_ALCFGRPT     = 0x622;
_ALCFGRPTbits = 0x622;
 RTCVAL       = 0x624;
_RTCVAL       = 0x624;
 RCFGCAL      = 0x626;
_RCFGCAL      = 0x626;
_RCFGCALbits  = 0x626;
 CRCCON1      = 0x640;
_CRCCON1      = 0x640;
_CRCCON1bits  = 0x640;
 CRCCON2      = 0x642;
_CRCCON2      = 0x642;
_CRCCON2bits  = 0x642;
 CRCXORL      = 0x644;
_CRCXORL      = 0x644;
_CRCXORLbits  = 0x644;
 CRCXORH      = 0x646;
_CRCXORH      = 0x646;
_CRCXORHbits  = 0x646;
 CRCDAT       = 0x648;
_CRCDAT       = 0x648;
 CRCDATL      = 0x648;
_CRCDATL      = 0x648;
 CRCDATH      = 0x64A;
_CRCDATH      = 0x64A;
 CRCWDAT      = 0x64C;
_CRCWDAT      = 0x64C;
 CRCWDATL     = 0x64C;
_CRCWDATL     = 0x64C;
 CRCWDATH     = 0x64E;
_CRCWDATH     = 0x64E;
 RPOR0        = 0x680;
_RPOR0        = 0x680;
_RPOR0bits    = 0x680;
 RPOR1        = 0x682;
_RPOR1        = 0x682;
_RPOR1bits    = 0x682;
 RPOR2        = 0x684;
_RPOR2        = 0x684;
_RPOR2bits    = 0x684;
 RPOR3        = 0x686;
_RPOR3        = 0x686;
_RPOR3bits    = 0x686;
 RPOR4        = 0x688;
_RPOR4        = 0x688;
_RPOR4bits    = 0x688;
 RPOR5        = 0x68A;
_RPOR5        = 0x68A;
_RPOR5bits    = 0x68A;
 RPOR6        = 0x68C;
_RPOR6        = 0x68C;
_RPOR6bits    = 0x68C;
 RPOR7        = 0x68E;
_RPOR7        = 0x68E;
_RPOR7bits    = 0x68E;
 RPOR8        = 0x690;
_RPOR8        = 0x690;
_RPOR8bits    = 0x690;
 RPOR9        = 0x692;
_RPOR9        = 0x692;
_RPOR9bits    = 0x692;
 RPOR10       = 0x694;
_RPOR10       = 0x694;
_RPOR10bits   = 0x694;
 RPOR13       = 0x69A;
_RPOR13       = 0x69A;
_RPOR13bits   = 0x69A;
 RPOR14       = 0x69C;
_RPOR14       = 0x69C;
_RPOR14bits   = 0x69C;
 RPINR0       = 0x6A0;
_RPINR0       = 0x6A0;
_RPINR0bits   = 0x6A0;
 RPINR1       = 0x6A2;
_RPINR1       = 0x6A2;
_RPINR1bits   = 0x6A2;
 RPINR2       = 0x6A4;
_RPINR2       = 0x6A4;
_RPINR2bits   = 0x6A4;
 RPINR3       = 0x6A6;
_RPINR3       = 0x6A6;
_RPINR3bits   = 0x6A6;
 RPINR4       = 0x6A8;
_RPINR4       = 0x6A8;
_RPINR4bits   = 0x6A8;
 RPINR5       = 0x6AA;
_RPINR5       = 0x6AA;
_RPINR5bits   = 0x6AA;
 RPINR6       = 0x6AC;
_RPINR6       = 0x6AC;
_RPINR6bits   = 0x6AC;
 RPINR7       = 0x6AE;
_RPINR7       = 0x6AE;
_RPINR7bits   = 0x6AE;
 RPINR8       = 0x6B0;
_RPINR8       = 0x6B0;
_RPINR8bits   = 0x6B0;
 RPINR9       = 0x6B2;
_RPINR9       = 0x6B2;
_RPINR9bits   = 0x6B2;
 RPINR10      = 0x6B4;
_RPINR10      = 0x6B4;
_RPINR10bits  = 0x6B4;
 RPINR11      = 0x6B6;
_RPINR11      = 0x6B6;
_RPINR11bits  = 0x6B6;
 RPINR18      = 0x6C4;
_RPINR18      = 0x6C4;
_RPINR18bits  = 0x6C4;
 RPINR19      = 0x6C6;
_RPINR19      = 0x6C6;
_RPINR19bits  = 0x6C6;
 RPINR20      = 0x6C8;
_RPINR20      = 0x6C8;
_RPINR20bits  = 0x6C8;
 RPINR21      = 0x6CA;
_RPINR21      = 0x6CA;
_RPINR21bits  = 0x6CA;
 RPINR23      = 0x6CE;
_RPINR23      = 0x6CE;
_RPINR23bits  = 0x6CE;
 RPINR24      = 0x6D0;
_RPINR24      = 0x6D0;
_RPINR24bits  = 0x6D0;
 RPINR25      = 0x6D2;
_RPINR25      = 0x6D2;
_RPINR25bits  = 0x6D2;
 RPINR26      = 0x6D4;
_RPINR26      = 0x6D4;
_RPINR26bits  = 0x6D4;
 RPINR27      = 0x6D6;
_RPINR27      = 0x6D6;
_RPINR27bits  = 0x6D6;
 RPINR28      = 0x6D8;
_RPINR28      = 0x6D8;
_RPINR28bits  = 0x6D8;
 RPINR29      = 0x6DA;
_RPINR29      = 0x6DA;
_RPINR29bits  = 0x6DA;
 RPINR30      = 0x6DC;
_RPINR30      = 0x6DC;
_RPINR30bits  = 0x6DC;
 RPINR31      = 0x6DE;
_RPINR31      = 0x6DE;
_RPINR31bits  = 0x6DE;
 RPINR32      = 0x6E0;
_RPINR32      = 0x6E0;
_RPINR32bits  = 0x6E0;
 RPINR33      = 0x6E2;
_RPINR33      = 0x6E2;
_RPINR33bits  = 0x6E2;
 RPINR34      = 0x6E4;
_RPINR34      = 0x6E4;
_RPINR34bits  = 0x6E4;
 RPINR35      = 0x6E6;
_RPINR35      = 0x6E6;
_RPINR35bits  = 0x6E6;
 RPINR36      = 0x6E8;
_RPINR36      = 0x6E8;
_RPINR36bits  = 0x6E8;
 RPINR37      = 0x6EA;
_RPINR37      = 0x6EA;
_RPINR37bits  = 0x6EA;
 NVMCON       = 0x728;
_NVMCON       = 0x728;
_NVMCONbits   = 0x728;
 NVMADR       = 0x72A;
_NVMADR       = 0x72A;
 NVMADRU      = 0x72C;
_NVMADRU      = 0x72C;
_NVMADRUbits  = 0x72C;
 NVMKEY       = 0x72E;
_NVMKEY       = 0x72E;
 RCON         = 0x740;
_RCON         = 0x740;
_RCONbits     = 0x740;
 OSCCON       = 0x742;
_OSCCON       = 0x742;
_OSCCONbits   = 0x742;
 OSCCONL      = 0x742;
_OSCCONL      = 0x742;
 OSCCONH      = 0x743;
_OSCCONH      = 0x743;
 CLKDIV       = 0x744;
_CLKDIV       = 0x744;
_CLKDIVbits   = 0x744;
 PLLFBD       = 0x746;
_PLLFBD       = 0x746;
_PLLFBDbits   = 0x746;
 OSCTUN       = 0x748;
_OSCTUN       = 0x748;
_OSCTUNbits   = 0x748;
 REFOCON      = 0x74E;
_REFOCON      = 0x74E;
_REFOCONbits  = 0x74E;
 ACLKCON3     = 0x758;
_ACLKCON3     = 0x758;
_ACLKCON3bits = 0x758;
 ACLKDIV3     = 0x75A;
_ACLKDIV3     = 0x75A;
_ACLKDIV3bits = 0x75A;
 PMD1         = 0x760;
_PMD1         = 0x760;
_PMD1bits     = 0x760;
 PMD2         = 0x762;
_PMD2         = 0x762;
_PMD2bits     = 0x762;
 PMD3         = 0x764;
_PMD3         = 0x764;
_PMD3bits     = 0x764;
 PMD4         = 0x766;
_PMD4         = 0x766;
_PMD4bits     = 0x766;
 PMD5         = 0x768;
_PMD5         = 0x768;
_PMD5bits     = 0x768;
 PMD6         = 0x76A;
_PMD6         = 0x76A;
_PMD6bits     = 0x76A;
 PMD7         = 0x76C;
_PMD7         = 0x76C;
_PMD7bits     = 0x76C;
 IFS0         = 0x800;
_IFS0         = 0x800;
_IFS0bits     = 0x800;
 IFS1         = 0x802;
_IFS1         = 0x802;
_IFS1bits     = 0x802;
 IFS2         = 0x804;
_IFS2         = 0x804;
_IFS2bits     = 0x804;
 IFS3         = 0x806;
_IFS3         = 0x806;
_IFS3bits     = 0x806;
 IFS4         = 0x808;
_IFS4         = 0x808;
_IFS4bits     = 0x808;
 IFS5         = 0x80A;
_IFS5         = 0x80A;
_IFS5bits     = 0x80A;
 IFS6         = 0x80C;
_IFS6         = 0x80C;
 IFS7         = 0x80E;
_IFS7         = 0x80E;
_IFS7bits     = 0x80E;
 IFS8         = 0x810;
_IFS8         = 0x810;
_IFS8bits     = 0x810;
 IEC0         = 0x820;
_IEC0         = 0x820;
_IEC0bits     = 0x820;
 IEC1         = 0x822;
_IEC1         = 0x822;
_IEC1bits     = 0x822;
 IEC2         = 0x824;
_IEC2         = 0x824;
_IEC2bits     = 0x824;
 IEC3         = 0x826;
_IEC3         = 0x826;
_IEC3bits     = 0x826;
 IEC4         = 0x828;
_IEC4         = 0x828;
_IEC4bits     = 0x828;
 IEC5         = 0x82A;
_IEC5         = 0x82A;
_IEC5bits     = 0x82A;
 IEC6         = 0x82C;
_IEC6         = 0x82C;
 IEC7         = 0x82E;
_IEC7         = 0x82E;
_IEC7bits     = 0x82E;
 IEC8         = 0x830;
_IEC8         = 0x830;
_IEC8bits     = 0x830;
 IPC0         = 0x840;
_IPC0         = 0x840;
_IPC0bits     = 0x840;
 IPC1         = 0x842;
_IPC1         = 0x842;
_IPC1bits     = 0x842;
 IPC2         = 0x844;
_IPC2         = 0x844;
_IPC2bits     = 0x844;
 IPC3         = 0x846;
_IPC3         = 0x846;
_IPC3bits     = 0x846;
 IPC4         = 0x848;
_IPC4         = 0x848;
_IPC4bits     = 0x848;
 IPC5         = 0x84A;
_IPC5         = 0x84A;
_IPC5bits     = 0x84A;
 IPC6         = 0x84C;
_IPC6         = 0x84C;
_IPC6bits     = 0x84C;
 IPC7         = 0x84E;
_IPC7         = 0x84E;
_IPC7bits     = 0x84E;
 IPC8         = 0x850;
_IPC8         = 0x850;
_IPC8bits     = 0x850;
 IPC9         = 0x852;
_IPC9         = 0x852;
_IPC9bits     = 0x852;
 IPC10        = 0x854;
_IPC10        = 0x854;
_IPC10bits    = 0x854;
 IPC11        = 0x856;
_IPC11        = 0x856;
_IPC11bits    = 0x856;
 IPC12        = 0x858;
_IPC12        = 0x858;
_IPC12bits    = 0x858;
 IPC13        = 0x85A;
_IPC13        = 0x85A;
_IPC13bits    = 0x85A;
 IPC14        = 0x85C;
_IPC14        = 0x85C;
_IPC14bits    = 0x85C;
 IPC15        = 0x85E;
_IPC15        = 0x85E;
_IPC15bits    = 0x85E;
 IPC16        = 0x860;
_IPC16        = 0x860;
_IPC16bits    = 0x860;
 IPC17        = 0x862;
_IPC17        = 0x862;
_IPC17bits    = 0x862;
 IPC18        = 0x864;
_IPC18        = 0x864;
 IPC20        = 0x868;
_IPC20        = 0x868;
_IPC20bits    = 0x868;
 IPC21        = 0x86A;
_IPC21        = 0x86A;
_IPC21bits    = 0x86A;
 IPC22        = 0x86C;
_IPC22        = 0x86C;
_IPC22bits    = 0x86C;
 IPC23        = 0x86E;
_IPC23        = 0x86E;
_IPC23bits    = 0x86E;
 IPC24        = 0x870;
_IPC24        = 0x870;
 IPC29        = 0x87A;
_IPC29        = 0x87A;
_IPC29bits    = 0x87A;
 IPC30        = 0x87C;
_IPC30        = 0x87C;
_IPC30bits    = 0x87C;
 IPC31        = 0x87E;
_IPC31        = 0x87E;
_IPC31bits    = 0x87E;
 IPC32        = 0x880;
_IPC32        = 0x880;
_IPC32bits    = 0x880;
 IPC33        = 0x882;
_IPC33        = 0x882;
_IPC33bits    = 0x882;
 IPC34        = 0x884;
_IPC34        = 0x884;
_IPC34bits    = 0x884;
 IPC35        = 0x886;
_IPC35        = 0x886;
_IPC35bits    = 0x886;
 INTCON1      = 0x8C0;
_INTCON1      = 0x8C0;
_INTCON1bits  = 0x8C0;
 INTCON2      = 0x8C2;
_INTCON2      = 0x8C2;
_INTCON2bits  = 0x8C2;
 INTCON3      = 0x8C4;
_INTCON3      = 0x8C4;
_INTCON3bits  = 0x8C4;
 INTCON4      = 0x8C6;
_INTCON4      = 0x8C6;
_INTCON4bits  = 0x8C6;
 INTTREG      = 0x8C8;
_INTTREG      = 0x8C8;
_INTTREGbits  = 0x8C8;
 OC1CON1      = 0x900;
_OC1CON1      = 0x900;
_OC1CON1bits  = 0x900;
 OC1CON2      = 0x902;
_OC1CON2      = 0x902;
_OC1CON2bits  = 0x902;
 OC1RS        = 0x904;
_OC1RS        = 0x904;
 OC1R         = 0x906;
_OC1R         = 0x906;
 OC1TMR       = 0x908;
_OC1TMR       = 0x908;
 OC2CON1      = 0x90A;
_OC2CON1      = 0x90A;
_OC2CON1bits  = 0x90A;
 OC2CON2      = 0x90C;
_OC2CON2      = 0x90C;
_OC2CON2bits  = 0x90C;
 OC2RS        = 0x90E;
_OC2RS        = 0x90E;
 OC2R         = 0x910;
_OC2R         = 0x910;
 OC2TMR       = 0x912;
_OC2TMR       = 0x912;
 OC3CON1      = 0x914;
_OC3CON1      = 0x914;
_OC3CON1bits  = 0x914;
 OC3CON2      = 0x916;
_OC3CON2      = 0x916;
_OC3CON2bits  = 0x916;
 OC3RS        = 0x918;
_OC3RS        = 0x918;
 OC3R         = 0x91A;
_OC3R         = 0x91A;
 OC3TMR       = 0x91C;
_OC3TMR       = 0x91C;
 OC4CON1      = 0x91E;
_OC4CON1      = 0x91E;
_OC4CON1bits  = 0x91E;
 OC4CON2      = 0x920;
_OC4CON2      = 0x920;
_OC4CON2bits  = 0x920;
 OC4RS        = 0x922;
_OC4RS        = 0x922;
 OC4R         = 0x924;
_OC4R         = 0x924;
 OC4TMR       = 0x926;
_OC4TMR       = 0x926;
 OC5CON1      = 0x928;
_OC5CON1      = 0x928;
_OC5CON1bits  = 0x928;
 OC5CON2      = 0x92A;
_OC5CON2      = 0x92A;
_OC5CON2bits  = 0x92A;
 OC5RS        = 0x92C;
_OC5RS        = 0x92C;
 OC5R         = 0x92E;
_OC5R         = 0x92E;
 OC5TMR       = 0x930;
_OC5TMR       = 0x930;
 OC6CON1      = 0x932;
_OC6CON1      = 0x932;
_OC6CON1bits  = 0x932;
 OC6CON2      = 0x934;
_OC6CON2      = 0x934;
_OC6CON2bits  = 0x934;
 OC6RS        = 0x936;
_OC6RS        = 0x936;
 OC6R         = 0x938;
_OC6R         = 0x938;
 OC6TMR       = 0x93A;
_OC6TMR       = 0x93A;
 OC7CON1      = 0x93C;
_OC7CON1      = 0x93C;
_OC7CON1bits  = 0x93C;
 OC7CON2      = 0x93E;
_OC7CON2      = 0x93E;
_OC7CON2bits  = 0x93E;
 OC7RS        = 0x940;
_OC7RS        = 0x940;
 OC7R         = 0x942;
_OC7R         = 0x942;
 OC7TMR       = 0x944;
_OC7TMR       = 0x944;
 OC8CON1      = 0x946;
_OC8CON1      = 0x946;
_OC8CON1bits  = 0x946;
 OC8CON2      = 0x948;
_OC8CON2      = 0x948;
_OC8CON2bits  = 0x948;
 OC8RS        = 0x94A;
_OC8RS        = 0x94A;
 OC8R         = 0x94C;
_OC8R         = 0x94C;
 OC8TMR       = 0x94E;
_OC8TMR       = 0x94E;
 OC9CON1      = 0x950;
_OC9CON1      = 0x950;
_OC9CON1bits  = 0x950;
 OC9CON2      = 0x952;
_OC9CON2      = 0x952;
_OC9CON2bits  = 0x952;
 OC9RS        = 0x954;
_OC9RS        = 0x954;
 OC9R         = 0x956;
_OC9R         = 0x956;
 OC9TMR       = 0x958;
_OC9TMR       = 0x958;
 OC10CON1     = 0x95A;
_OC10CON1     = 0x95A;
_OC10CON1bits = 0x95A;
 OC10CON2     = 0x95C;
_OC10CON2     = 0x95C;
_OC10CON2bits = 0x95C;
 OC10RS       = 0x95E;
_OC10RS       = 0x95E;
 OC10R        = 0x960;
_OC10R        = 0x960;
 OC10TMR      = 0x962;
_OC10TMR      = 0x962;
 OC11CON1     = 0x964;
_OC11CON1     = 0x964;
_OC11CON1bits = 0x964;
 OC11CON2     = 0x966;
_OC11CON2     = 0x966;
_OC11CON2bits = 0x966;
 OC11RS       = 0x968;
_OC11RS       = 0x968;
 OC11R        = 0x96A;
_OC11R        = 0x96A;
 OC11TMR      = 0x96C;
_OC11TMR      = 0x96C;
 OC12CON1     = 0x96E;
_OC12CON1     = 0x96E;
_OC12CON1bits = 0x96E;
 OC12CON2     = 0x970;
_OC12CON2     = 0x970;
_OC12CON2bits = 0x970;
 OC12RS       = 0x972;
_OC12RS       = 0x972;
 OC12R        = 0x974;
_OC12R        = 0x974;
 OC12TMR      = 0x976;
_OC12TMR      = 0x976;
 OC13CON1     = 0x978;
_OC13CON1     = 0x978;
_OC13CON1bits = 0x978;
 OC13CON2     = 0x97A;
_OC13CON2     = 0x97A;
_OC13CON2bits = 0x97A;
 OC13RS       = 0x97C;
_OC13RS       = 0x97C;
 OC13R        = 0x97E;
_OC13R        = 0x97E;
 OC13TMR      = 0x980;
_OC13TMR      = 0x980;
 OC14CON1     = 0x982;
_OC14CON1     = 0x982;
_OC14CON1bits = 0x982;
 OC14CON2     = 0x984;
_OC14CON2     = 0x984;
_OC14CON2bits = 0x984;
 OC14RS       = 0x986;
_OC14RS       = 0x986;
 OC14R        = 0x988;
_OC14R        = 0x988;
 OC14TMR      = 0x98A;
_OC14TMR      = 0x98A;
 OC15CON1     = 0x98C;
_OC15CON1     = 0x98C;
_OC15CON1bits = 0x98C;
 OC15CON2     = 0x98E;
_OC15CON2     = 0x98E;
_OC15CON2bits = 0x98E;
 OC15RS       = 0x990;
_OC15RS       = 0x990;
 OC15R        = 0x992;
_OC15R        = 0x992;
 OC15TMR      = 0x994;
_OC15TMR      = 0x994;
 OC16CON1     = 0x996;
_OC16CON1     = 0x996;
_OC16CON1bits = 0x996;
 OC16CON2     = 0x998;
_OC16CON2     = 0x998;
_OC16CON2bits = 0x998;
 OC16RS       = 0x99A;
_OC16RS       = 0x99A;
 OC16R        = 0x99C;
_OC16R        = 0x99C;
 OC16TMR      = 0x99E;
_OC16TMR      = 0x99E;
 CMSTAT       = 0xA80;
_CMSTAT       = 0xA80;
_CMSTATbits   = 0xA80;
 CVRCON       = 0xA82;
_CVRCON       = 0xA82;
_CVRCONbits   = 0xA82;
 CM1CON       = 0xA84;
_CM1CON       = 0xA84;
_CM1CONbits   = 0xA84;
 CM1MSKSRC    = 0xA86;
_CM1MSKSRC    = 0xA86;
_CM1MSKSRCbits = 0xA86;
 CM1MSKCON    = 0xA88;
_CM1MSKCON    = 0xA88;
_CM1MSKCONbits = 0xA88;
 CM1FLTR      = 0xA8A;
_CM1FLTR      = 0xA8A;
_CM1FLTRbits  = 0xA8A;
 CM2CON       = 0xA8C;
_CM2CON       = 0xA8C;
_CM2CONbits   = 0xA8C;
 CM2MSKSRC    = 0xA8E;
_CM2MSKSRC    = 0xA8E;
_CM2MSKSRCbits = 0xA8E;
 CM2MSKCON    = 0xA90;
_CM2MSKCON    = 0xA90;
_CM2MSKCONbits = 0xA90;
 CM2FLTR      = 0xA92;
_CM2FLTR      = 0xA92;
_CM2FLTRbits  = 0xA92;
 CM3CON       = 0xA94;
_CM3CON       = 0xA94;
_CM3CONbits   = 0xA94;
 CM3MSKSRC    = 0xA96;
_CM3MSKSRC    = 0xA96;
_CM3MSKSRCbits = 0xA96;
 CM3MSKCON    = 0xA98;
_CM3MSKCON    = 0xA98;
_CM3MSKCONbits = 0xA98;
 CM3FLTR      = 0xA9A;
_CM3FLTR      = 0xA9A;
_CM3FLTRbits  = 0xA9A;
 DMA0CON      = 0xB00;
_DMA0CON      = 0xB00;
_DMA0CONbits  = 0xB00;
 DMA0REQ      = 0xB02;
_DMA0REQ      = 0xB02;
_DMA0REQbits  = 0xB02;
 DMA0STAL     = 0xB04;
_DMA0STAL     = 0xB04;
 DMA0STAH     = 0xB06;
_DMA0STAH     = 0xB06;
_DMA0STAHbits = 0xB06;
 DMA0STBL     = 0xB08;
_DMA0STBL     = 0xB08;
 DMA0STBH     = 0xB0A;
_DMA0STBH     = 0xB0A;
_DMA0STBHbits = 0xB0A;
 DMA0PAD      = 0xB0C;
_DMA0PAD      = 0xB0C;
 DMA0CNT      = 0xB0E;
_DMA0CNT      = 0xB0E;
_DMA0CNTbits  = 0xB0E;
 DMA1CON      = 0xB10;
_DMA1CON      = 0xB10;
_DMA1CONbits  = 0xB10;
 DMA1REQ      = 0xB12;
_DMA1REQ      = 0xB12;
_DMA1REQbits  = 0xB12;
 DMA1STAL     = 0xB14;
_DMA1STAL     = 0xB14;
 DMA1STAH     = 0xB16;
_DMA1STAH     = 0xB16;
_DMA1STAHbits = 0xB16;
 DMA1STBL     = 0xB18;
_DMA1STBL     = 0xB18;
 DMA1STBH     = 0xB1A;
_DMA1STBH     = 0xB1A;
_DMA1STBHbits = 0xB1A;
 DMA1PAD      = 0xB1C;
_DMA1PAD      = 0xB1C;
 DMA1CNT      = 0xB1E;
_DMA1CNT      = 0xB1E;
_DMA1CNTbits  = 0xB1E;
 DMA2CON      = 0xB20;
_DMA2CON      = 0xB20;
_DMA2CONbits  = 0xB20;
 DMA2REQ      = 0xB22;
_DMA2REQ      = 0xB22;
_DMA2REQbits  = 0xB22;
 DMA2STAL     = 0xB24;
_DMA2STAL     = 0xB24;
 DMA2STAH     = 0xB26;
_DMA2STAH     = 0xB26;
_DMA2STAHbits = 0xB26;
 DMA2STBL     = 0xB28;
_DMA2STBL     = 0xB28;
 DMA2STBH     = 0xB2A;
_DMA2STBH     = 0xB2A;
_DMA2STBHbits = 0xB2A;
 DMA2PAD      = 0xB2C;
_DMA2PAD      = 0xB2C;
 DMA2CNT      = 0xB2E;
_DMA2CNT      = 0xB2E;
_DMA2CNTbits  = 0xB2E;
 DMA3CON      = 0xB30;
_DMA3CON      = 0xB30;
_DMA3CONbits  = 0xB30;
 DMA3REQ      = 0xB32;
_DMA3REQ      = 0xB32;
_DMA3REQbits  = 0xB32;
 DMA3STAL     = 0xB34;
_DMA3STAL     = 0xB34;
 DMA3STAH     = 0xB36;
_DMA3STAH     = 0xB36;
_DMA3STAHbits = 0xB36;
 DMA3STBL     = 0xB38;
_DMA3STBL     = 0xB38;
 DMA3STBH     = 0xB3A;
_DMA3STBH     = 0xB3A;
_DMA3STBHbits = 0xB3A;
 DMA3PAD      = 0xB3C;
_DMA3PAD      = 0xB3C;
 DMA3CNT      = 0xB3E;
_DMA3CNT      = 0xB3E;
_DMA3CNTbits  = 0xB3E;
 DMA4CON      = 0xB40;
_DMA4CON      = 0xB40;
_DMA4CONbits  = 0xB40;
 DMA4REQ      = 0xB42;
_DMA4REQ      = 0xB42;
_DMA4REQbits  = 0xB42;
 DMA4STAL     = 0xB44;
_DMA4STAL     = 0xB44;
 DMA4STAH     = 0xB46;
_DMA4STAH     = 0xB46;
_DMA4STAHbits = 0xB46;
 DMA4STBL     = 0xB48;
_DMA4STBL     = 0xB48;
 DMA4STBH     = 0xB4A;
_DMA4STBH     = 0xB4A;
_DMA4STBHbits = 0xB4A;
 DMA4PAD      = 0xB4C;
_DMA4PAD      = 0xB4C;
 DMA4CNT      = 0xB4E;
_DMA4CNT      = 0xB4E;
_DMA4CNTbits  = 0xB4E;
 DMA5CON      = 0xB50;
_DMA5CON      = 0xB50;
_DMA5CONbits  = 0xB50;
 DMA5REQ      = 0xB52;
_DMA5REQ      = 0xB52;
_DMA5REQbits  = 0xB52;
 DMA5STAL     = 0xB54;
_DMA5STAL     = 0xB54;
 DMA5STAH     = 0xB56;
_DMA5STAH     = 0xB56;
_DMA5STAHbits = 0xB56;
 DMA5STBL     = 0xB58;
_DMA5STBL     = 0xB58;
 DMA5STBH     = 0xB5A;
_DMA5STBH     = 0xB5A;
_DMA5STBHbits = 0xB5A;
 DMA5PAD      = 0xB5C;
_DMA5PAD      = 0xB5C;
 DMA5CNT      = 0xB5E;
_DMA5CNT      = 0xB5E;
_DMA5CNTbits  = 0xB5E;
 DMA6CON      = 0xB60;
_DMA6CON      = 0xB60;
_DMA6CONbits  = 0xB60;
 DMA6REQ      = 0xB62;
_DMA6REQ      = 0xB62;
_DMA6REQbits  = 0xB62;
 DMA6STAL     = 0xB64;
_DMA6STAL     = 0xB64;
 DMA6STAH     = 0xB66;
_DMA6STAH     = 0xB66;
_DMA6STAHbits = 0xB66;
 DMA6STBL     = 0xB68;
_DMA6STBL     = 0xB68;
 DMA6STBH     = 0xB6A;
_DMA6STBH     = 0xB6A;
_DMA6STBHbits = 0xB6A;
 DMA6PAD      = 0xB6C;
_DMA6PAD      = 0xB6C;
 DMA6CNT      = 0xB6E;
_DMA6CNT      = 0xB6E;
_DMA6CNTbits  = 0xB6E;
 DMA7CON      = 0xB70;
_DMA7CON      = 0xB70;
_DMA7CONbits  = 0xB70;
 DMA7REQ      = 0xB72;
_DMA7REQ      = 0xB72;
_DMA7REQbits  = 0xB72;
 DMA7STAL     = 0xB74;
_DMA7STAL     = 0xB74;
 DMA7STAH     = 0xB76;
_DMA7STAH     = 0xB76;
_DMA7STAHbits = 0xB76;
 DMA7STBL     = 0xB78;
_DMA7STBL     = 0xB78;
 DMA7STBH     = 0xB7A;
_DMA7STBH     = 0xB7A;
_DMA7STBHbits = 0xB7A;
 DMA7PAD      = 0xB7C;
_DMA7PAD      = 0xB7C;
 DMA7CNT      = 0xB7E;
_DMA7CNT      = 0xB7E;
_DMA7CNTbits  = 0xB7E;
 DMA8CON      = 0xB80;
_DMA8CON      = 0xB80;
_DMA8CONbits  = 0xB80;
 DMA8REQ      = 0xB82;
_DMA8REQ      = 0xB82;
_DMA8REQbits  = 0xB82;
 DMA8STAL     = 0xB84;
_DMA8STAL     = 0xB84;
 DMA8STAH     = 0xB86;
_DMA8STAH     = 0xB86;
_DMA8STAHbits = 0xB86;
 DMA8STBL     = 0xB88;
_DMA8STBL     = 0xB88;
 DMA8STBH     = 0xB8A;
_DMA8STBH     = 0xB8A;
_DMA8STBHbits = 0xB8A;
 DMA8PAD      = 0xB8C;
_DMA8PAD      = 0xB8C;
 DMA8CNT      = 0xB8E;
_DMA8CNT      = 0xB8E;
_DMA8CNTbits  = 0xB8E;
 DMA9CON      = 0xB90;
_DMA9CON      = 0xB90;
_DMA9CONbits  = 0xB90;
 DMA9REQ      = 0xB92;
_DMA9REQ      = 0xB92;
_DMA9REQbits  = 0xB92;
 DMA9STAL     = 0xB94;
_DMA9STAL     = 0xB94;
 DMA9STAH     = 0xB96;
_DMA9STAH     = 0xB96;
_DMA9STAHbits = 0xB96;
 DMA9STBL     = 0xB98;
_DMA9STBL     = 0xB98;
 DMA9STBH     = 0xB9A;
_DMA9STBH     = 0xB9A;
_DMA9STBHbits = 0xB9A;
 DMA9PAD      = 0xB9C;
_DMA9PAD      = 0xB9C;
 DMA9CNT      = 0xB9E;
_DMA9CNT      = 0xB9E;
_DMA9CNTbits  = 0xB9E;
 DMA10CON     = 0xBA0;
_DMA10CON     = 0xBA0;
_DMA10CONbits = 0xBA0;
 DMA10REQ     = 0xBA2;
_DMA10REQ     = 0xBA2;
_DMA10REQbits = 0xBA2;
 DMA10STAL    = 0xBA4;
_DMA10STAL    = 0xBA4;
 DMA10STAH    = 0xBA6;
_DMA10STAH    = 0xBA6;
_DMA10STAHbits = 0xBA6;
 DMA10STBL    = 0xBA8;
_DMA10STBL    = 0xBA8;
 DMA10STBH    = 0xBAA;
_DMA10STBH    = 0xBAA;
_DMA10STBHbits = 0xBAA;
 DMA10PAD     = 0xBAC;
_DMA10PAD     = 0xBAC;
 DMA10CNT     = 0xBAE;
_DMA10CNT     = 0xBAE;
_DMA10CNTbits = 0xBAE;
 DMA11CON     = 0xBB0;
_DMA11CON     = 0xBB0;
_DMA11CONbits = 0xBB0;
 DMA11REQ     = 0xBB2;
_DMA11REQ     = 0xBB2;
_DMA11REQbits = 0xBB2;
 DMA11STAL    = 0xBB4;
_DMA11STAL    = 0xBB4;
 DMA11STAH    = 0xBB6;
_DMA11STAH    = 0xBB6;
_DMA11STAHbits = 0xBB6;
 DMA11STBL    = 0xBB8;
_DMA11STBL    = 0xBB8;
 DMA11STBH    = 0xBBA;
_DMA11STBH    = 0xBBA;
_DMA11STBHbits = 0xBBA;
 DMA11PAD     = 0xBBC;
_DMA11PAD     = 0xBBC;
 DMA11CNT     = 0xBBE;
_DMA11CNT     = 0xBBE;
_DMA11CNTbits = 0xBBE;
 DMA12CON     = 0xBC0;
_DMA12CON     = 0xBC0;
_DMA12CONbits = 0xBC0;
 DMA12REQ     = 0xBC2;
_DMA12REQ     = 0xBC2;
_DMA12REQbits = 0xBC2;
 DMA12STAL    = 0xBC4;
_DMA12STAL    = 0xBC4;
 DMA12STAH    = 0xBC6;
_DMA12STAH    = 0xBC6;
_DMA12STAHbits = 0xBC6;
 DMA12STBL    = 0xBC8;
_DMA12STBL    = 0xBC8;
 DMA12STBH    = 0xBCA;
_DMA12STBH    = 0xBCA;
_DMA12STBHbits = 0xBCA;
 DMA12PAD     = 0xBCC;
_DMA12PAD     = 0xBCC;
 DMA12CNT     = 0xBCE;
_DMA12CNT     = 0xBCE;
_DMA12CNTbits = 0xBCE;
 DMA13CON     = 0xBD0;
_DMA13CON     = 0xBD0;
_DMA13CONbits = 0xBD0;
 DMA13REQ     = 0xBD2;
_DMA13REQ     = 0xBD2;
_DMA13REQbits = 0xBD2;
 DMA13STAL    = 0xBD4;
_DMA13STAL    = 0xBD4;
 DMA13STAH    = 0xBD6;
_DMA13STAH    = 0xBD6;
_DMA13STAHbits = 0xBD6;
 DMA13STBL    = 0xBD8;
_DMA13STBL    = 0xBD8;
 DMA13STBH    = 0xBDA;
_DMA13STBH    = 0xBDA;
_DMA13STBHbits = 0xBDA;
 DMA13PAD     = 0xBDC;
_DMA13PAD     = 0xBDC;
 DMA13CNT     = 0xBDE;
_DMA13CNT     = 0xBDE;
_DMA13CNTbits = 0xBDE;
 DMA14CON     = 0xBE0;
_DMA14CON     = 0xBE0;
_DMA14CONbits = 0xBE0;
 DMA14REQ     = 0xBE2;
_DMA14REQ     = 0xBE2;
_DMA14REQbits = 0xBE2;
 DMA14STAL    = 0xBE4;
_DMA14STAL    = 0xBE4;
 DMA14STAH    = 0xBE6;
_DMA14STAH    = 0xBE6;
_DMA14STAHbits = 0xBE6;
 DMA14STBL    = 0xBE8;
_DMA14STBL    = 0xBE8;
 DMA14STBH    = 0xBEA;
_DMA14STBH    = 0xBEA;
_DMA14STBHbits = 0xBEA;
 DMA14PAD     = 0xBEC;
_DMA14PAD     = 0xBEC;
 DMA14CNT     = 0xBEE;
_DMA14CNT     = 0xBEE;
_DMA14CNTbits = 0xBEE;
 DMAPWC       = 0xBF0;
_DMAPWC       = 0xBF0;
_DMAPWCbits   = 0xBF0;
 DMARQC       = 0xBF2;
_DMARQC       = 0xBF2;
_DMARQCbits   = 0xBF2;
 DMAPPS       = 0xBF4;
_DMAPPS       = 0xBF4;
_DMAPPSbits   = 0xBF4;
 DMALCA       = 0xBF6;
_DMALCA       = 0xBF6;
_DMALCAbits   = 0xBF6;
 DSADRL       = 0xBF8;
_DSADRL       = 0xBF8;
 DSADRH       = 0xBFA;
_DSADRH       = 0xBFA;
_DSADRHbits   = 0xBFA;
 TRISB        = 0xE10;
_TRISB        = 0xE10;
_TRISBbits    = 0xE10;
 PORTB        = 0xE12;
_PORTB        = 0xE12;
_PORTBbits    = 0xE12;
 LATB         = 0xE14;
_LATB         = 0xE14;
_LATBbits     = 0xE14;
 CNENB        = 0xE18;
_CNENB        = 0xE18;
_CNENBbits    = 0xE18;
 CNPUB        = 0xE1A;
_CNPUB        = 0xE1A;
_CNPUBbits    = 0xE1A;
 CNPDB        = 0xE1C;
_CNPDB        = 0xE1C;
_CNPDBbits    = 0xE1C;
 ANSELB       = 0xE1E;
_ANSELB       = 0xE1E;
_ANSELBbits   = 0xE1E;
 TRISC        = 0xE20;
_TRISC        = 0xE20;
_TRISCbits    = 0xE20;
 PORTC        = 0xE22;
_PORTC        = 0xE22;
_PORTCbits    = 0xE22;
 LATC         = 0xE24;
_LATC         = 0xE24;
_LATCbits     = 0xE24;
 CNENC        = 0xE28;
_CNENC        = 0xE28;
_CNENCbits    = 0xE28;
 CNPUC        = 0xE2A;
_CNPUC        = 0xE2A;
_CNPUCbits    = 0xE2A;
 CNPDC        = 0xE2C;
_CNPDC        = 0xE2C;
_CNPDCbits    = 0xE2C;
 ANSELC       = 0xE2E;
_ANSELC       = 0xE2E;
_ANSELCbits   = 0xE2E;
 TRISD        = 0xE30;
_TRISD        = 0xE30;
_TRISDbits    = 0xE30;
 PORTD        = 0xE32;
_PORTD        = 0xE32;
_PORTDbits    = 0xE32;
 LATD         = 0xE34;
_LATD         = 0xE34;
_LATDbits     = 0xE34;
 ODCD         = 0xE36;
_ODCD         = 0xE36;
_ODCDbits     = 0xE36;
 CNEND        = 0xE38;
_CNEND        = 0xE38;
_CNENDbits    = 0xE38;
 CNPUD        = 0xE3A;
_CNPUD        = 0xE3A;
_CNPUDbits    = 0xE3A;
 CNPDD        = 0xE3C;
_CNPDD        = 0xE3C;
_CNPDDbits    = 0xE3C;
 ANSELD       = 0xE3E;
_ANSELD       = 0xE3E;
_ANSELDbits   = 0xE3E;
 TRISE        = 0xE40;
_TRISE        = 0xE40;
_TRISEbits    = 0xE40;
 PORTE        = 0xE42;
_PORTE        = 0xE42;
_PORTEbits    = 0xE42;
 LATE         = 0xE44;
_LATE         = 0xE44;
_LATEbits     = 0xE44;
 ODCE         = 0xE46;
_ODCE         = 0xE46;
 CNENE        = 0xE48;
_CNENE        = 0xE48;
_CNENEbits    = 0xE48;
 CNPUE        = 0xE4A;
_CNPUE        = 0xE4A;
_CNPUEbits    = 0xE4A;
 CNPDE        = 0xE4C;
_CNPDE        = 0xE4C;
_CNPDEbits    = 0xE4C;
 ANSELE       = 0xE4E;
_ANSELE       = 0xE4E;
_ANSELEbits   = 0xE4E;
 TRISF        = 0xE50;
_TRISF        = 0xE50;
_TRISFbits    = 0xE50;
 PORTF        = 0xE52;
_PORTF        = 0xE52;
_PORTFbits    = 0xE52;
 LATF         = 0xE54;
_LATF         = 0xE54;
_LATFbits     = 0xE54;
 ODCF         = 0xE56;
_ODCF         = 0xE56;
_ODCFbits     = 0xE56;
 CNENF        = 0xE58;
_CNENF        = 0xE58;
_CNENFbits    = 0xE58;
 CNPUF        = 0xE5A;
_CNPUF        = 0xE5A;
_CNPUFbits    = 0xE5A;
 CNPDF        = 0xE5C;
_CNPDF        = 0xE5C;
_CNPDFbits    = 0xE5C;
 TRISG        = 0xE60;
_TRISG        = 0xE60;
_TRISGbits    = 0xE60;
 PORTG        = 0xE62;
_PORTG        = 0xE62;
_PORTGbits    = 0xE62;
 LATG         = 0xE64;
_LATG         = 0xE64;
_LATGbits     = 0xE64;
 ODCG         = 0xE66;
_ODCG         = 0xE66;
_ODCGbits     = 0xE66;
 CNENG        = 0xE68;
_CNENG        = 0xE68;
_CNENGbits    = 0xE68;
 CNPUG        = 0xE6A;
_CNPUG        = 0xE6A;
_CNPUGbits    = 0xE6A;
 CNPDG        = 0xE6C;
_CNPDG        = 0xE6C;
_CNPDGbits    = 0xE6C;
 ANSELG       = 0xE6E;
_ANSELG       = 0xE6E;
_ANSELGbits   = 0xE6E;
 PADCFG1      = 0xEFE;
_PADCFG1      = 0xEFE;
_PADCFG1bits  = 0xEFE;
/*
** ======= Base Addresses for Various Peripherals and ACC ======
*/

 CAN1         = 0x440;
_CAN1         = 0x440;
 CAN2         = 0x540;
_CAN2         = 0x540;
 IC1          = 0x144;
_IC1          = 0x144;
 IC2          = 0x14C;
_IC2          = 0x14C;
 IC3          = 0x154;
_IC3          = 0x154;
 IC4          = 0x15C;
_IC4          = 0x15C;
 IC5          = 0x164;
_IC5          = 0x164;
 IC6          = 0x16C;
_IC6          = 0x16C;
 IC7          = 0x174;
_IC7          = 0x174;
 IC8          = 0x17C;
_IC8          = 0x17C;
 OC1          = 0x904;
_OC1          = 0x904;
 OC2          = 0x90E;
_OC2          = 0x90E;
 OC3          = 0x918;
_OC3          = 0x918;
 OC4          = 0x922;
_OC4          = 0x922;
 OC5          = 0x92C;
_OC5          = 0x92C;
 OC6          = 0x936;
_OC6          = 0x936;
 OC7          = 0x940;
_OC7          = 0x940;
 OC8          = 0x94A;
_OC8          = 0x94A;
 SPI1         = 0x240;
_SPI1         = 0x240;
 SPI2         = 0x260;
_SPI2         = 0x260;
 UART1        = 0x220;
_UART1        = 0x220;
 UART2        = 0x230;
_UART2        = 0x230;
