diff options
author | Marek Olšák <[email protected]> | 2019-09-03 22:38:38 -0400 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2019-12-16 17:04:57 -0500 |
commit | 69ea473eeb91b2c4db26402c3bc2ed5799d26605 (patch) | |
tree | 4294bf82e95f2425cfc8d40c9b5d5ac53249f1cb /src | |
parent | a3ea4805aad2bfbd572c01ba1e982b69e00f6d07 (diff) |
amd/addrlib: update to the latest version
Acked-by: Bas Nieuwenhuizen <[email protected]>
Acked-by: Samuel Pitoiset <[email protected]>
Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/amd/addrlib/inc/addrinterface.h | 84 | ||||
-rw-r--r-- | src/amd/addrlib/inc/addrtypes.h | 62 | ||||
-rw-r--r-- | src/amd/addrlib/src/addrinterface.cpp | 1 | ||||
-rw-r--r-- | src/amd/addrlib/src/core/addrcommon.h | 32 | ||||
-rw-r--r-- | src/amd/addrlib/src/core/addrlib.cpp | 1 | ||||
-rw-r--r-- | src/amd/addrlib/src/core/addrlib2.cpp | 220 | ||||
-rw-r--r-- | src/amd/addrlib/src/core/addrlib2.h | 102 | ||||
-rw-r--r-- | src/amd/addrlib/src/core/addrobject.cpp | 10 | ||||
-rw-r--r-- | src/amd/addrlib/src/gfx10/gfx10SwizzlePattern.h | 12978 | ||||
-rw-r--r-- | src/amd/addrlib/src/gfx10/gfx10addrlib.cpp | 1014 | ||||
-rw-r--r-- | src/amd/addrlib/src/gfx10/gfx10addrlib.h | 174 | ||||
-rw-r--r-- | src/amd/addrlib/src/gfx9/gfx9addrlib.cpp | 316 | ||||
-rw-r--r-- | src/amd/addrlib/src/gfx9/gfx9addrlib.h | 326 | ||||
-rw-r--r-- | src/amd/addrlib/src/r800/ciaddrlib.h | 1 | ||||
-rw-r--r-- | src/amd/addrlib/src/r800/siaddrlib.h | 1 | ||||
-rw-r--r-- | src/amd/common/ac_surface.c | 7 |
16 files changed, 7271 insertions, 8058 deletions
diff --git a/src/amd/addrlib/inc/addrinterface.h b/src/amd/addrlib/inc/addrinterface.h index a8e0b93209e..5fb3c46e489 100644 --- a/src/amd/addrlib/inc/addrinterface.h +++ b/src/amd/addrlib/inc/addrinterface.h @@ -308,7 +308,8 @@ typedef union _ADDR_CREATE_FLAGS UINT_32 useHtileSliceAlign : 1; ///< Do htile single slice alignment UINT_32 allowLargeThickTile : 1; ///< Allow 64*thickness*bytesPerPixel > rowSize UINT_32 forceDccAndTcCompat : 1; ///< Force enable DCC and TC compatibility - UINT_32 reserved : 24; ///< Reserved bits for future use + UINT_32 nonPower2MemConfig : 1; ///< Physical video memory size is not power of 2 + UINT_32 reserved : 23; ///< Reserved bits for future use }; UINT_32 value; @@ -347,9 +348,6 @@ typedef struct _ADDR_REGISTER_VALUE ///< CI registers------------------------------------------------- const UINT_32* pMacroTileConfig; ///< Global macro tile mode table UINT_32 noOfMacroEntries; ///< Number of entries in pMacroTileConfig - - ///< GFX9 HW parameters - UINT_32 blockVarSizeLog2; ///< SW_VAR_* block size } ADDR_REGISTER_VALUE; /** @@ -3549,12 +3547,14 @@ typedef union _ADDR2_BLOCK_SET { struct { - UINT_32 micro : 1; // 256B block for 2D resource - UINT_32 macro4KB : 1; // 4KB for 2D/3D resource - UINT_32 macro64KB : 1; // 64KB for 2D/3D resource - UINT_32 var : 1; // VAR block - UINT_32 linear : 1; // Linear block - UINT_32 reserved : 27; + UINT_32 micro : 1; // 256B block for 2D resource + UINT_32 macroThin4KB : 1; // Thin 4KB for 2D/3D resource + UINT_32 macroThick4KB : 1; // Thick 4KB for 3D resource + UINT_32 macroThin64KB : 1; // Thin 64KB for 2D/3D resource + UINT_32 macroThick64KB : 1; // Thick 64KB for 3D resource + UINT_32 var : 1; // VAR block + UINT_32 linear : 1; // Linear block + UINT_32 reserved : 25; }; UINT_32 value; @@ -3594,38 +3594,38 @@ typedef union _ADDR2_SWMODE_SET { struct { - UINT_32 swLinear : 1; - UINT_32 sw256B_S : 1; - UINT_32 sw256B_D : 1; - UINT_32 sw256B_R : 1; - UINT_32 sw4KB_Z : 1; - UINT_32 sw4KB_S : 1; - UINT_32 sw4KB_D : 1; - UINT_32 sw4KB_R : 1; - UINT_32 sw64KB_Z : 1; - UINT_32 sw64KB_S : 1; - UINT_32 sw64KB_D : 1; - UINT_32 sw64KB_R : 1; - UINT_32 swVar_Z : 1; - UINT_32 swVar_S : 1; - UINT_32 swVar_D : 1; - UINT_32 swVar_R : 1; - UINT_32 sw64KB_Z_T : 1; - UINT_32 sw64KB_S_T : 1; - UINT_32 sw64KB_D_T : 1; - UINT_32 sw64KB_R_T : 1; - UINT_32 sw4KB_Z_X : 1; - UINT_32 sw4KB_S_X : 1; - UINT_32 sw4KB_D_X : 1; - UINT_32 sw4KB_R_X : 1; - UINT_32 sw64KB_Z_X : 1; - UINT_32 sw64KB_S_X : 1; - UINT_32 sw64KB_D_X : 1; - UINT_32 sw64KB_R_X : 1; - UINT_32 swVar_Z_X : 1; - UINT_32 swVar_S_X : 1; - UINT_32 swVar_D_X : 1; - UINT_32 swVar_R_X : 1; + UINT_32 swLinear : 1; + UINT_32 sw256B_S : 1; + UINT_32 sw256B_D : 1; + UINT_32 sw256B_R : 1; + UINT_32 sw4KB_Z : 1; + UINT_32 sw4KB_S : 1; + UINT_32 sw4KB_D : 1; + UINT_32 sw4KB_R : 1; + UINT_32 sw64KB_Z : 1; + UINT_32 sw64KB_S : 1; + UINT_32 sw64KB_D : 1; + UINT_32 sw64KB_R : 1; + UINT_32 swReserved0 : 1; + UINT_32 swReserved1 : 1; + UINT_32 swReserved2 : 1; + UINT_32 swReserved3 : 1; + UINT_32 sw64KB_Z_T : 1; + UINT_32 sw64KB_S_T : 1; + UINT_32 sw64KB_D_T : 1; + UINT_32 sw64KB_R_T : 1; + UINT_32 sw4KB_Z_X : 1; + UINT_32 sw4KB_S_X : 1; + UINT_32 sw4KB_D_X : 1; + UINT_32 sw4KB_R_X : 1; + UINT_32 sw64KB_Z_X : 1; + UINT_32 sw64KB_S_X : 1; + UINT_32 sw64KB_D_X : 1; + UINT_32 sw64KB_R_X : 1; + UINT_32 swVar_Z_X : 1; + UINT_32 swReserved4 : 1; + UINT_32 swReserved5 : 1; + UINT_32 swVar_R_X : 1; }; UINT_32 value; diff --git a/src/amd/addrlib/inc/addrtypes.h b/src/amd/addrlib/inc/addrtypes.h index 36e342f3176..7d8ca926678 100644 --- a/src/amd/addrlib/inc/addrtypes.h +++ b/src/amd/addrlib/inc/addrtypes.h @@ -90,11 +90,7 @@ typedef int INT; #if defined(BRAHMA_ARM) #define ADDR_FASTCALL #elif defined(__GNUC__) - #if defined(__i386__) - #define ADDR_FASTCALL __attribute__((regparm(0))) - #else - #define ADDR_FASTCALL - #endif + #define ADDR_FASTCALL __attribute__((regparm(0))) #else #define ADDR_FASTCALL __fastcall #endif @@ -203,22 +199,32 @@ typedef enum _AddrTileMode /** **************************************************************************************************** * @brief -* Neutral enums that define swizzle modes for Gfx9 ASIC +* Neutral enums that define swizzle modes for Gfx9+ ASIC * @note * -* ADDR_SW_LINEAR linear aligned addressing mode, for 1D/2D/3D resouce -* ADDR_SW_256B_* addressing block aligned size is 256B, for 2D/3D resouce -* ADDR_SW_4KB_* addressing block aligned size is 4KB, for 2D/3D resouce -* ADDR_SW_64KB_* addressing block aligned size is 64KB, for 2D/3D resouce -* ADDR_SW_VAR_* addressing block aligned size is ASIC specific, for 2D/3D resouce +* ADDR_SW_LINEAR linear aligned addressing mode, for 1D/2D/3D resource +* ADDR_SW_256B_* addressing block aligned size is 256B, for 2D/3D resource +* ADDR_SW_4KB_* addressing block aligned size is 4KB, for 2D/3D resource +* ADDR_SW_64KB_* addressing block aligned size is 64KB, for 2D/3D resource * -* ADDR_SW_*_Z For 2D resouce, represents Z-order swizzle mode for depth/stencil/FMask - For 3D resouce, represents a swizzle mode similar to legacy thick tile mode -* ADDR_SW_*_S represents standard swizzle mode defined by MS -* ADDR_SW_*_D For 2D resouce, represents a swizzle mode for displayable resource -* For 3D resouce, represents a swizzle mode which places each slice in order & pixel +* ADDR_SW_*_Z For GFX9: + - for 2D resource, represents Z-order swizzle mode for depth/stencil/FMask + - for 3D resource, represents a swizzle mode similar to legacy thick tile mode + For GFX10: + - represents Z-order swizzle mode for depth/stencil/FMask +* ADDR_SW_*_S For GFX9+: + - represents standard swizzle mode defined by MS +* ADDR_SW_*_D For GFX9: + - for 2D resource, represents a swizzle mode for displayable resource +* - for 3D resource, represents a swizzle mode which places each slice in order & pixel + For GFX10: + - for 2D resource, represents a swizzle mode for displayable resource + - for 3D resource, represents a swizzle mode similar to legacy thick tile mode within slice is placed as 2D ADDR_SW_*_S. Don't use this combination if possible! -* ADDR_SW_*_R For 2D resouce only, represents a swizzle mode for rotated displayable resource +* ADDR_SW_*_R For GFX9: + - 2D resource only, represents a swizzle mode for rotated displayable resource + For GFX10: + - represents a swizzle mode for render target resource * **************************************************************************************************** */ @@ -236,10 +242,10 @@ typedef enum _AddrSwizzleMode ADDR_SW_64KB_S = 9, ADDR_SW_64KB_D = 10, ADDR_SW_64KB_R = 11, - ADDR_SW_VAR_Z = 12, - ADDR_SW_VAR_S = 13, - ADDR_SW_VAR_D = 14, - ADDR_SW_VAR_R = 15, + ADDR_SW_RESERVED0 = 12, + ADDR_SW_RESERVED1 = 13, + ADDR_SW_RESERVED2 = 14, + ADDR_SW_RESERVED3 = 15, ADDR_SW_64KB_Z_T = 16, ADDR_SW_64KB_S_T = 17, ADDR_SW_64KB_D_T = 18, @@ -253,17 +259,11 @@ typedef enum _AddrSwizzleMode ADDR_SW_64KB_D_X = 26, ADDR_SW_64KB_R_X = 27, ADDR_SW_VAR_Z_X = 28, - ADDR_SW_VAR_S_X = 29, - ADDR_SW_VAR_D_X = 30, + ADDR_SW_RESERVED4 = 29, + ADDR_SW_RESERVED5 = 30, ADDR_SW_VAR_R_X = 31, ADDR_SW_LINEAR_GENERAL = 32, ADDR_SW_MAX_TYPE = 33, - - // Used for represent block with identical size - ADDR_SW_256B = ADDR_SW_256B_S, - ADDR_SW_4KB = ADDR_SW_4KB_S_X, - ADDR_SW_64KB = ADDR_SW_64KB_S_X, - ADDR_SW_VAR = ADDR_SW_VAR_S_X, } AddrSwizzleMode; /** @@ -316,7 +316,9 @@ typedef enum _AddrSwType ADDR_SW_Z = 0, // Resource basic swizzle mode is ZOrder ADDR_SW_S = 1, // Resource basic swizzle mode is Standard ADDR_SW_D = 2, // Resource basic swizzle mode is Display - ADDR_SW_R = 3, // Resource basic swizzle mode is Rotated + ADDR_SW_R = 3, // Resource basic swizzle mode is Rotated/Render optimized + ADDR_SW_L = 4, // Resource basic swizzle mode is Linear + ADDR_SW_MAX_SWTYPE } AddrSwType; /** diff --git a/src/amd/addrlib/src/addrinterface.cpp b/src/amd/addrlib/src/addrinterface.cpp index 09010879903..5256499b3b3 100644 --- a/src/amd/addrlib/src/addrinterface.cpp +++ b/src/amd/addrlib/src/addrinterface.cpp @@ -60,7 +60,6 @@ ADDR_E_RETURNCODE ADDR_API AddrCreate( ADDR_CREATE_OUTPUT* pAddrCreateOut) ///< [out] address lib handle { ADDR_E_RETURNCODE returnCode = ADDR_OK; - { returnCode = Lib::Create(pAddrCreateIn, pAddrCreateOut); } diff --git a/src/amd/addrlib/src/core/addrcommon.h b/src/amd/addrlib/src/core/addrcommon.h index 61eb9083146..4c919678804 100644 --- a/src/amd/addrlib/src/core/addrcommon.h +++ b/src/amd/addrlib/src/core/addrcommon.h @@ -46,12 +46,16 @@ // ADDR_LNX_KERNEL_BUILD is for internal build // Moved from addrinterface.h so __KERNEL__ is not needed any more -#if !defined(__APPLE__) || defined(HAVE_TSERVER) +#if ADDR_LNX_KERNEL_BUILD // || (defined(__GNUC__) && defined(__KERNEL__)) + #include <string.h> +#elif !defined(__APPLE__) || defined(HAVE_TSERVER) #include <stdlib.h> #include <string.h> - #include <assert.h> #endif +#include <assert.h> +#include "util/macros.h" + //////////////////////////////////////////////////////////////////////////////////////////////////// // Platform specific debug break defines //////////////////////////////////////////////////////////////////////////////////////////////////// @@ -156,11 +160,7 @@ #endif // DEBUG //////////////////////////////////////////////////////////////////////////////////////////////////// -#if defined(static_assert) -#define ADDR_C_ASSERT(__e) static_assert(__e, "") -#else -#define ADDR_C_ASSERT(__e) typedef char __ADDR_C_ASSERT__[(__e) ? 1 : -1] -#endif +#define ADDR_C_ASSERT(__e) STATIC_ASSERT(__e) namespace Addr { @@ -270,7 +270,8 @@ union ConfigFlags UINT_32 disableLinearOpt : 1; ///< Disallow tile modes to be optimized to linear UINT_32 use32bppFor422Fmt : 1; ///< View 422 formats as 32 bits per pixel element UINT_32 forceDccAndTcCompat : 1; ///< Force enable DCC and TC compatibility - UINT_32 reserved : 20; ///< Reserved bits for future use + UINT_32 nonPower2MemConfig : 1; ///< Physical video memory size is not power of 2 + UINT_32 reserved : 19; ///< Reserved bits for future use }; UINT_32 value; @@ -926,6 +927,21 @@ static inline UINT_32 GetCoordActiveMask( return mask; } +/** +**************************************************************************************************** +* ShiftCeil +* +* @brief +* Apply righ-shift with ceiling +**************************************************************************************************** +*/ +static inline UINT_32 ShiftCeil( + UINT_32 a, ///< [in] value to be right-shifted + UINT_32 b) ///< [in] number of bits to shift +{ + return (a >> b) + (((a & ((1 << b) - 1)) != 0) ? 1 : 0); +} + } // Addr #endif // __ADDR_COMMON_H__ diff --git a/src/amd/addrlib/src/core/addrlib.cpp b/src/amd/addrlib/src/core/addrlib.cpp index 6fdce2f2dd7..5d99d4db0d1 100644 --- a/src/amd/addrlib/src/core/addrlib.cpp +++ b/src/amd/addrlib/src/core/addrlib.cpp @@ -250,6 +250,7 @@ ADDR_E_RETURNCODE Lib::Create( pLib->m_configFlags.useHtileSliceAlign = pCreateIn->createFlags.useHtileSliceAlign; pLib->m_configFlags.allowLargeThickTile = pCreateIn->createFlags.allowLargeThickTile; pLib->m_configFlags.forceDccAndTcCompat = pCreateIn->createFlags.forceDccAndTcCompat; + pLib->m_configFlags.nonPower2MemConfig = pCreateIn->createFlags.nonPower2MemConfig; pLib->m_configFlags.disableLinearOpt = FALSE; pLib->SetChipFamily(pCreateIn->chipFamily, pCreateIn->chipRevision); diff --git a/src/amd/addrlib/src/core/addrlib2.cpp b/src/amd/addrlib/src/core/addrlib2.cpp index e6440d6ca5c..0007e2b9fb4 100644 --- a/src/amd/addrlib/src/core/addrlib2.cpp +++ b/src/amd/addrlib/src/core/addrlib2.cpp @@ -73,7 +73,8 @@ Lib::Lib() m_rbPerSeLog2(0), m_maxCompFragLog2(0), m_pipeInterleaveLog2(0), - m_blockVarSizeLog2(0) + m_blockVarSizeLog2(0), + m_numEquations(0) { } @@ -98,7 +99,8 @@ Lib::Lib(const Client* pClient) m_rbPerSeLog2(0), m_maxCompFragLog2(0), m_pipeInterleaveLog2(0), - m_blockVarSizeLog2(0) + m_blockVarSizeLog2(0), + m_numEquations(0) { } @@ -1363,30 +1365,20 @@ ADDR_E_RETURNCODE Lib::ComputeBlockDimensionForSurf( AddrResourceType resourceType, AddrSwizzleMode swizzleMode) const { - ADDR_E_RETURNCODE returnCode = ComputeBlockDimension(pWidth, - pHeight, - pDepth, - bpp, - resourceType, - swizzleMode); + ADDR_E_RETURNCODE returnCode = ADDR_OK; - if ((returnCode == ADDR_OK) && (numSamples > 1) && IsThin(resourceType, swizzleMode)) + if (IsThick(resourceType, swizzleMode)) { - const UINT_32 log2blkSize = GetBlockSizeLog2(swizzleMode); - const UINT_32 log2sample = Log2(numSamples); - const UINT_32 q = log2sample >> 1; - const UINT_32 r = log2sample & 1; - - if (log2blkSize & 1) - { - *pWidth >>= q; - *pHeight >>= (q + r); - } - else - { - *pWidth >>= (q + r); - *pHeight >>= q; - } + ComputeThickBlockDimension(pWidth, pHeight, pDepth, bpp, resourceType, swizzleMode); + } + else if (IsThin(resourceType, swizzleMode)) + { + ComputeThinBlockDimension(pWidth, pHeight, pDepth, bpp, numSamples, resourceType, swizzleMode); + } + else + { + ADDR_ASSERT_ALWAYS(); + returnCode = ADDR_INVALIDPARAMS; } return returnCode; @@ -1394,6 +1386,46 @@ ADDR_E_RETURNCODE Lib::ComputeBlockDimensionForSurf( /** ************************************************************************************************************************ +* Lib::ComputeThinBlockDimension +* +* @brief +* Internal function to get thin block width/height/depth in element from surface input params. +* +* @return +* N/A +************************************************************************************************************************ +*/ +VOID Lib::ComputeThinBlockDimension( + UINT_32* pWidth, + UINT_32* pHeight, + UINT_32* pDepth, + UINT_32 bpp, + UINT_32 numSamples, + AddrResourceType resourceType, + AddrSwizzleMode swizzleMode) const +{ + ADDR_ASSERT(IsThin(resourceType, swizzleMode)); + + // GFX9/GFX10 use different dimension amplifying logic: say for 128KB block + 1xAA + 1BPE, the dimension of thin + // swizzle mode will be [256W * 512H] on GFX9 ASICs and [512W * 256H] on GFX10 ASICs. Since GFX10 is newer HWL so we + // make its implementation into base class (in order to save future change on new HWLs) + const UINT_32 log2BlkSize = GetBlockSizeLog2(swizzleMode); + const UINT_32 log2EleBytes = Log2(bpp >> 3); + const UINT_32 log2Samples = Log2(Max(numSamples, 1u)); + const UINT_32 log2NumEle = log2BlkSize - log2EleBytes - log2Samples; + + // For "1xAA/4xAA cases" or "2xAA/8xAA + odd log2BlkSize cases", width == height or width == 2 * height; + // For other cases, height == width or height == 2 * width + const BOOL_32 widthPrecedent = ((log2Samples & 1) == 0) || ((log2BlkSize & 1) != 0); + const UINT_32 log2Width = (log2NumEle + (widthPrecedent ? 1 : 0)) / 2; + + *pWidth = 1u << log2Width; + *pHeight = 1u << (log2NumEle - log2Width); + *pDepth = 1; +} + +/** +************************************************************************************************************************ * Lib::ComputeBlockDimension * * @brief @@ -1404,42 +1436,22 @@ ADDR_E_RETURNCODE Lib::ComputeBlockDimensionForSurf( ************************************************************************************************************************ */ ADDR_E_RETURNCODE Lib::ComputeBlockDimension( - UINT_32* pWidth, - UINT_32* pHeight, - UINT_32* pDepth, - UINT_32 bpp, - AddrResourceType resourceType, - AddrSwizzleMode swizzleMode) const + UINT_32* pWidth, + UINT_32* pHeight, + UINT_32* pDepth, + UINT_32 bpp, + AddrResourceType resourceType, + AddrSwizzleMode swizzleMode) const { ADDR_E_RETURNCODE returnCode = ADDR_OK; - UINT_32 eleBytes = bpp >> 3; - UINT_32 microBlockSizeTableIndex = Log2(eleBytes); - UINT_32 log2blkSize = GetBlockSizeLog2(swizzleMode); - - if (IsThin(resourceType, swizzleMode)) + if (IsThick(resourceType, swizzleMode)) { - UINT_32 log2blkSizeIn256B = log2blkSize - 8; - UINT_32 widthAmp = log2blkSizeIn256B / 2; - UINT_32 heightAmp = log2blkSizeIn256B - widthAmp; - - ADDR_ASSERT(microBlockSizeTableIndex < sizeof(Block256_2d) / sizeof(Block256_2d[0])); - - *pWidth = (Block256_2d[microBlockSizeTableIndex].w << widthAmp); - *pHeight = (Block256_2d[microBlockSizeTableIndex].h << heightAmp); - *pDepth = 1; + ComputeThickBlockDimension(pWidth, pHeight, pDepth, bpp, resourceType, swizzleMode); } - else if (IsThick(resourceType, swizzleMode)) + else if (IsThin(resourceType, swizzleMode)) { - UINT_32 log2blkSizeIn1KB = log2blkSize - 10; - UINT_32 averageAmp = log2blkSizeIn1KB / 3; - UINT_32 restAmp = log2blkSizeIn1KB % 3; - - ADDR_ASSERT(microBlockSizeTableIndex < sizeof(Block1K_3d) / sizeof(Block1K_3d[0])); - - *pWidth = Block1K_3d[microBlockSizeTableIndex].w << averageAmp; - *pHeight = Block1K_3d[microBlockSizeTableIndex].h << (averageAmp + (restAmp / 2)); - *pDepth = Block1K_3d[microBlockSizeTableIndex].d << (averageAmp + ((restAmp != 0) ? 1 : 0)); + ComputeThinBlockDimension(pWidth, pHeight, pDepth, bpp, 0, resourceType, swizzleMode); } else { @@ -1452,6 +1464,42 @@ ADDR_E_RETURNCODE Lib::ComputeBlockDimension( /** ************************************************************************************************************************ +* Lib::ComputeThickBlockDimension +* +* @brief +* Internal function to get block width/height/depth in element for thick swizzle mode +* +* @return +* N/A +************************************************************************************************************************ +*/ +VOID Lib::ComputeThickBlockDimension( + UINT_32* pWidth, + UINT_32* pHeight, + UINT_32* pDepth, + UINT_32 bpp, + AddrResourceType resourceType, + AddrSwizzleMode swizzleMode) const +{ + ADDR_ASSERT(IsThick(resourceType, swizzleMode)); + + const UINT_32 log2BlkSize = GetBlockSizeLog2(swizzleMode); + const UINT_32 eleBytes = bpp >> 3; + const UINT_32 microBlockSizeTableIndex = Log2(eleBytes); + + ADDR_ASSERT(microBlockSizeTableIndex < sizeof(Block1K_3d) / sizeof(Block1K_3d[0])); + + const UINT_32 log2blkSizeIn1KB = log2BlkSize - 10; + const UINT_32 averageAmp = log2blkSizeIn1KB / 3; + const UINT_32 restAmp = log2blkSizeIn1KB % 3; + + *pWidth = Block1K_3d[microBlockSizeTableIndex].w << averageAmp; + *pHeight = Block1K_3d[microBlockSizeTableIndex].h << (averageAmp + (restAmp / 2)); + *pDepth = Block1K_3d[microBlockSizeTableIndex].d << (averageAmp + ((restAmp != 0) ? 1 : 0)); +} + +/** +************************************************************************************************************************ * Lib::GetMipTailDim * * @brief @@ -1469,11 +1517,11 @@ Dim3d Lib::GetMipTailDim( UINT_32 blockDepth) const { Dim3d out = {blockWidth, blockHeight, blockDepth}; - UINT_32 log2blkSize = GetBlockSizeLog2(swizzleMode); + UINT_32 log2BlkSize = GetBlockSizeLog2(swizzleMode); if (IsThick(resourceType, swizzleMode)) { - UINT_32 dim = log2blkSize % 3; + UINT_32 dim = log2BlkSize % 3; if (dim == 0) { @@ -1490,11 +1538,22 @@ Dim3d Lib::GetMipTailDim( } else { - if (log2blkSize & 1) + ADDR_ASSERT(IsThin(resourceType, swizzleMode)); + + // GFX9/GFX10 use different dimension shrinking logic for mipmap tail: say for 128KB block + 2BPE, the maximum + // dimension of mipmap tail level will be [256W * 128H] on GFX9 ASICs and [128W * 256H] on GFX10 ASICs. Since + // GFX10 is newer HWL so we make its implementation into base class, in order to save future change on new HWLs. + // And assert log2BlkSize will always be an even value on GFX9, so we never need the logic wrapped by DEBUG... +#if DEBUG + if ((log2BlkSize & 1) && (m_chipFamily == ADDR_CHIP_FAMILY_AI)) { + // Should never go here... + ADDR_ASSERT_ALWAYS(); + out.h >>= 1; } else +#endif { out.w >>= 1; } @@ -1873,7 +1932,52 @@ VOID Lib::ComputeQbStereoInfo( pOut->pixelHeight <<= 1; // Double size - pOut->surfSize <<= 1; + pOut->surfSize <<= 1; + pOut->sliceSize <<= 1; +} + +/** +************************************************************************************************************************ +* Lib::FilterInvalidEqSwizzleMode +* +* @brief +* Filter out swizzle mode(s) if it doesn't have valid equation index +* +* @return +* N/A +************************************************************************************************************************ +*/ +VOID Lib::FilterInvalidEqSwizzleMode( + ADDR2_SWMODE_SET& allowedSwModeSet, + AddrResourceType resourceType, + UINT_32 elemLog2 + ) const +{ + if (resourceType != ADDR_RSRC_TEX_1D) + { + UINT_32 allowedSwModeSetVal = allowedSwModeSet.value; + const UINT_32 rsrcTypeIdx = static_cast<UINT_32>(resourceType) - 1; + UINT_32 validSwModeSet = allowedSwModeSetVal; + + for (UINT_32 swModeIdx = 0; validSwModeSet != 0; swModeIdx++) + { + if (validSwModeSet & 1) + { + if (m_equationLookupTable[rsrcTypeIdx][swModeIdx][elemLog2] == ADDR_INVALID_EQUATION_INDEX) + { + allowedSwModeSetVal &= ~(1u << swModeIdx); + } + } + + validSwModeSet >>= 1; + } + + // Only apply the filtering if at least one valid swizzle mode remains + if (allowedSwModeSetVal != 0) + { + allowedSwModeSet.value = allowedSwModeSetVal; + } + } } } // V2 diff --git a/src/amd/addrlib/src/core/addrlib2.h b/src/amd/addrlib/src/core/addrlib2.h index fd433403d82..75fe6442db8 100644 --- a/src/amd/addrlib/src/core/addrlib2.h +++ b/src/amd/addrlib/src/core/addrlib2.h @@ -68,6 +68,8 @@ struct SwizzleModeFlags UINT_32 isT : 1; // T mode UINT_32 isRtOpt : 1; // mode opt for render target + + UINT_32 reserved : 20; // Reserved bits }; struct Dim2d @@ -87,25 +89,14 @@ struct Dim3d enum AddrBlockType { AddrBlockMicro = 0, // Resource uses 256B block - AddrBlock4KB = 1, // Resource uses 4KB block - AddrBlock64KB = 2, // Resource uses 64KB block - AddrBlockVar = 3, // Resource uses var block, only valid for GFX9 - AddrBlockLinear = 4, // Resource uses linear swizzle mode - - AddrBlockMaxTiledType = AddrBlock64KB + 1, -}; - -enum AddrBlockSet -{ - AddrBlockSetMicro = 1 << AddrBlockMicro, - AddrBlockSetMacro4KB = 1 << AddrBlock4KB, - AddrBlockSetMacro64KB = 1 << AddrBlock64KB, - AddrBlockSetVar = 1 << AddrBlockVar, - AddrBlockSetLinear = 1 << AddrBlockLinear, - - AddrBlockSetMacro = AddrBlockSetMacro4KB | AddrBlockSetMacro64KB, - AddrBlockSet2dGfx10 = AddrBlockSetMicro | AddrBlockSetMacro, - AddrBlockSet3dGfx10 = AddrBlockSetMacro, + AddrBlockThin4KB = 1, // Resource uses thin 4KB block + AddrBlockThick4KB = 2, // Resource uses thick 4KB block + AddrBlockThin64KB = 3, // Resource uses thin 64KB block + AddrBlockThick64KB = 4, // Resource uses thick 64KB block + AddrBlockVar = 5, // Resource uses var block, only valid for GFX9 + AddrBlockLinear = 6, // Resource uses linear swizzle mode + + AddrBlockMaxTiledType = AddrBlockVar + 1, }; enum AddrSwSet @@ -115,11 +106,17 @@ enum AddrSwSet AddrSwSetD = 1 << ADDR_SW_D, AddrSwSetR = 1 << ADDR_SW_R, - AddrSwSetAll = AddrSwSetZ | AddrSwSetS | AddrSwSetD | AddrSwSetR, - AddrSwSet3dThinGfx10 = AddrSwSetZ | AddrSwSetR, - AddrSwSetColorGfx10 = AddrSwSetS | AddrSwSetD | AddrSwSetR, + AddrSwSetAll = AddrSwSetZ | AddrSwSetS | AddrSwSetD | AddrSwSetR, }; +const UINT_32 Size256 = 256u; +const UINT_32 Size4K = 4096u; +const UINT_32 Size64K = 65536u; + +const UINT_32 Log2Size256 = 8u; +const UINT_32 Log2Size4K = 12u; +const UINT_32 Log2Size64K = 16u; + /** ************************************************************************************************************************ * @brief This class contains asic independent address lib functionalities @@ -237,6 +234,15 @@ protected: static const UINT_32 MaxMipLevels = 16; + BOOL_32 IsValidSwMode(AddrSwizzleMode swizzleMode) const + { + // Don't dereference a reinterpret_cast pointer so as not to break + // strict-aliasing rules. + UINT_32 mode; + memcpy(&mode, &m_swizzleModeTable[swizzleMode], sizeof(UINT_32)); + return mode != 0; + } + // Checking block size BOOL_32 IsBlock256b(AddrSwizzleMode swizzleMode) const { @@ -356,7 +362,7 @@ protected: { blockSizeLog2 = 16; } - else if (IsBlockVariable(swizzleMode)) + else if (IsBlockVariable(swizzleMode) && (m_blockVarSizeLog2 != 0)) { blockSizeLog2 = m_blockVarSizeLog2; } @@ -653,12 +659,29 @@ protected: AddrSwizzleMode swizzleMode) const; ADDR_E_RETURNCODE ComputeBlockDimension( - UINT_32* pWidth, - UINT_32* pHeight, - UINT_32* pDepth, - UINT_32 bpp, - AddrResourceType resourceType, - AddrSwizzleMode swizzleMode) const; + UINT_32* pWidth, + UINT_32* pHeight, + UINT_32* pDepth, + UINT_32 bpp, + AddrResourceType resourceType, + AddrSwizzleMode swizzleMode) const; + + virtual VOID ComputeThinBlockDimension( + UINT_32* pWidth, + UINT_32* pHeight, + UINT_32* pDepth, + UINT_32 bpp, + UINT_32 numSamples, + AddrResourceType resourceType, + AddrSwizzleMode swizzleMode) const; + + VOID ComputeThickBlockDimension( + UINT_32* pWidth, + UINT_32* pHeight, + UINT_32* pDepth, + UINT_32 bpp, + AddrResourceType resourceType, + AddrSwizzleMode swizzleMode) const; static UINT_64 ComputePadSize( const Dim3d* pBlkDim, @@ -793,6 +816,11 @@ protected: VOID ComputeQbStereoInfo(ADDR2_COMPUTE_SURFACE_INFO_OUTPUT* pOut) const; + VOID FilterInvalidEqSwizzleMode( + ADDR2_SWMODE_SET& allowedSwModeSet, + AddrResourceType resourceType, + UINT_32 elemLog2) const; + UINT_32 m_se; ///< Number of shader engine UINT_32 m_rbPerSe; ///< Number of render backend per shader engine UINT_32 m_maxCompFrag; ///< Number of max compressed fragment @@ -809,6 +837,22 @@ protected: SwizzleModeFlags m_swizzleModeTable[ADDR_SW_MAX_TYPE]; ///< Swizzle mode table + // Max number of swizzle mode supported for equation + static const UINT_32 MaxSwModeType = 32; + // Max number of resource type (2D/3D) supported for equation + static const UINT_32 MaxRsrcType = 2; + // Max number of bpp (8bpp/16bpp/32bpp/64bpp/128bpp) + static const UINT_32 MaxElementBytesLog2 = 5; + // Almost all swizzle mode + resource type support equation + static const UINT_32 EquationTableSize = MaxElementBytesLog2 * MaxSwModeType * MaxRsrcType; + // Equation table + ADDR_EQUATION m_equationTable[EquationTableSize]; + + // Number of equation entries in the table + UINT_32 m_numEquations; + // Equation lookup table according to bpp and tile index + UINT_32 m_equationLookupTable[MaxRsrcType][MaxSwModeType][MaxElementBytesLog2]; + private: // Disallow the copy constructor Lib(const Lib& a); diff --git a/src/amd/addrlib/src/core/addrobject.cpp b/src/amd/addrlib/src/core/addrobject.cpp index 79ef3d8dc90..d148d2f5646 100644 --- a/src/amd/addrlib/src/core/addrobject.cpp +++ b/src/amd/addrlib/src/core/addrobject.cpp @@ -119,7 +119,7 @@ VOID* Object::Alloc( size_t objSize ///< [in] Size to allocate ) const { - return ClientAlloc(objSize, &m_client); + return ClientAlloc(objSize, &m_client);; } /** @@ -216,16 +216,20 @@ VOID Object::DebugPrint( #if DEBUG if (m_client.callbacks.debugPrint != NULL) { + va_list ap; + + va_start(ap, pDebugString); + ADDR_DEBUGPRINT_INPUT debugPrintInput = {0}; debugPrintInput.size = sizeof(ADDR_DEBUGPRINT_INPUT); debugPrintInput.pDebugString = const_cast<CHAR*>(pDebugString); debugPrintInput.hClient = m_client.handle; - va_start(debugPrintInput.ap, pDebugString); + va_copy(debugPrintInput.ap, ap); m_client.callbacks.debugPrint(&debugPrintInput); - va_end(debugPrintInput.ap); + va_end(ap); } #endif } diff --git a/src/amd/addrlib/src/gfx10/gfx10SwizzlePattern.h b/src/amd/addrlib/src/gfx10/gfx10SwizzlePattern.h index 334b685c3b9..45d3809d9ff 100644 --- a/src/amd/addrlib/src/gfx10/gfx10SwizzlePattern.h +++ b/src/amd/addrlib/src/gfx10/gfx10SwizzlePattern.h @@ -57,6 +57,20 @@ union ADDR_BIT_SETTING /** ************************************************************************************************************************ +* @brief Swizzle pattern information +************************************************************************************************************************ +*/ +struct ADDR_SW_PATINFO +{ + UINT_8 maxItemCount; + UINT_8 nibble01Idx; + UINT_16 nibble2Idx; + UINT_16 nibble3Idx; + UINT_8 nibble4Idx; +}; + +/** +************************************************************************************************************************ * InitBit * * @brief @@ -105,7322 +119,5998 @@ const UINT_64 S0 = InitBit(3, 0); const UINT_64 S1 = InitBit(3, 1); const UINT_64 S2 = InitBit(3, 2); -// Color data swizzle pattern -const UINT_64 SW_256_S[][8]= +const ADDR_SW_PATINFO SW_256_S_PATINFO[] = +{ + { 1, 0, 0, 0, 0, } , // 1 pipes 1 bpe @ SW_256_S @ Navi1x + { 1, 1, 0, 0, 0, } , // 1 pipes 2 bpe @ SW_256_S @ Navi1x + { 1, 2, 0, 0, 0, } , // 1 pipes 4 bpe @ SW_256_S @ Navi1x + { 1, 3, 0, 0, 0, } , // 1 pipes 8 bpe @ SW_256_S @ Navi1x + { 1, 4, 0, 0, 0, } , // 1 pipes 16 bpe @ SW_256_S @ Navi1x + { 1, 0, 0, 0, 0, } , // 2 pipes 1 bpe @ SW_256_S @ Navi1x + { 1, 1, 0, 0, 0, } , // 2 pipes 2 bpe @ SW_256_S @ Navi1x + { 1, 2, 0, 0, 0, } , // 2 pipes 4 bpe @ SW_256_S @ Navi1x + { 1, 3, 0, 0, 0, } , // 2 pipes 8 bpe @ SW_256_S @ Navi1x + { 1, 4, 0, 0, 0, } , // 2 pipes 16 bpe @ SW_256_S @ Navi1x + { 1, 0, 0, 0, 0, } , // 4 pipes 1 bpe @ SW_256_S @ Navi1x + { 1, 1, 0, 0, 0, } , // 4 pipes 2 bpe @ SW_256_S @ Navi1x + { 1, 2, 0, 0, 0, } , // 4 pipes 4 bpe @ SW_256_S @ Navi1x + { 1, 3, 0, 0, 0, } , // 4 pipes 8 bpe @ SW_256_S @ Navi1x + { 1, 4, 0, 0, 0, } , // 4 pipes 16 bpe @ SW_256_S @ Navi1x + { 1, 0, 0, 0, 0, } , // 8 pipes 1 bpe @ SW_256_S @ Navi1x + { 1, 1, 0, 0, 0, } , // 8 pipes 2 bpe @ SW_256_S @ Navi1x + { 1, 2, 0, 0, 0, } , // 8 pipes 4 bpe @ SW_256_S @ Navi1x + { 1, 3, 0, 0, 0, } , // 8 pipes 8 bpe @ SW_256_S @ Navi1x + { 1, 4, 0, 0, 0, } , // 8 pipes 16 bpe @ SW_256_S @ Navi1x + { 1, 0, 0, 0, 0, } , // 16 pipes 1 bpe @ SW_256_S @ Navi1x + { 1, 1, 0, 0, 0, } , // 16 pipes 2 bpe @ SW_256_S @ Navi1x + { 1, 2, 0, 0, 0, } , // 16 pipes 4 bpe @ SW_256_S @ Navi1x + { 1, 3, 0, 0, 0, } , // 16 pipes 8 bpe @ SW_256_S @ Navi1x + { 1, 4, 0, 0, 0, } , // 16 pipes 16 bpe @ SW_256_S @ Navi1x + { 1, 0, 0, 0, 0, } , // 32 pipes 1 bpe @ SW_256_S @ Navi1x + { 1, 1, 0, 0, 0, } , // 32 pipes 2 bpe @ SW_256_S @ Navi1x + { 1, 2, 0, 0, 0, } , // 32 pipes 4 bpe @ SW_256_S @ Navi1x + { 1, 3, 0, 0, 0, } , // 32 pipes 8 bpe @ SW_256_S @ Navi1x + { 1, 4, 0, 0, 0, } , // 32 pipes 16 bpe @ SW_256_S @ Navi1x + { 1, 0, 0, 0, 0, } , // 64 pipes 1 bpe @ SW_256_S @ Navi1x + { 1, 1, 0, 0, 0, } , // 64 pipes 2 bpe @ SW_256_S @ Navi1x + { 1, 2, 0, 0, 0, } , // 64 pipes 4 bpe @ SW_256_S @ Navi1x + { 1, 3, 0, 0, 0, } , // 64 pipes 8 bpe @ SW_256_S @ Navi1x + { 1, 4, 0, 0, 0, } , // 64 pipes 16 bpe @ SW_256_S @ Navi1x +}; + +const ADDR_SW_PATINFO SW_256_D_PATINFO[] = +{ + { 1, 5, 0, 0, 0, } , // 1 pipes 1 bpe @ SW_256_D @ Navi1x + { 1, 1, 0, 0, 0, } , // 1 pipes 2 bpe @ SW_256_D @ Navi1x + { 1, 2, 0, 0, 0, } , // 1 pipes 4 bpe @ SW_256_D @ Navi1x + { 1, 6, 0, 0, 0, } , // 1 pipes 8 bpe @ SW_256_D @ Navi1x + { 1, 7, 0, 0, 0, } , // 1 pipes 16 bpe @ SW_256_D @ Navi1x + { 1, 5, 0, 0, 0, } , // 2 pipes 1 bpe @ SW_256_D @ Navi1x + { 1, 1, 0, 0, 0, } , // 2 pipes 2 bpe @ SW_256_D @ Navi1x + { 1, 2, 0, 0, 0, } , // 2 pipes 4 bpe @ SW_256_D @ Navi1x + { 1, 6, 0, 0, 0, } , // 2 pipes 8 bpe @ SW_256_D @ Navi1x + { 1, 7, 0, 0, 0, } , // 2 pipes 16 bpe @ SW_256_D @ Navi1x + { 1, 5, 0, 0, 0, } , // 4 pipes 1 bpe @ SW_256_D @ Navi1x + { 1, 1, 0, 0, 0, } , // 4 pipes 2 bpe @ SW_256_D @ Navi1x + { 1, 2, 0, 0, 0, } , // 4 pipes 4 bpe @ SW_256_D @ Navi1x + { 1, 6, 0, 0, 0, } , // 4 pipes 8 bpe @ SW_256_D @ Navi1x + { 1, 7, 0, 0, 0, } , // 4 pipes 16 bpe @ SW_256_D @ Navi1x + { 1, 5, 0, 0, 0, } , // 8 pipes 1 bpe @ SW_256_D @ Navi1x + { 1, 1, 0, 0, 0, } , // 8 pipes 2 bpe @ SW_256_D @ Navi1x + { 1, 2, 0, 0, 0, } , // 8 pipes 4 bpe @ SW_256_D @ Navi1x + { 1, 6, 0, 0, 0, } , // 8 pipes 8 bpe @ SW_256_D @ Navi1x + { 1, 7, 0, 0, 0, } , // 8 pipes 16 bpe @ SW_256_D @ Navi1x + { 1, 5, 0, 0, 0, } , // 16 pipes 1 bpe @ SW_256_D @ Navi1x + { 1, 1, 0, 0, 0, } , // 16 pipes 2 bpe @ SW_256_D @ Navi1x + { 1, 2, 0, 0, 0, } , // 16 pipes 4 bpe @ SW_256_D @ Navi1x + { 1, 6, 0, 0, 0, } , // 16 pipes 8 bpe @ SW_256_D @ Navi1x + { 1, 7, 0, 0, 0, } , // 16 pipes 16 bpe @ SW_256_D @ Navi1x + { 1, 5, 0, 0, 0, } , // 32 pipes 1 bpe @ SW_256_D @ Navi1x + { 1, 1, 0, 0, 0, } , // 32 pipes 2 bpe @ SW_256_D @ Navi1x + { 1, 2, 0, 0, 0, } , // 32 pipes 4 bpe @ SW_256_D @ Navi1x + { 1, 6, 0, 0, 0, } , // 32 pipes 8 bpe @ SW_256_D @ Navi1x + { 1, 7, 0, 0, 0, } , // 32 pipes 16 bpe @ SW_256_D @ Navi1x + { 1, 5, 0, 0, 0, } , // 64 pipes 1 bpe @ SW_256_D @ Navi1x + { 1, 1, 0, 0, 0, } , // 64 pipes 2 bpe @ SW_256_D @ Navi1x + { 1, 2, 0, 0, 0, } , // 64 pipes 4 bpe @ SW_256_D @ Navi1x + { 1, 6, 0, 0, 0, } , // 64 pipes 8 bpe @ SW_256_D @ Navi1x + { 1, 7, 0, 0, 0, } , // 64 pipes 16 bpe @ SW_256_D @ Navi1x +}; + +const ADDR_SW_PATINFO SW_4K_S_PATINFO[] = +{ + { 1, 0, 1, 0, 0, } , // 1 pipes 1 bpe @ SW_4K_S @ Navi1x + { 1, 1, 2, 0, 0, } , // 1 pipes 2 bpe @ SW_4K_S @ Navi1x + { 1, 2, 3, 0, 0, } , // 1 pipes 4 bpe @ SW_4K_S @ Navi1x + { 1, 3, 4, 0, 0, } , // 1 pipes 8 bpe @ SW_4K_S @ Navi1x + { 1, 4, 5, 0, 0, } , // 1 pipes 16 bpe @ SW_4K_S @ Navi1x + { 1, 0, 1, 0, 0, } , // 2 pipes 1 bpe @ SW_4K_S @ Navi1x + { 1, 1, 2, 0, 0, } , // 2 pipes 2 bpe @ SW_4K_S @ Navi1x + { 1, 2, 3, 0, 0, } , // 2 pipes 4 bpe @ SW_4K_S @ Navi1x + { 1, 3, 4, 0, 0, } , // 2 pipes 8 bpe @ SW_4K_S @ Navi1x + { 1, 4, 5, 0, 0, } , // 2 pipes 16 bpe @ SW_4K_S @ Navi1x + { 1, 0, 1, 0, 0, } , // 4 pipes 1 bpe @ SW_4K_S @ Navi1x + { 1, 1, 2, 0, 0, } , // 4 pipes 2 bpe @ SW_4K_S @ Navi1x + { 1, 2, 3, 0, 0, } , // 4 pipes 4 bpe @ SW_4K_S @ Navi1x + { 1, 3, 4, 0, 0, } , // 4 pipes 8 bpe @ SW_4K_S @ Navi1x + { 1, 4, 5, 0, 0, } , // 4 pipes 16 bpe @ SW_4K_S @ Navi1x + { 1, 0, 1, 0, 0, } , // 8 pipes 1 bpe @ SW_4K_S @ Navi1x + { 1, 1, 2, 0, 0, } , // 8 pipes 2 bpe @ SW_4K_S @ Navi1x + { 1, 2, 3, 0, 0, } , // 8 pipes 4 bpe @ SW_4K_S @ Navi1x + { 1, 3, 4, 0, 0, } , // 8 pipes 8 bpe @ SW_4K_S @ Navi1x + { 1, 4, 5, 0, 0, } , // 8 pipes 16 bpe @ SW_4K_S @ Navi1x + { 1, 0, 1, 0, 0, } , // 16 pipes 1 bpe @ SW_4K_S @ Navi1x + { 1, 1, 2, 0, 0, } , // 16 pipes 2 bpe @ SW_4K_S @ Navi1x + { 1, 2, 3, 0, 0, } , // 16 pipes 4 bpe @ SW_4K_S @ Navi1x + { 1, 3, 4, 0, 0, } , // 16 pipes 8 bpe @ SW_4K_S @ Navi1x + { 1, 4, 5, 0, 0, } , // 16 pipes 16 bpe @ SW_4K_S @ Navi1x + { 1, 0, 1, 0, 0, } , // 32 pipes 1 bpe @ SW_4K_S @ Navi1x + { 1, 1, 2, 0, 0, } , // 32 pipes 2 bpe @ SW_4K_S @ Navi1x + { 1, 2, 3, 0, 0, } , // 32 pipes 4 bpe @ SW_4K_S @ Navi1x + { 1, 3, 4, 0, 0, } , // 32 pipes 8 bpe @ SW_4K_S @ Navi1x + { 1, 4, 5, 0, 0, } , // 32 pipes 16 bpe @ SW_4K_S @ Navi1x + { 1, 0, 1, 0, 0, } , // 64 pipes 1 bpe @ SW_4K_S @ Navi1x + { 1, 1, 2, 0, 0, } , // 64 pipes 2 bpe @ SW_4K_S @ Navi1x + { 1, 2, 3, 0, 0, } , // 64 pipes 4 bpe @ SW_4K_S @ Navi1x + { 1, 3, 4, 0, 0, } , // 64 pipes 8 bpe @ SW_4K_S @ Navi1x + { 1, 4, 5, 0, 0, } , // 64 pipes 16 bpe @ SW_4K_S @ Navi1x +}; + +const ADDR_SW_PATINFO SW_4K_D_PATINFO[] = +{ + { 1, 5, 1, 0, 0, } , // 1 pipes 1 bpe @ SW_4K_D @ Navi1x + { 1, 1, 2, 0, 0, } , // 1 pipes 2 bpe @ SW_4K_D @ Navi1x + { 1, 2, 3, 0, 0, } , // 1 pipes 4 bpe @ SW_4K_D @ Navi1x + { 1, 6, 4, 0, 0, } , // 1 pipes 8 bpe @ SW_4K_D @ Navi1x + { 1, 7, 5, 0, 0, } , // 1 pipes 16 bpe @ SW_4K_D @ Navi1x + { 1, 5, 1, 0, 0, } , // 2 pipes 1 bpe @ SW_4K_D @ Navi1x + { 1, 1, 2, 0, 0, } , // 2 pipes 2 bpe @ SW_4K_D @ Navi1x + { 1, 2, 3, 0, 0, } , // 2 pipes 4 bpe @ SW_4K_D @ Navi1x + { 1, 6, 4, 0, 0, } , // 2 pipes 8 bpe @ SW_4K_D @ Navi1x + { 1, 7, 5, 0, 0, } , // 2 pipes 16 bpe @ SW_4K_D @ Navi1x + { 1, 5, 1, 0, 0, } , // 4 pipes 1 bpe @ SW_4K_D @ Navi1x + { 1, 1, 2, 0, 0, } , // 4 pipes 2 bpe @ SW_4K_D @ Navi1x + { 1, 2, 3, 0, 0, } , // 4 pipes 4 bpe @ SW_4K_D @ Navi1x + { 1, 6, 4, 0, 0, } , // 4 pipes 8 bpe @ SW_4K_D @ Navi1x + { 1, 7, 5, 0, 0, } , // 4 pipes 16 bpe @ SW_4K_D @ Navi1x + { 1, 5, 1, 0, 0, } , // 8 pipes 1 bpe @ SW_4K_D @ Navi1x + { 1, 1, 2, 0, 0, } , // 8 pipes 2 bpe @ SW_4K_D @ Navi1x + { 1, 2, 3, 0, 0, } , // 8 pipes 4 bpe @ SW_4K_D @ Navi1x + { 1, 6, 4, 0, 0, } , // 8 pipes 8 bpe @ SW_4K_D @ Navi1x + { 1, 7, 5, 0, 0, } , // 8 pipes 16 bpe @ SW_4K_D @ Navi1x + { 1, 5, 1, 0, 0, } , // 16 pipes 1 bpe @ SW_4K_D @ Navi1x + { 1, 1, 2, 0, 0, } , // 16 pipes 2 bpe @ SW_4K_D @ Navi1x + { 1, 2, 3, 0, 0, } , // 16 pipes 4 bpe @ SW_4K_D @ Navi1x + { 1, 6, 4, 0, 0, } , // 16 pipes 8 bpe @ SW_4K_D @ Navi1x + { 1, 7, 5, 0, 0, } , // 16 pipes 16 bpe @ SW_4K_D @ Navi1x + { 1, 5, 1, 0, 0, } , // 32 pipes 1 bpe @ SW_4K_D @ Navi1x + { 1, 1, 2, 0, 0, } , // 32 pipes 2 bpe @ SW_4K_D @ Navi1x + { 1, 2, 3, 0, 0, } , // 32 pipes 4 bpe @ SW_4K_D @ Navi1x + { 1, 6, 4, 0, 0, } , // 32 pipes 8 bpe @ SW_4K_D @ Navi1x + { 1, 7, 5, 0, 0, } , // 32 pipes 16 bpe @ SW_4K_D @ Navi1x + { 1, 5, 1, 0, 0, } , // 64 pipes 1 bpe @ SW_4K_D @ Navi1x + { 1, 1, 2, 0, 0, } , // 64 pipes 2 bpe @ SW_4K_D @ Navi1x + { 1, 2, 3, 0, 0, } , // 64 pipes 4 bpe @ SW_4K_D @ Navi1x + { 1, 6, 4, 0, 0, } , // 64 pipes 8 bpe @ SW_4K_D @ Navi1x + { 1, 7, 5, 0, 0, } , // 64 pipes 16 bpe @ SW_4K_D @ Navi1x +}; + +const ADDR_SW_PATINFO SW_4K_S_X_PATINFO[] = +{ + { 1, 0, 1, 0, 0, } , // 1 pipes 1 bpe @ SW_4K_S_X @ Navi1x + { 1, 1, 2, 0, 0, } , // 1 pipes 2 bpe @ SW_4K_S_X @ Navi1x + { 1, 2, 3, 0, 0, } , // 1 pipes 4 bpe @ SW_4K_S_X @ Navi1x + { 1, 3, 4, 0, 0, } , // 1 pipes 8 bpe @ SW_4K_S_X @ Navi1x + { 1, 4, 5, 0, 0, } , // 1 pipes 16 bpe @ SW_4K_S_X @ Navi1x + { 3, 0, 6, 0, 0, } , // 2 pipes 1 bpe @ SW_4K_S_X @ Navi1x + { 3, 1, 7, 0, 0, } , // 2 pipes 2 bpe @ SW_4K_S_X @ Navi1x + { 3, 2, 8, 0, 0, } , // 2 pipes 4 bpe @ SW_4K_S_X @ Navi1x + { 3, 3, 9, 0, 0, } , // 2 pipes 8 bpe @ SW_4K_S_X @ Navi1x + { 3, 4, 10, 0, 0, } , // 2 pipes 16 bpe @ SW_4K_S_X @ Navi1x + { 3, 0, 11, 0, 0, } , // 4 pipes 1 bpe @ SW_4K_S_X @ Navi1x + { 3, 1, 12, 0, 0, } , // 4 pipes 2 bpe @ SW_4K_S_X @ Navi1x + { 3, 2, 13, 0, 0, } , // 4 pipes 4 bpe @ SW_4K_S_X @ Navi1x + { 3, 3, 14, 0, 0, } , // 4 pipes 8 bpe @ SW_4K_S_X @ Navi1x + { 3, 4, 15, 0, 0, } , // 4 pipes 16 bpe @ SW_4K_S_X @ Navi1x + { 3, 0, 16, 0, 0, } , // 8 pipes 1 bpe @ SW_4K_S_X @ Navi1x + { 3, 1, 17, 0, 0, } , // 8 pipes 2 bpe @ SW_4K_S_X @ Navi1x + { 3, 2, 18, 0, 0, } , // 8 pipes 4 bpe @ SW_4K_S_X @ Navi1x + { 3, 3, 19, 0, 0, } , // 8 pipes 8 bpe @ SW_4K_S_X @ Navi1x + { 3, 4, 20, 0, 0, } , // 8 pipes 16 bpe @ SW_4K_S_X @ Navi1x + { 3, 0, 21, 0, 0, } , // 16 pipes 1 bpe @ SW_4K_S_X @ Navi1x + { 3, 1, 22, 0, 0, } , // 16 pipes 2 bpe @ SW_4K_S_X @ Navi1x + { 3, 2, 23, 0, 0, } , // 16 pipes 4 bpe @ SW_4K_S_X @ Navi1x + { 3, 3, 24, 0, 0, } , // 16 pipes 8 bpe @ SW_4K_S_X @ Navi1x + { 3, 4, 25, 0, 0, } , // 16 pipes 16 bpe @ SW_4K_S_X @ Navi1x + { 3, 0, 21, 0, 0, } , // 32 pipes 1 bpe @ SW_4K_S_X @ Navi1x + { 3, 1, 22, 0, 0, } , // 32 pipes 2 bpe @ SW_4K_S_X @ Navi1x + { 3, 2, 23, 0, 0, } , // 32 pipes 4 bpe @ SW_4K_S_X @ Navi1x + { 3, 3, 24, 0, 0, } , // 32 pipes 8 bpe @ SW_4K_S_X @ Navi1x + { 3, 4, 25, 0, 0, } , // 32 pipes 16 bpe @ SW_4K_S_X @ Navi1x + { 3, 0, 21, 0, 0, } , // 64 pipes 1 bpe @ SW_4K_S_X @ Navi1x + { 3, 1, 22, 0, 0, } , // 64 pipes 2 bpe @ SW_4K_S_X @ Navi1x + { 3, 2, 23, 0, 0, } , // 64 pipes 4 bpe @ SW_4K_S_X @ Navi1x + { 3, 3, 24, 0, 0, } , // 64 pipes 8 bpe @ SW_4K_S_X @ Navi1x + { 3, 4, 25, 0, 0, } , // 64 pipes 16 bpe @ SW_4K_S_X @ Navi1x +}; + +const ADDR_SW_PATINFO SW_4K_D_X_PATINFO[] = +{ + { 1, 5, 1, 0, 0, } , // 1 pipes 1 bpe @ SW_4K_D_X @ Navi1x + { 1, 1, 2, 0, 0, } , // 1 pipes 2 bpe @ SW_4K_D_X @ Navi1x + { 1, 2, 3, 0, 0, } , // 1 pipes 4 bpe @ SW_4K_D_X @ Navi1x + { 1, 6, 4, 0, 0, } , // 1 pipes 8 bpe @ SW_4K_D_X @ Navi1x + { 1, 7, 5, 0, 0, } , // 1 pipes 16 bpe @ SW_4K_D_X @ Navi1x + { 3, 5, 6, 0, 0, } , // 2 pipes 1 bpe @ SW_4K_D_X @ Navi1x + { 3, 1, 7, 0, 0, } , // 2 pipes 2 bpe @ SW_4K_D_X @ Navi1x + { 3, 2, 8, 0, 0, } , // 2 pipes 4 bpe @ SW_4K_D_X @ Navi1x + { 3, 6, 9, 0, 0, } , // 2 pipes 8 bpe @ SW_4K_D_X @ Navi1x + { 3, 7, 10, 0, 0, } , // 2 pipes 16 bpe @ SW_4K_D_X @ Navi1x + { 3, 5, 11, 0, 0, } , // 4 pipes 1 bpe @ SW_4K_D_X @ Navi1x + { 3, 1, 12, 0, 0, } , // 4 pipes 2 bpe @ SW_4K_D_X @ Navi1x + { 3, 2, 13, 0, 0, } , // 4 pipes 4 bpe @ SW_4K_D_X @ Navi1x + { 3, 6, 14, 0, 0, } , // 4 pipes 8 bpe @ SW_4K_D_X @ Navi1x + { 3, 7, 15, 0, 0, } , // 4 pipes 16 bpe @ SW_4K_D_X @ Navi1x + { 3, 5, 16, 0, 0, } , // 8 pipes 1 bpe @ SW_4K_D_X @ Navi1x + { 3, 1, 17, 0, 0, } , // 8 pipes 2 bpe @ SW_4K_D_X @ Navi1x + { 3, 2, 18, 0, 0, } , // 8 pipes 4 bpe @ SW_4K_D_X @ Navi1x + { 3, 6, 19, 0, 0, } , // 8 pipes 8 bpe @ SW_4K_D_X @ Navi1x + { 3, 7, 20, 0, 0, } , // 8 pipes 16 bpe @ SW_4K_D_X @ Navi1x + { 3, 5, 21, 0, 0, } , // 16 pipes 1 bpe @ SW_4K_D_X @ Navi1x + { 3, 1, 22, 0, 0, } , // 16 pipes 2 bpe @ SW_4K_D_X @ Navi1x + { 3, 2, 23, 0, 0, } , // 16 pipes 4 bpe @ SW_4K_D_X @ Navi1x + { 3, 6, 24, 0, 0, } , // 16 pipes 8 bpe @ SW_4K_D_X @ Navi1x + { 3, 7, 25, 0, 0, } , // 16 pipes 16 bpe @ SW_4K_D_X @ Navi1x + { 3, 5, 21, 0, 0, } , // 32 pipes 1 bpe @ SW_4K_D_X @ Navi1x + { 3, 1, 22, 0, 0, } , // 32 pipes 2 bpe @ SW_4K_D_X @ Navi1x + { 3, 2, 23, 0, 0, } , // 32 pipes 4 bpe @ SW_4K_D_X @ Navi1x + { 3, 6, 24, 0, 0, } , // 32 pipes 8 bpe @ SW_4K_D_X @ Navi1x + { 3, 7, 25, 0, 0, } , // 32 pipes 16 bpe @ SW_4K_D_X @ Navi1x + { 3, 5, 21, 0, 0, } , // 64 pipes 1 bpe @ SW_4K_D_X @ Navi1x + { 3, 1, 22, 0, 0, } , // 64 pipes 2 bpe @ SW_4K_D_X @ Navi1x + { 3, 2, 23, 0, 0, } , // 64 pipes 4 bpe @ SW_4K_D_X @ Navi1x + { 3, 6, 24, 0, 0, } , // 64 pipes 8 bpe @ SW_4K_D_X @ Navi1x + { 3, 7, 25, 0, 0, } , // 64 pipes 16 bpe @ SW_4K_D_X @ Navi1x +}; + +const ADDR_SW_PATINFO SW_4K_S3_PATINFO[] = +{ + { 1, 29, 131, 0, 0, } , // 1 pipes 1 bpe @ SW_4K_S3 @ Navi1x + { 1, 30, 132, 0, 0, } , // 1 pipes 2 bpe @ SW_4K_S3 @ Navi1x + { 1, 31, 133, 0, 0, } , // 1 pipes 4 bpe @ SW_4K_S3 @ Navi1x + { 1, 32, 134, 0, 0, } , // 1 pipes 8 bpe @ SW_4K_S3 @ Navi1x + { 1, 33, 135, 0, 0, } , // 1 pipes 16 bpe @ SW_4K_S3 @ Navi1x + { 1, 29, 131, 0, 0, } , // 2 pipes 1 bpe @ SW_4K_S3 @ Navi1x + { 1, 30, 132, 0, 0, } , // 2 pipes 2 bpe @ SW_4K_S3 @ Navi1x + { 1, 31, 133, 0, 0, } , // 2 pipes 4 bpe @ SW_4K_S3 @ Navi1x + { 1, 32, 134, 0, 0, } , // 2 pipes 8 bpe @ SW_4K_S3 @ Navi1x + { 1, 33, 135, 0, 0, } , // 2 pipes 16 bpe @ SW_4K_S3 @ Navi1x + { 1, 29, 131, 0, 0, } , // 4 pipes 1 bpe @ SW_4K_S3 @ Navi1x + { 1, 30, 132, 0, 0, } , // 4 pipes 2 bpe @ SW_4K_S3 @ Navi1x + { 1, 31, 133, 0, 0, } , // 4 pipes 4 bpe @ SW_4K_S3 @ Navi1x + { 1, 32, 134, 0, 0, } , // 4 pipes 8 bpe @ SW_4K_S3 @ Navi1x + { 1, 33, 135, 0, 0, } , // 4 pipes 16 bpe @ SW_4K_S3 @ Navi1x + { 1, 29, 131, 0, 0, } , // 8 pipes 1 bpe @ SW_4K_S3 @ Navi1x + { 1, 30, 132, 0, 0, } , // 8 pipes 2 bpe @ SW_4K_S3 @ Navi1x + { 1, 31, 133, 0, 0, } , // 8 pipes 4 bpe @ SW_4K_S3 @ Navi1x + { 1, 32, 134, 0, 0, } , // 8 pipes 8 bpe @ SW_4K_S3 @ Navi1x + { 1, 33, 135, 0, 0, } , // 8 pipes 16 bpe @ SW_4K_S3 @ Navi1x + { 1, 29, 131, 0, 0, } , // 16 pipes 1 bpe @ SW_4K_S3 @ Navi1x + { 1, 30, 132, 0, 0, } , // 16 pipes 2 bpe @ SW_4K_S3 @ Navi1x + { 1, 31, 133, 0, 0, } , // 16 pipes 4 bpe @ SW_4K_S3 @ Navi1x + { 1, 32, 134, 0, 0, } , // 16 pipes 8 bpe @ SW_4K_S3 @ Navi1x + { 1, 33, 135, 0, 0, } , // 16 pipes 16 bpe @ SW_4K_S3 @ Navi1x + { 1, 29, 131, 0, 0, } , // 32 pipes 1 bpe @ SW_4K_S3 @ Navi1x + { 1, 30, 132, 0, 0, } , // 32 pipes 2 bpe @ SW_4K_S3 @ Navi1x + { 1, 31, 133, 0, 0, } , // 32 pipes 4 bpe @ SW_4K_S3 @ Navi1x + { 1, 32, 134, 0, 0, } , // 32 pipes 8 bpe @ SW_4K_S3 @ Navi1x + { 1, 33, 135, 0, 0, } , // 32 pipes 16 bpe @ SW_4K_S3 @ Navi1x + { 1, 29, 131, 0, 0, } , // 64 pipes 1 bpe @ SW_4K_S3 @ Navi1x + { 1, 30, 132, 0, 0, } , // 64 pipes 2 bpe @ SW_4K_S3 @ Navi1x + { 1, 31, 133, 0, 0, } , // 64 pipes 4 bpe @ SW_4K_S3 @ Navi1x + { 1, 32, 134, 0, 0, } , // 64 pipes 8 bpe @ SW_4K_S3 @ Navi1x + { 1, 33, 135, 0, 0, } , // 64 pipes 16 bpe @ SW_4K_S3 @ Navi1x +}; + +const ADDR_SW_PATINFO SW_4K_S3_X_PATINFO[] = +{ + { 1, 29, 131, 0, 0, } , // 1 pipes 1 bpe @ SW_4K_S3_X @ Navi1x + { 1, 30, 132, 0, 0, } , // 1 pipes 2 bpe @ SW_4K_S3_X @ Navi1x + { 1, 31, 133, 0, 0, } , // 1 pipes 4 bpe @ SW_4K_S3_X @ Navi1x + { 1, 32, 134, 0, 0, } , // 1 pipes 8 bpe @ SW_4K_S3_X @ Navi1x + { 1, 33, 135, 0, 0, } , // 1 pipes 16 bpe @ SW_4K_S3_X @ Navi1x + { 3, 29, 136, 0, 0, } , // 2 pipes 1 bpe @ SW_4K_S3_X @ Navi1x + { 3, 30, 137, 0, 0, } , // 2 pipes 2 bpe @ SW_4K_S3_X @ Navi1x + { 3, 31, 138, 0, 0, } , // 2 pipes 4 bpe @ SW_4K_S3_X @ Navi1x + { 3, 32, 139, 0, 0, } , // 2 pipes 8 bpe @ SW_4K_S3_X @ Navi1x + { 3, 33, 140, 0, 0, } , // 2 pipes 16 bpe @ SW_4K_S3_X @ Navi1x + { 3, 29, 141, 0, 0, } , // 4 pipes 1 bpe @ SW_4K_S3_X @ Navi1x + { 3, 30, 142, 0, 0, } , // 4 pipes 2 bpe @ SW_4K_S3_X @ Navi1x + { 3, 31, 143, 0, 0, } , // 4 pipes 4 bpe @ SW_4K_S3_X @ Navi1x + { 3, 32, 144, 0, 0, } , // 4 pipes 8 bpe @ SW_4K_S3_X @ Navi1x + { 3, 33, 145, 0, 0, } , // 4 pipes 16 bpe @ SW_4K_S3_X @ Navi1x + { 3, 29, 146, 0, 0, } , // 8 pipes 1 bpe @ SW_4K_S3_X @ Navi1x + { 3, 30, 147, 0, 0, } , // 8 pipes 2 bpe @ SW_4K_S3_X @ Navi1x + { 3, 31, 148, 0, 0, } , // 8 pipes 4 bpe @ SW_4K_S3_X @ Navi1x + { 3, 32, 149, 0, 0, } , // 8 pipes 8 bpe @ SW_4K_S3_X @ Navi1x + { 3, 33, 150, 0, 0, } , // 8 pipes 16 bpe @ SW_4K_S3_X @ Navi1x + { 3, 29, 151, 0, 0, } , // 16 pipes 1 bpe @ SW_4K_S3_X @ Navi1x + { 3, 30, 152, 0, 0, } , // 16 pipes 2 bpe @ SW_4K_S3_X @ Navi1x + { 3, 31, 153, 0, 0, } , // 16 pipes 4 bpe @ SW_4K_S3_X @ Navi1x + { 3, 32, 154, 0, 0, } , // 16 pipes 8 bpe @ SW_4K_S3_X @ Navi1x + { 3, 33, 155, 0, 0, } , // 16 pipes 16 bpe @ SW_4K_S3_X @ Navi1x + { 3, 29, 151, 0, 0, } , // 32 pipes 1 bpe @ SW_4K_S3_X @ Navi1x + { 3, 30, 152, 0, 0, } , // 32 pipes 2 bpe @ SW_4K_S3_X @ Navi1x + { 3, 31, 153, 0, 0, } , // 32 pipes 4 bpe @ SW_4K_S3_X @ Navi1x + { 3, 32, 154, 0, 0, } , // 32 pipes 8 bpe @ SW_4K_S3_X @ Navi1x + { 3, 33, 155, 0, 0, } , // 32 pipes 16 bpe @ SW_4K_S3_X @ Navi1x + { 3, 29, 151, 0, 0, } , // 64 pipes 1 bpe @ SW_4K_S3_X @ Navi1x + { 3, 30, 152, 0, 0, } , // 64 pipes 2 bpe @ SW_4K_S3_X @ Navi1x + { 3, 31, 153, 0, 0, } , // 64 pipes 4 bpe @ SW_4K_S3_X @ Navi1x + { 3, 32, 154, 0, 0, } , // 64 pipes 8 bpe @ SW_4K_S3_X @ Navi1x + { 3, 33, 155, 0, 0, } , // 64 pipes 16 bpe @ SW_4K_S3_X @ Navi1x +}; + +const ADDR_SW_PATINFO SW_64K_S_PATINFO[] = +{ + { 1, 0, 1, 1, 0, } , // 1 pipes 1 bpe @ SW_64K_S @ Navi1x + { 1, 1, 2, 2, 0, } , // 1 pipes 2 bpe @ SW_64K_S @ Navi1x + { 1, 2, 3, 3, 0, } , // 1 pipes 4 bpe @ SW_64K_S @ Navi1x + { 1, 3, 4, 4, 0, } , // 1 pipes 8 bpe @ SW_64K_S @ Navi1x + { 1, 4, 5, 5, 0, } , // 1 pipes 16 bpe @ SW_64K_S @ Navi1x + { 1, 0, 1, 1, 0, } , // 2 pipes 1 bpe @ SW_64K_S @ Navi1x + { 1, 1, 2, 2, 0, } , // 2 pipes 2 bpe @ SW_64K_S @ Navi1x + { 1, 2, 3, 3, 0, } , // 2 pipes 4 bpe @ SW_64K_S @ Navi1x + { 1, 3, 4, 4, 0, } , // 2 pipes 8 bpe @ SW_64K_S @ Navi1x + { 1, 4, 5, 5, 0, } , // 2 pipes 16 bpe @ SW_64K_S @ Navi1x + { 1, 0, 1, 1, 0, } , // 4 pipes 1 bpe @ SW_64K_S @ Navi1x + { 1, 1, 2, 2, 0, } , // 4 pipes 2 bpe @ SW_64K_S @ Navi1x + { 1, 2, 3, 3, 0, } , // 4 pipes 4 bpe @ SW_64K_S @ Navi1x + { 1, 3, 4, 4, 0, } , // 4 pipes 8 bpe @ SW_64K_S @ Navi1x + { 1, 4, 5, 5, 0, } , // 4 pipes 16 bpe @ SW_64K_S @ Navi1x + { 1, 0, 1, 1, 0, } , // 8 pipes 1 bpe @ SW_64K_S @ Navi1x + { 1, 1, 2, 2, 0, } , // 8 pipes 2 bpe @ SW_64K_S @ Navi1x + { 1, 2, 3, 3, 0, } , // 8 pipes 4 bpe @ SW_64K_S @ Navi1x + { 1, 3, 4, 4, 0, } , // 8 pipes 8 bpe @ SW_64K_S @ Navi1x + { 1, 4, 5, 5, 0, } , // 8 pipes 16 bpe @ SW_64K_S @ Navi1x + { 1, 0, 1, 1, 0, } , // 16 pipes 1 bpe @ SW_64K_S @ Navi1x + { 1, 1, 2, 2, 0, } , // 16 pipes 2 bpe @ SW_64K_S @ Navi1x + { 1, 2, 3, 3, 0, } , // 16 pipes 4 bpe @ SW_64K_S @ Navi1x + { 1, 3, 4, 4, 0, } , // 16 pipes 8 bpe @ SW_64K_S @ Navi1x + { 1, 4, 5, 5, 0, } , // 16 pipes 16 bpe @ SW_64K_S @ Navi1x + { 1, 0, 1, 1, 0, } , // 32 pipes 1 bpe @ SW_64K_S @ Navi1x + { 1, 1, 2, 2, 0, } , // 32 pipes 2 bpe @ SW_64K_S @ Navi1x + { 1, 2, 3, 3, 0, } , // 32 pipes 4 bpe @ SW_64K_S @ Navi1x + { 1, 3, 4, 4, 0, } , // 32 pipes 8 bpe @ SW_64K_S @ Navi1x + { 1, 4, 5, 5, 0, } , // 32 pipes 16 bpe @ SW_64K_S @ Navi1x + { 1, 0, 1, 1, 0, } , // 64 pipes 1 bpe @ SW_64K_S @ Navi1x + { 1, 1, 2, 2, 0, } , // 64 pipes 2 bpe @ SW_64K_S @ Navi1x + { 1, 2, 3, 3, 0, } , // 64 pipes 4 bpe @ SW_64K_S @ Navi1x + { 1, 3, 4, 4, 0, } , // 64 pipes 8 bpe @ SW_64K_S @ Navi1x + { 1, 4, 5, 5, 0, } , // 64 pipes 16 bpe @ SW_64K_S @ Navi1x +}; + +const ADDR_SW_PATINFO SW_64K_D_PATINFO[] = +{ + { 1, 5, 1, 1, 0, } , // 1 pipes 1 bpe @ SW_64K_D @ Navi1x + { 1, 1, 2, 2, 0, } , // 1 pipes 2 bpe @ SW_64K_D @ Navi1x + { 1, 2, 3, 3, 0, } , // 1 pipes 4 bpe @ SW_64K_D @ Navi1x + { 1, 6, 4, 4, 0, } , // 1 pipes 8 bpe @ SW_64K_D @ Navi1x + { 1, 7, 5, 5, 0, } , // 1 pipes 16 bpe @ SW_64K_D @ Navi1x + { 1, 5, 1, 1, 0, } , // 2 pipes 1 bpe @ SW_64K_D @ Navi1x + { 1, 1, 2, 2, 0, } , // 2 pipes 2 bpe @ SW_64K_D @ Navi1x + { 1, 2, 3, 3, 0, } , // 2 pipes 4 bpe @ SW_64K_D @ Navi1x + { 1, 6, 4, 4, 0, } , // 2 pipes 8 bpe @ SW_64K_D @ Navi1x + { 1, 7, 5, 5, 0, } , // 2 pipes 16 bpe @ SW_64K_D @ Navi1x + { 1, 5, 1, 1, 0, } , // 4 pipes 1 bpe @ SW_64K_D @ Navi1x + { 1, 1, 2, 2, 0, } , // 4 pipes 2 bpe @ SW_64K_D @ Navi1x + { 1, 2, 3, 3, 0, } , // 4 pipes 4 bpe @ SW_64K_D @ Navi1x + { 1, 6, 4, 4, 0, } , // 4 pipes 8 bpe @ SW_64K_D @ Navi1x + { 1, 7, 5, 5, 0, } , // 4 pipes 16 bpe @ SW_64K_D @ Navi1x + { 1, 5, 1, 1, 0, } , // 8 pipes 1 bpe @ SW_64K_D @ Navi1x + { 1, 1, 2, 2, 0, } , // 8 pipes 2 bpe @ SW_64K_D @ Navi1x + { 1, 2, 3, 3, 0, } , // 8 pipes 4 bpe @ SW_64K_D @ Navi1x + { 1, 6, 4, 4, 0, } , // 8 pipes 8 bpe @ SW_64K_D @ Navi1x + { 1, 7, 5, 5, 0, } , // 8 pipes 16 bpe @ SW_64K_D @ Navi1x + { 1, 5, 1, 1, 0, } , // 16 pipes 1 bpe @ SW_64K_D @ Navi1x + { 1, 1, 2, 2, 0, } , // 16 pipes 2 bpe @ SW_64K_D @ Navi1x + { 1, 2, 3, 3, 0, } , // 16 pipes 4 bpe @ SW_64K_D @ Navi1x + { 1, 6, 4, 4, 0, } , // 16 pipes 8 bpe @ SW_64K_D @ Navi1x + { 1, 7, 5, 5, 0, } , // 16 pipes 16 bpe @ SW_64K_D @ Navi1x + { 1, 5, 1, 1, 0, } , // 32 pipes 1 bpe @ SW_64K_D @ Navi1x + { 1, 1, 2, 2, 0, } , // 32 pipes 2 bpe @ SW_64K_D @ Navi1x + { 1, 2, 3, 3, 0, } , // 32 pipes 4 bpe @ SW_64K_D @ Navi1x + { 1, 6, 4, 4, 0, } , // 32 pipes 8 bpe @ SW_64K_D @ Navi1x + { 1, 7, 5, 5, 0, } , // 32 pipes 16 bpe @ SW_64K_D @ Navi1x + { 1, 5, 1, 1, 0, } , // 64 pipes 1 bpe @ SW_64K_D @ Navi1x + { 1, 1, 2, 2, 0, } , // 64 pipes 2 bpe @ SW_64K_D @ Navi1x + { 1, 2, 3, 3, 0, } , // 64 pipes 4 bpe @ SW_64K_D @ Navi1x + { 1, 6, 4, 4, 0, } , // 64 pipes 8 bpe @ SW_64K_D @ Navi1x + { 1, 7, 5, 5, 0, } , // 64 pipes 16 bpe @ SW_64K_D @ Navi1x +}; + +const ADDR_SW_PATINFO SW_64K_S_T_PATINFO[] = +{ + { 1, 0, 1, 1, 0, } , // 1 pipes 1 bpe @ SW_64K_S_T @ Navi1x + { 1, 1, 2, 2, 0, } , // 1 pipes 2 bpe @ SW_64K_S_T @ Navi1x + { 1, 2, 3, 3, 0, } , // 1 pipes 4 bpe @ SW_64K_S_T @ Navi1x + { 1, 3, 4, 4, 0, } , // 1 pipes 8 bpe @ SW_64K_S_T @ Navi1x + { 1, 4, 5, 5, 0, } , // 1 pipes 16 bpe @ SW_64K_S_T @ Navi1x + { 2, 0, 36, 1, 0, } , // 2 pipes 1 bpe @ SW_64K_S_T @ Navi1x + { 2, 1, 37, 2, 0, } , // 2 pipes 2 bpe @ SW_64K_S_T @ Navi1x + { 2, 2, 38, 3, 0, } , // 2 pipes 4 bpe @ SW_64K_S_T @ Navi1x + { 2, 3, 39, 4, 0, } , // 2 pipes 8 bpe @ SW_64K_S_T @ Navi1x + { 2, 4, 40, 5, 0, } , // 2 pipes 16 bpe @ SW_64K_S_T @ Navi1x + { 2, 0, 41, 1, 0, } , // 4 pipes 1 bpe @ SW_64K_S_T @ Navi1x + { 2, 1, 42, 2, 0, } , // 4 pipes 2 bpe @ SW_64K_S_T @ Navi1x + { 2, 2, 43, 3, 0, } , // 4 pipes 4 bpe @ SW_64K_S_T @ Navi1x + { 2, 3, 44, 4, 0, } , // 4 pipes 8 bpe @ SW_64K_S_T @ Navi1x + { 2, 4, 45, 5, 0, } , // 4 pipes 16 bpe @ SW_64K_S_T @ Navi1x + { 2, 0, 46, 1, 0, } , // 8 pipes 1 bpe @ SW_64K_S_T @ Navi1x + { 2, 1, 47, 2, 0, } , // 8 pipes 2 bpe @ SW_64K_S_T @ Navi1x + { 2, 2, 48, 3, 0, } , // 8 pipes 4 bpe @ SW_64K_S_T @ Navi1x + { 2, 3, 49, 4, 0, } , // 8 pipes 8 bpe @ SW_64K_S_T @ Navi1x + { 2, 4, 50, 5, 0, } , // 8 pipes 16 bpe @ SW_64K_S_T @ Navi1x + { 2, 0, 51, 1, 0, } , // 16 pipes 1 bpe @ SW_64K_S_T @ Navi1x + { 2, 1, 52, 2, 0, } , // 16 pipes 2 bpe @ SW_64K_S_T @ Navi1x + { 2, 2, 53, 3, 0, } , // 16 pipes 4 bpe @ SW_64K_S_T @ Navi1x + { 2, 3, 54, 4, 0, } , // 16 pipes 8 bpe @ SW_64K_S_T @ Navi1x + { 2, 4, 55, 5, 0, } , // 16 pipes 16 bpe @ SW_64K_S_T @ Navi1x + { 2, 0, 56, 16, 0, } , // 32 pipes 1 bpe @ SW_64K_S_T @ Navi1x + { 2, 1, 57, 17, 0, } , // 32 pipes 2 bpe @ SW_64K_S_T @ Navi1x + { 2, 2, 58, 18, 0, } , // 32 pipes 4 bpe @ SW_64K_S_T @ Navi1x + { 2, 3, 59, 19, 0, } , // 32 pipes 8 bpe @ SW_64K_S_T @ Navi1x + { 2, 4, 60, 20, 0, } , // 32 pipes 16 bpe @ SW_64K_S_T @ Navi1x + { 2, 0, 1, 21, 0, } , // 64 pipes 1 bpe @ SW_64K_S_T @ Navi1x + { 2, 1, 2, 22, 0, } , // 64 pipes 2 bpe @ SW_64K_S_T @ Navi1x + { 2, 2, 3, 23, 0, } , // 64 pipes 4 bpe @ SW_64K_S_T @ Navi1x + { 2, 3, 4, 24, 0, } , // 64 pipes 8 bpe @ SW_64K_S_T @ Navi1x + { 2, 4, 5, 25, 0, } , // 64 pipes 16 bpe @ SW_64K_S_T @ Navi1x +}; + +const ADDR_SW_PATINFO SW_64K_D_T_PATINFO[] = +{ + { 1, 5, 1, 1, 0, } , // 1 pipes 1 bpe @ SW_64K_D_T @ Navi1x + { 1, 1, 2, 2, 0, } , // 1 pipes 2 bpe @ SW_64K_D_T @ Navi1x + { 1, 2, 3, 3, 0, } , // 1 pipes 4 bpe @ SW_64K_D_T @ Navi1x + { 1, 6, 4, 4, 0, } , // 1 pipes 8 bpe @ SW_64K_D_T @ Navi1x + { 1, 7, 5, 5, 0, } , // 1 pipes 16 bpe @ SW_64K_D_T @ Navi1x + { 2, 5, 36, 1, 0, } , // 2 pipes 1 bpe @ SW_64K_D_T @ Navi1x + { 2, 1, 37, 2, 0, } , // 2 pipes 2 bpe @ SW_64K_D_T @ Navi1x + { 2, 2, 38, 3, 0, } , // 2 pipes 4 bpe @ SW_64K_D_T @ Navi1x + { 2, 6, 39, 4, 0, } , // 2 pipes 8 bpe @ SW_64K_D_T @ Navi1x + { 2, 7, 40, 5, 0, } , // 2 pipes 16 bpe @ SW_64K_D_T @ Navi1x + { 2, 5, 41, 1, 0, } , // 4 pipes 1 bpe @ SW_64K_D_T @ Navi1x + { 2, 1, 42, 2, 0, } , // 4 pipes 2 bpe @ SW_64K_D_T @ Navi1x + { 2, 2, 43, 3, 0, } , // 4 pipes 4 bpe @ SW_64K_D_T @ Navi1x + { 2, 6, 44, 4, 0, } , // 4 pipes 8 bpe @ SW_64K_D_T @ Navi1x + { 2, 7, 45, 5, 0, } , // 4 pipes 16 bpe @ SW_64K_D_T @ Navi1x + { 2, 5, 46, 1, 0, } , // 8 pipes 1 bpe @ SW_64K_D_T @ Navi1x + { 2, 1, 47, 2, 0, } , // 8 pipes 2 bpe @ SW_64K_D_T @ Navi1x + { 2, 2, 48, 3, 0, } , // 8 pipes 4 bpe @ SW_64K_D_T @ Navi1x + { 2, 6, 49, 4, 0, } , // 8 pipes 8 bpe @ SW_64K_D_T @ Navi1x + { 2, 7, 50, 5, 0, } , // 8 pipes 16 bpe @ SW_64K_D_T @ Navi1x + { 2, 5, 51, 1, 0, } , // 16 pipes 1 bpe @ SW_64K_D_T @ Navi1x + { 2, 1, 52, 2, 0, } , // 16 pipes 2 bpe @ SW_64K_D_T @ Navi1x + { 2, 2, 53, 3, 0, } , // 16 pipes 4 bpe @ SW_64K_D_T @ Navi1x + { 2, 6, 54, 4, 0, } , // 16 pipes 8 bpe @ SW_64K_D_T @ Navi1x + { 2, 7, 55, 5, 0, } , // 16 pipes 16 bpe @ SW_64K_D_T @ Navi1x + { 2, 5, 56, 16, 0, } , // 32 pipes 1 bpe @ SW_64K_D_T @ Navi1x + { 2, 1, 57, 17, 0, } , // 32 pipes 2 bpe @ SW_64K_D_T @ Navi1x + { 2, 2, 58, 18, 0, } , // 32 pipes 4 bpe @ SW_64K_D_T @ Navi1x + { 2, 6, 59, 19, 0, } , // 32 pipes 8 bpe @ SW_64K_D_T @ Navi1x + { 2, 7, 60, 20, 0, } , // 32 pipes 16 bpe @ SW_64K_D_T @ Navi1x + { 2, 5, 1, 21, 0, } , // 64 pipes 1 bpe @ SW_64K_D_T @ Navi1x + { 2, 1, 2, 22, 0, } , // 64 pipes 2 bpe @ SW_64K_D_T @ Navi1x + { 2, 2, 3, 23, 0, } , // 64 pipes 4 bpe @ SW_64K_D_T @ Navi1x + { 2, 6, 4, 24, 0, } , // 64 pipes 8 bpe @ SW_64K_D_T @ Navi1x + { 2, 7, 5, 25, 0, } , // 64 pipes 16 bpe @ SW_64K_D_T @ Navi1x +}; + +const ADDR_SW_PATINFO SW_64K_S_X_PATINFO[] = +{ + { 1, 0, 1, 1, 0, } , // 1 pipes 1 bpe @ SW_64K_S_X @ Navi1x + { 1, 1, 2, 2, 0, } , // 1 pipes 2 bpe @ SW_64K_S_X @ Navi1x + { 1, 2, 3, 3, 0, } , // 1 pipes 4 bpe @ SW_64K_S_X @ Navi1x + { 1, 3, 4, 4, 0, } , // 1 pipes 8 bpe @ SW_64K_S_X @ Navi1x + { 1, 4, 5, 5, 0, } , // 1 pipes 16 bpe @ SW_64K_S_X @ Navi1x + { 3, 0, 6, 1, 0, } , // 2 pipes 1 bpe @ SW_64K_S_X @ Navi1x + { 3, 1, 7, 2, 0, } , // 2 pipes 2 bpe @ SW_64K_S_X @ Navi1x + { 3, 2, 8, 3, 0, } , // 2 pipes 4 bpe @ SW_64K_S_X @ Navi1x + { 3, 3, 9, 4, 0, } , // 2 pipes 8 bpe @ SW_64K_S_X @ Navi1x + { 3, 4, 10, 5, 0, } , // 2 pipes 16 bpe @ SW_64K_S_X @ Navi1x + { 3, 0, 11, 1, 0, } , // 4 pipes 1 bpe @ SW_64K_S_X @ Navi1x + { 3, 1, 12, 2, 0, } , // 4 pipes 2 bpe @ SW_64K_S_X @ Navi1x + { 3, 2, 13, 3, 0, } , // 4 pipes 4 bpe @ SW_64K_S_X @ Navi1x + { 3, 3, 14, 4, 0, } , // 4 pipes 8 bpe @ SW_64K_S_X @ Navi1x + { 3, 4, 15, 5, 0, } , // 4 pipes 16 bpe @ SW_64K_S_X @ Navi1x + { 3, 0, 16, 1, 0, } , // 8 pipes 1 bpe @ SW_64K_S_X @ Navi1x + { 3, 1, 17, 2, 0, } , // 8 pipes 2 bpe @ SW_64K_S_X @ Navi1x + { 3, 2, 18, 3, 0, } , // 8 pipes 4 bpe @ SW_64K_S_X @ Navi1x + { 3, 3, 19, 4, 0, } , // 8 pipes 8 bpe @ SW_64K_S_X @ Navi1x + { 3, 4, 20, 5, 0, } , // 8 pipes 16 bpe @ SW_64K_S_X @ Navi1x + { 3, 0, 21, 1, 0, } , // 16 pipes 1 bpe @ SW_64K_S_X @ Navi1x + { 3, 1, 22, 2, 0, } , // 16 pipes 2 bpe @ SW_64K_S_X @ Navi1x + { 3, 2, 23, 3, 0, } , // 16 pipes 4 bpe @ SW_64K_S_X @ Navi1x + { 3, 3, 24, 4, 0, } , // 16 pipes 8 bpe @ SW_64K_S_X @ Navi1x + { 3, 4, 25, 5, 0, } , // 16 pipes 16 bpe @ SW_64K_S_X @ Navi1x + { 3, 0, 26, 6, 0, } , // 32 pipes 1 bpe @ SW_64K_S_X @ Navi1x + { 3, 1, 27, 7, 0, } , // 32 pipes 2 bpe @ SW_64K_S_X @ Navi1x + { 3, 2, 28, 8, 0, } , // 32 pipes 4 bpe @ SW_64K_S_X @ Navi1x + { 3, 3, 29, 9, 0, } , // 32 pipes 8 bpe @ SW_64K_S_X @ Navi1x + { 3, 4, 30, 10, 0, } , // 32 pipes 16 bpe @ SW_64K_S_X @ Navi1x + { 3, 0, 31, 11, 0, } , // 64 pipes 1 bpe @ SW_64K_S_X @ Navi1x + { 3, 1, 32, 12, 0, } , // 64 pipes 2 bpe @ SW_64K_S_X @ Navi1x + { 3, 2, 33, 13, 0, } , // 64 pipes 4 bpe @ SW_64K_S_X @ Navi1x + { 3, 3, 34, 14, 0, } , // 64 pipes 8 bpe @ SW_64K_S_X @ Navi1x + { 3, 4, 35, 15, 0, } , // 64 pipes 16 bpe @ SW_64K_S_X @ Navi1x +}; + +const ADDR_SW_PATINFO SW_64K_D_X_PATINFO[] = +{ + { 1, 5, 1, 1, 0, } , // 1 pipes 1 bpe @ SW_64K_D_X @ Navi1x + { 1, 1, 2, 2, 0, } , // 1 pipes 2 bpe @ SW_64K_D_X @ Navi1x + { 1, 2, 3, 3, 0, } , // 1 pipes 4 bpe @ SW_64K_D_X @ Navi1x + { 1, 6, 4, 4, 0, } , // 1 pipes 8 bpe @ SW_64K_D_X @ Navi1x + { 1, 7, 5, 5, 0, } , // 1 pipes 16 bpe @ SW_64K_D_X @ Navi1x + { 3, 5, 6, 1, 0, } , // 2 pipes 1 bpe @ SW_64K_D_X @ Navi1x + { 3, 1, 7, 2, 0, } , // 2 pipes 2 bpe @ SW_64K_D_X @ Navi1x + { 3, 2, 8, 3, 0, } , // 2 pipes 4 bpe @ SW_64K_D_X @ Navi1x + { 3, 6, 9, 4, 0, } , // 2 pipes 8 bpe @ SW_64K_D_X @ Navi1x + { 3, 7, 10, 5, 0, } , // 2 pipes 16 bpe @ SW_64K_D_X @ Navi1x + { 3, 5, 11, 1, 0, } , // 4 pipes 1 bpe @ SW_64K_D_X @ Navi1x + { 3, 1, 12, 2, 0, } , // 4 pipes 2 bpe @ SW_64K_D_X @ Navi1x + { 3, 2, 13, 3, 0, } , // 4 pipes 4 bpe @ SW_64K_D_X @ Navi1x + { 3, 6, 14, 4, 0, } , // 4 pipes 8 bpe @ SW_64K_D_X @ Navi1x + { 3, 7, 15, 5, 0, } , // 4 pipes 16 bpe @ SW_64K_D_X @ Navi1x + { 3, 5, 16, 1, 0, } , // 8 pipes 1 bpe @ SW_64K_D_X @ Navi1x + { 3, 1, 17, 2, 0, } , // 8 pipes 2 bpe @ SW_64K_D_X @ Navi1x + { 3, 2, 18, 3, 0, } , // 8 pipes 4 bpe @ SW_64K_D_X @ Navi1x + { 3, 6, 19, 4, 0, } , // 8 pipes 8 bpe @ SW_64K_D_X @ Navi1x + { 3, 7, 20, 5, 0, } , // 8 pipes 16 bpe @ SW_64K_D_X @ Navi1x + { 3, 5, 21, 1, 0, } , // 16 pipes 1 bpe @ SW_64K_D_X @ Navi1x + { 3, 1, 22, 2, 0, } , // 16 pipes 2 bpe @ SW_64K_D_X @ Navi1x + { 3, 2, 23, 3, 0, } , // 16 pipes 4 bpe @ SW_64K_D_X @ Navi1x + { 3, 6, 24, 4, 0, } , // 16 pipes 8 bpe @ SW_64K_D_X @ Navi1x + { 3, 7, 25, 5, 0, } , // 16 pipes 16 bpe @ SW_64K_D_X @ Navi1x + { 3, 5, 26, 6, 0, } , // 32 pipes 1 bpe @ SW_64K_D_X @ Navi1x + { 3, 1, 27, 7, 0, } , // 32 pipes 2 bpe @ SW_64K_D_X @ Navi1x + { 3, 2, 28, 8, 0, } , // 32 pipes 4 bpe @ SW_64K_D_X @ Navi1x + { 3, 6, 29, 9, 0, } , // 32 pipes 8 bpe @ SW_64K_D_X @ Navi1x + { 3, 7, 30, 10, 0, } , // 32 pipes 16 bpe @ SW_64K_D_X @ Navi1x + { 3, 5, 31, 11, 0, } , // 64 pipes 1 bpe @ SW_64K_D_X @ Navi1x + { 3, 1, 32, 12, 0, } , // 64 pipes 2 bpe @ SW_64K_D_X @ Navi1x + { 3, 2, 33, 13, 0, } , // 64 pipes 4 bpe @ SW_64K_D_X @ Navi1x + { 3, 6, 34, 14, 0, } , // 64 pipes 8 bpe @ SW_64K_D_X @ Navi1x + { 3, 7, 35, 15, 0, } , // 64 pipes 16 bpe @ SW_64K_D_X @ Navi1x +}; + +const ADDR_SW_PATINFO SW_64K_R_X_1xaa_PATINFO[] = +{ + { 1, 5, 1, 1, 0, } , // 1 pipes 1 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 1, 1, 2, 2, 0, } , // 1 pipes 2 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 1, 2, 3, 3, 0, } , // 1 pipes 4 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 1, 6, 4, 4, 0, } , // 1 pipes 8 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 1, 7, 5, 5, 0, } , // 1 pipes 16 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 28, 61, 1, 0, } , // 2 pipes 1 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 1, 62, 2, 0, } , // 2 pipes 2 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 2, 8, 3, 0, } , // 2 pipes 4 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 6, 63, 4, 0, } , // 2 pipes 8 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 7, 64, 5, 0, } , // 2 pipes 16 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 28, 65, 1, 0, } , // 4 pipes 1 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 1, 66, 2, 0, } , // 4 pipes 2 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 2, 67, 3, 0, } , // 4 pipes 4 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 6, 68, 4, 0, } , // 4 pipes 8 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 7, 69, 26, 0, } , // 4 pipes 16 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 28, 70, 1, 0, } , // 8 pipes 1 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 1, 71, 2, 0, } , // 8 pipes 2 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 2, 72, 27, 0, } , // 8 pipes 4 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 6, 72, 28, 0, } , // 8 pipes 8 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 7, 73, 29, 0, } , // 8 pipes 16 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 28, 74, 1, 0, } , // 16 pipes 1 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 1, 74, 30, 0, } , // 16 pipes 2 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 2, 74, 31, 0, } , // 16 pipes 4 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 6, 74, 32, 0, } , // 16 pipes 8 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 7, 74, 33, 0, } , // 16 pipes 16 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 28, 75, 6, 0, } , // 32 pipes 1 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 1, 75, 34, 0, } , // 32 pipes 2 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 2, 75, 35, 0, } , // 32 pipes 4 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 6, 75, 36, 0, } , // 32 pipes 8 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 7, 76, 37, 0, } , // 32 pipes 16 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 28, 77, 11, 0, } , // 64 pipes 1 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 1, 77, 38, 0, } , // 64 pipes 2 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 2, 77, 39, 0, } , // 64 pipes 4 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 6, 78, 40, 0, } , // 64 pipes 8 bpe @ SW_64K_R_X 1xaa @ Navi1x + { 3, 7, 79, 41, 0, } , // 64 pipes 16 bpe @ SW_64K_R_X 1xaa @ Navi1x +}; + +const ADDR_SW_PATINFO SW_64K_R_X_2xaa_PATINFO[] = +{ + { 2, 5, 1, 99, 0, } , // 1 pipes 1 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 2, 1, 2, 100, 0, } , // 1 pipes 2 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 2, 2, 3, 101, 0, } , // 1 pipes 4 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 2, 6, 4, 102, 0, } , // 1 pipes 8 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 2, 7, 5, 103, 0, } , // 1 pipes 16 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 28, 61, 99, 0, } , // 2 pipes 1 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 1, 62, 100, 0, } , // 2 pipes 2 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 2, 8, 101, 0, } , // 2 pipes 4 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 6, 63, 102, 0, } , // 2 pipes 8 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 7, 64, 103, 0, } , // 2 pipes 16 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 28, 65, 99, 0, } , // 4 pipes 1 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 1, 66, 100, 0, } , // 4 pipes 2 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 2, 67, 101, 0, } , // 4 pipes 4 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 6, 68, 102, 0, } , // 4 pipes 8 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 7, 69, 104, 0, } , // 4 pipes 16 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 28, 70, 99, 0, } , // 8 pipes 1 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 1, 71, 100, 0, } , // 8 pipes 2 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 2, 72, 105, 0, } , // 8 pipes 4 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 6, 72, 106, 0, } , // 8 pipes 8 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 7, 73, 107, 0, } , // 8 pipes 16 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 28, 74, 99, 0, } , // 16 pipes 1 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 1, 74, 108, 0, } , // 16 pipes 2 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 2, 74, 109, 0, } , // 16 pipes 4 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 6, 74, 107, 0, } , // 16 pipes 8 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 7, 113, 33, 0, } , // 16 pipes 16 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 28, 75, 110, 0, } , // 32 pipes 1 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 1, 75, 111, 0, } , // 32 pipes 2 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 2, 75, 112, 0, } , // 32 pipes 4 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 6, 76, 113, 0, } , // 32 pipes 8 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 7, 114, 37, 0, } , // 32 pipes 16 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 28, 78, 114, 0, } , // 64 pipes 1 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 1, 78, 115, 0, } , // 64 pipes 2 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 2, 78, 116, 0, } , // 64 pipes 4 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 6, 79, 117, 0, } , // 64 pipes 8 bpe @ SW_64K_R_X 2xaa @ Navi1x + { 3, 7, 115, 41, 0, } , // 64 pipes 16 bpe @ SW_64K_R_X 2xaa @ Navi1x +}; + +const ADDR_SW_PATINFO SW_64K_R_X_4xaa_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2 }, - {0, 0, 0, X0, Y0, Y1, X1, X2 }, - {0, 0, 0, 0, Y0, Y1, X0, X1 }, + { 2, 5, 1, 118, 0, } , // 1 pipes 1 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 2, 1, 2, 119, 0, } , // 1 pipes 2 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 2, 2, 3, 120, 0, } , // 1 pipes 4 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 2, 6, 4, 121, 0, } , // 1 pipes 8 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 2, 7, 5, 122, 0, } , // 1 pipes 16 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 28, 61, 118, 0, } , // 2 pipes 1 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 1, 62, 119, 0, } , // 2 pipes 2 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 2, 8, 120, 0, } , // 2 pipes 4 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 6, 63, 121, 0, } , // 2 pipes 8 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 7, 64, 122, 0, } , // 2 pipes 16 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 28, 65, 118, 0, } , // 4 pipes 1 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 1, 66, 119, 0, } , // 4 pipes 2 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 2, 67, 120, 0, } , // 4 pipes 4 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 6, 68, 121, 0, } , // 4 pipes 8 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 7, 69, 123, 0, } , // 4 pipes 16 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 28, 70, 118, 0, } , // 8 pipes 1 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 1, 71, 119, 0, } , // 8 pipes 2 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 2, 72, 124, 0, } , // 8 pipes 4 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 6, 93, 125, 0, } , // 8 pipes 8 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 7, 116, 107, 0, } , // 8 pipes 16 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 28, 74, 118, 0, } , // 16 pipes 1 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 1, 74, 126, 0, } , // 16 pipes 2 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 2, 74, 127, 0, } , // 16 pipes 4 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 6, 117, 107, 0, } , // 16 pipes 8 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 7, 118, 33, 0, } , // 16 pipes 16 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 28, 76, 128, 0, } , // 32 pipes 1 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 1, 76, 129, 0, } , // 32 pipes 2 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 2, 76, 130, 0, } , // 32 pipes 4 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 6, 119, 113, 0, } , // 32 pipes 8 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 7, 120, 37, 0, } , // 32 pipes 16 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 28, 79, 131, 0, } , // 64 pipes 1 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 1, 79, 132, 0, } , // 64 pipes 2 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 2, 79, 133, 0, } , // 64 pipes 4 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 6, 121, 117, 0, } , // 64 pipes 8 bpe @ SW_64K_R_X 4xaa @ Navi1x + { 3, 7, 122, 41, 0, } , // 64 pipes 16 bpe @ SW_64K_R_X 4xaa @ Navi1x }; -const UINT_64 SW_256_D[][8]= +const ADDR_SW_PATINFO SW_64K_R_X_8xaa_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2 }, - {0, 0, 0, X0, Y0, X1, X2, Y1 }, - {0, 0, 0, 0, X0, Y0, X1, Y1 }, + { 2, 5, 1, 134, 0, } , // 1 pipes 1 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 2, 1, 2, 135, 0, } , // 1 pipes 2 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 2, 2, 3, 135, 0, } , // 1 pipes 4 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 2, 6, 4, 136, 0, } , // 1 pipes 8 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 2, 7, 5, 136, 0, } , // 1 pipes 16 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 28, 61, 134, 0, } , // 2 pipes 1 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 1, 62, 135, 0, } , // 2 pipes 2 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 2, 8, 135, 0, } , // 2 pipes 4 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 6, 63, 136, 0, } , // 2 pipes 8 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 7, 64, 136, 0, } , // 2 pipes 16 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 28, 65, 134, 0, } , // 4 pipes 1 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 1, 66, 135, 0, } , // 4 pipes 2 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 2, 67, 135, 0, } , // 4 pipes 4 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 6, 68, 136, 0, } , // 4 pipes 8 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 7, 102, 137, 0, } , // 4 pipes 16 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 28, 70, 134, 0, } , // 8 pipes 1 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 1, 71, 135, 0, } , // 8 pipes 2 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 2, 72, 138, 0, } , // 8 pipes 4 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 6, 123, 139, 0, } , // 8 pipes 8 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 7, 124, 140, 0, } , // 8 pipes 16 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 28, 105, 134, 0, } , // 16 pipes 1 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 1, 105, 138, 0, } , // 16 pipes 2 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 2, 125, 127, 0, } , // 16 pipes 4 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 6, 126, 107, 0, } , // 16 pipes 8 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 7, 126, 141, 0, } , // 16 pipes 16 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 28, 107, 142, 0, } , // 32 pipes 1 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 1, 108, 143, 0, } , // 32 pipes 2 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 2, 127, 130, 0, } , // 32 pipes 4 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 6, 128, 113, 0, } , // 32 pipes 8 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 7, 128, 144, 0, } , // 32 pipes 16 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 28, 110, 145, 0, } , // 64 pipes 1 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 1, 111, 146, 0, } , // 64 pipes 2 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 2, 129, 133, 0, } , // 64 pipes 4 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 6, 130, 117, 0, } , // 64 pipes 8 bpe @ SW_64K_R_X 8xaa @ Navi1x + { 3, 7, 130, 147, 0, } , // 64 pipes 16 bpe @ SW_64K_R_X 8xaa @ Navi1x }; -const UINT_64 SW_4K_S[][12]= +const ADDR_SW_PATINFO SW_64K_Z_X_1xaa_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3 }, + { 1, 8, 1, 1, 0, } , // 1 pipes 1 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 1, 9, 2, 2, 0, } , // 1 pipes 2 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 1, 10, 3, 3, 0, } , // 1 pipes 4 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 1, 11, 4, 4, 0, } , // 1 pipes 8 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 1, 7, 5, 5, 0, } , // 1 pipes 16 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 12, 61, 1, 0, } , // 2 pipes 1 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 9, 62, 2, 0, } , // 2 pipes 2 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 10, 8, 3, 0, } , // 2 pipes 4 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 11, 63, 4, 0, } , // 2 pipes 8 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 7, 64, 5, 0, } , // 2 pipes 16 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 12, 65, 1, 0, } , // 4 pipes 1 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 9, 66, 2, 0, } , // 4 pipes 2 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 10, 67, 3, 0, } , // 4 pipes 4 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 11, 68, 4, 0, } , // 4 pipes 8 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 7, 69, 26, 0, } , // 4 pipes 16 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 12, 70, 1, 0, } , // 8 pipes 1 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 9, 71, 2, 0, } , // 8 pipes 2 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 10, 72, 27, 0, } , // 8 pipes 4 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 11, 72, 28, 0, } , // 8 pipes 8 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 7, 73, 29, 0, } , // 8 pipes 16 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 12, 74, 1, 0, } , // 16 pipes 1 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 9, 74, 30, 0, } , // 16 pipes 2 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 10, 74, 31, 0, } , // 16 pipes 4 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 11, 74, 32, 0, } , // 16 pipes 8 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 7, 74, 33, 0, } , // 16 pipes 16 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 12, 75, 6, 0, } , // 32 pipes 1 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 9, 75, 34, 0, } , // 32 pipes 2 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 10, 75, 35, 0, } , // 32 pipes 4 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 11, 75, 36, 0, } , // 32 pipes 8 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 7, 76, 37, 0, } , // 32 pipes 16 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 12, 77, 11, 0, } , // 64 pipes 1 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 9, 77, 38, 0, } , // 64 pipes 2 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 10, 77, 39, 0, } , // 64 pipes 4 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 11, 78, 40, 0, } , // 64 pipes 8 bpe @ SW_64K_Z_X 1xaa @ Navi1x + { 3, 7, 79, 41, 0, } , // 64 pipes 16 bpe @ SW_64K_Z_X 1xaa @ Navi1x }; -const UINT_64 SW_4K_D[][12]= +const ADDR_SW_PATINFO SW_64K_Z_X_2xaa_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3 }, + { 1, 13, 80, 42, 0, } , // 1 pipes 1 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 1, 14, 3, 3, 0, } , // 1 pipes 2 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 2, 15, 3, 43, 0, } , // 1 pipes 4 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 2, 16, 81, 44, 0, } , // 1 pipes 8 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 2, 17, 5, 45, 0, } , // 1 pipes 16 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 13, 82, 42, 0, } , // 2 pipes 1 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 14, 8, 3, 0, } , // 2 pipes 2 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 15, 8, 43, 0, } , // 2 pipes 4 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 16, 83, 44, 0, } , // 2 pipes 8 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 17, 64, 45, 0, } , // 2 pipes 16 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 13, 84, 42, 0, } , // 4 pipes 1 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 14, 67, 3, 0, } , // 4 pipes 2 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 15, 67, 43, 0, } , // 4 pipes 4 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 16, 85, 44, 0, } , // 4 pipes 8 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 17, 69, 46, 0, } , // 4 pipes 16 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 13, 86, 42, 0, } , // 8 pipes 1 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 14, 72, 27, 0, } , // 8 pipes 2 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 15, 72, 47, 0, } , // 8 pipes 4 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 16, 73, 48, 0, } , // 8 pipes 8 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 17, 73, 49, 0, } , // 8 pipes 16 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 13, 74, 50, 0, } , // 16 pipes 1 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 14, 74, 31, 0, } , // 16 pipes 2 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 15, 74, 51, 0, } , // 16 pipes 4 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 16, 74, 52, 0, } , // 16 pipes 8 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 17, 87, 53, 0, } , // 16 pipes 16 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 13, 75, 54, 0, } , // 32 pipes 1 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 14, 75, 35, 0, } , // 32 pipes 2 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 15, 75, 55, 0, } , // 32 pipes 4 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 16, 76, 56, 0, } , // 32 pipes 8 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 17, 88, 57, 0, } , // 32 pipes 16 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 13, 78, 58, 0, } , // 64 pipes 1 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 14, 78, 59, 0, } , // 64 pipes 2 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 15, 78, 60, 0, } , // 64 pipes 4 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 16, 79, 41, 0, } , // 64 pipes 8 bpe @ SW_64K_Z_X 2xaa @ Navi1x + { 3, 17, 89, 61, 0, } , // 64 pipes 16 bpe @ SW_64K_Z_X 2xaa @ Navi1x }; -const UINT_64 SW_4K_S_X[][12]= +const ADDR_SW_PATINFO SW_64K_Z_X_4xaa_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ Y3 ^ X4, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Z0 ^ Y2 ^ X3, X3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Z0 ^ X2 ^ Y2, X2, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Z1 ^ Y2 ^ X4, Z0 ^ X3 ^ Y3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Z1 ^ Y2 ^ X3, Z0 ^ X2 ^ Y3, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z2 ^ X5, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z2 ^ X4, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z0 ^ X4 ^ Y5, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z0 ^ X3 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z0 ^ X3 ^ Y3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, Z0 ^ X2 ^ Y3, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, + { 1, 18, 3, 3, 0, } , // 1 pipes 1 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 2, 19, 90, 62, 0, } , // 1 pipes 2 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 2, 20, 3, 63, 0, } , // 1 pipes 4 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 2, 21, 4, 64, 0, } , // 1 pipes 8 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 2, 22, 5, 65, 0, } , // 1 pipes 16 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 18, 8, 3, 0, } , // 2 pipes 1 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 19, 91, 62, 0, } , // 2 pipes 2 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 20, 8, 66, 0, } , // 2 pipes 4 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 21, 63, 67, 0, } , // 2 pipes 8 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 22, 64, 68, 0, } , // 2 pipes 16 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 18, 67, 3, 0, } , // 4 pipes 1 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 19, 92, 62, 0, } , // 4 pipes 2 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 20, 67, 63, 0, } , // 4 pipes 4 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 21, 68, 64, 0, } , // 4 pipes 8 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 22, 69, 69, 0, } , // 4 pipes 16 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 18, 72, 27, 0, } , // 8 pipes 1 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 19, 72, 70, 0, } , // 8 pipes 2 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 20, 72, 71, 0, } , // 8 pipes 4 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 21, 93, 72, 0, } , // 8 pipes 8 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 22, 94, 73, 0, } , // 8 pipes 16 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 18, 74, 31, 0, } , // 16 pipes 1 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 19, 74, 74, 0, } , // 16 pipes 2 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 20, 74, 75, 0, } , // 16 pipes 4 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 21, 95, 76, 0, } , // 16 pipes 8 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 22, 96, 76, 0, } , // 16 pipes 16 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 18, 76, 77, 0, } , // 32 pipes 1 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 19, 76, 78, 0, } , // 32 pipes 2 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 20, 76, 56, 0, } , // 32 pipes 4 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 21, 97, 79, 0, } , // 32 pipes 8 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 22, 98, 79, 0, } , // 32 pipes 16 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 18, 79, 80, 0, } , // 64 pipes 1 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 19, 79, 81, 0, } , // 64 pipes 2 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 20, 79, 41, 0, } , // 64 pipes 4 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 21, 99, 82, 0, } , // 64 pipes 8 bpe @ SW_64K_Z_X 4xaa @ Navi1x + { 3, 22, 100, 82, 0, } , // 64 pipes 16 bpe @ SW_64K_Z_X 4xaa @ Navi1x }; -const UINT_64 SW_4K_D_X[][12]= +const ADDR_SW_PATINFO SW_64K_Z_X_8xaa_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ Y3 ^ X4, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z0 ^ Y2 ^ X3, X3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X2 ^ Y2, X2, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z1 ^ Y2 ^ X4, Z0 ^ X3 ^ Y3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ Y2 ^ X3, Z0 ^ X2 ^ Y3, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z2 ^ X5, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z2 ^ X4, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z0 ^ X4 ^ Y5, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z0 ^ X3 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z0 ^ X3 ^ Y3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z0 ^ X2 ^ Y3, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, + { 2, 23, 3, 43, 0, } , // 1 pipes 1 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 2, 24, 3, 63, 0, } , // 1 pipes 2 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 2, 25, 3, 83, 0, } , // 1 pipes 4 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 2, 26, 81, 84, 0, } , // 1 pipes 8 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 2, 27, 5, 85, 0, } , // 1 pipes 16 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 23, 8, 43, 0, } , // 2 pipes 1 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 24, 8, 66, 0, } , // 2 pipes 2 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 25, 8, 86, 0, } , // 2 pipes 4 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 26, 101, 87, 0, } , // 2 pipes 8 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 27, 64, 88, 0, } , // 2 pipes 16 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 23, 67, 43, 0, } , // 4 pipes 1 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 24, 67, 63, 0, } , // 4 pipes 2 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 25, 67, 83, 0, } , // 4 pipes 4 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 26, 85, 84, 0, } , // 4 pipes 8 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 27, 102, 89, 0, } , // 4 pipes 16 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 23, 72, 47, 0, } , // 8 pipes 1 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 24, 72, 71, 0, } , // 8 pipes 2 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 25, 72, 90, 0, } , // 8 pipes 4 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 26, 103, 91, 0, } , // 8 pipes 8 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 27, 104, 92, 0, } , // 8 pipes 16 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 23, 105, 51, 0, } , // 16 pipes 1 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 24, 105, 75, 0, } , // 16 pipes 2 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 25, 87, 93, 0, } , // 16 pipes 4 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 26, 96, 76, 0, } , // 16 pipes 8 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 27, 106, 94, 0, } , // 16 pipes 16 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 23, 107, 95, 0, } , // 32 pipes 1 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 24, 108, 56, 0, } , // 32 pipes 2 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 25, 88, 57, 0, } , // 32 pipes 4 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 26, 98, 79, 0, } , // 32 pipes 8 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 27, 109, 96, 0, } , // 32 pipes 16 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 23, 110, 97, 0, } , // 64 pipes 1 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 24, 111, 41, 0, } , // 64 pipes 2 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 25, 89, 61, 0, } , // 64 pipes 4 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 26, 100, 82, 0, } , // 64 pipes 8 bpe @ SW_64K_Z_X 8xaa @ Navi1x + { 3, 27, 112, 98, 0, } , // 64 pipes 16 bpe @ SW_64K_Z_X 8xaa @ Navi1x }; -const UINT_64 SW_64K_S[][16]= +const ADDR_SW_PATINFO SW_64K_S3_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, + { 1, 29, 131, 148, 0, } , // 1 pipes 1 bpe @ SW_64K_S3 @ Navi1x + { 1, 30, 132, 149, 0, } , // 1 pipes 2 bpe @ SW_64K_S3 @ Navi1x + { 1, 31, 133, 150, 0, } , // 1 pipes 4 bpe @ SW_64K_S3 @ Navi1x + { 1, 32, 134, 151, 0, } , // 1 pipes 8 bpe @ SW_64K_S3 @ Navi1x + { 1, 33, 135, 152, 0, } , // 1 pipes 16 bpe @ SW_64K_S3 @ Navi1x + { 1, 29, 131, 148, 0, } , // 2 pipes 1 bpe @ SW_64K_S3 @ Navi1x + { 1, 30, 132, 149, 0, } , // 2 pipes 2 bpe @ SW_64K_S3 @ Navi1x + { 1, 31, 133, 150, 0, } , // 2 pipes 4 bpe @ SW_64K_S3 @ Navi1x + { 1, 32, 134, 151, 0, } , // 2 pipes 8 bpe @ SW_64K_S3 @ Navi1x + { 1, 33, 135, 152, 0, } , // 2 pipes 16 bpe @ SW_64K_S3 @ Navi1x + { 1, 29, 131, 148, 0, } , // 4 pipes 1 bpe @ SW_64K_S3 @ Navi1x + { 1, 30, 132, 149, 0, } , // 4 pipes 2 bpe @ SW_64K_S3 @ Navi1x + { 1, 31, 133, 150, 0, } , // 4 pipes 4 bpe @ SW_64K_S3 @ Navi1x + { 1, 32, 134, 151, 0, } , // 4 pipes 8 bpe @ SW_64K_S3 @ Navi1x + { 1, 33, 135, 152, 0, } , // 4 pipes 16 bpe @ SW_64K_S3 @ Navi1x + { 1, 29, 131, 148, 0, } , // 8 pipes 1 bpe @ SW_64K_S3 @ Navi1x + { 1, 30, 132, 149, 0, } , // 8 pipes 2 bpe @ SW_64K_S3 @ Navi1x + { 1, 31, 133, 150, 0, } , // 8 pipes 4 bpe @ SW_64K_S3 @ Navi1x + { 1, 32, 134, 151, 0, } , // 8 pipes 8 bpe @ SW_64K_S3 @ Navi1x + { 1, 33, 135, 152, 0, } , // 8 pipes 16 bpe @ SW_64K_S3 @ Navi1x + { 1, 29, 131, 148, 0, } , // 16 pipes 1 bpe @ SW_64K_S3 @ Navi1x + { 1, 30, 132, 149, 0, } , // 16 pipes 2 bpe @ SW_64K_S3 @ Navi1x + { 1, 31, 133, 150, 0, } , // 16 pipes 4 bpe @ SW_64K_S3 @ Navi1x + { 1, 32, 134, 151, 0, } , // 16 pipes 8 bpe @ SW_64K_S3 @ Navi1x + { 1, 33, 135, 152, 0, } , // 16 pipes 16 bpe @ SW_64K_S3 @ Navi1x + { 1, 29, 131, 148, 0, } , // 32 pipes 1 bpe @ SW_64K_S3 @ Navi1x + { 1, 30, 132, 149, 0, } , // 32 pipes 2 bpe @ SW_64K_S3 @ Navi1x + { 1, 31, 133, 150, 0, } , // 32 pipes 4 bpe @ SW_64K_S3 @ Navi1x + { 1, 32, 134, 151, 0, } , // 32 pipes 8 bpe @ SW_64K_S3 @ Navi1x + { 1, 33, 135, 152, 0, } , // 32 pipes 16 bpe @ SW_64K_S3 @ Navi1x + { 1, 29, 131, 148, 0, } , // 64 pipes 1 bpe @ SW_64K_S3 @ Navi1x + { 1, 30, 132, 149, 0, } , // 64 pipes 2 bpe @ SW_64K_S3 @ Navi1x + { 1, 31, 133, 150, 0, } , // 64 pipes 4 bpe @ SW_64K_S3 @ Navi1x + { 1, 32, 134, 151, 0, } , // 64 pipes 8 bpe @ SW_64K_S3 @ Navi1x + { 1, 33, 135, 152, 0, } , // 64 pipes 16 bpe @ SW_64K_S3 @ Navi1x }; -const UINT_64 SW_64K_D[][16]= +const ADDR_SW_PATINFO SW_64K_S3_X_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, + { 1, 29, 131, 148, 0, } , // 1 pipes 1 bpe @ SW_64K_S3_X @ Navi1x + { 1, 30, 132, 149, 0, } , // 1 pipes 2 bpe @ SW_64K_S3_X @ Navi1x + { 1, 31, 133, 150, 0, } , // 1 pipes 4 bpe @ SW_64K_S3_X @ Navi1x + { 1, 32, 134, 151, 0, } , // 1 pipes 8 bpe @ SW_64K_S3_X @ Navi1x + { 1, 33, 135, 152, 0, } , // 1 pipes 16 bpe @ SW_64K_S3_X @ Navi1x + { 3, 29, 136, 148, 0, } , // 2 pipes 1 bpe @ SW_64K_S3_X @ Navi1x + { 3, 30, 137, 149, 0, } , // 2 pipes 2 bpe @ SW_64K_S3_X @ Navi1x + { 3, 31, 138, 150, 0, } , // 2 pipes 4 bpe @ SW_64K_S3_X @ Navi1x + { 3, 32, 139, 151, 0, } , // 2 pipes 8 bpe @ SW_64K_S3_X @ Navi1x + { 3, 33, 140, 152, 0, } , // 2 pipes 16 bpe @ SW_64K_S3_X @ Navi1x + { 3, 29, 141, 148, 0, } , // 4 pipes 1 bpe @ SW_64K_S3_X @ Navi1x + { 3, 30, 142, 149, 0, } , // 4 pipes 2 bpe @ SW_64K_S3_X @ Navi1x + { 3, 31, 143, 150, 0, } , // 4 pipes 4 bpe @ SW_64K_S3_X @ Navi1x + { 3, 32, 144, 151, 0, } , // 4 pipes 8 bpe @ SW_64K_S3_X @ Navi1x + { 3, 33, 145, 152, 0, } , // 4 pipes 16 bpe @ SW_64K_S3_X @ Navi1x + { 3, 29, 146, 148, 0, } , // 8 pipes 1 bpe @ SW_64K_S3_X @ Navi1x + { 3, 30, 147, 149, 0, } , // 8 pipes 2 bpe @ SW_64K_S3_X @ Navi1x + { 3, 31, 148, 150, 0, } , // 8 pipes 4 bpe @ SW_64K_S3_X @ Navi1x + { 3, 32, 149, 151, 0, } , // 8 pipes 8 bpe @ SW_64K_S3_X @ Navi1x + { 3, 33, 150, 152, 0, } , // 8 pipes 16 bpe @ SW_64K_S3_X @ Navi1x + { 3, 29, 151, 148, 0, } , // 16 pipes 1 bpe @ SW_64K_S3_X @ Navi1x + { 3, 30, 152, 149, 0, } , // 16 pipes 2 bpe @ SW_64K_S3_X @ Navi1x + { 3, 31, 153, 150, 0, } , // 16 pipes 4 bpe @ SW_64K_S3_X @ Navi1x + { 3, 32, 154, 151, 0, } , // 16 pipes 8 bpe @ SW_64K_S3_X @ Navi1x + { 3, 33, 155, 152, 0, } , // 16 pipes 16 bpe @ SW_64K_S3_X @ Navi1x + { 3, 29, 156, 153, 0, } , // 32 pipes 1 bpe @ SW_64K_S3_X @ Navi1x + { 3, 30, 157, 154, 0, } , // 32 pipes 2 bpe @ SW_64K_S3_X @ Navi1x + { 3, 31, 158, 155, 0, } , // 32 pipes 4 bpe @ SW_64K_S3_X @ Navi1x + { 3, 32, 159, 156, 0, } , // 32 pipes 8 bpe @ SW_64K_S3_X @ Navi1x + { 3, 33, 160, 157, 0, } , // 32 pipes 16 bpe @ SW_64K_S3_X @ Navi1x + { 3, 29, 161, 158, 0, } , // 64 pipes 1 bpe @ SW_64K_S3_X @ Navi1x + { 3, 30, 162, 159, 0, } , // 64 pipes 2 bpe @ SW_64K_S3_X @ Navi1x + { 3, 31, 163, 160, 0, } , // 64 pipes 4 bpe @ SW_64K_S3_X @ Navi1x + { 3, 32, 164, 161, 0, } , // 64 pipes 8 bpe @ SW_64K_S3_X @ Navi1x + { 3, 33, 165, 162, 0, } , // 64 pipes 16 bpe @ SW_64K_S3_X @ Navi1x }; -const UINT_64 SW_64K_S_T[][16]= +const ADDR_SW_PATINFO SW_64K_S3_T_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4 ^ Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X4, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X3, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, X2 ^ Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X4, X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X3, X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X5, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X4, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X6, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X5, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, + { 1, 29, 131, 148, 0, } , // 1 pipes 1 bpe @ SW_64K_S3_T @ Navi1x + { 1, 30, 132, 149, 0, } , // 1 pipes 2 bpe @ SW_64K_S3_T @ Navi1x + { 1, 31, 133, 150, 0, } , // 1 pipes 4 bpe @ SW_64K_S3_T @ Navi1x + { 1, 32, 134, 151, 0, } , // 1 pipes 8 bpe @ SW_64K_S3_T @ Navi1x + { 1, 33, 135, 152, 0, } , // 1 pipes 16 bpe @ SW_64K_S3_T @ Navi1x + { 3, 29, 136, 148, 0, } , // 2 pipes 1 bpe @ SW_64K_S3_T @ Navi1x + { 3, 30, 137, 149, 0, } , // 2 pipes 2 bpe @ SW_64K_S3_T @ Navi1x + { 3, 31, 138, 150, 0, } , // 2 pipes 4 bpe @ SW_64K_S3_T @ Navi1x + { 3, 32, 139, 151, 0, } , // 2 pipes 8 bpe @ SW_64K_S3_T @ Navi1x + { 3, 33, 140, 152, 0, } , // 2 pipes 16 bpe @ SW_64K_S3_T @ Navi1x + { 3, 29, 141, 148, 0, } , // 4 pipes 1 bpe @ SW_64K_S3_T @ Navi1x + { 3, 30, 142, 149, 0, } , // 4 pipes 2 bpe @ SW_64K_S3_T @ Navi1x + { 3, 31, 143, 150, 0, } , // 4 pipes 4 bpe @ SW_64K_S3_T @ Navi1x + { 3, 32, 144, 151, 0, } , // 4 pipes 8 bpe @ SW_64K_S3_T @ Navi1x + { 3, 33, 145, 152, 0, } , // 4 pipes 16 bpe @ SW_64K_S3_T @ Navi1x + { 3, 29, 166, 148, 0, } , // 8 pipes 1 bpe @ SW_64K_S3_T @ Navi1x + { 3, 30, 167, 149, 0, } , // 8 pipes 2 bpe @ SW_64K_S3_T @ Navi1x + { 3, 31, 168, 150, 0, } , // 8 pipes 4 bpe @ SW_64K_S3_T @ Navi1x + { 3, 32, 169, 151, 0, } , // 8 pipes 8 bpe @ SW_64K_S3_T @ Navi1x + { 3, 33, 170, 152, 0, } , // 8 pipes 16 bpe @ SW_64K_S3_T @ Navi1x + { 3, 29, 171, 148, 0, } , // 16 pipes 1 bpe @ SW_64K_S3_T @ Navi1x + { 3, 30, 172, 149, 0, } , // 16 pipes 2 bpe @ SW_64K_S3_T @ Navi1x + { 3, 31, 173, 150, 0, } , // 16 pipes 4 bpe @ SW_64K_S3_T @ Navi1x + { 3, 32, 174, 151, 0, } , // 16 pipes 8 bpe @ SW_64K_S3_T @ Navi1x + { 3, 33, 175, 152, 0, } , // 16 pipes 16 bpe @ SW_64K_S3_T @ Navi1x + { 3, 29, 176, 153, 0, } , // 32 pipes 1 bpe @ SW_64K_S3_T @ Navi1x + { 3, 30, 177, 154, 0, } , // 32 pipes 2 bpe @ SW_64K_S3_T @ Navi1x + { 3, 31, 178, 155, 0, } , // 32 pipes 4 bpe @ SW_64K_S3_T @ Navi1x + { 3, 32, 179, 156, 0, } , // 32 pipes 8 bpe @ SW_64K_S3_T @ Navi1x + { 3, 33, 180, 157, 0, } , // 32 pipes 16 bpe @ SW_64K_S3_T @ Navi1x + { 3, 29, 131, 163, 0, } , // 64 pipes 1 bpe @ SW_64K_S3_T @ Navi1x + { 3, 30, 132, 164, 0, } , // 64 pipes 2 bpe @ SW_64K_S3_T @ Navi1x + { 3, 31, 133, 165, 0, } , // 64 pipes 4 bpe @ SW_64K_S3_T @ Navi1x + { 3, 32, 134, 166, 0, } , // 64 pipes 8 bpe @ SW_64K_S3_T @ Navi1x + { 3, 33, 135, 167, 0, } , // 64 pipes 16 bpe @ SW_64K_S3_T @ Navi1x }; -const UINT_64 SW_64K_D_T[][16]= +const ADDR_SW_PATINFO SW_64K_D3_X_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, X4 ^ Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X4, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X3, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2 ^ Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X4, X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X3, X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X5, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X4, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X6, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X5, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, + { 1, 34, 131, 148, 0, } , // 1 pipes 1 bpe @ SW_64K_D3_X @ Navi1x + { 1, 35, 132, 149, 0, } , // 1 pipes 2 bpe @ SW_64K_D3_X @ Navi1x + { 1, 36, 133, 150, 0, } , // 1 pipes 4 bpe @ SW_64K_D3_X @ Navi1x + { 1, 37, 134, 151, 0, } , // 1 pipes 8 bpe @ SW_64K_D3_X @ Navi1x + { 1, 38, 135, 152, 0, } , // 1 pipes 16 bpe @ SW_64K_D3_X @ Navi1x + { 2, 34, 181, 148, 0, } , // 2 pipes 1 bpe @ SW_64K_D3_X @ Navi1x + { 2, 35, 182, 149, 0, } , // 2 pipes 2 bpe @ SW_64K_D3_X @ Navi1x + { 2, 36, 183, 150, 0, } , // 2 pipes 4 bpe @ SW_64K_D3_X @ Navi1x + { 2, 37, 184, 168, 0, } , // 2 pipes 8 bpe @ SW_64K_D3_X @ Navi1x + { 2, 38, 185, 169, 0, } , // 2 pipes 16 bpe @ SW_64K_D3_X @ Navi1x + { 2, 34, 186, 170, 0, } , // 4 pipes 1 bpe @ SW_64K_D3_X @ Navi1x + { 2, 35, 186, 171, 0, } , // 4 pipes 2 bpe @ SW_64K_D3_X @ Navi1x + { 2, 36, 187, 172, 0, } , // 4 pipes 4 bpe @ SW_64K_D3_X @ Navi1x + { 2, 37, 188, 169, 0, } , // 4 pipes 8 bpe @ SW_64K_D3_X @ Navi1x + { 3, 38, 189, 169, 0, } , // 4 pipes 16 bpe @ SW_64K_D3_X @ Navi1x + { 2, 34, 190, 173, 0, } , // 8 pipes 1 bpe @ SW_64K_D3_X @ Navi1x + { 3, 35, 191, 171, 0, } , // 8 pipes 2 bpe @ SW_64K_D3_X @ Navi1x + { 3, 36, 192, 172, 0, } , // 8 pipes 4 bpe @ SW_64K_D3_X @ Navi1x + { 3, 37, 193, 169, 0, } , // 8 pipes 8 bpe @ SW_64K_D3_X @ Navi1x + { 3, 38, 194, 169, 0, } , // 8 pipes 16 bpe @ SW_64K_D3_X @ Navi1x + { 3, 34, 195, 174, 0, } , // 16 pipes 1 bpe @ SW_64K_D3_X @ Navi1x + { 3, 35, 196, 171, 0, } , // 16 pipes 2 bpe @ SW_64K_D3_X @ Navi1x + { 3, 36, 197, 172, 0, } , // 16 pipes 4 bpe @ SW_64K_D3_X @ Navi1x + { 3, 37, 198, 169, 0, } , // 16 pipes 8 bpe @ SW_64K_D3_X @ Navi1x + { 3, 38, 199, 169, 0, } , // 16 pipes 16 bpe @ SW_64K_D3_X @ Navi1x + { 3, 34, 200, 175, 0, } , // 32 pipes 1 bpe @ SW_64K_D3_X @ Navi1x + { 3, 35, 201, 176, 0, } , // 32 pipes 2 bpe @ SW_64K_D3_X @ Navi1x + { 3, 36, 202, 177, 0, } , // 32 pipes 4 bpe @ SW_64K_D3_X @ Navi1x + { 3, 37, 203, 178, 0, } , // 32 pipes 8 bpe @ SW_64K_D3_X @ Navi1x + { 3, 38, 204, 178, 0, } , // 32 pipes 16 bpe @ SW_64K_D3_X @ Navi1x + { 3, 34, 205, 179, 0, } , // 64 pipes 1 bpe @ SW_64K_D3_X @ Navi1x + { 3, 35, 206, 180, 0, } , // 64 pipes 2 bpe @ SW_64K_D3_X @ Navi1x + { 3, 36, 207, 181, 0, } , // 64 pipes 4 bpe @ SW_64K_D3_X @ Navi1x + { 3, 37, 208, 182, 0, } , // 64 pipes 8 bpe @ SW_64K_D3_X @ Navi1x + { 3, 38, 209, 182, 0, } , // 64 pipes 16 bpe @ SW_64K_D3_X @ Navi1x }; -const UINT_64 SW_64K_S_X[][16]= +const ADDR_SW_PATINFO SW_256_S_RBPLUS_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Z0 ^ Y2 ^ X3, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Z0 ^ X2 ^ Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Z1 ^ Y2 ^ X4, Z0 ^ X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Z1 ^ Y2 ^ X3, Z0 ^ X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z2 ^ X5, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z2 ^ X4, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ Z4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z4 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z4 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z4 ^ X7, X3 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z4 ^ X6, X2 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ Z5 ^ X9, X4 ^ Z4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z5 ^ X9, X4 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z5 ^ X8, X3 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z5 ^ X8, X3 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z5 ^ X7, X2 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z0 ^ X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, Z0 ^ X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Z4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Z5 ^Y10, Z4 ^ Y5 ^ X9, Z3 ^ X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Z5 ^ Y9, Y4 ^ Z4 ^ X9, Z3 ^ X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Z5 ^ Y9, Y4 ^ Z4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Z5 ^ Y8, Y3 ^ Z4 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z5 ^ Y8, Y3 ^ Z4 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z4 ^ Y5 ^ X9, Z3 ^ X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ Z4 ^ X9, Z3 ^ X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ Z4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ Z4 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ Z4 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ Z5 ^X10, Z4 ^ X5 ^Y10, Z3 ^ Y6 ^ X9, Z2 ^ X6 ^ Y9, Z1 ^ Y7 ^ X8, Z0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ Z5 ^X10, Z4 ^ X5 ^ Y9, Z3 ^ Y5 ^ X9, Z2 ^ X6 ^ Y8, Z1 ^ Y6 ^ X8, Z0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ Z5 ^ X9, X4 ^ Z4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ Z5 ^ X9, X4 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ Z5 ^ X8, X3 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, + { 1, 0, 0, 0, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_256_S @ RbPlus + { 1, 0, 0, 0, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_256_S @ RbPlus + { 1, 1, 0, 0, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_256_S @ RbPlus + { 1, 2, 0, 0, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_256_S @ RbPlus + { 1, 3, 0, 0, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_256_S @ RbPlus + { 1, 4, 0, 0, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_256_S @ RbPlus }; -const UINT_64 SW_64K_D_X[][16]= +const ADDR_SW_PATINFO SW_256_D_RBPLUS_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z0 ^ Y2 ^ X3, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X2 ^ Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z1 ^ Y2 ^ X4, Z0 ^ X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ Y2 ^ X3, Z0 ^ X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z2 ^ X5, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z2 ^ X4, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ Z4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z4 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z4 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z4 ^ X7, X3 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z4 ^ X6, X2 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ Z5 ^ X9, X4 ^ Z4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z5 ^ X9, X4 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z5 ^ X8, X3 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z5 ^ X8, X3 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z5 ^ X7, X2 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z0 ^ X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z0 ^ X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Z4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Z5 ^Y10, Z4 ^ Y5 ^ X9, Z3 ^ X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Z5 ^ Y9, Y4 ^ Z4 ^ X9, Z3 ^ X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Z5 ^ Y9, Y4 ^ Z4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Z5 ^ Y8, Y3 ^ Z4 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z5 ^ Y8, Y3 ^ Z4 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z4 ^ Y5 ^ X9, Z3 ^ X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ Z4 ^ X9, Z3 ^ X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ Z4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ Z4 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ Z4 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ Z5 ^X10, Z4 ^ X5 ^Y10, Z3 ^ Y6 ^ X9, Z2 ^ X6 ^ Y9, Z1 ^ Y7 ^ X8, Z0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ Z5 ^X10, Z4 ^ X5 ^ Y9, Z3 ^ Y5 ^ X9, Z2 ^ X6 ^ Y8, Z1 ^ Y6 ^ X8, Z0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ Z5 ^ X9, X4 ^ Z4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ Z5 ^ X9, X4 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ Z5 ^ X8, X3 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, + { 1, 5, 0, 0, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_256_D @ RbPlus + { 1, 5, 0, 0, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_256_D @ RbPlus + { 1, 1, 0, 0, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_256_D @ RbPlus + { 1, 39, 0, 0, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_256_D @ RbPlus + { 1, 6, 0, 0, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_256_D @ RbPlus + { 1, 7, 0, 0, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_256_D @ RbPlus }; -const UINT_64 SW_64K_R_X_1xaa[][16]= +const ADDR_SW_PATINFO SW_4K_S_RBPLUS_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ X3 ^ Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z0 ^ X3 ^ Y3, X3, Y2, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X3 ^ Y3, X2, Y2, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X3, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X2, Y3, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X4, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y2, X4, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2, Y2, X3, Y4, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y4, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X4, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2, X3, Y4, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2, X2, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X4, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3, Y4, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y2, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y4, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X4, Z0 ^ X3 ^ Y3, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Z0 ^ X3 ^ Y3, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Z0 ^ X3 ^ Y3, Y2, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z0 ^ X3 ^ Y3, Y2, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X3, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X2, Y3, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X5, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X4, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3, Y4, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X4, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y4, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X2, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X6, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y4, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y7, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X4, Y5, Z0 ^ X3 ^ Y3, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Y4, Z0 ^ X3 ^ Y3, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y2, Z0 ^ X3 ^ Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y5, X5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X5, Y6, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Y5, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X4, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y6, X6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y4, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X6, Y7, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Y6, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y7, X7, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X7, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X4, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y3, X4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + { 1, 0, 1, 0, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_4K_S @ RbPlus + { 1, 0, 1, 0, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_4K_S @ RbPlus + { 1, 1, 2, 0, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_4K_S @ RbPlus + { 1, 2, 3, 0, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_4K_S @ RbPlus + { 1, 3, 4, 0, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_4K_S @ RbPlus + { 1, 4, 5, 0, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_4K_S @ RbPlus }; -const UINT_64 SW_64K_R_X_2xaa[][16]= +const ADDR_SW_PATINFO SW_4K_D_RBPLUS_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ X3 ^ Y3, X4, Y4, X5, Y5, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z0 ^ X3 ^ Y3, X3, Y2, X4, Y4, X5, Y5, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X3 ^ Y3, X2, Y2, X3, Y4, X4, Y5, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X3, Y4, X5, Y5, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X2, Y3, X4, Y5, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X4, Y5, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y2, X4, Y5, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2, Y2, X3, Y4, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y4, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X4, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2, X3, Y4, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, Y2, X2, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X4, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3, Y4, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y2, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z5 ^ X6 ^ Y7, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z5 ^ X6 ^ Y7, Y4, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, S0 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X4, Z0 ^ X3 ^ Y3, Y5, X5, Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Z0 ^ X3 ^ Y3, Y4, X5, Y5, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, X5, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Z0 ^ X3 ^ Y3, Y2, X4, Y4, X5, Y5, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z0 ^ X3 ^ Y3, Y2, X3, Y4, X4, Y5, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X5, Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X5, Y5, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X3, Y4, X5, Y5, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X2, Y3, X4, Y5, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X5, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y5, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, X5, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X4, Y5, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3, Y4, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X4, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y4, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X2, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X6, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y4, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y7, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z5 ^ X6 ^ Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z5 ^ X6 ^ Y7, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, S0 ^ X6 ^ Y7, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X4, Y5, Z0 ^ X3 ^ Y3, X5, Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Y4, Z0 ^ X3 ^ Y3, X5, Y5, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y2, Z0 ^ X3 ^ Y3, X4, Y4, X5, Y5, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y5, X5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y6, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X5, Y6, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Y5, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X4, Y5, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y6, X6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y7, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y4, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X6, Y7, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, S0 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Y6, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y7, S0 ^ Y8, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z5 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, S0 ^ Y7, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z5 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + { 1, 5, 1, 0, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_4K_D @ RbPlus + { 1, 5, 1, 0, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_4K_D @ RbPlus + { 1, 1, 2, 0, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_4K_D @ RbPlus + { 1, 39, 3, 0, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_4K_D @ RbPlus + { 1, 6, 4, 0, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_4K_D @ RbPlus + { 1, 7, 5, 0, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_4K_D @ RbPlus }; -const UINT_64 SW_64K_R_X_4xaa[][16]= +const ADDR_SW_PATINFO SW_4K_S_X_RBPLUS_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, S0 ^ Y5, S1 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, S0 ^ Y5, S1 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ X3 ^ Y3, X4, Y4, X5, Y5, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z0 ^ X3 ^ Y3, X3, Y2, X4, Y4, X5, S0 ^ Y5, S1 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X3 ^ Y3, X2, Y2, X3, Y4, X4, S0 ^ Y5, S1 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X3, Y4, X5, S0 ^ Y5, S1 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X2, Y3, X4, S0 ^ Y5, S1 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X4, Y5, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3, Y4, S0 ^ Y5, S1 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, X2, Y2, X3, Y4, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y4, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X4, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2, X3, Y4, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, Y2, X2, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z4 ^ X6 ^ Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z4 ^ X6 ^ Y6, Y4, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, X3, Y4, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y2, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Z5 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, Y4, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, S0 ^ Y5, S1 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, S0 ^ Y5, S1 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X4, Z0 ^ X3 ^ Y3, Y5, X5, Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Z0 ^ X3 ^ Y3, Y4, X5, Y5, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, X5, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Z0 ^ X3 ^ Y3, Y2, X4, Y4, X5, S0 ^ Y5, S1 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z0 ^ X3 ^ Y3, Y2, X3, Y4, X4, S0 ^ Y5, S1 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X5, Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X5, Y5, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X3, Y4, X5, S0 ^ Y5, S1 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X2, Y3, X4, S0 ^ Y5, S1 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X5, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y5, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, X5, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, S0 ^ Y5, S1 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, Y2, X3, Y4, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X4, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y4, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X2, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z4 ^ X6 ^ Y6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z4 ^ X6 ^ Y6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, Y4, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, S0 ^ Y7, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Z5 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, S0 ^ Y5, S1 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, S0 ^ Y5, S1 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X4, Y5, Z0 ^ X3 ^ Y3, X5, Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Y4, Z0 ^ X3 ^ Y3, X5, Y5, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y2, Z0 ^ X3 ^ Y3, X4, Y4, X5, S0 ^ Y5, S1 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, X4, S0 ^ Y5, S1 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y5, X5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y6, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, X5, S0 ^ Y5, S1 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, S0 ^ Y5, S1 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X5, Y6, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Y5, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, S0 ^ Y5, S1 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, X3, Y4, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y6, X6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y4, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, Y3, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X6, S0 ^ Y7, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z4 ^ X6 ^ Y6, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, S0 ^ Y6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z4 ^ X6 ^ Y6, S1 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, S0 ^ Y7, S1 ^ Y8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Z5 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, S0 ^ Y7, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + { 1, 0, 1, 0, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 1, 1, 2, 0, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 1, 2, 3, 0, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 1, 3, 4, 0, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 1, 4, 5, 0, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 6, 0, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 7, 0, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 8, 0, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 9, 0, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 10, 0, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 210, 0, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 211, 0, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 212, 0, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 213, 0, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 214, 0, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 215, 0, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 216, 0, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 217, 0, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 218, 0, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 219, 0, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 11, 0, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 12, 0, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 13, 0, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 14, 0, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 15, 0, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 220, 0, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 221, 0, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 222, 0, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 223, 0, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 224, 0, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 225, 0, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 226, 0, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 227, 0, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 228, 0, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 229, 0, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 16, 0, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 17, 0, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 18, 0, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 19, 0, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 20, 0, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 230, 0, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 231, 0, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 232, 0, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 233, 0, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 234, 0, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 235, 0, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 236, 0, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 237, 0, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 238, 0, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 239, 0, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 21, 0, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 22, 0, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 23, 0, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 24, 0, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 25, 0, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 240, 0, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 241, 0, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 242, 0, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 243, 0, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 244, 0, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 245, 0, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 246, 0, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 247, 0, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 248, 0, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 249, 0, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 21, 0, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 22, 0, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 23, 0, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 24, 0, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 25, 0, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus + { 3, 0, 240, 0, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_4K_S_X @ RbPlus + { 3, 1, 241, 0, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_4K_S_X @ RbPlus + { 3, 2, 242, 0, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_4K_S_X @ RbPlus + { 3, 3, 243, 0, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_4K_S_X @ RbPlus + { 3, 4, 244, 0, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_4K_S_X @ RbPlus }; -const UINT_64 SW_64K_R_X_8xaa[][16]= +const ADDR_SW_PATINFO SW_4K_D_X_RBPLUS_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ X3 ^ Y3, X4, Y4, X5, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z0 ^ X3 ^ Y3, X3, Y2, X4, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X3 ^ Y3, X2, Y2, X3, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X3, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X2, Y2, X3, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X4, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ X5 ^ Y5, Y2, X3, Y4, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ X5 ^ Y5, X2, Y2, X3, S0 ^ Y6, S1 ^ Y7 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, Y4, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S2 ^ X5 ^ Y6, Y3, X4, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, S1 ^ X5 ^ Y6, Y2, X3, Y4, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, S1 ^ X5 ^ Y6, X2, Y2, X3, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z4 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, S2 ^ X6 ^ Y6, Y4, S0 ^ Y7, S1 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S2 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, X3, Y4, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y2, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X2, Y2, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z4 ^ X5 ^ Y8, Z3 ^ Y6 ^ X7, S2 ^ X6 ^ Y7, S0 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, S2 ^ Y6 ^ X7, S1 ^ X6 ^ Y7, Y4, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S2 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X8, S1 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X8, S1 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y2, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X4, Z0 ^ X3 ^ Y3, Y5, X5, Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Z0 ^ X3 ^ Y3, Y4, X5, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Z0 ^ X3 ^ Y3, Y2, X4, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z0 ^ X3 ^ Y3, Y2, X3, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X5, Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X5, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X3, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X3, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X5, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ X5 ^ Y5, X3, Y4, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ X5 ^ Y5, Y2, X3, S0 ^ Y6, S1 ^ Y7 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y6, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S2 ^ X5 ^ Y6, X4, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, S1 ^ X5 ^ Y6, X3, Y4, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, S1 ^ X5 ^ Y6, Y2, X3, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, S0 ^ Y7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z4 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, S2 ^ X6 ^ Y6, S0 ^ Y7, S1 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S2 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, Y4, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y2, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, S0 ^ Y7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z4 ^ X5 ^ Y8, Z3 ^ Y6 ^ X7, S2 ^ X6 ^ Y7, S1 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, S2 ^ Y6 ^ X7, S1 ^ X6 ^ Y7, S0 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S2 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X8, S1 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X8, S1 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X4, Y5, Z0 ^ X3 ^ Y3, X5, Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Y4, Z0 ^ X3 ^ Y3, X5, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y2, Z0 ^ X3 ^ Y3, X4, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y5, X5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y6, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, X5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X3, S0 ^ Y5, S1 ^ Y6, S2 ^ Y7 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, X5, Y6, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S0 ^ Y7, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, X4, Y5, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S0 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ X5 ^ Y5, Y4, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ X5 ^ Y5, X3, S0 ^ Y6, S1 ^ Y7 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, Y6, S0 ^ Y7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, S1 ^ Y8, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, S0 ^ Y6, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, S1 ^ Y7, S2 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S2 ^ X5 ^ Y6, S0 ^ Y6, S1 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, S1 ^ X5 ^ Y6, Y4, S0 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, S1 ^ X5 ^ Y6, X3, S0 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, S0 ^ Y7, S1 ^ Y8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z4 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, S2 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, S0 ^ Y7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, S2 ^ X6 ^ Y6, S1 ^ Y8 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S2 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S0 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y4, S0 ^ Y7, S1 ^ Y8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z4 ^ X5 ^ Y8, Z3 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4, S0 ^ Y7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, S2 ^ Y6 ^ X7, S1 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S2 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X8, S1 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X8, S1 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + { 1, 5, 1, 0, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 1, 1, 2, 0, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 1, 39, 3, 0, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 1, 6, 4, 0, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 1, 7, 5, 0, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 6, 0, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 7, 0, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 8, 0, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 9, 0, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 10, 0, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 210, 0, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 211, 0, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 212, 0, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 213, 0, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 214, 0, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 215, 0, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 216, 0, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 217, 0, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 218, 0, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 219, 0, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 11, 0, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 12, 0, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 13, 0, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 14, 0, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 15, 0, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 220, 0, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 221, 0, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 222, 0, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 223, 0, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 224, 0, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 225, 0, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 226, 0, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 227, 0, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 228, 0, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 229, 0, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 16, 0, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 17, 0, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 18, 0, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 19, 0, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 20, 0, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 230, 0, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 231, 0, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 232, 0, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 233, 0, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 234, 0, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 235, 0, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 236, 0, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 237, 0, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 238, 0, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 239, 0, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 21, 0, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 22, 0, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 23, 0, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 24, 0, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 25, 0, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 240, 0, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 241, 0, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 242, 0, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 243, 0, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 244, 0, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 245, 0, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 246, 0, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 247, 0, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 248, 0, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 249, 0, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 21, 0, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 22, 0, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 23, 0, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 24, 0, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 25, 0, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus + { 3, 5, 240, 0, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_4K_D_X @ RbPlus + { 3, 1, 241, 0, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_4K_D_X @ RbPlus + { 3, 39, 242, 0, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_4K_D_X @ RbPlus + { 3, 6, 243, 0, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_4K_D_X @ RbPlus + { 3, 7, 244, 0, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_4K_D_X @ RbPlus }; -const UINT_64 SW_64K_Z_X_1xaa[][16]= +const ADDR_SW_PATINFO SW_4K_S3_RBPLUS_PATINFO[] = { - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Z0 ^ X3 ^ Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Z0 ^ X3 ^ Y3, X3, Y2, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X3 ^ Y3, X2, Y2, X3, Y4, X4, Y5, X5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X3, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X2, Y3, X4, Y5, X5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X4, Y5, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y2, X4, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2, Y2, X3, Y4, X5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y4, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X4, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2, X3, Y4, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2, X2, Y3, X4 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X4, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3, Y4, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y2, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2, Y3, X4 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y4, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3, X4 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, X4, Z0 ^ X3 ^ Y3, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, X4, Z0 ^ X3 ^ Y3, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, X3, Z0 ^ X3 ^ Y3, Y2, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z0 ^ X3 ^ Y3, Y2, X3, Y4, X4, Y5, X5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, Y5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X5, Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X3, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X2, Y3, X4, Y5, X5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, X5, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X4, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3, Y4, X5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, Y6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X4, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y4, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X2, Y3, X4 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, X6, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, X4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y4, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X4 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, Y7, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y3, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X4 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X4 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, X4, Y5, Z0 ^ X3 ^ Y3, X5, Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, X4, Y4, Z0 ^ X3 ^ Y3, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y2, Z0 ^ X3 ^ Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, Y5, X5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y6, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, X5, Y6, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, X4, Y5, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X4, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, Y6, X6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y7, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y4, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X4 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, X6, Y7, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, X4, Y6, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X4 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y4, Y7, X7, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X7, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y3, X4, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y3, X4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + { 1, 29, 131, 0, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus + { 1, 29, 131, 0, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_4K_S3 @ RbPlus + { 1, 30, 132, 0, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_4K_S3 @ RbPlus + { 1, 31, 133, 0, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_4K_S3 @ RbPlus + { 1, 32, 134, 0, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_4K_S3 @ RbPlus + { 1, 33, 135, 0, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_4K_S3 @ RbPlus }; -const UINT_64 SW_64K_Z_X_2xaa[][16]= +const ADDR_SW_PATINFO SW_4K_S3_X_RBPLUS_PATINFO[] = { - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y3, X3, Y4, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Y3, X3, Y4, X4, Y5, X5, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, Y1 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, X5, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Z0 ^ X3 ^ Y3, X2, X3, Y4, X4, Y5, X5, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Z0 ^ X3 ^ Y3, X2, Y2, X3, Y4, X4, Y5, Y1 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, Y5, X5, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X2, Y3, X4, Y5, X5, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X2, Y3, X4, Y5, Y1 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, X5, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2, X3, Y4, X5, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2, Y2, X3, Y4, Y1 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y4, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X4, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X4, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X2, Y3, X4, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Y1, X3, Y4, X2 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y4, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3, Y4, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3, Y4, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X4, X2 ^ Y7 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, X3, Y4, Y1 ^ Y7 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z5 ^ X6 ^ Y7, Y4, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z5 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X3, Y4 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y2 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7, X3, Y4 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y3, X3, Y4, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Y3, X3, Y4, X4, Y5, X5, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, Y1 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Z0 ^ X3 ^ Y3, Y2, X3, Y4, X4, Y5, Y1 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X2, Y3, X4, Y5, Y1 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, X5, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, X5, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3, Y4, Y1 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X4, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X4, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X4, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, X3, Y4, X2 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y4, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y4, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X4, X2 ^ Y7 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Y4, Y1 ^ Y7 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z5 ^ X6 ^ Y7, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z5 ^ X6 ^ Y7, X4 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, Y4 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X4 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y2 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7, Y4 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y3, X3, Y4, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Y3, X3, Y4, X4, Y5, X5, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, Y1 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X4, Z0 ^ X3 ^ Y3, Y5, X5, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, X5, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, Y1 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Y5, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X5, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y2, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, Y1 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X5, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, X5, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, Y1 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Y6, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X4, Y2 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y1, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Y4, X2 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X6, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Y1 ^ Y7 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Y7, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z5 ^ X6 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y3, X4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z5 ^ X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y2 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7 }, + { 1, 29, 131, 0, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 1, 30, 132, 0, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 1, 31, 133, 0, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 1, 32, 134, 0, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 1, 33, 135, 0, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 136, 0, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 137, 0, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 138, 0, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 139, 0, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 140, 0, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 141, 0, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 142, 0, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 143, 0, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 144, 0, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 145, 0, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 146, 0, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 147, 0, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 148, 0, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 149, 0, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 150, 0, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 141, 0, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 142, 0, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 143, 0, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 144, 0, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 145, 0, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 146, 0, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 147, 0, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 148, 0, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 149, 0, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 150, 0, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 151, 0, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 152, 0, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 153, 0, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 154, 0, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 155, 0, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 146, 0, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 147, 0, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 148, 0, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 149, 0, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 150, 0, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 151, 0, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 152, 0, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 153, 0, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 154, 0, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 155, 0, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 151, 0, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 152, 0, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 153, 0, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 154, 0, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 155, 0, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 151, 0, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 152, 0, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 153, 0, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 154, 0, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 155, 0, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 151, 0, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 152, 0, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 153, 0, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 154, 0, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 155, 0, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 151, 0, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 152, 0, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 153, 0, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 154, 0, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 155, 0, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 151, 0, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 152, 0, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 153, 0, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 154, 0, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 155, 0, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus + { 3, 29, 151, 0, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_4K_S3_X @ RbPlus + { 3, 30, 152, 0, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_4K_S3_X @ RbPlus + { 3, 31, 153, 0, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_4K_S3_X @ RbPlus + { 3, 32, 154, 0, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_4K_S3_X @ RbPlus + { 3, 33, 155, 0, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_4K_S3_X @ RbPlus }; -const UINT_64 SW_64K_Z_X_4xaa[][16]= +const ADDR_SW_PATINFO SW_64K_S_RBPLUS_PATINFO[] = { - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, X4, Y4, X5, Y5, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y3, X3, Y4, X4, Y5, X5, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, X3, Y3, X4, Y4, X5, Y1 ^ Y5, X2 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y2, X2, Y3, X3, Y4, X4, Y1 ^ Y5, X1 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Z0 ^ X3 ^ Y3, X3, X4, Y4, X5, Y5, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, X2 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Z0 ^ X3 ^ Y3, X3, Y2, X4, Y4, X5, X2 ^ Y5, Y1 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Z0 ^ X3 ^ Y3, X2, Y2, X3, Y4, X4, X1 ^ Y5, Y1 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X3, Y4, X5, Y5, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X3, Y4, X5, Y1 ^ Y5, X2 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X2, Y3, X4, Y1 ^ Y5, X1 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, X4, Y5, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5, X2 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3, Y4, Y1 ^ Y5, X2 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ X5 ^ Y5, X2, Y3, X4, X1 ^ Y6, Y1 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X4, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y4, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X4, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Y2 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X4, Y1 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y3, X4, Y1 ^ Y6, X2 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z4 ^ X6 ^ Y6, X3, Y4, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z4 ^ X6 ^ Y6, X3, Y4, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X4, X2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Y2 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y1 ^ X6 ^ Y6, Y3, X4, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y1 ^ X6 ^ Y6, Y3, X4, X2 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Z5 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, Y3, X4 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Y2 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y1 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y1 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3, X4 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, X4, Y4, X5, Y5, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y3, X3, Y4, X4, Y5, X5, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, X3, Y3, X4, Y4, X5, Y1 ^ Y5, X2 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y2, X2, Y3, X3, Y4, X4, Y1 ^ Y5, X1 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, X5, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Z0 ^ X3 ^ Y3, X4, Y4, X5, Y5, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, X5, X2 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Z0 ^ X3 ^ Y3, Y2, X4, Y4, X5, X2 ^ Y5, Y1 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Z0 ^ X3 ^ Y3, Y2, X3, Y4, X4, X1 ^ Y5, Y1 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X3, Y4, X5, Y1 ^ Y5, X2 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X2, Y3, X4, Y1 ^ Y5, X1 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, X5, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X4, Y5, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, X5, X2 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, Y1 ^ Y5, X2 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ X5 ^ Y5, Y3, X4, X1 ^ Y6, Y1 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X4, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y4, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X4, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Y2 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X4, Y1 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X4, Y1 ^ Y6, X2 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z4 ^ X6 ^ Y6, Y4, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z4 ^ X6 ^ Y6, Y4, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X4, X2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Y2 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y1 ^ X6 ^ Y6, X4, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y1 ^ X6 ^ Y6, X4, X2 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Z5 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, X4 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, X4 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y3, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X4 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Y2 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y1 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X4 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y1 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X4 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, X4, Y4, X5, Y5, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y3, X3, Y4, X4, Y5, X5, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, X3, Y3, X4, Y4, X5, Y1 ^ Y5, X2 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y2, X2, Y3, X3, Y4, X4, Y1 ^ Y5, X1 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, X4, Z0 ^ X3 ^ Y3, Y4, X5, Y5, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, X2 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y2, Z0 ^ X3 ^ Y3, X4, Y4, X5, X2 ^ Y5, Y1 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, X4, X1 ^ Y5, Y1 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X5, Y5, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y1 ^ Y5, X2 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y2, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y1 ^ Y5, X1 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y5, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, X2 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, Y1 ^ Y5, X2 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ X5 ^ Y5, X4, X1 ^ Y6, Y1 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Y2 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y1 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y1 ^ Y6, X2 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z4 ^ X6 ^ Y6, X6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z4 ^ X6 ^ Y6, Y2 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Y2 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y1 ^ X6 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y1 ^ X6 ^ Y6, X2 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Z5 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y3, X4, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Y2 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y1 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y1 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + { 1, 0, 1, 1, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_S @ RbPlus + { 1, 0, 1, 1, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_S @ RbPlus + { 1, 1, 2, 2, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_S @ RbPlus + { 1, 2, 3, 3, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_S @ RbPlus + { 1, 3, 4, 4, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_S @ RbPlus + { 1, 4, 5, 5, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_S @ RbPlus }; -const UINT_64 SW_64K_Z_X_8xaa[][16]= +const ADDR_SW_PATINFO SW_64K_D_RBPLUS_PATINFO[] = { - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y3, X3, Y4, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y3, X3, Y4, X4, Y5, X5, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y3, X3, Y4, X4, Y5, Y1 ^ Y6, Y2 ^ Y7, X2 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X2, Y3, X3, Y4, X4, Y1 ^ Y5, X1 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y2, X2, Y3, X3, Y4, Y0 ^ Y5, Y1 ^ Y6, X1 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, X2 ^ Y6, Y2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, Y1 ^ Y6, X2 ^ Y7, Y2 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Z0 ^ X3 ^ Y3, Y2, X3, Y4, X4, X1 ^ Y5, Y1 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, Z0 ^ X3 ^ Y3, X2, Y2, X3, Y4, Y0 ^ Y5, X1 ^ Y6, Y1 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, X5, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y5, Y1 ^ Y6, Y2 ^ Y7, X2 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X2, Y3, X4, Y1 ^ Y5, X1 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X2, Y2, X3, Y0 ^ Y5, X1 ^ Y6, Y1 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, X5, X2 ^ Y6, Y2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y4, Y1 ^ Y6, X2 ^ Y7, Y2 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ X5 ^ Y5, Y3, X4, X1 ^ Y6, Y1 ^ Y7, X2 ^ Y8 }, - {0, 0, 0, 0, S0, S1, S2, X0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y0 ^ X5 ^ Y5, Y2, X3, X1 ^ Y6, Y1 ^ Y7, X2 ^ Y8 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, Y3, X4, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, Y3, X4, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, X3, Y4, X2 ^ Y6, Y1 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y3, X4, Y1 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y0 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X3, Y1 ^ Y6, X2 ^ Y7, Y2 ^ Y8 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z4 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, X3, Y4, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X4, X2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, X3, Y4, Y1 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y1 ^ X6 ^ Y6, Y3, X4, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y0 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, X2 ^ Y7, Y1 ^ Y8 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z4 ^ X5 ^ Y8, Z3 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X3, Y4 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y2 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7, X3, Y4 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y1 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, 0, 0, S0, S1, S2, X0, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y0 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y1 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y3, X3, Y4, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y3, X3, Y4, X4, Y5, X5, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y3, X3, Y4, X4, Y5, Y1 ^ Y6, Y2 ^ Y7, X2 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X2, Y3, X3, Y4, X4, Y1 ^ Y5, X1 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y2, X2, Y3, X3, Y4, Y0 ^ Y5, Y1 ^ Y6, X1 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, X5, X2 ^ Y6, Y2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Z0 ^ X3 ^ Y3, Y4, X4, Y5, Y1 ^ Y6, X2 ^ Y7, Y2 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y2, Z0 ^ X3 ^ Y3, X3, Y4, X4, X1 ^ Y5, Y1 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, Z0 ^ X3 ^ Y3, Y2, X3, Y4, Y0 ^ Y5, X1 ^ Y6, Y1 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y5, Y1 ^ Y6, Y2 ^ Y7, X2 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y3, X4, Y1 ^ Y5, X1 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2, X3, Y0 ^ Y5, X1 ^ Y6, Y1 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, X5, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, X5, X2 ^ Y6, Y2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y4, Y1 ^ Y6, X2 ^ Y7, Y2 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ X5 ^ Y5, X4, X1 ^ Y6, Y1 ^ Y7, X2 ^ Y8 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y0 ^ X5 ^ Y5, X3, X1 ^ Y6, Y1 ^ Y7, X2 ^ Y8 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, X4, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, X4, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Y4, X2 ^ Y6, Y1 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X4, Y1 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y0 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y1 ^ Y6, X2 ^ Y7, Y2 ^ Y8 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z4 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, Y4, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X4, X2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Y4, Y1 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y1 ^ X6 ^ Y6, X4, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y0 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ Y7, Y1 ^ Y8 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z4 ^ X5 ^ Y8, Z3 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, Y4 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X4 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y2 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7, Y4 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y1 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X4 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y0 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y1 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y3, X3, Y4, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y3, X3, Y4, X4, Y5, X5, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y3, X3, Y4, X4, Y5, Y1 ^ Y6, Y2 ^ Y7, X2 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X2, Y3, X3, Y4, X4, Y1 ^ Y5, X1 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y2, X2, Y3, X3, Y4, Y0 ^ Y5, Y1 ^ Y6, X1 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, X5, X2 ^ Y6, Y2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4, Z0 ^ X3 ^ Y3, X4, Y5, Y1 ^ Y6, X2 ^ Y7, Y2 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y2, X3, Z0 ^ X3 ^ Y3, Y4, X4, X1 ^ Y5, Y1 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, Y0 ^ Y5, X1 ^ Y6, Y1 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, X5, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y5, Y1 ^ Y6, Y2 ^ Y7, X2 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X2, Y3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X4, Y1 ^ Y5, X1 ^ Y6, Y2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, Y2, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X3, Y0 ^ Y5, X1 ^ Y6, Y1 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, X2 ^ Y6, Y2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y1 ^ Y6, X2 ^ Y7, Y2 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ X5 ^ Y5, X1 ^ Y6, Y1 ^ Y7, X2 ^ Y8 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y2, X3, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y0 ^ X5 ^ Y5, X1 ^ Y6, Y1 ^ Y7, X2 ^ Y8 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, Y2 ^ Y6, X2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, X2 ^ Y6, Y1 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y1 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y1 ^ Y6, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y0 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X2 ^ Y7, Y2 ^ Y8 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z4 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, Y2 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Y1 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y1 ^ X6 ^ Y6, X2 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, X2 ^ Y7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y0 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y1 ^ Y8 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z4 ^ X5 ^ Y8, Z3 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y3, X4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y2 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y3, X4, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y2 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y1 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y1 ^ Y7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y0 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + { 1, 5, 1, 1, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_D @ RbPlus + { 1, 5, 1, 1, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_D @ RbPlus + { 1, 1, 2, 2, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_D @ RbPlus + { 1, 39, 3, 3, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_D @ RbPlus + { 1, 6, 4, 4, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_D @ RbPlus + { 1, 7, 5, 5, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_D @ RbPlus }; -const UINT_64 SW_4K_S3[][12]= +const ADDR_SW_PATINFO SW_64K_S_T_RBPLUS_PATINFO[] = { - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 }, + { 1, 0, 1, 1, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 1, 1, 2, 2, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 1, 2, 3, 3, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 1, 3, 4, 4, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 1, 4, 5, 5, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 36, 1, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 37, 2, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 38, 3, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 39, 4, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 40, 5, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 41, 1, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 42, 2, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 43, 3, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 44, 4, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 45, 5, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 46, 1, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 47, 2, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 48, 3, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 49, 4, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 50, 5, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 41, 1, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 42, 2, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 43, 3, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 44, 4, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 45, 5, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 46, 1, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 47, 2, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 48, 3, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 49, 4, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 50, 5, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 51, 1, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 52, 2, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 53, 3, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 54, 4, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 55, 5, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 46, 1, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 47, 2, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 48, 3, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 49, 4, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 50, 5, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 51, 1, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 52, 2, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 53, 3, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 54, 4, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 55, 5, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 56, 16, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 57, 17, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 58, 18, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 59, 19, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 60, 20, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 51, 1, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 52, 2, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 53, 3, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 54, 4, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 55, 5, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 56, 16, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 57, 17, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 58, 18, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 59, 19, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 60, 20, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 1, 21, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 2, 22, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 3, 23, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 4, 24, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 5, 25, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 56, 16, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 57, 17, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 58, 18, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 59, 19, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 60, 20, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus + { 2, 0, 1, 21, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_S_T @ RbPlus + { 2, 1, 2, 22, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_S_T @ RbPlus + { 2, 2, 3, 23, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_S_T @ RbPlus + { 2, 3, 4, 24, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_S_T @ RbPlus + { 2, 4, 5, 25, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_S_T @ RbPlus }; -const UINT_64 SW_4K_S3_X[][12]= +const ADDR_SW_PATINFO SW_64K_D_T_RBPLUS_PATINFO[] = { - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X3 ^ Z3, X3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, X2 ^ Y2 ^ Z3, X2, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, X2 ^ Y2 ^ Z2, X2, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X2 ^ Z2, X2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, X1 ^ Y1 ^ Z2, X1, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X3 ^ Z3, X2 ^ Z2 ^ Y3, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X3 ^ Z3, X2 ^ Y2 ^ Z2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X2 ^ Z3, X1 ^ Y2 ^ Z2, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X4 ^ Z4, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X4 ^ Z4, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X3 ^ Z4, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y3 ^ Z3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y3 ^ Z3, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z2 ^ Y3, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y2 ^ Z2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y2 ^ Z2, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X3 ^ Y3, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Y2 ^ Z2 ^ X3, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, X2 ^ Y2 ^ Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, + { 1, 5, 1, 1, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 1, 1, 2, 2, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 1, 39, 3, 3, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 1, 6, 4, 4, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 1, 7, 5, 5, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 36, 1, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 37, 2, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 38, 3, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 39, 4, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 40, 5, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 41, 1, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 42, 2, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 43, 3, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 44, 4, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 45, 5, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 46, 1, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 47, 2, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 48, 3, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 49, 4, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 50, 5, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 41, 1, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 42, 2, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 43, 3, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 44, 4, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 45, 5, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 46, 1, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 47, 2, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 48, 3, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 49, 4, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 50, 5, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 51, 1, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 52, 2, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 53, 3, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 54, 4, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 55, 5, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 46, 1, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 47, 2, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 48, 3, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 49, 4, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 50, 5, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 51, 1, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 52, 2, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 53, 3, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 54, 4, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 55, 5, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 56, 16, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 57, 17, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 58, 18, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 59, 19, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 60, 20, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 51, 1, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 52, 2, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 53, 3, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 54, 4, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 55, 5, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 56, 16, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 57, 17, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 58, 18, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 59, 19, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 60, 20, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 1, 21, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 2, 22, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 3, 23, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 4, 24, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 5, 25, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 56, 16, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 57, 17, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 58, 18, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 59, 19, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 60, 20, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus + { 2, 5, 1, 21, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_D_T @ RbPlus + { 2, 1, 2, 22, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_D_T @ RbPlus + { 2, 39, 3, 23, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_D_T @ RbPlus + { 2, 6, 4, 24, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_D_T @ RbPlus + { 2, 7, 5, 25, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_D_T @ RbPlus }; -const UINT_64 SW_64K_S3[][16]= +const ADDR_SW_PATINFO SW_64K_S_X_RBPLUS_PATINFO[] = { - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, + { 1, 0, 1, 1, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 1, 1, 2, 2, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 1, 2, 3, 3, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 1, 3, 4, 4, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 1, 4, 5, 5, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 6, 1, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 7, 2, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 8, 3, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 9, 4, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 10, 5, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 210, 1, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 211, 2, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 212, 3, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 213, 4, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 214, 5, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 215, 1, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 216, 2, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 217, 3, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 218, 4, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 219, 5, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 11, 1, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 12, 2, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 13, 3, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 14, 4, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 15, 5, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 220, 1, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 221, 2, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 222, 3, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 223, 4, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 224, 5, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 225, 1, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 226, 2, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 227, 3, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 228, 4, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 229, 5, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 16, 1, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 17, 2, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 18, 3, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 19, 4, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 20, 5, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 230, 1, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 231, 2, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 232, 3, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 233, 4, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 234, 5, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 250, 6, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 251, 7, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 252, 8, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 253, 9, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 254, 10, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 21, 1, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 22, 2, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 23, 3, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 24, 4, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 25, 5, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 255, 6, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 256, 7, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 257, 8, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 258, 9, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 259, 10, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 260, 11, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 261, 12, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 262, 13, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 263, 14, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 264, 15, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 26, 6, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 27, 7, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 28, 8, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 29, 9, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 30, 10, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus + { 3, 0, 265, 11, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_S_X @ RbPlus + { 3, 1, 266, 12, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_S_X @ RbPlus + { 3, 2, 267, 13, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_S_X @ RbPlus + { 3, 3, 268, 14, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_S_X @ RbPlus + { 3, 4, 269, 15, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_S_X @ RbPlus }; -const UINT_64 SW_64K_S3_X[][16]= +const ADDR_SW_PATINFO SW_64K_D_X_RBPLUS_PATINFO[] = { - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, X2 ^ Y2 ^ Z2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X2 ^ Z2, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, X1 ^ Y1 ^ Z2, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X3 ^ Z3, X2 ^ Z2 ^ Y3, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X3 ^ Z3, X2 ^ Y2 ^ Z2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X2 ^ Z3, X1 ^ Y2 ^ Z2, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X4 ^ Z4, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X4 ^ Z4, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X3 ^ Z4, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X7 ^ Z7, X3 ^ Y6 ^ Z6, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X6 ^ Z7, X2 ^ Y6 ^ Z6, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X6 ^ Z6, X2 ^ Z5 ^ Y6, Z2 ^ X5 ^ Y5, Y3 ^ X4 ^ Z4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X6 ^ Z6, X2 ^ Y5 ^ Z5, Z2 ^ Y4 ^ X5, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X5 ^ Z6, X1 ^ Y5 ^ Z5, Z2 ^ X4 ^ Y4, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X8 ^ Z8, X3 ^ Y7 ^ Z7, Z3 ^ Y6 ^ X7, Y3 ^ X6 ^ Z6, X4 ^ Y5 ^ Z5, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X7 ^ Z8, X2 ^ Y7 ^ Z7, Z3 ^ X6 ^ Y6, Y3 ^ X5 ^ Z6, X3 ^ Y5 ^ Z5, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X7 ^ Z7, X2 ^ Z6 ^ Y7, Z2 ^ X6 ^ Y6, Y3 ^ X5 ^ Z5, X3 ^ Z4 ^ Y5, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X7 ^ Z7, X2 ^ Y6 ^ Z6, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X6 ^ Z7, X1 ^ Y6 ^ Z6, Z2 ^ X5 ^ Y5, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y3 ^ Z3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y3 ^ Z3, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z2 ^ Y3, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y2 ^ Z2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y2 ^ Z2, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y6 ^ Z6, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y6 ^ Z6, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z5 ^ Y6, Z2 ^ X5 ^ Y5, Y3 ^ X4 ^ Z4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y5 ^ Z5, Z2 ^ Y4 ^ X5, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y5 ^ Z5, Z2 ^ X4 ^ Y4, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y7 ^ Z7, Z3 ^ Y6 ^ X7, Y3 ^ X6 ^ Z6, X4 ^ Y5 ^ Z5, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y7 ^ Z7, Z3 ^ X6 ^ Y6, Y3 ^ X5 ^ Z6, X3 ^ Y5 ^ Z5, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z6 ^ Y7, Z2 ^ X6 ^ Y6, Y3 ^ X5 ^ Z5, X3 ^ Z4 ^ Y5, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y6 ^ Z6, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y6 ^ Z6, Z2 ^ X5 ^ Y5, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y8 ^ Z8, Z3 ^ Y7 ^ X8, Y3 ^ X7 ^ Z7, X4 ^ Y6 ^ Z6, Z4 ^ Y5 ^ X6, Y4 ^ X5 ^ Z5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y8 ^ Z8, Z3 ^ X7 ^ Y7, Y3 ^ X6 ^ Z7, X3 ^ Y6 ^ Z6, Z4 ^ X5 ^ Y5, X4 ^ Y4 ^ Z5, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z7 ^ Y8, Z2 ^ X7 ^ Y7, Y3 ^ X6 ^ Z6, X3 ^ Z5 ^ Y6, Z3 ^ X5 ^ Y5, X4 ^ Y4 ^ Z4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y7 ^ Z7, Z2 ^ Y6 ^ X7, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y7 ^ Z7, Z2 ^ X6 ^ Y6, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X5 ^ Y5, Y3 ^ X4 ^ Z4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y4 ^ X5, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X4 ^ Y4, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y6 ^ X7, Y3 ^ X6 ^ Z6, X4 ^ Y5 ^ Z5, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X6 ^ Y6, Y3 ^ X5 ^ Z6, X3 ^ Y5 ^ Z5, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X6 ^ Y6, Y3 ^ X5 ^ Z5, X3 ^ Z4 ^ Y5, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X5 ^ Y5, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y7 ^ X8, Y3 ^ X7 ^ Z7, X4 ^ Y6 ^ Z6, Z4 ^ Y5 ^ X6, Y4 ^ X5 ^ Z5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X7 ^ Y7, Y3 ^ X6 ^ Z7, X3 ^ Y6 ^ Z6, Z4 ^ X5 ^ Y5, X4 ^ Y4 ^ Z5, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X7 ^ Y7, Y3 ^ X6 ^ Z6, X3 ^ Z5 ^ Y6, Z3 ^ X5 ^ Y5, X4 ^ Y4 ^ Z4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y6 ^ X7, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X6 ^ Y6, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y8 ^ X9, Y3 ^ X8 ^ Z8, X4 ^ Y7 ^ Z7, Z4 ^ Y6 ^ X7, Y4 ^ X6 ^ Z6, X5 ^ Y5 ^ Z5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X8 ^ Y8, Y3 ^ X7 ^ Z8, X3 ^ Y7 ^ Z7, Z4 ^ X6 ^ Y6, Y4 ^ X5 ^ Z6, X4 ^ Y5 ^ Z5 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X8 ^ Y8, Y3 ^ X7 ^ Z7, X3 ^ Z6 ^ Y7, Z3 ^ X6 ^ Y6, Y4 ^ X5 ^ Z5, X4 ^ Z4 ^ Y5 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y7 ^ X8, Y2 ^ X7 ^ Z7, X3 ^ Y6 ^ Z6, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X7 ^ Y7, Y2 ^ X6 ^ Z7, X2 ^ Y6 ^ Z6, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4 }, + { 1, 5, 1, 1, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 1, 1, 2, 2, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 1, 39, 3, 3, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 1, 6, 4, 4, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 1, 7, 5, 5, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 6, 1, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 7, 2, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 8, 3, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 9, 4, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 10, 5, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 210, 1, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 211, 2, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 212, 3, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 213, 4, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 214, 5, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 215, 1, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 216, 2, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 217, 3, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 218, 4, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 219, 5, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 11, 1, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 12, 2, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 13, 3, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 14, 4, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 15, 5, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 220, 1, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 221, 2, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 222, 3, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 223, 4, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 224, 5, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 225, 1, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 226, 2, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 227, 3, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 228, 4, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 229, 5, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 16, 1, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 17, 2, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 18, 3, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 19, 4, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 20, 5, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 230, 1, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 231, 2, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 232, 3, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 233, 4, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 234, 5, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 250, 6, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 251, 7, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 252, 8, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 253, 9, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 254, 10, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 21, 1, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 22, 2, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 23, 3, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 24, 4, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 25, 5, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 255, 6, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 256, 7, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 257, 8, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 258, 9, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 259, 10, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 260, 11, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 261, 12, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 262, 13, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 263, 14, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 264, 15, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 26, 6, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 27, 7, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 28, 8, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 29, 9, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 30, 10, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus + { 3, 5, 265, 11, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_D_X @ RbPlus + { 3, 1, 266, 12, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_D_X @ RbPlus + { 3, 39, 267, 13, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_D_X @ RbPlus + { 3, 6, 268, 14, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_D_X @ RbPlus + { 3, 7, 269, 15, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_D_X @ RbPlus }; -const UINT_64 SW_64K_S3_T[][16]= +const ADDR_SW_PATINFO SW_64K_R_X_1xaa_RBPLUS_PATINFO[] = { - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, X2 ^ Y2 ^ Z2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X2 ^ Z2, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, X1 ^ Y1 ^ Z2, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X3 ^ Z3, X2 ^ Z2 ^ Y3, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X3 ^ Z3, X2 ^ Y2 ^ Z2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X2 ^ Z3, X1 ^ Y2 ^ Z2, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X4, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X4, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X4, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X3, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 ^ X4, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 ^ X4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 ^ X4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 ^ X3, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y3 ^ Z3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y3 ^ Z3, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z2 ^ Y3, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y2 ^ Z2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y2 ^ Z2, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 ^ X4, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 ^ X4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 ^ X4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 ^ X3, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4 ^ X5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, X4 ^ Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, X4 ^ Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, X3 ^ Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 ^ X4, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 ^ X4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 ^ X4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 ^ X3, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4 ^ X5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, X4 ^ Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, X4 ^ Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, X3 ^ Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, + { 2, 0, 347, 193, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 2, 1, 348, 366, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 2, 39, 349, 195, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 2, 6, 350, 367, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 2, 7, 351, 368, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 352, 193, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 353, 194, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 354, 195, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 355, 369, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 356, 370, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 280, 193, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 281, 194, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 282, 195, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 283, 196, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 284, 197, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 394, 219, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 395, 371, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 396, 372, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 397, 373, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 398, 374, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 290, 203, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 291, 204, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 292, 205, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 293, 206, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 294, 207, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 295, 219, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 296, 375, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 297, 376, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 298, 377, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 299, 378, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 399, 379, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 399, 380, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 399, 381, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 399, 382, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 399, 383, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 400, 669, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 401, 670, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 402, 671, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 304, 387, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 305, 388, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 307, 379, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 307, 389, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 307, 381, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 307, 382, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 307, 390, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 307, 672, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 307, 673, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 307, 674, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 307, 675, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 307, 676, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 309, 677, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 309, 678, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 309, 679, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 309, 399, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 323, 400, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 309, 680, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 309, 681, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 309, 682, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 309, 404, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 323, 405, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 309, 505, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 309, 506, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 309, 507, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 309, 683, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 323, 684, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 311, 685, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 311, 686, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 311, 687, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 318, 411, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 324, 412, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 0, 311, 513, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 1, 311, 514, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 39, 311, 515, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 6, 318, 413, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_R_X 1xaa @ RbPlus + { 3, 7, 324, 414, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_R_X 1xaa @ RbPlus }; -const UINT_64 SW_64K_D3_X[][16]= +const ADDR_SW_PATINFO SW_64K_R_X_2xaa_RBPLUS_PATINFO[] = { - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3 ^ Y3, X3, Z3, Y2, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X3 ^ Y3, X2, Z3, Y2, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X3 ^ Y3, X2, Z2, Y2, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X3 ^ Y3, X2, Z2, Y1, X3, Z3, Y2, X4 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X3 ^ Y3, X1, Z2, Y1, X2, Z3, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3 ^ Y3, X4 ^ Y4, Z3, Y2, X3, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X3 ^ Y3, X4 ^ Y4, Z3, Y2, X2, Z4, Y3, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X3 ^ Y3, X4 ^ Y4, Z2, Y2, X2, Z3, Y3, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X3 ^ Y3, X4 ^ Y4, Z2, Y1, X2, Z3, Y2, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2, Y1, X2, Z3, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3 ^ Y3, X4 ^ Y4, X5 ^ Y5, Z3, Y2, X3, Z4, Y4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X3 ^ Y3, X4 ^ Y4, Z3 ^ X5 ^ Y5, Y2, X2, Z4, Y3, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X3 ^ Y3, X4 ^ Y4, Z2 ^ X5 ^ Y5, Y2, X2, Z3, Y3, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X3 ^ Y3, X4 ^ Y4, Z2 ^ X5 ^ Y5, Y1, X2, Z3, Y2, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2 ^ X5 ^ Y5, Y1, X2, Z3, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3 ^ Y3, X4 ^ Y4, Y2 ^ Y5 ^ X6, X5 ^ Y6, Z3, Y3, X4, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X3 ^ Y3, X4 ^ Y4, Z3 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, X2, Z4, Y3, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, X2, Z3, Y3, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6, X2, Z3, Y2, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6, X2, Z3, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3 ^ Y3, X4 ^ Y4, Y2 ^ Y5 ^ X7, X5 ^ Y7, Z3 ^ X6 ^ Y6, Y3, X4, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X3 ^ Y3, X4 ^ Y4, Z3 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z4, Y3, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z3, Y3, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z3, Y2, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z3, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3 ^ Y3, X4 ^ Y4, Y2 ^ Y5 ^ X8, X5 ^ Y8, Z3 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, Y3, X4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X3 ^ Y3, X4 ^ Y4, Z3 ^ Y5 ^ X8, Y2 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X8, Y2 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7, Y3, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7, Y2, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3, X3 ^ Y3, Z3, Y2, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X2, X3 ^ Y3, Z3, Y2, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X2, X3 ^ Y3, Z2, Y2, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X2, X3 ^ Y3, Z2, Y1, X3, Z3, Y2, X4 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X1, X3 ^ Y3, Z2, Y1, X2, Z3, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Z3, X3 ^ Y3, X4 ^ Y4, Y2, X3, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z3, X3 ^ Y3, X4 ^ Y4, Y2, X2, Z4, Y3, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z2, X3 ^ Y3, X4 ^ Y4, Y2, X2, Z3, Y3, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z2, X3 ^ Y3, X4 ^ Y4, Y1, X2, Z3, Y2, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z2, X3 ^ Y3, X1 ^ X4 ^ Y4, Y1, X2, Z3, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Z3, X3 ^ Y3, X4 ^ Y4, X5 ^ Y5, Y2, X3, Z4, Y4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, X3 ^ Y3, X4 ^ Y4, Z3 ^ X5 ^ Y5, X2, Z4, Y3, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, X3 ^ Y3, X4 ^ Y4, Z2 ^ X5 ^ Y5, X2, Z3, Y3, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, X3 ^ Y3, X4 ^ Y4, Z2 ^ X5 ^ Y5, X2, Z3, Y2, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y1, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2 ^ X5 ^ Y5, X2, Z3, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Z3, X3 ^ Y3, X4 ^ Y4, Y2 ^ Y5 ^ X6, X5 ^ Y6, Y3, X4, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X2, X3 ^ Y3, X4 ^ Y4, Z3 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Z4, Y3, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X2, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Z3, Y3, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X2, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6, Z3, Y2, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X2, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6, Z3, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y3, X3 ^ Y3, X4 ^ Y4, Y2 ^ Y5 ^ X7, X5 ^ Y7, Z3 ^ X6 ^ Y6, X4, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z4, X3 ^ Y3, X4 ^ Y4, Z3 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Y3, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z3, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Y3, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Y2, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y3, X3 ^ Y3, X4 ^ Y4, Y2 ^ Y5 ^ X8, X5 ^ Y8, Z3 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, X4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y3, X3 ^ Y3, X4 ^ Y4, Z3 ^ Y5 ^ X8, Y2 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y3, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X8, Y2 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y2, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y2, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3, Z3, X3 ^ Y3, Y2, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X2, Z3, X3 ^ Y3, Y2, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X2, Z2, X3 ^ Y3, Y2, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X2, Z2, X3 ^ Y3, Y1, X3, Z3, Y2, X4 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X1, Z2, X3 ^ Y3, Y1, X2, Z3, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Z3, Y2, X3 ^ Y3, X4 ^ Y4, X3, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z3, Y2, X3 ^ Y3, X4 ^ Y4, X2, Z4, Y3, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z2, Y2, X3 ^ Y3, X4 ^ Y4, X2, Z3, Y3, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z2, Y1, X3 ^ Y3, X4 ^ Y4, X2, Z3, Y2, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z2, Y1, X3 ^ Y3, X1 ^ X4 ^ Y4, X2, Z3, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Z3, Y2, X3 ^ Y3, X4 ^ Y4, X5 ^ Y5, X3, Z4, Y4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, X2, X3 ^ Y3, X4 ^ Y4, Z3 ^ X5 ^ Y5, Z4, Y3, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, X2, X3 ^ Y3, X4 ^ Y4, Z2 ^ X5 ^ Y5, Z3, Y3, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, X2, X3 ^ Y3, X4 ^ Y4, Z2 ^ X5 ^ Y5, Z3, Y2, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y1, X2, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2 ^ X5 ^ Y5, Z3, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Z3, Y3, X3 ^ Y3, X4 ^ Y4, Y2 ^ Y5 ^ X6, X5 ^ Y6, X4, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X2, Z4, X3 ^ Y3, X4 ^ Y4, Z3 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Y3, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X2, Z3, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Y3, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X2, Z3, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6, Y2, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X2, Z3, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6, Y2, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y3, X4, X3 ^ Y3, X4 ^ Y4, Y2 ^ Y5 ^ X7, X5 ^ Y7, Z3 ^ X6 ^ Y6, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z4, Y3, X3 ^ Y3, X4 ^ Y4, Z3 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z3, Y3, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3, Y2, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3, Y2, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y3, X4, X3 ^ Y3, X4 ^ Y4, Y2 ^ Y5 ^ X8, X5 ^ Y8, Z3 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y3, X4, X3 ^ Y3, X4 ^ Y4, Z3 ^ Y5 ^ X8, Y2 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y3, X4, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X8, Y2 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y2, X3, X3 ^ Y3, X4 ^ Y4, Z2 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y2, X3, X3 ^ Y3, X1 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7 }, + { 3, 0, 424, 526, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 348, 527, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 358, 528, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 350, 688, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 359, 689, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 352, 526, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 353, 527, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 354, 528, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 355, 688, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 356, 690, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 280, 526, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 281, 527, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 282, 528, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 283, 529, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 284, 530, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 394, 691, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 395, 692, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 396, 693, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 397, 694, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 425, 695, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 290, 534, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 291, 535, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 292, 536, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 293, 537, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 294, 538, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 295, 691, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 296, 696, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 297, 697, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 298, 698, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 299, 699, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 399, 700, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 399, 701, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 399, 702, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 399, 703, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 426, 429, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 400, 704, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 401, 705, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 402, 706, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 304, 707, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 364, 708, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 307, 700, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 307, 701, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 307, 702, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 307, 703, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 427, 390, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 307, 709, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 307, 710, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 307, 711, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 307, 712, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 427, 676, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 309, 713, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 309, 714, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 309, 715, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 323, 716, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 428, 400, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 309, 717, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 309, 718, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 309, 719, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 323, 720, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 428, 405, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 309, 721, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 309, 722, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 309, 723, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 323, 724, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 428, 684, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 318, 725, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 318, 726, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 318, 727, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 324, 728, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 429, 412, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 0, 318, 729, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 1, 318, 730, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 39, 318, 731, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 6, 324, 732, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_R_X 2xaa @ RbPlus + { 3, 7, 429, 414, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_R_X 2xaa @ RbPlus }; -// Meta data swizzle pattern -const UINT_64 HTILE_64K[][18]= +const ADDR_SW_PATINFO SW_64K_R_X_4xaa_RBPLUS_PATINFO[] = { - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Z0 ^ X3 ^ Y3, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Z0 ^ X3 ^ Y3, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Z0 ^ X3 ^ Y3, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Z0 ^ X3 ^ Y3, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X6 ^ Y6, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X9, Y9, X10 }, - {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, X6 ^ Y7, X9, Y9, X10 }, - {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X9, Y9, X10 }, - {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X9, Y9, X10 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Y6, Z0 ^ X3 ^ Y3, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Y6, Z0 ^ X3 ^ Y3, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Y6, Z0 ^ X3 ^ Y3, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Y6, Z0 ^ X3 ^ Y3, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, X7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, X7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, X7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, X7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Y7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Y7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Y7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Y7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, X8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, X8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, X8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, X8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X9, Y9, 0 }, - {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X9, Y9, 0 }, - {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X6 ^ Y6, X9, Y9, 0 }, - {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, Y8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, Y9, 0 }, - {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y9, X10 }, - {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, X6 ^ Y7, Y9, X10 }, - {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y9, X10 }, - {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y9, X10 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Y6, X7, Z0 ^ X3 ^ Y3, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Y6, X7, Z0 ^ X3 ^ Y3, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Y6, X7, Z0 ^ X3 ^ Y3, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Y6, X7, Z0 ^ X3 ^ Y3, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, X7, Y7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, X7, Y7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, X7, Y7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, X7, Y7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Y7, X8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Y7, X8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Y7, X8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Y7, X8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y9, 0 }, - {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y9, 0 }, - {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X6 ^ Y6, Y9, 0 }, - {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y9, 0 }, - {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X10 }, - {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, X6 ^ Y7, X10 }, - {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X10 }, - {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X9, Y9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X10 }, + { 3, 0, 347, 566, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 348, 733, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 349, 568, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 350, 734, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 351, 735, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 352, 566, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 353, 567, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 354, 568, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 355, 736, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 356, 737, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 280, 566, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 281, 567, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 282, 568, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 283, 569, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 284, 570, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 394, 587, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 395, 738, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 396, 739, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 397, 740, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 430, 741, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 290, 576, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 291, 577, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 292, 578, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 293, 579, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 405, 580, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 295, 587, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 296, 742, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 297, 743, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 298, 740, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 431, 699, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 399, 744, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 399, 745, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 399, 746, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 432, 747, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 433, 429, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 400, 748, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 401, 749, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 402, 750, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 434, 707, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 435, 708, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 307, 744, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 307, 751, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 307, 746, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 436, 703, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 437, 390, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 307, 752, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 307, 753, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 307, 754, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 436, 712, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 437, 676, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 323, 755, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 323, 756, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 323, 757, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 438, 716, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 439, 400, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 323, 758, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 323, 759, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 323, 760, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 438, 720, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 439, 405, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 323, 761, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 323, 762, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 323, 763, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 438, 724, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 439, 684, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 324, 764, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 324, 765, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 324, 766, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 440, 728, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 441, 412, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 0, 324, 767, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 1, 324, 768, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 39, 324, 769, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 6, 440, 732, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_R_X 4xaa @ RbPlus + { 3, 7, 441, 414, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_R_X 4xaa @ RbPlus }; -const UINT_64 CMASK_64K[][17]= +const ADDR_SW_PATINFO SW_64K_R_X_8xaa_RBPLUS_PATINFO[] = { - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X3 ^ Y3, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X3 ^ Y3, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X3 ^ Y3, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X3 ^ Y3, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X3 ^ Y3, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X3 ^ Y3, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X3 ^ Y3, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X3 ^ Y3, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X3 ^ Y3, X9, 0, 0, 0, 0 }, - {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X3 ^ Y3, X9, 0, 0, 0, 0 }, - {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X3 ^ Y3, X9, 0, 0, 0, 0 }, - {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X3 ^ Y3, X9, 0, 0, 0, 0 }, - {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y6 ^ X7, Z0 ^ X6 ^ Y7 }, + { 3, 0, 424, 619, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 348, 620, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 358, 621, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 350, 770, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 359, 771, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 352, 619, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 353, 620, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 354, 621, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 355, 770, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 378, 772, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 280, 619, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 281, 620, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 282, 621, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 283, 622, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 413, 623, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 394, 773, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 395, 774, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 442, 775, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 443, 776, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 444, 777, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 415, 629, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 291, 630, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 292, 631, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 416, 632, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 417, 580, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 295, 773, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 296, 778, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 297, 779, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 445, 780, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 446, 699, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 399, 781, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 399, 782, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 447, 783, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 448, 784, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 449, 429, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 450, 785, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 302, 786, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 303, 787, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 420, 788, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 451, 708, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 339, 781, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 339, 782, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 422, 746, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 452, 703, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 453, 390, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 339, 789, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 339, 790, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 422, 754, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 452, 712, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 453, 676, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 343, 791, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 341, 792, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 423, 757, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 454, 716, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 455, 400, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 343, 793, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 341, 794, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 423, 760, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 454, 720, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 455, 405, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 343, 795, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 341, 796, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 423, 763, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 454, 724, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 455, 684, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 344, 797, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 345, 798, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 456, 766, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 457, 728, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 458, 412, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 0, 344, 799, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 1, 345, 800, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 39, 456, 769, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 6, 457, 732, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_R_X 8xaa @ RbPlus + { 3, 7, 458, 414, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_R_X 8xaa @ RbPlus }; -const UINT_64 DCC_64K_R_X[][17]= +const ADDR_SW_PATINFO SW_64K_Z_X_1xaa_RBPLUS_PATINFO[] = { - {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X3 ^ Y3, X4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, X3 ^ Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X3 ^ Y3, X4 ^ Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, X3 ^ Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X3 ^ Y3, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y4, X4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X3 ^ Y3, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y4, X4, X5, Y5, X6, Y6, X7, Z0 ^ X3 ^ Y3, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y4, X4, X5, Y5, X6, Y6, Z0 ^ X3 ^ Y3, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y4, X4, X5, Y5, X6, Z0 ^ X3 ^ Y3, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X9, Y9, 0, 0, 0, 0 }, - {0, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y4, X5, Y5, X6, Y6, X7, Y7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y4, X5, Y5, X6, Y6, X7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y4, X5, Y5, X6, Y6, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X7, Y7, 0, 0, 0, 0 }, - {0, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y9, 0, 0, 0, 0 }, - {0, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {0, X3, Y4, Y5, X6, Y6, X7, Y7, X8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y4, Y5, X6, Y6, X7, Y7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y4, Y5, X6, Y6, X7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, 0, 0, 0, 0 }, - {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, Y4, X6, Y6, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, X3, Y4, X6, Y6, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, Y2, X3, Y4, X6, Y6, X7, Y7, X8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y4, X6, Y6, X7, Y7, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {0, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {0, X3, Y4, Y6, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {0, Y2, X3, Y4, Y6, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {0, X2, X3, Y4, Y6, X7, Y7, Y2, X8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, 0, 0, 0 }, - {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {0, Y4, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {0, X3, Y4, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {0, X3, Y4, X7, Y7, X8, Y8, Y2, X9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {0, X3, Y4, X7, Y7, X8, Y8, X2, Y2, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, 0, 0 }, - {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X3 ^ Y3, X4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, X3 ^ Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X3 ^ Y3, X4 ^ Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, X3 ^ Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X3 ^ Y3, X9, Y9, 0, 0, 0, 0 }, - {0, Y4, X4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X3 ^ Y3, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X3 ^ Y3, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y4, X4, X5, Y5, X6, Y6, X7, Z0 ^ X3 ^ Y3, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y4, X4, X5, Y5, X6, Y6, Z0 ^ X3 ^ Y3, X7, Y7, 0, 0, 0, 0 }, - {0, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y9, 0, 0, 0, 0 }, - {0, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {0, X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y4, X5, Y5, X6, Y6, X7, Y7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y4, X5, Y5, X6, Y6, X7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, Y7, 0, 0, 0, 0 }, - {0, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, Y2, X3, Y4, Y5, X6, Y6, X7, Y7, X8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y4, Y5, X6, Y6, X7, Y7, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, Y2, X3, Y4, X6, Y6, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, X2, Y2, X3, Y4, X6, Y6, X7, Y7, X8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {0, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {0, X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {0, Y2, X3, Y4, Y6, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {0, X2, X3, Y4, Y6, X7, Y7, Y2, X8, Y8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, 0, 0 }, - {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {0, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {0, X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {0, X3, Y4, X7, Y7, X8, Y8, Y2, X9, Y9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {0, X3, Y4, X7, Y7, X8, Y8, X2, Y2, X9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, 0 }, - {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X3 ^ Y3, X4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, X3 ^ Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X3 ^ Y3, X4 ^ Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, X3 ^ Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z0 ^ X3 ^ Y3, Y9, 0, 0, 0, 0 }, - {0, Y4, X4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X3 ^ Y3, X9, 0, 0, 0, 0 }, - {0, X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X3 ^ Y3, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X3 ^ Y3, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y4, X4, X5, Y5, X6, Y6, X7, Z0 ^ X3 ^ Y3, Y7, 0, 0, 0, 0 }, - {0, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {0, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {0, X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {0, Y2, X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y4, X5, Y5, X6, Y6, X7, Y7, Z1 ^ X3 ^ Y3, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {0, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {0, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {0, X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {0, Y2, X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {0, X2, Y2, X3, Y4, Y5, X6, Y6, X7, Y7, X8, Z2 ^ X3 ^ Y3, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {0, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {0, X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {0, Y2, X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {0, X2, Y2, X3, Y4, X6, Y6, X7, Y7, X8, Y8, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {0, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {0, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {0, X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {0, Y2, X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {0, X2, X3, Y4, Y6, X7, Y7, Y2, X8, Y8, X9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, 0 }, - {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y11, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3 ^ Y3 ^ Z5, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, X3, Y4, X7, Y7, X8, Y8, Y2, X9, Y9, X10, X3 ^ Y3 ^ Z4, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, X3, Y4, X7, Y7, X8, Y8, X2, Y2, X9, Y9, X3 ^ Y3 ^ Z3, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + { 2, 8, 347, 193, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 2, 9, 348, 366, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 2, 10, 349, 195, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 2, 11, 350, 367, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 2, 7, 351, 368, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 352, 193, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 353, 194, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 354, 195, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 355, 369, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 356, 370, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 280, 193, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 281, 194, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 282, 195, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 283, 196, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 284, 197, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 285, 219, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 286, 371, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 287, 372, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 288, 373, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 289, 374, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 290, 203, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 291, 204, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 292, 205, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 293, 206, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 294, 207, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 295, 219, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 296, 375, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 297, 376, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 298, 377, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 299, 378, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 300, 379, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 300, 380, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 300, 381, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 300, 382, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 300, 383, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 301, 384, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 302, 385, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 303, 386, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 304, 387, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 305, 388, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 306, 379, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 306, 389, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 306, 381, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 307, 382, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 307, 390, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 306, 391, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 306, 392, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 306, 393, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 307, 394, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 307, 395, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 308, 396, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 308, 397, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 308, 398, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 309, 399, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 323, 400, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 308, 401, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 308, 402, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 308, 403, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 309, 404, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 323, 405, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 308, 240, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 308, 241, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 308, 242, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 309, 406, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 323, 407, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 310, 408, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 310, 409, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 310, 410, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 318, 411, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 324, 412, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 8, 310, 250, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 9, 310, 251, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 10, 310, 252, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 11, 318, 413, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_Z_X 1xaa @ RbPlus + { 3, 7, 324, 414, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_Z_X 1xaa @ RbPlus }; -// Rb plus color data swizzle pattern -const UINT_64 SW_256_S_RBPLUS[][8]= +const ADDR_SW_PATINFO SW_64K_Z_X_2xaa_RBPLUS_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2 }, - {0, 0, 0, X0, Y0, Y1, X1, X2 }, - {0, 0, 0, 0, Y0, Y1, X0, X1 }, + { 2, 13, 357, 415, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 2, 14, 349, 195, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 358, 263, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 350, 416, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 359, 417, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 360, 415, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 354, 195, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 354, 263, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 361, 418, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 356, 419, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 281, 262, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 282, 195, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 282, 263, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 317, 264, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 284, 265, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 286, 420, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 287, 376, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 287, 421, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 289, 422, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 289, 423, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 291, 268, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 292, 205, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 292, 269, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 293, 270, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 294, 271, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 296, 420, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 297, 376, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 297, 421, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 298, 424, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 299, 423, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 300, 425, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 300, 426, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 300, 427, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 362, 428, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 363, 429, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 302, 430, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 303, 386, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 303, 431, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 305, 432, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 364, 433, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 306, 380, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 306, 381, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 306, 434, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 307, 435, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 365, 435, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 306, 402, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 306, 403, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 306, 436, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 307, 405, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 365, 405, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 308, 397, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 308, 398, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 308, 437, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 323, 438, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 366, 438, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 308, 402, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 308, 403, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 308, 436, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 323, 439, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 366, 439, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 308, 440, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 308, 242, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 308, 441, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 323, 442, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 366, 442, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 310, 443, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 310, 410, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 310, 444, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 324, 412, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 367, 412, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 13, 310, 445, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 14, 310, 252, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 15, 310, 446, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 16, 324, 414, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_Z_X 2xaa @ RbPlus + { 3, 17, 367, 414, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_Z_X 2xaa @ RbPlus }; -const UINT_64 SW_256_D_RBPLUS[][8]= +const ADDR_SW_PATINFO SW_64K_Z_X_4xaa_RBPLUS_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2 }, - {0, 0, 0, X0, Y0, X1, X2, Y1 }, - {0, 0, 0, 0, X0, Y0, X1, Y1 }, + { 2, 18, 349, 195, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 349, 447, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 349, 448, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 350, 449, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 351, 450, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 354, 195, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 368, 451, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 354, 299, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 355, 452, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 356, 453, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 282, 195, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 282, 298, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 282, 299, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 283, 300, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 284, 301, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 287, 372, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 287, 454, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 287, 455, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 288, 456, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 331, 457, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 292, 205, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 292, 306, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 292, 307, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 320, 308, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 321, 309, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 297, 376, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 297, 458, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 297, 459, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 299, 460, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 369, 461, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 300, 381, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 300, 462, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 300, 463, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 363, 464, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 370, 465, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 303, 386, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 303, 466, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 303, 467, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 371, 468, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 337, 469, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 306, 381, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 306, 462, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 306, 470, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 372, 470, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 373, 470, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 306, 393, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 306, 471, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 306, 472, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 372, 472, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 373, 472, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 308, 398, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 308, 473, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 308, 438, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 374, 438, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 375, 438, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 308, 403, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 308, 471, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 308, 439, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 374, 439, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 375, 439, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 308, 242, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 308, 441, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 308, 442, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 374, 442, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 375, 442, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 310, 410, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 310, 474, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 310, 412, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 376, 412, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 377, 412, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 18, 310, 252, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 19, 310, 475, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 20, 310, 414, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 21, 376, 414, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_Z_X 4xaa @ RbPlus + { 3, 22, 377, 414, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_Z_X 4xaa @ RbPlus }; -const UINT_64 SW_4K_S_RBPLUS[][12]= +const ADDR_SW_PATINFO SW_64K_Z_X_8xaa_RBPLUS_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3 }, + { 3, 23, 358, 263, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 349, 448, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 358, 332, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 350, 476, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 359, 477, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 354, 263, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 354, 299, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 354, 332, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 361, 478, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 378, 479, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 282, 263, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 282, 299, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 282, 332, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 317, 333, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 329, 334, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 287, 421, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 287, 480, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 287, 481, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 379, 482, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 380, 483, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 292, 269, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 292, 307, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 292, 339, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 332, 340, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 333, 341, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 297, 421, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 297, 459, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 297, 481, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 381, 484, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 382, 485, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 300, 434, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 300, 463, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 383, 486, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 384, 487, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 385, 488, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 303, 431, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 303, 467, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 303, 489, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 337, 469, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 386, 469, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 306, 434, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 306, 470, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 387, 490, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 373, 470, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 388, 470, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 306, 436, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 306, 472, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 387, 491, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 373, 472, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 388, 492, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 308, 437, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 308, 438, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 389, 493, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 375, 438, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 390, 438, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 308, 436, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 308, 439, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 391, 494, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 375, 439, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 390, 439, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 308, 441, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 308, 442, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 391, 495, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 375, 442, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 390, 442, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 310, 444, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 310, 412, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 392, 496, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 377, 412, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 393, 412, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 23, 310, 446, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 24, 310, 414, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 25, 367, 414, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 26, 377, 414, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_Z_X 8xaa @ RbPlus + { 3, 27, 393, 414, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_Z_X 8xaa @ RbPlus }; -const UINT_64 SW_4K_D_RBPLUS[][12]= +const ADDR_SW_PATINFO SW_64K_S3_RBPLUS_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3 }, + { 1, 29, 131, 148, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus + { 1, 29, 131, 148, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_S3 @ RbPlus + { 1, 30, 132, 149, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_S3 @ RbPlus + { 1, 31, 133, 150, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_S3 @ RbPlus + { 1, 32, 134, 151, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_S3 @ RbPlus + { 1, 33, 135, 152, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_S3 @ RbPlus }; -const UINT_64 SW_4K_S_X_RBPLUS[][12]= +const ADDR_SW_PATINFO SW_64K_S3_X_RBPLUS_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ Y3 ^ X4, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Z0 ^ Y2 ^ X3, X3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Z0 ^ X2 ^ Y2, X2, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X4, Z0 ^ X3 ^ Y3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X3, Z0 ^ X2 ^ Y3, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6, X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X5, X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X4, X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Z1 ^ Y2 ^ X4, Z0 ^ X3 ^ Y3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Z1 ^ Y2 ^ X3, Z0 ^ X2 ^ Y3, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X5, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X4, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7, X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X6, X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X5, X2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z2 ^ X5, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z2 ^ X4, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7, X4 ^ Y7, Z2 ^ Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Z2 ^ Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, X3 ^ Y6, Z2 ^ Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X6, X3 ^ Y5, Z2 ^ Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X5, X2 ^ Y5, Z2 ^ Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7, Z3 ^ X4 ^ Y7, Z2 ^ Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, Z3 ^ X4 ^ Y6, Z2 ^ Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, X3 ^ Z3 ^ Y6, Z2 ^ Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X6, X3 ^ Z3 ^ Y5, Z2 ^ Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X5, X2 ^ Z3 ^ Y5, Z2 ^ Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7, X4 ^ Y7, Z3 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Z3 ^ Y4 ^ X6, Z2 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, X3 ^ Y6, Z3 ^ Y4 ^ X5, Z2 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X6, X3 ^ Y5, Y3 ^ Z3 ^ X5, Z2 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X5, X2 ^ Y5, Y3 ^ Z3 ^ X4, Z2 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7, Z3 ^ X4 ^ Y7, Z2 ^ Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, Z3 ^ X4 ^ Y6, Z2 ^ Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, X3 ^ Z3 ^ Y6, Z2 ^ Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X6, X3 ^ Z3 ^ Y5, Z2 ^ Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X5, X2 ^ Z3 ^ Y5, Z2 ^ Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z0 ^ X4 ^ Y5, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z0 ^ X3 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z0 ^ X3 ^ Y3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, Z0 ^ X2 ^ Y3, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Z2 ^ Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Z2 ^ Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Z2 ^ Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Z2 ^ Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Z2 ^ Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Y5 ^ X6, Z2 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, Z2 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Y4 ^ X5, Z2 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Y3 ^ X5, Z2 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Y3 ^ X4, Z2 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Z2 ^ Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Z2 ^ Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Z2 ^ Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Z2 ^ Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Z2 ^ Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Y5 ^ X6, Z2 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, Z2 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Y4 ^ X5, Z2 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Y3 ^ X5, Z2 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Y3 ^ X4, Z2 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Z2 ^ Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Z2 ^ Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Z2 ^ Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Z2 ^ Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Z2 ^ Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, Z1 ^ X3 ^ Y4 }, + { 1, 29, 131, 148, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 1, 30, 132, 149, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 1, 31, 133, 150, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 1, 32, 134, 151, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 1, 33, 135, 152, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 136, 148, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 137, 149, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 138, 150, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 139, 151, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 140, 152, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 141, 148, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 142, 149, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 143, 150, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 144, 151, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 145, 152, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 146, 148, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 147, 149, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 148, 150, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 149, 151, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 150, 152, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 141, 148, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 142, 149, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 143, 150, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 144, 151, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 145, 152, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 146, 148, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 147, 149, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 148, 150, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 149, 151, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 150, 152, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 151, 148, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 152, 149, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 153, 150, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 154, 151, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 155, 152, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 146, 148, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 147, 149, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 148, 150, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 149, 151, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 150, 152, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 151, 148, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 152, 149, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 153, 150, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 154, 151, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 155, 152, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 156, 153, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 157, 154, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 158, 155, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 159, 156, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 160, 157, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 151, 148, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 152, 149, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 153, 150, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 154, 151, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 155, 152, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 156, 153, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 157, 154, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 158, 155, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 159, 156, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 160, 157, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 161, 158, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 162, 159, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 163, 160, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 164, 161, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 165, 162, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 156, 153, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 157, 154, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 158, 155, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 159, 156, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 160, 157, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus + { 3, 29, 161, 158, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_S3_X @ RbPlus + { 3, 30, 162, 159, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_S3_X @ RbPlus + { 3, 31, 163, 160, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_S3_X @ RbPlus + { 3, 32, 164, 161, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_S3_X @ RbPlus + { 3, 33, 165, 162, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_S3_X @ RbPlus }; -const UINT_64 SW_4K_D_X_RBPLUS[][12]= +const ADDR_SW_PATINFO SW_64K_S3_T_RBPLUS_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ Y3 ^ X4, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z0 ^ Y2 ^ X3, X3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X2 ^ Y2, X2, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X4, Z0 ^ X3 ^ Y3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X3, Z0 ^ X2 ^ Y3, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X6, X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X5, X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X5, X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X4, X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z1 ^ Y2 ^ X4, Z0 ^ X3 ^ Y3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ Y2 ^ X3, Z0 ^ X2 ^ Y3, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X5, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X4, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X7, X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X6, X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X6, X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X5, X2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z2 ^ X5, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z2 ^ X4, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X7, X4 ^ Y7, Z2 ^ Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Z2 ^ Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X6, X3 ^ Y6, Z2 ^ Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X6, X3 ^ Y5, Z2 ^ Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X5, X2 ^ Y5, Z2 ^ Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X7, Z3 ^ X4 ^ Y7, Z2 ^ Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, Z3 ^ X4 ^ Y6, Z2 ^ Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X6, X3 ^ Z3 ^ Y6, Z2 ^ Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X6, X3 ^ Z3 ^ Y5, Z2 ^ Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X5, X2 ^ Z3 ^ Y5, Z2 ^ Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X7, X4 ^ Y7, Z3 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Z3 ^ Y4 ^ X6, Z2 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X6, X3 ^ Y6, Z3 ^ Y4 ^ X5, Z2 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X6, X3 ^ Y5, Y3 ^ Z3 ^ X5, Z2 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X5, X2 ^ Y5, Y3 ^ Z3 ^ X4, Z2 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X7, Z3 ^ X4 ^ Y7, Z2 ^ Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, Z3 ^ X4 ^ Y6, Z2 ^ Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X6, X3 ^ Z3 ^ Y6, Z2 ^ Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X6, X3 ^ Z3 ^ Y5, Z2 ^ Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X5, X2 ^ Z3 ^ Y5, Z2 ^ Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z0 ^ X4 ^ Y5, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, Z0 ^ X3 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z0 ^ X3 ^ Y3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z0 ^ X2 ^ Y3, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Z2 ^ Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Z2 ^ Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Z2 ^ Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Z2 ^ Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Z2 ^ Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Y5 ^ X6, Z2 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, Z2 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Y4 ^ X5, Z2 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Y3 ^ X5, Z2 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Y3 ^ X4, Z2 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Z2 ^ Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Z2 ^ Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Z2 ^ Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Z2 ^ Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Z2 ^ Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Y5 ^ X6, Z2 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, Z2 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Y4 ^ X5, Z2 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Y3 ^ X5, Z2 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Y3 ^ X4, Z2 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Z2 ^ Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Z2 ^ Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Z2 ^ Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Z2 ^ Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Z2 ^ Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z0 ^ X5 ^ Y5, X5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z0 ^ Y4 ^ X5, X5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Z0 ^ X4 ^ Y4, X4 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z0 ^ Y3 ^ X4, X4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X5, X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X5, X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X5, X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, Z1 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X5, X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, Z1 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, Z1 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X5, Z1 ^ X4 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, Z1 ^ X4 ^ Y4 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, Z1 ^ X3 ^ Y4 }, + { 1, 29, 131, 148, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 1, 30, 132, 149, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 1, 31, 133, 150, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 1, 32, 134, 151, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 1, 33, 135, 152, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 136, 148, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 137, 149, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 138, 150, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 139, 151, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 140, 152, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 141, 148, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 142, 149, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 143, 150, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 144, 151, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 145, 152, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 166, 148, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 167, 149, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 168, 150, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 169, 151, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 170, 152, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 141, 148, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 142, 149, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 143, 150, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 144, 151, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 145, 152, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 166, 148, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 167, 149, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 168, 150, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 169, 151, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 170, 152, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 171, 148, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 172, 149, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 173, 150, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 174, 151, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 175, 152, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 166, 148, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 167, 149, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 168, 150, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 169, 151, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 170, 152, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 171, 148, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 172, 149, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 173, 150, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 174, 151, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 175, 152, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 176, 153, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 177, 154, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 178, 155, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 179, 156, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 180, 157, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 171, 148, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 172, 149, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 173, 150, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 174, 151, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 175, 152, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 176, 153, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 177, 154, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 178, 155, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 179, 156, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 180, 157, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 131, 163, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 132, 164, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 133, 165, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 134, 166, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 135, 167, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 176, 153, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 177, 154, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 178, 155, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 179, 156, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 180, 157, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus + { 3, 29, 131, 163, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_S3_T @ RbPlus + { 3, 30, 132, 164, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_S3_T @ RbPlus + { 3, 31, 133, 165, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_S3_T @ RbPlus + { 3, 32, 134, 166, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_S3_T @ RbPlus + { 3, 33, 135, 167, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_S3_T @ RbPlus }; -const UINT_64 SW_64K_S_RBPLUS[][16]= +const ADDR_SW_PATINFO SW_64K_D3_X_RBPLUS_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, + { 1, 34, 131, 148, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 1, 35, 132, 149, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 1, 36, 133, 150, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 1, 37, 134, 151, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 1, 38, 135, 152, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 2, 34, 459, 170, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 2, 35, 459, 801, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 2, 36, 460, 802, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 2, 37, 461, 152, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 3, 38, 462, 152, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 463, 803, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 463, 804, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 464, 805, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 465, 806, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 466, 806, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 467, 803, 0, } , // 8 pipes (2 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 467, 804, 0, } , // 8 pipes (2 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 468, 805, 0, } , // 8 pipes (2 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 469, 806, 0, } , // 8 pipes (2 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 470, 806, 0, } , // 8 pipes (2 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 471, 807, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 472, 808, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 473, 809, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 474, 810, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 475, 811, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 476, 812, 0, } , // 8 pipes (4 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 477, 804, 0, } , // 8 pipes (4 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 478, 805, 0, } , // 8 pipes (4 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 479, 806, 0, } , // 8 pipes (4 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 480, 806, 0, } , // 8 pipes (4 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 481, 813, 0, } , // 16 pipes (4 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 482, 804, 0, } , // 16 pipes (4 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 483, 805, 0, } , // 16 pipes (4 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 484, 806, 0, } , // 16 pipes (4 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 485, 806, 0, } , // 16 pipes (4 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 486, 814, 0, } , // 8 pipes (8 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 486, 815, 0, } , // 8 pipes (8 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 486, 816, 0, } , // 8 pipes (8 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 487, 817, 0, } , // 8 pipes (8 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 488, 817, 0, } , // 8 pipes (8 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 489, 812, 0, } , // 16 pipes (8 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 490, 804, 0, } , // 16 pipes (8 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 491, 805, 0, } , // 16 pipes (8 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 492, 806, 0, } , // 16 pipes (8 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 493, 806, 0, } , // 16 pipes (8 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 489, 818, 0, } , // 32 pipes (8 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 494, 819, 0, } , // 32 pipes (8 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 494, 820, 0, } , // 32 pipes (8 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 495, 821, 0, } , // 32 pipes (8 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 496, 821, 0, } , // 32 pipes (8 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 497, 822, 0, } , // 16 pipes (16 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 498, 823, 0, } , // 16 pipes (16 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 499, 824, 0, } , // 16 pipes (16 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 500, 825, 0, } , // 16 pipes (16 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 501, 825, 0, } , // 16 pipes (16 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 497, 826, 0, } , // 32 pipes (16 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 498, 827, 0, } , // 32 pipes (16 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 499, 828, 0, } , // 32 pipes (16 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 500, 829, 0, } , // 32 pipes (16 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 501, 829, 0, } , // 32 pipes (16 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 497, 830, 0, } , // 64 pipes (16 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 502, 831, 0, } , // 64 pipes (16 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 502, 832, 0, } , // 64 pipes (16 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 503, 833, 0, } , // 64 pipes (16 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 504, 833, 0, } , // 64 pipes (16 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 505, 834, 0, } , // 32 pipes (32 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 506, 835, 0, } , // 32 pipes (32 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 507, 836, 0, } , // 32 pipes (32 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 508, 837, 0, } , // 32 pipes (32 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 509, 837, 0, } , // 32 pipes (32 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus + { 3, 34, 505, 838, 0, } , // 64 pipes (32 PKRs) 1 bpe @ SW_64K_D3_X @ RbPlus + { 3, 35, 506, 839, 0, } , // 64 pipes (32 PKRs) 2 bpe @ SW_64K_D3_X @ RbPlus + { 3, 36, 507, 840, 0, } , // 64 pipes (32 PKRs) 4 bpe @ SW_64K_D3_X @ RbPlus + { 4, 37, 508, 841, 0, } , // 64 pipes (32 PKRs) 8 bpe @ SW_64K_D3_X @ RbPlus + { 4, 38, 509, 841, 0, } , // 64 pipes (32 PKRs) 16 bpe @ SW_64K_D3_X @ RbPlus }; -const UINT_64 SW_64K_D_RBPLUS[][16]= +const ADDR_SW_PATINFO SW_VAR_R_X_1xaa_RBPLUS_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, + { 2, 0, 270, 183, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 2, 1, 271, 184, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 2, 39, 272, 185, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 2, 6, 273, 186, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 2, 7, 274, 187, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 275, 188, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 276, 189, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 277, 190, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 278, 191, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 279, 192, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 280, 193, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 281, 194, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 282, 195, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 283, 196, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 284, 197, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 394, 198, 1, } , // 8 pipes (2 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 395, 199, 2, } , // 8 pipes (2 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 396, 200, 3, } , // 8 pipes (2 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 397, 201, 4, } , // 8 pipes (2 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 398, 202, 5, } , // 8 pipes (2 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 290, 203, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 291, 204, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 292, 205, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 293, 206, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 294, 207, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 295, 208, 6, } , // 8 pipes (4 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 296, 209, 2, } , // 8 pipes (4 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 297, 210, 7, } , // 8 pipes (4 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 298, 211, 4, } , // 8 pipes (4 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 299, 212, 8, } , // 8 pipes (4 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 399, 213, 9, } , // 16 pipes (4 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 399, 214, 10, } , // 16 pipes (4 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 399, 215, 11, } , // 16 pipes (4 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 399, 216, 12, } , // 16 pipes (4 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 399, 217, 13, } , // 16 pipes (4 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 400, 218, 15, } , // 8 pipes (8 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 401, 219, 15, } , // 8 pipes (8 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 402, 220, 15, } , // 8 pipes (8 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 304, 221, 15, } , // 8 pipes (8 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 305, 222, 15, } , // 8 pipes (8 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 307, 213, 9, } , // 16 pipes (8 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 307, 223, 16, } , // 16 pipes (8 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 307, 215, 11, } , // 16 pipes (8 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 307, 216, 17, } , // 16 pipes (8 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 307, 224, 13, } , // 16 pipes (8 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 307, 497, 18, } , // 32 pipes (8 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 307, 498, 19, } , // 32 pipes (8 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 307, 499, 20, } , // 32 pipes (8 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 307, 500, 21, } , // 32 pipes (8 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 307, 501, 22, } , // 32 pipes (8 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 309, 230, 125, } , // 16 pipes (16 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 309, 231, 126, } , // 16 pipes (16 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 309, 232, 127, } , // 16 pipes (16 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 309, 233, 26, } , // 16 pipes (16 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 309, 234, 27, } , // 16 pipes (16 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 309, 502, 28, } , // 32 pipes (16 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 309, 503, 19, } , // 32 pipes (16 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 309, 504, 29, } , // 32 pipes (16 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 309, 238, 30, } , // 32 pipes (16 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 309, 239, 31, } , // 32 pipes (16 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 309, 505, 32, } , // 64 pipes (16 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 309, 506, 33, } , // 64 pipes (16 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 309, 507, 34, } , // 64 pipes (16 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 309, 508, 35, } , // 64 pipes (16 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 309, 509, 36, } , // 64 pipes (16 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 311, 510, 128, } , // 32 pipes (32 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 311, 511, 129, } , // 32 pipes (32 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 311, 512, 130, } , // 32 pipes (32 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 311, 248, 40, } , // 32 pipes (32 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 311, 249, 41, } , // 32 pipes (32 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 0, 311, 513, 32, } , // 64 pipes (32 PKRs) 1 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 1, 311, 514, 42, } , // 64 pipes (32 PKRs) 2 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 39, 311, 515, 34, } , // 64 pipes (32 PKRs) 4 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 6, 311, 253, 43, } , // 64 pipes (32 PKRs) 8 bpe @ SW_VAR_R_X 1xaa @ RbPlus + { 3, 7, 311, 254, 44, } , // 64 pipes (32 PKRs) 16 bpe @ SW_VAR_R_X 1xaa @ RbPlus }; -const UINT_64 SW_64K_S_T_RBPLUS[][16]= +const ADDR_SW_PATINFO SW_VAR_R_X_2xaa_RBPLUS_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4 ^ Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X4, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X3, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, X2 ^ Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X4, X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X3, X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X5, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X4, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X4, X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X3, X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X5, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X4, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X6, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X5, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X5, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X4, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X6, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X5, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X6, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X5, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, + { 3, 0, 403, 516, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 271, 517, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 313, 518, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 273, 519, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 314, 520, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 404, 521, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 276, 522, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 315, 523, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 278, 524, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 316, 525, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 280, 526, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 281, 527, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 282, 528, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 283, 529, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 284, 530, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 394, 208, 131, } , // 8 pipes (2 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 395, 531, 132, } , // 8 pipes (2 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 396, 302, 133, } , // 8 pipes (2 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 397, 532, 134, } , // 8 pipes (2 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 398, 533, 135, } , // 8 pipes (2 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 290, 534, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 291, 535, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 292, 536, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 293, 537, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 294, 538, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 295, 208, 131, } , // 8 pipes (4 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 296, 209, 132, } , // 8 pipes (4 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 297, 210, 133, } , // 8 pipes (4 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 298, 211, 134, } , // 8 pipes (4 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 299, 212, 135, } , // 8 pipes (4 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 399, 539, 136, } , // 16 pipes (4 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 399, 214, 137, } , // 16 pipes (4 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 399, 280, 138, } , // 16 pipes (4 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 399, 216, 139, } , // 16 pipes (4 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 399, 224, 140, } , // 16 pipes (4 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 400, 540, 15, } , // 8 pipes (8 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 401, 541, 15, } , // 8 pipes (8 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 402, 542, 15, } , // 8 pipes (8 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 304, 543, 15, } , // 8 pipes (8 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 305, 544, 15, } , // 8 pipes (8 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 307, 539, 136, } , // 16 pipes (8 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 307, 214, 137, } , // 16 pipes (8 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 307, 280, 138, } , // 16 pipes (8 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 307, 216, 139, } , // 16 pipes (8 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 307, 224, 140, } , // 16 pipes (8 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 307, 545, 141, } , // 32 pipes (8 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 307, 498, 142, } , // 32 pipes (8 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 307, 546, 143, } , // 32 pipes (8 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 307, 500, 144, } , // 32 pipes (8 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 307, 547, 145, } , // 32 pipes (8 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 309, 548, 146, } , // 16 pipes (16 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 309, 231, 147, } , // 16 pipes (16 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 309, 285, 148, } , // 16 pipes (16 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 309, 233, 149, } , // 16 pipes (16 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 309, 286, 150, } , // 16 pipes (16 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 309, 502, 141, } , // 32 pipes (16 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 309, 503, 151, } , // 32 pipes (16 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 309, 504, 143, } , // 32 pipes (16 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 309, 238, 152, } , // 32 pipes (16 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 309, 239, 153, } , // 32 pipes (16 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 309, 505, 154, } , // 64 pipes (16 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 309, 506, 155, } , // 64 pipes (16 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 309, 507, 156, } , // 64 pipes (16 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 309, 508, 157, } , // 64 pipes (16 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 309, 509, 158, } , // 64 pipes (16 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 318, 549, 159, } , // 32 pipes (32 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 318, 550, 160, } , // 32 pipes (32 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 318, 551, 161, } , // 32 pipes (32 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 318, 287, 162, } , // 32 pipes (32 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 318, 288, 163, } , // 32 pipes (32 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 0, 318, 552, 154, } , // 64 pipes (32 PKRs) 1 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 1, 318, 553, 155, } , // 64 pipes (32 PKRs) 2 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 39, 318, 554, 156, } , // 64 pipes (32 PKRs) 4 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 6, 318, 555, 157, } , // 64 pipes (32 PKRs) 8 bpe @ SW_VAR_R_X 2xaa @ RbPlus + { 3, 7, 318, 290, 158, } , // 64 pipes (32 PKRs) 16 bpe @ SW_VAR_R_X 2xaa @ RbPlus }; -const UINT_64 SW_64K_D_T_RBPLUS[][16]= +const ADDR_SW_PATINFO SW_VAR_R_X_4xaa_RBPLUS_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, X4 ^ Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X4, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X3, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2 ^ Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X4, X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X3, X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X5, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X4, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X4, X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X3, X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X5, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X4, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X6, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X6, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X5, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X5, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X4, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X6, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X6, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X5, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X6, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X6, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X5, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y4, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y4, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X6, X4 ^ Y6, X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6 ^ X7, X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X7, X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5 ^ X6, X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4 ^ X6, X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4 ^ X5, X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, + { 3, 0, 270, 556, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 271, 557, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 272, 558, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 273, 559, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 274, 560, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 275, 561, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 276, 562, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 277, 563, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 278, 564, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 279, 565, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 280, 566, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 281, 567, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 282, 568, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 283, 569, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 284, 570, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 394, 571, 164, } , // 8 pipes (2 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 395, 572, 165, } , // 8 pipes (2 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 396, 573, 166, } , // 8 pipes (2 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 397, 574, 167, } , // 8 pipes (2 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 398, 575, 168, } , // 8 pipes (2 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 290, 576, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 291, 577, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 292, 578, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 293, 579, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 405, 580, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 295, 581, 169, } , // 8 pipes (4 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 296, 582, 165, } , // 8 pipes (4 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 297, 583, 170, } , // 8 pipes (4 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 298, 584, 167, } , // 8 pipes (4 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 299, 585, 168, } , // 8 pipes (4 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 399, 213, 171, } , // 16 pipes (4 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 399, 214, 172, } , // 16 pipes (4 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 399, 215, 173, } , // 16 pipes (4 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 399, 216, 174, } , // 16 pipes (4 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 399, 217, 175, } , // 16 pipes (4 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 400, 586, 15, } , // 8 pipes (8 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 401, 587, 15, } , // 8 pipes (8 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 402, 588, 15, } , // 8 pipes (8 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 304, 589, 15, } , // 8 pipes (8 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 406, 544, 15, } , // 8 pipes (8 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 307, 213, 171, } , // 16 pipes (8 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 307, 223, 176, } , // 16 pipes (8 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 307, 215, 173, } , // 16 pipes (8 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 307, 216, 177, } , // 16 pipes (8 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 307, 224, 175, } , // 16 pipes (8 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 307, 497, 178, } , // 32 pipes (8 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 307, 498, 179, } , // 32 pipes (8 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 307, 499, 180, } , // 32 pipes (8 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 307, 500, 181, } , // 32 pipes (8 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 307, 501, 182, } , // 32 pipes (8 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 323, 590, 183, } , // 16 pipes (16 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 323, 591, 184, } , // 16 pipes (16 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 323, 592, 185, } , // 16 pipes (16 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 323, 593, 186, } , // 16 pipes (16 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 323, 286, 187, } , // 16 pipes (16 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 323, 594, 188, } , // 32 pipes (16 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 323, 595, 179, } , // 32 pipes (16 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 323, 596, 189, } , // 32 pipes (16 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 323, 321, 190, } , // 32 pipes (16 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 323, 322, 191, } , // 32 pipes (16 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 323, 597, 192, } , // 64 pipes (16 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 323, 598, 193, } , // 64 pipes (16 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 323, 599, 194, } , // 64 pipes (16 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 323, 600, 195, } , // 64 pipes (16 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 323, 601, 196, } , // 64 pipes (16 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 324, 602, 197, } , // 32 pipes (32 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 324, 603, 198, } , // 32 pipes (32 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 324, 604, 199, } , // 32 pipes (32 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 324, 605, 200, } , // 32 pipes (32 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 324, 606, 201, } , // 32 pipes (32 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 0, 324, 607, 192, } , // 64 pipes (32 PKRs) 1 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 1, 324, 608, 202, } , // 64 pipes (32 PKRs) 2 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 39, 324, 609, 194, } , // 64 pipes (32 PKRs) 4 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 6, 324, 327, 203, } , // 64 pipes (32 PKRs) 8 bpe @ SW_VAR_R_X 4xaa @ RbPlus + { 3, 7, 324, 328, 204, } , // 64 pipes (32 PKRs) 16 bpe @ SW_VAR_R_X 4xaa @ RbPlus }; -const UINT_64 SW_64K_S_X_RBPLUS[][16]= +const ADDR_SW_PATINFO SW_VAR_R_X_8xaa_RBPLUS_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Z0 ^ Y2 ^ X3, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Z0 ^ X2 ^ Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X4, Z0 ^ X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X3, Z0 ^ X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6, X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X5, X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X4, X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Z1 ^ Y2 ^ X4, Z0 ^ X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Z1 ^ Y2 ^ X3, Z0 ^ X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X5, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X4, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7, X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X6, X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X5, X2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z2 ^ X5, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z2 ^ X4, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8, X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X8, X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X7, X3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X7, X3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X6, X2 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X7, X3 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X6, X2 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X9, X4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X8, X3 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X8, X3 ^ Y7, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X7, X2 ^ Y7, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ Z4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z4 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ Z4 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ Z4 ^ X7, X3 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ Z4 ^ X6, X2 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X9, X4 ^ Z4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X9, X4 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3 ^ X8, X3 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2 ^ X8, X3 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2 ^ X7, X2 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z0 ^ X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, Z0 ^ X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y8, Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y7, Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y7, Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y6, Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y6, Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y9, Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y8, Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y8, Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y7, Y3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y7, Y3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y7, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y7, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^Y10, Y5 ^ X9, Z3 ^ X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, Z3 ^ X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y9, Y4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y8, Y3 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y8, Y3 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^ Z4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4 ^Y10, Z4 ^ Y5 ^ X9, Z3 ^ X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y9, Y4 ^ Z4 ^ X9, Z3 ^ X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3 ^ Y9, Y4 ^ Z4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3 ^ Y8, Y3 ^ Z4 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2 ^ Y8, Y3 ^ Z4 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X8, X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X8, X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X7, X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X7, X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X6, X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X9, X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X9, X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X8, X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X8, X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X7, X3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^ X9, Z3 ^ X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X9, Z3 ^ X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^X10, X5 ^Y10, Z3 ^ Y6 ^ X9, Z2 ^ X6 ^ Y9, Z1 ^ Y7 ^ X8, Z0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Z3 ^ Y5 ^ X9, Z2 ^ X6 ^ Y8, Z1 ^ Y6 ^ X8, Z0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X9, X4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X9, X4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X8, X3 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Z4 ^ Y5 ^ X9, Z3 ^ X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ Z4 ^ X9, Z3 ^ X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ Z4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ Z4 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ Z4 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X4, Y5 ^X10, Z4 ^ X5 ^Y10, Z3 ^ Y6 ^ X9, Z2 ^ X6 ^ Y9, Z1 ^ Y7 ^ X8, Z0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, Z4 ^ X5 ^ Y9, Z3 ^ Y5 ^ X9, Z2 ^ X6 ^ Y8, Z1 ^ Y6 ^ X8, Z0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, Y2, X2, Y3, X3, Y4 ^ X9, X4 ^ Z4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, Y1, X1, X2, Y2, X3, Y3 ^ X9, X4 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, Y0, Y1, X0, X1, Y2, X2, Y3 ^ X8, X3 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, + { 3, 0, 407, 610, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 408, 611, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 409, 612, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 410, 613, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 411, 614, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 404, 615, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 276, 616, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 315, 617, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 278, 618, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 412, 565, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 280, 619, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 281, 620, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 282, 621, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 283, 622, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 413, 623, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 394, 624, 205, } , // 8 pipes (2 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 395, 625, 206, } , // 8 pipes (2 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 396, 626, 207, } , // 8 pipes (2 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 397, 627, 208, } , // 8 pipes (2 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 414, 628, 209, } , // 8 pipes (2 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 415, 629, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 291, 630, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 292, 631, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 416, 632, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 417, 580, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 295, 624, 205, } , // 8 pipes (4 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 296, 633, 206, } , // 8 pipes (4 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 297, 634, 207, } , // 8 pipes (4 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 298, 627, 208, } , // 8 pipes (4 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 418, 635, 210, } , // 8 pipes (4 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 399, 636, 211, } , // 16 pipes (4 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 399, 637, 212, } , // 16 pipes (4 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 399, 638, 213, } , // 16 pipes (4 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 399, 639, 214, } , // 16 pipes (4 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 419, 640, 215, } , // 16 pipes (4 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 301, 641, 216, } , // 8 pipes (8 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 302, 642, 216, } , // 8 pipes (8 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 303, 643, 216, } , // 8 pipes (8 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 420, 589, 105, } , // 8 pipes (8 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 421, 544, 217, } , // 8 pipes (8 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 339, 636, 211, } , // 16 pipes (8 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 339, 637, 212, } , // 16 pipes (8 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 339, 638, 213, } , // 16 pipes (8 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 339, 639, 214, } , // 16 pipes (8 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 422, 224, 175, } , // 16 pipes (8 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 339, 545, 218, } , // 32 pipes (8 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 339, 498, 219, } , // 32 pipes (8 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 339, 546, 220, } , // 32 pipes (8 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 339, 500, 221, } , // 32 pipes (8 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 339, 644, 222, } , // 32 pipes (8 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 343, 645, 223, } , // 16 pipes (16 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 343, 646, 224, } , // 16 pipes (16 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 343, 647, 225, } , // 16 pipes (16 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 341, 648, 226, } , // 16 pipes (16 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 423, 286, 187, } , // 16 pipes (16 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 343, 649, 218, } , // 32 pipes (16 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 343, 650, 227, } , // 32 pipes (16 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 343, 651, 220, } , // 32 pipes (16 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 343, 652, 221, } , // 32 pipes (16 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 341, 653, 228, } , // 32 pipes (16 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 343, 654, 229, } , // 64 pipes (16 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 343, 655, 230, } , // 64 pipes (16 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 343, 656, 231, } , // 64 pipes (16 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 343, 657, 232, } , // 64 pipes (16 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 343, 658, 233, } , // 64 pipes (16 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 346, 659, 234, } , // 32 pipes (32 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 346, 660, 235, } , // 32 pipes (32 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 346, 661, 236, } , // 32 pipes (32 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 344, 662, 237, } , // 32 pipes (32 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 345, 663, 238, } , // 32 pipes (32 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 0, 346, 664, 229, } , // 64 pipes (32 PKRs) 1 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 1, 346, 665, 230, } , // 64 pipes (32 PKRs) 2 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 39, 346, 666, 231, } , // 64 pipes (32 PKRs) 4 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 6, 346, 667, 232, } , // 64 pipes (32 PKRs) 8 bpe @ SW_VAR_R_X 8xaa @ RbPlus + { 3, 7, 344, 668, 204, } , // 64 pipes (32 PKRs) 16 bpe @ SW_VAR_R_X 8xaa @ RbPlus }; -const UINT_64 SW_64K_D_X_RBPLUS[][16]= +const ADDR_SW_PATINFO SW_VAR_Z_X_1xaa_RBPLUS_PATINFO[] = { - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z0 ^ Y2 ^ X3, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X2 ^ Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X4, Z0 ^ X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X3, Z0 ^ X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X6, X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X5, X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X5, X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X4, X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z1 ^ Y2 ^ X4, Z0 ^ X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z1 ^ Y2 ^ X3, Z0 ^ X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X5, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X4, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X7, X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X6, X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X6, X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X5, X2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z2 ^ X5, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z2 ^ X4, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X8, X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X8, X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X7, X3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X7, X3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X6, X2 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z3 ^ X6, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z3 ^ X5, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X7, X3 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X6, X2 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X8, X3 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X8, X3 ^ Y7, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X7, X2 ^ Y7, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ Z4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ Z4 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ Z4 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ Z4 ^ X7, X3 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ Z4 ^ X6, X2 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4 ^ X9, X4 ^ Z4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3 ^ X9, X4 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3 ^ X8, X3 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2 ^ X8, X3 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2 ^ X7, X2 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z0 ^ X3 ^ Y3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z0 ^ X2 ^ Y3, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z1 ^ X3 ^ Y4, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, Z1 ^ X2 ^ Y4, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y8, Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y7, Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y7, Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y6, Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y6, Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z2 ^ X3 ^ Y5, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z2 ^ Y5, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y9, Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y8, Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y8, Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y7, Y3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y7, Y3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z3 ^ Y6, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y7, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y7, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^Y10, Y5 ^ X9, Z3 ^ X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, Z3 ^ X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y9, Y4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y8, Y3 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y8, Y3 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^ Z4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Z4 ^ Y7, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4 ^Y10, Z4 ^ Y5 ^ X9, Z3 ^ X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4 ^ Y9, Y4 ^ Z4 ^ X9, Z3 ^ X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3 ^ Y9, Y4 ^ Z4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3 ^ Y8, Y3 ^ Z4 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2 ^ Y8, Y3 ^ Z4 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z0 ^ X5 ^ Y5, X5, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z0 ^ Y4 ^ X5, X5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Z0 ^ X4 ^ Y4, X4, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z0 ^ Y3 ^ X4, X4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z0 ^ X3 ^ Y3, X3, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X6, X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z1 ^ Y3 ^ X5, Z0 ^ X4 ^ Y4, Y4, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z1 ^ Y3 ^ X4, Z0 ^ X3 ^ Y4, Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X8, X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X8, X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X7, X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X7, X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X6, X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z2 ^ Y3 ^ X6, Z1 ^ X4 ^ Y5, Z0 ^ Y4 ^ X5, X5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Z2 ^ Y3 ^ X5, Z1 ^ X3 ^ Y5, Z0 ^ X4 ^ Y4, X4, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X9, X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X9, X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X8, X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X8, X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X7, X3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6, Y6, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ Z3 ^ X7, Z2 ^ X4 ^ Y6, Z1 ^ Y4 ^ X6, Z0 ^ X5 ^ Y5, Y5, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ Z3 ^ X6, Z2 ^ X3 ^ Y6, Z1 ^ Y4 ^ X5, Z0 ^ X4 ^ Y5, Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^ X9, Z3 ^ X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ X9, Z3 ^ X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^X10, X5 ^Y10, Z3 ^ Y6 ^ X9, Z2 ^ X6 ^ Y9, Z1 ^ Y7 ^ X8, Z0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Z3 ^ Y5 ^ X9, Z2 ^ X6 ^ Y8, Z1 ^ Y6 ^ X8, Z0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X9, X4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X8, X3 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Z4 ^ Y5 ^ X9, Z3 ^ X5 ^ Y9, Z2 ^ Y6 ^ X8, Z1 ^ X6 ^ Y8, Z0 ^ X7 ^ Y7, X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^ Z4 ^ X9, Z3 ^ X5 ^ Y8, Z2 ^ Y5 ^ X8, Z1 ^ X6 ^ Y7, Z0 ^ Y6 ^ X7, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ Z4 ^ X8, Z3 ^ X4 ^ Y8, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ Z4 ^ X8, Z3 ^ X4 ^ Y7, Z2 ^ Y4 ^ X7, Z1 ^ X5 ^ Y6, Z0 ^ Y5 ^ X6, X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ Z4 ^ X7, X3 ^ Z3 ^ Y7, Z2 ^ Y4 ^ X6, Z1 ^ X4 ^ Y6, Z0 ^ X5 ^ Y5, X5 }, - {X0, X1, X2, Y1, Y0, Y2, X3, Y3, Y4, X4, Y5 ^X10, Z4 ^ X5 ^Y10, Z3 ^ Y6 ^ X9, Z2 ^ X6 ^ Y9, Z1 ^ Y7 ^ X8, Z0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, Z4 ^ X5 ^ Y9, Z3 ^ Y5 ^ X9, Z2 ^ X6 ^ Y8, Z1 ^ Y6 ^ X8, Z0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y3, X3, Y4 ^ X9, X4 ^ Z4 ^ Y9, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X8, Z2 ^ X5 ^ Y7, Z1 ^ Y5 ^ X7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y2, X2, Y3 ^ X8, X3 ^ Z4 ^ Y8, Z3 ^ Y4 ^ X7, Z2 ^ X4 ^ Y7, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6 }, + { 2, 8, 270, 183, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 2, 9, 271, 184, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 2, 10, 272, 185, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 2, 11, 273, 186, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 2, 7, 274, 187, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 275, 188, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 276, 189, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 277, 190, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 278, 191, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 279, 192, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 280, 193, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 281, 194, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 282, 195, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 283, 196, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 284, 197, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 285, 198, 1, } , // 8 pipes (2 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 286, 199, 2, } , // 8 pipes (2 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 287, 200, 3, } , // 8 pipes (2 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 288, 201, 4, } , // 8 pipes (2 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 289, 202, 5, } , // 8 pipes (2 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 290, 203, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 291, 204, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 292, 205, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 293, 206, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 294, 207, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 295, 208, 6, } , // 8 pipes (4 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 296, 209, 2, } , // 8 pipes (4 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 297, 210, 7, } , // 8 pipes (4 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 298, 211, 4, } , // 8 pipes (4 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 299, 212, 8, } , // 8 pipes (4 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 300, 213, 9, } , // 16 pipes (4 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 300, 214, 10, } , // 16 pipes (4 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 300, 215, 11, } , // 16 pipes (4 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 300, 216, 12, } , // 16 pipes (4 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 300, 217, 13, } , // 16 pipes (4 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 301, 218, 14, } , // 8 pipes (8 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 302, 219, 14, } , // 8 pipes (8 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 303, 220, 14, } , // 8 pipes (8 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 304, 221, 15, } , // 8 pipes (8 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 305, 222, 15, } , // 8 pipes (8 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 306, 213, 9, } , // 16 pipes (8 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 306, 223, 16, } , // 16 pipes (8 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 306, 215, 11, } , // 16 pipes (8 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 307, 216, 17, } , // 16 pipes (8 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 307, 224, 13, } , // 16 pipes (8 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 306, 225, 18, } , // 32 pipes (8 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 306, 226, 19, } , // 32 pipes (8 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 306, 227, 20, } , // 32 pipes (8 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 307, 228, 21, } , // 32 pipes (8 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 307, 229, 22, } , // 32 pipes (8 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 308, 230, 23, } , // 16 pipes (16 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 308, 231, 24, } , // 16 pipes (16 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 308, 232, 25, } , // 16 pipes (16 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 309, 233, 26, } , // 16 pipes (16 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 309, 234, 27, } , // 16 pipes (16 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 308, 235, 28, } , // 32 pipes (16 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 308, 236, 19, } , // 32 pipes (16 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 308, 237, 29, } , // 32 pipes (16 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 309, 238, 30, } , // 32 pipes (16 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 309, 239, 31, } , // 32 pipes (16 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 308, 240, 32, } , // 64 pipes (16 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 308, 241, 33, } , // 64 pipes (16 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 308, 242, 34, } , // 64 pipes (16 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 309, 243, 35, } , // 64 pipes (16 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 309, 244, 36, } , // 64 pipes (16 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 310, 245, 37, } , // 32 pipes (32 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 310, 246, 38, } , // 32 pipes (32 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 310, 247, 39, } , // 32 pipes (32 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 311, 248, 40, } , // 32 pipes (32 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 311, 249, 41, } , // 32 pipes (32 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 8, 310, 250, 32, } , // 64 pipes (32 PKRs) 1 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 9, 310, 251, 42, } , // 64 pipes (32 PKRs) 2 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 10, 310, 252, 34, } , // 64 pipes (32 PKRs) 4 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 11, 311, 253, 43, } , // 64 pipes (32 PKRs) 8 bpe @ SW_VAR_Z_X 1xaa @ RbPlus + { 3, 7, 311, 254, 44, } , // 64 pipes (32 PKRs) 16 bpe @ SW_VAR_Z_X 1xaa @ RbPlus }; -const UINT_64 SW_64K_R_X_1xaa_RBPLUS[][16]= +const ADDR_SW_PATINFO SW_VAR_Z_X_2xaa_RBPLUS_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4, Y4, X5 ^Y10, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y8, Y3 ^ X8, X4 ^ Y7, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4, X5 ^ Y9, X6 ^ Y8, Y5 ^ X9, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Z0 ^ X4 ^ Y4, X3, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X9, X5 ^ Y7, Y4 ^ X8, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X8, X3 ^ Y7, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5, Y5, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5, X6 ^ Y8, Y5 ^ X9, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X8, X5 ^ Y7, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X7, X3 ^ Y7, X5 ^ Y6, Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y5, X6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y3, Y5, X6 ^ Y8, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X3, Y3, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y2, X3, Y3 ^ X8, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X2, Y2, Y3 ^ X7, X3 ^ Y6, Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5, X6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8, Z0 ^ X5 ^ Y5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y2, X3, Y3 ^ X7, X5 ^ Y7, X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X2, Y2, X3 ^ Y7, Y3 ^ X6, X5 ^ Y6, Z0 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, X6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3, Y3 ^ X7, X5 ^ Y7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2, Y2, X3 ^ Y7, Y3 ^ X6, X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X6, Y6, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y3, X6, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X3, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y2, X3, Y3 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X2, Y2, X3 ^ Y6, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X6, Y6, X7 ^ Y8, Y7 ^ X8, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y3, X6, X7 ^ Y7, Y6 ^ X8, Z0 ^ X5 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X3, Y3, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y2, X3, Y3 ^ X7, X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X2, Y2, Y3 ^ X6, X3 ^ Y6, Z0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, Y6, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X6, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2, X3, Y3 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X2, Y2, Y3 ^ X6, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y6, X7, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y3, Y6, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, X3, Y3, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y2, X3, Y3 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3 ^ X8 ^ Y8, X2, Y2, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, X6, X7, Y7 ^ X8, Z0 ^ X6 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Y3, X6, X7 ^ Y7, Z0 ^ X6 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, X3, Y3, X6 ^ Y7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Y2, X3, Y3 ^ X7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X2, X3, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, X7, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y3, X6, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3, Y3, X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y2, X3, Y3 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2, X3, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9, X7, Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9, Y3, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9, X3, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, Y2, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, X2, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, X7, Y7, Z0 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Y3, X7, Z0 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, X3, Y3, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X7, Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y3, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4, Y4, X5 ^Y10, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y8, Y3 ^ X8, X4 ^ Y7, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z0 ^ X4 ^ Y4, X5, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5 ^ Y9, X6 ^ Y8, Y5 ^ X9, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z0 ^ X4 ^ Y4, X3, Y3 ^ X9, X5 ^ Y7, Y4 ^ X8, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X8, X3 ^ Y7, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5, X6 ^ Y8, Y5 ^ X9, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3 ^ X8, X5 ^ Y7, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X7, X3 ^ Y7, X5 ^ Y6, Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y5, X6 ^ Y8, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y3, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X3, Y3 ^ X8, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y2, Y3 ^ X7, X3 ^ Y6, Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8, Z0 ^ X5 ^ Y5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3 ^ X7, X5 ^ Y7, X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y2, X3 ^ Y7, Y3 ^ X6, X5 ^ Y6, Z0 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3 ^ X7, X5 ^ Y7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3 ^ Y7, Y3 ^ X6, X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y6, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X6, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X3, Y3 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y2, X3 ^ Y6, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y6, X7 ^ Y8, Y7 ^ X8, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X6, X7 ^ Y7, Y6 ^ X8, Z0 ^ X5 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y3, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X3, Y3 ^ X7, X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y2, Y3 ^ X6, X3 ^ Y6, Z0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y3 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2, Y3 ^ X6, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, X7, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y6, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y3, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, X3, Y3 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3 ^ X8 ^ Y8, Y2, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, X7, Y7 ^ X8, Z0 ^ X6 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, X6, X7 ^ Y7, Z0 ^ X6 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Y3, X6 ^ Y7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, X3, Y3 ^ X7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X3, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X7, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y3, X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3, Y3 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X7, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9, Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X7, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Y7, Z0 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, X7, Z0 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Y3, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X7, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4, Y4, X5 ^Y10, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y8, Y3 ^ X8, X4 ^ Y7, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X5, Z0 ^ X4 ^ Y4, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4, Z0 ^ X4 ^ Y4, X5 ^ Y9, X6 ^ Y8, Y5 ^ X9, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z0 ^ X4 ^ Y4, Y3 ^ X9, X5 ^ Y7, Y4 ^ X8, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X4 ^ Y4, Y3 ^ X8, X3 ^ Y7, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X6 ^ Y8, Y5 ^ X9, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X8, X5 ^ Y7, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X7, X3 ^ Y7, X5 ^ Y6, Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y5, X6, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X6 ^ Y8, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y3 ^ X8, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y3 ^ X7, X3 ^ Y6, Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8, Z0 ^ X5 ^ Y5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3 ^ X7, X5 ^ Y7, X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3 ^ Y7, Y3 ^ X6, X5 ^ Y6, Z0 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3 ^ X7, X5 ^ Y7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3 ^ Y7, Y3 ^ X6, X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y3 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X3 ^ Y6, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X7 ^ Y8, Y7 ^ X8, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X7 ^ Y7, Y6 ^ X8, Z0 ^ X5 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y3 ^ X7, X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y3 ^ X6, X3 ^ Y6, Z0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3 ^ X6, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, X7, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y3 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3 ^ X8 ^ Y8, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, X7, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Y7 ^ X8, Z0 ^ X6 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, X7 ^ Y7, Z0 ^ X6 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, X6 ^ Y7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Y3 ^ X7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, X7, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y3 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X7, Y7, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X7, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3 ^ X9 ^ Y9 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ X9 ^ Y9 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X7, Y7, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X7, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X7, Y7, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X7, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + { 2, 13, 312, 255, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 2, 14, 272, 185, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 313, 256, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 273, 257, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 314, 258, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 276, 189, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 277, 190, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 315, 259, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 278, 260, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 316, 261, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 281, 262, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 282, 195, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 282, 263, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 317, 264, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 284, 265, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 286, 209, 2, } , // 8 pipes (2 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 287, 266, 3, } , // 8 pipes (2 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 287, 210, 45, } , // 8 pipes (2 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 288, 211, 46, } , // 8 pipes (2 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 289, 267, 47, } , // 8 pipes (2 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 291, 268, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 292, 205, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 292, 269, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 293, 270, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 294, 271, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 296, 209, 2, } , // 8 pipes (4 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 297, 210, 7, } , // 8 pipes (4 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 297, 210, 45, } , // 8 pipes (4 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 298, 211, 46, } , // 8 pipes (4 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 299, 212, 47, } , // 8 pipes (4 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 300, 272, 48, } , // 16 pipes (4 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 300, 273, 11, } , // 16 pipes (4 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 300, 273, 49, } , // 16 pipes (4 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 300, 274, 50, } , // 16 pipes (4 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 300, 275, 51, } , // 16 pipes (4 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 302, 219, 14, } , // 8 pipes (8 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 303, 220, 14, } , // 8 pipes (8 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 303, 276, 14, } , // 8 pipes (8 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 304, 277, 15, } , // 8 pipes (8 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 305, 278, 15, } , // 8 pipes (8 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 306, 279, 48, } , // 16 pipes (8 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 306, 215, 11, } , // 16 pipes (8 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 306, 280, 49, } , // 16 pipes (8 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 307, 281, 52, } , // 16 pipes (8 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 307, 224, 53, } , // 16 pipes (8 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 306, 236, 19, } , // 32 pipes (8 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 306, 237, 54, } , // 32 pipes (8 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 306, 237, 55, } , // 32 pipes (8 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 307, 282, 56, } , // 32 pipes (8 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 307, 283, 57, } , // 32 pipes (8 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 308, 284, 24, } , // 16 pipes (16 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 308, 232, 25, } , // 16 pipes (16 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 308, 285, 58, } , // 16 pipes (16 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 309, 233, 59, } , // 16 pipes (16 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 309, 286, 60, } , // 16 pipes (16 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 308, 236, 19, } , // 32 pipes (16 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 308, 237, 29, } , // 32 pipes (16 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 308, 237, 55, } , // 32 pipes (16 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 309, 238, 56, } , // 32 pipes (16 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 309, 239, 61, } , // 32 pipes (16 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 308, 241, 62, } , // 64 pipes (16 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 308, 242, 34, } , // 64 pipes (16 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 308, 242, 63, } , // 64 pipes (16 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 309, 243, 64, } , // 64 pipes (16 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 309, 244, 65, } , // 64 pipes (16 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 310, 246, 38, } , // 32 pipes (32 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 310, 247, 39, } , // 32 pipes (32 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 310, 247, 66, } , // 32 pipes (32 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 318, 287, 67, } , // 32 pipes (32 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 318, 288, 68, } , // 32 pipes (32 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 13, 310, 251, 62, } , // 64 pipes (32 PKRs) 1 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 14, 310, 252, 34, } , // 64 pipes (32 PKRs) 2 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 15, 310, 252, 63, } , // 64 pipes (32 PKRs) 4 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 16, 318, 289, 69, } , // 64 pipes (32 PKRs) 8 bpe @ SW_VAR_Z_X 2xaa @ RbPlus + { 3, 17, 318, 290, 65, } , // 64 pipes (32 PKRs) 16 bpe @ SW_VAR_Z_X 2xaa @ RbPlus }; -const UINT_64 SW_64K_R_X_2xaa_RBPLUS[][16]= +const ADDR_SW_PATINFO SW_VAR_Z_X_4xaa_RBPLUS_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4, Y4, Y5 ^X10, X5 ^Y10, Y6 ^ X9, X6 ^ Y9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y3 ^ X8, X3 ^ Y8, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5 ^X10, Y6 ^ X9, X6 ^ Y9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Z0 ^ X4 ^ Y4, X3, Y3, Y4 ^ X9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X9, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X8, Y4 ^ X7, X3 ^ Y7, Y5 ^ X6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5, Y5, Y6 ^ X9, X6 ^ Y9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X8, X5 ^ Y7, Y5 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X7, X3 ^ Y7, Y5 ^ X6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y5, X6, Y6 ^ X9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y3, Y5, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X3, Y3, Y5 ^ X8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y2, X3, Y3 ^ X8, Y5 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, S0 ^ X6 ^ Y6, X2, Y2, Y3 ^ X6, X3 ^ Y6, X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5, X6, Y6 ^ X9, Y7 ^ X8, S0 ^ X7 ^ Y8, Z0 ^ X5 ^ Y5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y2, X3, Y3 ^ X7, X5 ^ Y7, S0 ^ X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X2, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6, Z0 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, X6, Y6 ^ X9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3, Y3 ^ X7, X5 ^ Y7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X6, Y6, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y3, X6, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X3, Y3, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y2, X3, Y3 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S0 ^ X7 ^ Y7, X2, Y2, Y3 ^ X5, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X6, Y6, Y7 ^ X8, S0 ^ X7 ^ Y8, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y3, X6, Y6 ^ X8, S0 ^ X7 ^ Y7, Z0 ^ X5 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X3, Y3, Y6 ^ X7, S0 ^ X6 ^ Y7, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y2, X3, Y3 ^ X7, S0 ^ X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X2, Y2, Y3 ^ X6, X3 ^ Y6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, Y6, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X6, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y3, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2, X3, Y3 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X2, Y2, Y3 ^ X6, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y6, Y7, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y3, Y6, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ X8 ^ Y8, X3, Y3, X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ X8 ^ Y8, Y2, X3, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X3 ^ X8 ^ Y8, X2, Y2, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, X6, Y7, S0 ^ X7 ^ Y8, Z0 ^ X6 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Y3, X6, S0 ^ X7 ^ Y7, Z0 ^ X6 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, X3, Y3, S0 ^ X6 ^ Y7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2, X3, Y3 ^ X6, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, X2, X3, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, Y7, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y3, X6, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3, Y3, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y2, X3, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2, X3, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9, Y7, S0 ^ X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9, Y3, S0 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, S0 ^ X9 ^ Y9, X3, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, Y2, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, X2, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Y7, S0 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Y3, S0 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, X3, Y3, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, X3, Y3, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, Y7, S0 ^ X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, Y3, S0 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, S0 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4, Y4, Y5 ^X10, X5 ^Y10, Y6 ^ X9, X6 ^ Y9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y3 ^ X8, X3 ^ Y8, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z0 ^ X4 ^ Y4, X5, Y5 ^X10, Y6 ^ X9, X6 ^ Y9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4 ^ X9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z0 ^ X4 ^ Y4, X3, Y3 ^ X9, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X8, Y4 ^ X7, X3 ^ Y7, Y5 ^ X6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5, Y6 ^ X9, X6 ^ Y9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3 ^ X8, X5 ^ Y7, Y5 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X7, X3 ^ Y7, Y5 ^ X6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X6, Y6 ^ X9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y5, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y3, Y5 ^ X8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X3, Y3 ^ X8, Y5 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, S0 ^ X6 ^ Y6, Y2, Y3 ^ X6, X3 ^ Y6, X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X6, Y6 ^ X9, Y7 ^ X8, S0 ^ X7 ^ Y8, Z0 ^ X5 ^ Y5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3 ^ X7, X5 ^ Y7, S0 ^ X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6, Z0 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6, Y6 ^ X9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3 ^ X7, X5 ^ Y7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y6, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X6, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y3, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X3, Y3 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S0 ^ X7 ^ Y7, Y2, Y3 ^ X5, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y6, Y7 ^ X8, S0 ^ X7 ^ Y8, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X6, Y6 ^ X8, S0 ^ X7 ^ Y7, Z0 ^ X5 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y3, Y6 ^ X7, S0 ^ X6 ^ Y7, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X3, Y3 ^ X7, S0 ^ X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2, Y3 ^ X6, X3 ^ Y6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y3 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, Y2, Y3 ^ X6, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y7, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y6, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ X8 ^ Y8, Y3, X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ X8 ^ Y8, X3, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X3 ^ X8 ^ Y8, Y2, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Y7, S0 ^ X7 ^ Y8, Z0 ^ X6 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, X6, S0 ^ X7 ^ Y7, Z0 ^ X6 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Y3, S0 ^ X6 ^ Y7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X3, Y3 ^ X6, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, X3, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y7, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y3, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y7, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9, S0 ^ X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9, S0 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, S0 ^ X9 ^ Y9, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y7, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, S0 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, S0 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Y3, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y3, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y7, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, S0 ^ X7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7, S0 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, S0 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4, Y4, Y5 ^X10, X5 ^Y10, Y6 ^ X9, X6 ^ Y9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y3 ^ X8, X3 ^ Y8, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X5, Z0 ^ X4 ^ Y4, Y5 ^X10, Y6 ^ X9, X6 ^ Y9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4, Z0 ^ X4 ^ Y4, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4 ^ X9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z0 ^ X4 ^ Y4, Y3 ^ X9, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X4 ^ Y4, Y3 ^ X8, Y4 ^ X7, X3 ^ Y7, Y5 ^ X6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y6 ^ X9, X6 ^ Y9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X8, X5 ^ Y7, Y5 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X7, X3 ^ Y7, Y5 ^ X6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y5, X6, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y6 ^ X9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y5 ^ X8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y3 ^ X8, Y5 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, S0 ^ X6 ^ Y6, Y3 ^ X6, X3 ^ Y6, X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y6 ^ X9, Y7 ^ X8, S0 ^ X7 ^ Y8, Z0 ^ X5 ^ Y5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3 ^ X7, X5 ^ Y7, S0 ^ X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6, Z0 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y6 ^ X9, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6 ^ Y8, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y8, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3 ^ X7, X5 ^ Y7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y3 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S0 ^ X7 ^ Y7, Y3 ^ X5, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y7 ^ X8, S0 ^ X7 ^ Y8, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y6 ^ X8, S0 ^ X7 ^ Y7, Z0 ^ X5 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y6 ^ X7, S0 ^ X6 ^ Y7, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y3 ^ X7, S0 ^ X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3 ^ X6, X3 ^ Y6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y7 ^ X8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6 ^ X8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, Y3 ^ X6, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, Y7, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ X8 ^ Y8, X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ X8 ^ Y8, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X3 ^ X8 ^ Y8, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y7, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, S0 ^ X7 ^ Y8, Z0 ^ X6 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, S0 ^ X7 ^ Y7, Z0 ^ X6 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, S0 ^ X6 ^ Y7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y3 ^ X6, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y7, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, S0 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, S0 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y7, S0 ^ X7, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X7, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ X9 ^ Y9 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, S0 ^ X9 ^ Y9 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3 ^ X9 ^ Y9 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ X9 ^ Y9 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y7, S0 ^ X7, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X7, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y7, S0 ^ X7, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X7, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, Z4 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Z0 ^ Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + { 2, 18, 272, 185, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 272, 291, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 272, 292, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 273, 293, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 274, 294, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 277, 190, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 315, 259, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 277, 295, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 319, 296, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 279, 297, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 282, 195, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 282, 298, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 282, 299, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 283, 300, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 284, 301, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 287, 200, 3, } , // 8 pipes (2 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 287, 302, 45, } , // 8 pipes (2 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 287, 303, 70, } , // 8 pipes (2 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 289, 304, 71, } , // 8 pipes (2 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 289, 305, 72, } , // 8 pipes (2 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 292, 205, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 292, 306, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 292, 307, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 320, 308, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 321, 309, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 297, 210, 7, } , // 8 pipes (4 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 297, 210, 45, } , // 8 pipes (4 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 297, 310, 45, } , // 8 pipes (4 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 298, 311, 71, } , // 8 pipes (4 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 299, 312, 47, } , // 8 pipes (4 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 300, 215, 11, } , // 16 pipes (4 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 300, 215, 73, } , // 16 pipes (4 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 300, 215, 74, } , // 16 pipes (4 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 300, 216, 75, } , // 16 pipes (4 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 300, 217, 76, } , // 16 pipes (4 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 303, 220, 14, } , // 8 pipes (8 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 303, 276, 14, } , // 8 pipes (8 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 303, 313, 14, } , // 8 pipes (8 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 305, 314, 15, } , // 8 pipes (8 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 322, 315, 15, } , // 8 pipes (8 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 306, 215, 11, } , // 16 pipes (8 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 306, 232, 77, } , // 16 pipes (8 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 306, 215, 78, } , // 16 pipes (8 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 307, 216, 79, } , // 16 pipes (8 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 307, 224, 80, } , // 16 pipes (8 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 306, 227, 20, } , // 32 pipes (8 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 306, 316, 55, } , // 32 pipes (8 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 306, 227, 81, } , // 32 pipes (8 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 307, 317, 82, } , // 32 pipes (8 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 307, 229, 83, } , // 32 pipes (8 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 308, 232, 25, } , // 16 pipes (16 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 308, 232, 84, } , // 16 pipes (16 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 308, 318, 84, } , // 16 pipes (16 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 323, 319, 85, } , // 16 pipes (16 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 323, 320, 86, } , // 16 pipes (16 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 308, 237, 29, } , // 32 pipes (16 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 308, 237, 55, } , // 32 pipes (16 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 308, 237, 87, } , // 32 pipes (16 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 323, 321, 88, } , // 32 pipes (16 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 323, 322, 89, } , // 32 pipes (16 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 308, 242, 34, } , // 64 pipes (16 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 308, 242, 90, } , // 64 pipes (16 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 308, 242, 91, } , // 64 pipes (16 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 323, 323, 92, } , // 64 pipes (16 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 323, 324, 93, } , // 64 pipes (16 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 310, 247, 39, } , // 32 pipes (32 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 310, 247, 66, } , // 32 pipes (32 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 310, 247, 94, } , // 32 pipes (32 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 324, 325, 95, } , // 32 pipes (32 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 324, 326, 96, } , // 32 pipes (32 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 18, 310, 252, 34, } , // 64 pipes (32 PKRs) 1 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 19, 310, 252, 97, } , // 64 pipes (32 PKRs) 2 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 20, 310, 252, 98, } , // 64 pipes (32 PKRs) 4 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 21, 324, 327, 99, } , // 64 pipes (32 PKRs) 8 bpe @ SW_VAR_Z_X 4xaa @ RbPlus + { 3, 22, 324, 328, 100, } , // 64 pipes (32 PKRs) 16 bpe @ SW_VAR_Z_X 4xaa @ RbPlus }; -const UINT_64 SW_64K_R_X_4xaa_RBPLUS[][16]= +const ADDR_SW_PATINFO SW_VAR_Z_X_8xaa_RBPLUS_PATINFO[] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4, Y4, X5 ^Y10, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, S0 ^ Y6 ^ X8, S1 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, S0 ^ Y5 ^ X7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y8, Y3 ^ X8, X4 ^ Y7, Y4 ^ X7, S0 ^ X5 ^ Y6, S1 ^ Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4, X5 ^ Y9, X6 ^ Y8, Y5 ^ X9, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Z0 ^ X4 ^ Y4, X3, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X9, X5 ^ Y7, Y4 ^ X8, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X8, X3 ^ Y7, Y4 ^ X7, S0 ^ X5 ^ Y6, S1 ^ Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5, Y5, X6 ^ Y9, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5, X6 ^ Y8, Y5 ^ X9, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, Y5 ^ X8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X8, X5 ^ Y7, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X7, X3 ^ Y7, S0 ^ X5 ^ Y6, S1 ^ Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y5, X6, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y3, Y5, X6 ^ Y8, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X3, Y3, Y5 ^ X8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y2, X3, Y3 ^ X8, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, S1 ^ X6 ^ Y6, X2, Y2, Y3 ^ X6, X3 ^ Y6, S0 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5, X6, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8, Z0 ^ X5 ^ Y5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5, X6 ^ Y8, S0 ^ Y6 ^ X8, S1 ^ X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y2, X3, Y3 ^ X8, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6, S1 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, X6, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5, X6 ^ Y8, S0 ^ Y6 ^ X8, S1 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, X5 ^ Y8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3, Y3 ^ X8, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, X2, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X6, Y6, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y3, X6, S0 ^ Y6 ^ X8, S1 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X3, Y3, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S1 ^ X7 ^ Y7, Y2, X3, Y3 ^ X7, S0 ^ Y5 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, S0 ^ X7 ^ Y7, X2, Y2, Y3 ^ X5, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X6, Y6, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y3, X6, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8, Z0 ^ X5 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X3, Y3, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Y2, X3, Y3 ^ X7, S0 ^ X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, X2, Y2, Y3 ^ X6, X3 ^ Y6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, Y6, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X6, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y3, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2, X3, Y3 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X2, Y2, Y3 ^ X6, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y6, S0 ^ X7, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, Y3, S0 ^ X7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S1 ^ X8 ^ Y8, X3, Y3, S0 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ X8 ^ Y8, Y2, X3, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X3 ^ X8 ^ Y8, X2, Y2, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X6, S0 ^ X7, S1 ^ Y7 ^ X8, Z3 ^ X6 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y3, S0 ^ X7, S1 ^ Y6 ^ X8, Z3 ^ X6 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X3, Y3, S0 ^ X6 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2, X3, Y3 ^ X6, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, X2, X3, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, X6, S0 ^ X7, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, Y3, S0 ^ X7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, X3, Y3, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y2, X3, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2, X3, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, X6 ^ X9 ^ Y9, S0 ^ X7, S1 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, S1 ^ X9 ^ Y9, Y3, S0 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S0 ^ X9 ^ Y9, X3, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, Y2, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, X2, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Z4 ^ Y6 ^ X7, S0 ^ X7, S1 ^ Y7, Z3 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, Y3, S0 ^ X7, Z3 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, X3, Y3, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, X3, Y3, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Z4 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7, S0 ^ X7, S1 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7, Y3, S0 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4, Y4, X5 ^Y10, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, S0 ^ Y6 ^ X8, S1 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, S0 ^ Y5 ^ X7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y8, Y3 ^ X8, X4 ^ Y7, Y4 ^ X7, S0 ^ X5 ^ Y6, S1 ^ Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z0 ^ X4 ^ Y4, X5, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5 ^ Y9, X6 ^ Y8, Y5 ^ X9, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z0 ^ X4 ^ Y4, X3, Y3 ^ X9, X5 ^ Y7, Y4 ^ X8, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X8, X3 ^ Y7, Y4 ^ X7, S0 ^ X5 ^ Y6, S1 ^ Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5, X6 ^ Y9, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5, X6 ^ Y8, Y5 ^ X9, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5 ^ Y8, Y5 ^ X8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3 ^ X8, X5 ^ Y7, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X7, X3 ^ Y7, S0 ^ X5 ^ Y6, S1 ^ Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X6, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y5, X6 ^ Y8, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y3, Y5 ^ X8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X3, Y3 ^ X8, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, S1 ^ X6 ^ Y6, Y2, Y3 ^ X6, X3 ^ Y6, S0 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X6, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8, Z0 ^ X5 ^ Y5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5, X6 ^ Y8, S0 ^ Y6 ^ X8, S1 ^ X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5 ^ Y8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3 ^ X8, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6, S1 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, X6 ^ Y8, S0 ^ Y6 ^ X8, S1 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5 ^ Y8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3 ^ X8, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y6, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, X6, S0 ^ Y6 ^ X8, S1 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y3, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S1 ^ X7 ^ Y7, X3, Y3 ^ X7, S0 ^ Y5 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, S0 ^ X7 ^ Y7, Y2, Y3 ^ X5, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y6, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X6, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8, Z0 ^ X5 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y3, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, X3, Y3 ^ X7, S0 ^ X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Y2, Y3 ^ X6, X3 ^ Y6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y6, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y3 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, Y2, Y3 ^ X6, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, S0 ^ X7, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, S0 ^ X7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S1 ^ X8 ^ Y8, Y3, S0 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ X8 ^ Y8, X3, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X3 ^ X8 ^ Y8, Y2, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X7, S1 ^ Y7 ^ X8, Z3 ^ X6 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X7, S1 ^ Y6 ^ X8, Z3 ^ X6 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y3, S0 ^ X6 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X3, Y3 ^ X6, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, X3, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, S0 ^ X7, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, S0 ^ X7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, Y3, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X7, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, X6 ^ X9 ^ Y9, S1 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, S1 ^ X9 ^ Y9, S0 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S0 ^ X9 ^ Y9, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X7, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Z4 ^ Y6 ^ X7, S1 ^ Y7, Z3 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X7, Z3 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, Y3, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y3, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X7, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Z4 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7, S1 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7, S0 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4, Y4, X5 ^Y10, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, S0 ^ Y6 ^ X8, S1 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, S0 ^ Y5 ^ X7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y8, Y3 ^ X8, X4 ^ Y7, Y4 ^ X7, S0 ^ X5 ^ Y6, S1 ^ Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X5, Z0 ^ X4 ^ Y4, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4, Z0 ^ X4 ^ Y4, X5 ^ Y9, X6 ^ Y8, Y5 ^ X9, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z0 ^ X4 ^ Y4, Y3 ^ X9, X5 ^ Y7, Y4 ^ X8, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X4 ^ Y4, Y3 ^ X8, X3 ^ Y7, Y4 ^ X7, S0 ^ X5 ^ Y6, S1 ^ Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X6 ^ Y9, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X6 ^ Y8, Y5 ^ X9, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y8, Y5 ^ X8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X8, X5 ^ Y7, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X7, X3 ^ Y7, S0 ^ X5 ^ Y6, S1 ^ Y5 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y5, X6, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, X6 ^ Y8, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y5 ^ X8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y3 ^ X8, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, S1 ^ X6 ^ Y6, Y3 ^ X6, X3 ^ Y6, S0 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8, Z0 ^ X5 ^ Y5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X6 ^ Y8, S0 ^ Y6 ^ X8, S1 ^ X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5 ^ Y8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3 ^ X8, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6, S1 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y6 ^ X9, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6 ^ Y8, S0 ^ Y6 ^ X8, S1 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y8, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3 ^ X8, S0 ^ X6 ^ Y6, S1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, S0 ^ Y6 ^ X8, S1 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S1 ^ X7 ^ Y7, Y3 ^ X7, S0 ^ Y5 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, S0 ^ X7 ^ Y7, Y3 ^ X5, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8, Z0 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8, Z0 ^ X5 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Y3 ^ X7, S0 ^ X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Y3 ^ X6, X3 ^ Y6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, Y6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ X7 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ X7 ^ Y7, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, Y3 ^ X6, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, S0 ^ X7, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X7, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ X8 ^ Y8, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S1 ^ X8 ^ Y8, S0 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, S0 ^ X8 ^ Y8, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X3 ^ X8 ^ Y8, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, S0 ^ X7, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S1 ^ Y7 ^ X8, Z3 ^ X6 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X7, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S1 ^ Y6 ^ X8, Z3 ^ X6 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y3 ^ X6, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X6, S0 ^ X7, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, S1 ^ Y7 ^ X8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X7, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, S1 ^ Y6 ^ X8 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X7, S1 ^ Y7, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, X6 ^ X9 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X7, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Z3 ^ X6 ^ Y6, S1 ^ X9 ^ Y9 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S0 ^ X9 ^ Y9 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3 ^ X9 ^ Y9 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ X9 ^ Y9 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X7, S1 ^ Y7, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Z4 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X7, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X7, S1 ^ Y7, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Z4 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X7, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + { 3, 23, 313, 256, 0, } , // 1 pipes (1 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 272, 292, 0, } , // 1 pipes (1 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 325, 292, 0, } , // 1 pipes (1 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 326, 329, 0, } , // 1 pipes (1 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 327, 294, 0, } , // 1 pipes (1 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 315, 259, 0, } , // 2 pipes (1-2 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 277, 295, 0, } , // 2 pipes (1-2 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 315, 330, 0, } , // 2 pipes (1-2 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 278, 331, 0, } , // 2 pipes (1-2 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 328, 331, 0, } , // 2 pipes (1-2 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 282, 263, 0, } , // 4 pipes (1-2 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 282, 299, 0, } , // 4 pipes (1-2 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 282, 332, 0, } , // 4 pipes (1-2 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 317, 333, 0, } , // 4 pipes (1-2 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 329, 334, 0, } , // 4 pipes (1-2 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 287, 210, 45, } , // 8 pipes (2 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 287, 335, 70, } , // 8 pipes (2 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 287, 336, 70, } , // 8 pipes (2 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 330, 337, 72, } , // 8 pipes (2 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 331, 338, 101, } , // 8 pipes (2 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 292, 269, 0, } , // 4 pipes (4 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 292, 307, 0, } , // 4 pipes (4 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 292, 339, 0, } , // 4 pipes (4 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 332, 340, 0, } , // 4 pipes (4 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 333, 341, 0, } , // 4 pipes (4 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 297, 210, 45, } , // 8 pipes (4 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 297, 310, 45, } , // 8 pipes (4 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 297, 342, 45, } , // 8 pipes (4 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 299, 343, 102, } , // 8 pipes (4 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 334, 344, 103, } , // 8 pipes (4 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 300, 273, 49, } , // 16 pipes (4 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 300, 273, 74, } , // 16 pipes (4 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 300, 345, 74, } , // 16 pipes (4 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 335, 346, 76, } , // 16 pipes (4 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 336, 286, 104, } , // 16 pipes (4 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 303, 276, 14, } , // 8 pipes (8 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 303, 313, 14, } , // 8 pipes (8 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 303, 347, 14, } , // 8 pipes (8 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 337, 348, 105, } , // 8 pipes (8 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 338, 349, 106, } , // 8 pipes (8 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 306, 280, 49, } , // 16 pipes (8 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 306, 215, 78, } , // 16 pipes (8 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 306, 350, 74, } , // 16 pipes (8 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 339, 351, 107, } , // 16 pipes (8 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 340, 351, 108, } , // 16 pipes (8 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 306, 237, 55, } , // 32 pipes (8 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 306, 237, 109, } , // 32 pipes (8 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 306, 237, 110, } , // 32 pipes (8 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 339, 352, 111, } , // 32 pipes (8 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 339, 353, 112, } , // 32 pipes (8 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 308, 285, 58, } , // 16 pipes (16 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 308, 318, 84, } , // 16 pipes (16 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 308, 354, 84, } , // 16 pipes (16 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 341, 355, 113, } , // 16 pipes (16 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 342, 356, 114, } , // 16 pipes (16 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 308, 237, 55, } , // 32 pipes (16 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 308, 237, 87, } , // 32 pipes (16 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 308, 237, 115, } , // 32 pipes (16 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 343, 357, 116, } , // 32 pipes (16 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 341, 358, 117, } , // 32 pipes (16 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 308, 242, 63, } , // 64 pipes (16 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 308, 242, 91, } , // 64 pipes (16 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 308, 242, 118, } , // 64 pipes (16 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 343, 359, 119, } , // 64 pipes (16 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 343, 360, 120, } , // 64 pipes (16 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 310, 247, 66, } , // 32 pipes (32 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 310, 247, 94, } , // 32 pipes (32 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 310, 361, 94, } , // 32 pipes (32 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 344, 362, 121, } , // 32 pipes (32 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 345, 363, 122, } , // 32 pipes (32 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 23, 310, 252, 63, } , // 64 pipes (32 PKRs) 1 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 24, 310, 252, 98, } , // 64 pipes (32 PKRs) 2 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 25, 310, 252, 118, } , // 64 pipes (32 PKRs) 4 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 26, 346, 364, 123, } , // 64 pipes (32 PKRs) 8 bpe @ SW_VAR_Z_X 8xaa @ RbPlus + { 3, 27, 344, 365, 124, } , // 64 pipes (32 PKRs) 16 bpe @ SW_VAR_Z_X 8xaa @ RbPlus }; -const UINT_64 SW_64K_R_X_8xaa_RBPLUS[][16]= +const UINT_64 GFX10_SW_PATTERN_NIBBLE01[][8] = { - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4, Y4, Y5 ^X10, X5 ^Y10, Y6 ^ X9, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, S0 ^ X5 ^ Y7, S1 ^ Y5 ^ X7, S2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y3 ^ X8, X3 ^ Y8, Y4 ^ X7, S0 ^ X4 ^ Y7, S1 ^ Y5 ^ X6, S2 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5 ^X10, Y6 ^ X9, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4, X5 ^ Y9, Y5 ^ X9, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Z0 ^ X4 ^ Y4, X3, Y3, Y4 ^ X9, Y5 ^ X8, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X9, Y4 ^ X8, S0 ^ X5 ^ Y7, S1 ^ Y5 ^ X7, S2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X4 ^ Y4, X2, Y2, X3 ^ Y7, Y3 ^ X7, S0 ^ X4 ^ Y6, S1 ^ Y4 ^ X6, S2 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5, Y5, Y6 ^ X9, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5, Y5 ^ X9, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, Y5 ^ X8, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X8, S0 ^ X5 ^ Y7, S1 ^ Y5 ^ X7, S2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, S2 ^ X4 ^ Y4, X2, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X4 ^ Y6, S1 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y5, Y6, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y3, Y5, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, S2 ^ X6 ^ Y6, X3, Y3, Y5 ^ X7, S0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, S2 ^ X6 ^ Y6, Y2, X3, Y3 ^ X7, S0 ^ X5 ^ Y6, S1 ^ Y5 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, S2 ^ X4 ^ Y4, S1 ^ X6 ^ Y6, X2, Y2, Y3 ^ X5, X3 ^ Y6, S0 ^ X4 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5, Y6, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8, Z0 ^ X5 ^ Y5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X7, S0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S2 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, S2 ^ X4 ^ Y4, X2, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6, S1 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, S2 ^ X5 ^ Y5, Y2, X3, Y3 ^ X7, S0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, S2 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, X2, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y6, S0 ^ X6, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, Y3, S0 ^ X6, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S2 ^ X7 ^ Y7, X3, Y3, S0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, S2 ^ X5 ^ Y5, S1 ^ X7 ^ Y7, Y2, X3, Y3 ^ X6, S0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, S2 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, S0 ^ X7 ^ Y7, X2, Y2, Y3 ^ X5, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y6, S0 ^ X6, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8, Z2 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, S0 ^ X6, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7, Z2 ^ X5 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X3, Y3, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7, S2 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, Y2, X3, Y3 ^ X7, S0 ^ X6 ^ Y6, S1 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, X2, Y2, Y3 ^ X6, X3 ^ Y6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, Y6, S0 ^ X6, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, Y3, S0 ^ X6, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S2 ^ X5 ^ Y6, X3, Y3, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, S1 ^ X5 ^ Y6, Y2, X3, Y3 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X2, Y2, Y3 ^ X6, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, S2 ^ X8 ^ Y8, Y6, S0 ^ X6, S1 ^ X7 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, S2 ^ X8 ^ Y8, Y3, S0 ^ X6, S1 ^ Y6 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S2 ^ X5 ^ Y6, S1 ^ X8 ^ Y8, X3, Y3, S0 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, S1 ^ X5 ^ Y6, S0 ^ X8 ^ Y8, Y2, X3, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X3 ^ X8 ^ Y8, X2, Y2, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, S0 ^ X6, S1 ^ Y7, S2 ^ X7 ^ Y8, Z2 ^ X6 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Y3, S0 ^ X6, S1 ^ X7 ^ Y7, S2 ^ X6 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S2 ^ X5 ^ Y7, X3, Y3, S0 ^ X6 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, Y2, X3, Y3 ^ X6, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, X2, X3, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Z2 ^ X6 ^ Y6, S0 ^ X6, S1 ^ Y7, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, S2 ^ X6 ^ Y6, Y3, S0 ^ X6, S1 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S2 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, X3, Y3, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y2, X3, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2, X3, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Z2 ^ X6 ^ Y6, S2 ^ X9 ^ Y9, S0 ^ X6, S1 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, S2 ^ X6 ^ Y6, S1 ^ X9 ^ Y9, Y3, S0 ^ X6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S2 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S0 ^ X9 ^ Y9, X3, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, Y2, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, X2, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Z2 ^ Y6 ^ X7, S0 ^ X7, S1 ^ Y7, S2 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, S2 ^ Y6 ^ X7, Y3, S0 ^ X7, S1 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S2 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, X3, Y3, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X8, S1 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, X3, Y3, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Z2 ^ Y6 ^ X7, S2 ^ X6 ^ Y7, S0 ^ X7, S1 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, S2 ^ Y6 ^ X7, S1 ^ X6 ^ Y7, Y3, S0 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S2 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X8, S1 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4, Y4, Y5 ^X10, X5 ^Y10, Y6 ^ X9, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, S0 ^ X5 ^ Y7, S1 ^ Y5 ^ X7, S2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y3 ^ X8, X3 ^ Y8, Y4 ^ X7, S0 ^ X4 ^ Y7, S1 ^ Y5 ^ X6, S2 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, Z0 ^ X4 ^ Y4, X5, Y5 ^X10, Y6 ^ X9, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5 ^ Y9, Y5 ^ X9, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4 ^ X9, Y5 ^ X8, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Z0 ^ X4 ^ Y4, X3, Y3 ^ X9, Y4 ^ X8, S0 ^ X5 ^ Y7, S1 ^ Y5 ^ X7, S2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z0 ^ X4 ^ Y4, Y2, X3 ^ Y7, Y3 ^ X7, S0 ^ X4 ^ Y6, S1 ^ Y4 ^ X6, S2 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5, Y6 ^ X9, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5, Y5 ^ X9, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, Y5 ^ X8, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3 ^ X8, S0 ^ X5 ^ Y7, S1 ^ Y5 ^ X7, S2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, S2 ^ X4 ^ Y4, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X4 ^ Y6, S1 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y6, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, Y5, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, S2 ^ X6 ^ Y6, Y3, Y5 ^ X7, S0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, S2 ^ X6 ^ Y6, X3, Y3 ^ X7, S0 ^ X5 ^ Y6, S1 ^ Y5 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, S2 ^ X4 ^ Y4, S1 ^ X6 ^ Y6, Y2, Y3 ^ X5, X3 ^ Y6, S0 ^ X4 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y6, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8, Z0 ^ X5 ^ Y5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, X3, Y3 ^ X7, S0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S2 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, S2 ^ X4 ^ Y4, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6, S1 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y6, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, S2 ^ X5 ^ Y5, X3, Y3 ^ X7, S0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, S2 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, Y2, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, S0 ^ X6, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, S0 ^ X6, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S2 ^ X7 ^ Y7, Y3, S0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, S2 ^ X5 ^ Y5, S1 ^ X7 ^ Y7, X3, Y3 ^ X6, S0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, S2 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, S0 ^ X7 ^ Y7, Y2, Y3 ^ X5, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S0 ^ X6, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8, Z2 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S0 ^ X6, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7, Z2 ^ X5 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7, S2 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, X3, Y3 ^ X7, S0 ^ X6 ^ Y6, S1 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Y2, Y3 ^ X6, X3 ^ Y6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, S0 ^ X6, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, S0 ^ X6, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S2 ^ X5 ^ Y6, Y3, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, S1 ^ X5 ^ Y6, X3, Y3 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, Y2, Y3 ^ X6, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, S2 ^ X8 ^ Y8, S0 ^ X6, S1 ^ X7 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, S2 ^ X8 ^ Y8, S0 ^ X6, S1 ^ Y6 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S2 ^ X5 ^ Y6, S1 ^ X8 ^ Y8, Y3, S0 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, S1 ^ X5 ^ Y6, S0 ^ X8 ^ Y8, X3, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X3 ^ X8 ^ Y8, Y2, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X6, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, S1 ^ Y7, S2 ^ X7 ^ Y8, Z2 ^ X6 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, S0 ^ X6, S1 ^ X7 ^ Y7, S2 ^ X6 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S2 ^ X5 ^ Y7, Y3, S0 ^ X6 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, X3, Y3 ^ X6, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, X3, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X6, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Z2 ^ X6 ^ Y6, S1 ^ Y7, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, S2 ^ X6 ^ Y6, S0 ^ X6, S1 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S2 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, Y3, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X6, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Z2 ^ X6 ^ Y6, S2 ^ X9 ^ Y9, S1 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, S2 ^ X6 ^ Y6, S1 ^ X9 ^ Y9, S0 ^ X6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S2 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S0 ^ X9 ^ Y9, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ X9 ^ Y9, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Z2 ^ Y6 ^ X7, S1 ^ Y7, S2 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, S2 ^ Y6 ^ X7, S0 ^ X7, S1 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S2 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, Y3, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X8, S1 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y3, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Z2 ^ Y6 ^ X7, S2 ^ X6 ^ Y7, S1 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, S2 ^ Y6 ^ X7, S1 ^ X6 ^ Y7, S0 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S2 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X8, S1 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X4, Y4, Y5 ^X10, X5 ^Y10, Y6 ^ X9, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, S0 ^ X5 ^ Y7, S1 ^ Y5 ^ X7, S2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y3 ^ X8, X3 ^ Y8, Y4 ^ X7, S0 ^ X4 ^ Y7, S1 ^ Y5 ^ X6, S2 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y4, X5, Z0 ^ X4 ^ Y4, Y5 ^X10, Y6 ^ X9, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y4, Z0 ^ X4 ^ Y4, X5 ^ Y9, Y5 ^ X9, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4 ^ X9, Y5 ^ X8, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Z0 ^ X4 ^ Y4, Y3 ^ X9, Y4 ^ X8, S0 ^ X5 ^ Y7, S1 ^ Y5 ^ X7, S2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X4 ^ Y4, X3 ^ Y7, Y3 ^ X7, S0 ^ X4 ^ Y6, S1 ^ Y4 ^ X6, S2 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y6 ^ X9, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5 ^ X9, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5 ^ X8, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X8, S0 ^ X5 ^ Y7, S1 ^ Y5 ^ X7, S2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, S2 ^ X4 ^ Y4, Y3 ^ X6, X3 ^ Y7, S0 ^ X4 ^ Y6, S1 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y5, Y6, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ X6 ^ Y6, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, S2 ^ X6 ^ Y6, Y5 ^ X7, S0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, S2 ^ X6 ^ Y6, Y3 ^ X7, S0 ^ X5 ^ Y6, S1 ^ Y5 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, S2 ^ X4 ^ Y4, S1 ^ X6 ^ Y6, Y3 ^ X5, X3 ^ Y6, S0 ^ X4 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8, Z0 ^ X5 ^ Y5 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y3 ^ X7, S0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S2 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, S2 ^ X4 ^ Y4, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6, S1 ^ X5 ^ Y5 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, X5, Y6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S0 ^ X6 ^ Y9, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S0 ^ X6 ^ Y8, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S0 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, S2 ^ X5 ^ Y5, Y3 ^ X7, S0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, S2 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, Y3 ^ X6, X3 ^ Y7, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, S0 ^ X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ X7 ^ Y7, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, S2 ^ X7 ^ Y7, S0 ^ X5 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, S2 ^ X5 ^ Y5, S1 ^ X7 ^ Y7, Y3 ^ X6, S0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, S2 ^ X4 ^ Y4, S1 ^ X5 ^ Y5, S0 ^ X7 ^ Y7, Y3 ^ X5, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, S0 ^ X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8, Z2 ^ X5 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7, Z2 ^ X5 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7, S2 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, Y3 ^ X7, S0 ^ X6 ^ Y6, S1 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, Y3 ^ X6, X3 ^ Y6, S0 ^ X5 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, S0 ^ X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, S1 ^ Y7 ^ X8, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, S1 ^ Y6 ^ X8, S2 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S2 ^ X5 ^ Y6, S0 ^ X6 ^ Y7, S1 ^ Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, S1 ^ X5 ^ Y6, Y3 ^ X7, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, Y3 ^ X6, X3 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, Y6, S0 ^ X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, S2 ^ X8 ^ Y8, S1 ^ X7 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, S2 ^ X8 ^ Y8, S1 ^ Y6 ^ X7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, S2 ^ X5 ^ Y6, S1 ^ X8 ^ Y8, S0 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X6, S1 ^ X5 ^ Y6, S0 ^ X8 ^ Y8, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X6, S0 ^ X5 ^ Y6, X3 ^ X8 ^ Y8, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X6, S1 ^ Y7, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, S2 ^ X7 ^ Y8, Z2 ^ X6 ^ Y6 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X6, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, S1 ^ X7 ^ Y7, S2 ^ X6 ^ Y6 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S2 ^ X5 ^ Y7, S0 ^ X6 ^ Y7, S1 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, Y3 ^ X6, S0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X6, S1 ^ Y7, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Z2 ^ X6 ^ Y6, S2 ^ X7 ^ Y8 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X6, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, S2 ^ X6 ^ Y6, S1 ^ X7 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S2 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, X3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, Y3 ^ X6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3 ^ X6 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X6, S1 ^ Y7, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Z2 ^ X6 ^ Y6, S2 ^ X9 ^ Y9 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X6, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, S2 ^ X6 ^ Y6, S1 ^ X9 ^ Y9 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, S2 ^ X5 ^ Y7, S1 ^ X6 ^ Y6, S0 ^ X9 ^ Y9 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, Y2, Y3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X7, S1 ^ X5 ^ Y7, S0 ^ X6 ^ Y6, X3 ^ X9 ^ Y9 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y3, Y4 ^ X8 ^ Y8, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X7, S0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ X9 ^ Y9 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X7, S1 ^ Y7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Z2 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, S2 ^ Y6 ^ X7, S1 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S2 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X8, S1 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {X0, X1, X2, X3, Y0, Y1, Y2, Y3, S0 ^ X7, S1 ^ Y7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Z2 ^ Y6 ^ X7, S2 ^ X6 ^ Y7 }, - {0, X0, X1, X2, Y0, Y1, Y2, X3, Y3, S0 ^ X7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, S2 ^ Y6 ^ X7, S1 ^ X6 ^ Y7 }, - {0, 0, X0, X1, Y0, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, S2 ^ X5 ^ Y8, S1 ^ Y6 ^ X7, S0 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, X2, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, S2 ^ Y5 ^ X8, S1 ^ X5 ^ Y8, S0 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, S2 ^ X4 ^ Y4, S1 ^ Y5 ^ X8, S0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + {X0, X1, X2, X3, Y0, Y1, Y2, Y3, }, // 0 + {0, X0, X1, X2, Y0, Y1, Y2, X3, }, // 1 + {0, 0, X0, X1, Y0, Y1, Y2, X2, }, // 2 + {0, 0, 0, X0, Y0, Y1, X1, X2, }, // 3 + {0, 0, 0, 0, Y0, Y1, X0, X1, }, // 4 + {X0, X1, X2, Y1, Y0, Y2, X3, Y3, }, // 5 + {0, 0, 0, X0, Y0, X1, X2, Y1, }, // 6 + {0, 0, 0, 0, X0, Y0, X1, Y1, }, // 7 + {X0, Y0, X1, Y1, X2, Y2, X3, Y3, }, // 8 + {0, X0, Y0, X1, Y1, X2, Y2, X3, }, // 9 + {0, 0, X0, Y0, X1, Y1, X2, Y2, }, // 10 + {0, 0, 0, X0, Y0, X1, Y1, X2, }, // 11 + {X0, Y0, X1, Y1, X2, Y2, X3, Y4, }, // 12 + {S0, X0, Y0, X1, Y1, X2, Y2, X3, }, // 13 + {0, S0, X0, Y0, X1, Y1, X2, Y2, }, // 14 + {0, 0, S0, X0, Y0, X1, Y1, X2, }, // 15 + {0, 0, 0, S0, X0, Y0, X1, Y1, }, // 16 + {0, 0, 0, 0, S0, X0, Y0, X1, }, // 17 + {S0, S1, X0, Y0, X1, Y1, X2, Y2, }, // 18 + {0, S0, S1, X0, Y0, X1, Y1, X2, }, // 19 + {0, 0, S0, S1, X0, Y0, X1, Y1, }, // 20 + {0, 0, 0, S0, S1, X0, Y0, X1, }, // 21 + {0, 0, 0, 0, S0, S1, X0, Y0, }, // 22 + {S0, S1, S2, X0, Y0, X1, Y1, X2, }, // 23 + {0, S0, S1, S2, X0, Y0, X1, Y1, }, // 24 + {0, 0, S0, S1, S2, X0, Y0, X1, }, // 25 + {0, 0, 0, S0, S1, S2, X0, Y0, }, // 26 + {0, 0, 0, 0, S0, S1, S2, X0, }, // 27 + {X0, X1, X2, Y1, Y0, Y2, X3, Y4, }, // 28 + {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, }, // 29 + {0, X0, Z0, Y0, Z1, Y1, X1, Z2, }, // 30 + {0, 0, X0, Y0, Z0, Y1, X1, Z1, }, // 31 + {0, 0, 0, X0, Z0, Y0, X1, Z1, }, // 32 + {0, 0, 0, 0, Z0, Y0, X0, Z1, }, // 33 + {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, }, // 34 + {0, X0, Z0, Y0, X1, Z1, Y1, Z2, }, // 35 + {0, 0, X0, Y0, X1, Z0, Y1, Z1, }, // 36 + {0, 0, 0, X0, Y0, Z0, X1, Z1, }, // 37 + {0, 0, 0, 0, X0, Z0, Y0, Z1, }, // 38 + {0, 0, X0, X1, Y0, Y1, X2, Y2, }, // 39 }; -const UINT_64 SW_64K_Z_X_1xaa_RBPLUS[][16]= +const UINT_64 GFX10_SW_PATTERN_NIBBLE2[][4] = { - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4, X5 ^Y10, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y8, Y3 ^ X8, X4 ^ Y7, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4, X5 ^ Y9, X6 ^ Y8, Y5 ^ X9, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X4 ^ Y4, X3, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X9, X5 ^ Y7, Y4 ^ X8, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X8, X3 ^ Y7, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5, Y5, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5, X6 ^ Y8, Y5 ^ X9, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X8, X5 ^ Y7, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X7, X3 ^ Y7, X5 ^ Y6, Y5 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y5, X6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3, Y5, X6 ^ Y8, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X3, Y3, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y2, X3, Y3 ^ X8, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X2, Y2, Y3 ^ X7, X3 ^ Y6, Y5 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5, X6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8, Z0 ^ X5 ^ Y5 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y2, X3, Y3 ^ X7, X5 ^ Y7, X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X2, Y2, X3 ^ Y7, Y3 ^ X6, X5 ^ Y6, Z0 ^ X5 ^ Y5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, X6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3, Y3 ^ X7, X5 ^ Y7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2, Y2, X3 ^ Y7, Y3 ^ X6, X5 ^ Y6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X6, Y6, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y3, X6, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X3, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y2, X3, Y3 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X2, Y2, X3 ^ Y6, Y3 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X6, Y6, X7 ^ Y8, Y7 ^ X8, X5 ^ Y6 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, X6, X7 ^ Y7, Y6 ^ X8, X5 ^ Y6 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X3, Y3, X6 ^ Y7, Y6 ^ X7, X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y2, X3, Y3 ^ X7, X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X2, Y2, Y3 ^ X6, X3 ^ Y6, Z0 ^ X5 ^ Y6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6, Y6, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y3, X6, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X3, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2, X3, Y3 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X2, Y2, Y3 ^ X6, X3 ^ Y6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y6, X7, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y3, Y6, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X3, Y3, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, Y2, X3, Y3 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3 ^ Y6, X2, Y2, Y3 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6, X7, Y7 ^ X8, X6 ^ Y6 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y3, X6, X7 ^ Y7, X6 ^ Y6 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X3, Y3, X6 ^ Y7, X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Y2, X3, Y3 ^ X7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X2, X3, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, X7, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y3, X6, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X3, Y3, X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y2, X3, Y3 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2, X3, Y3 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X7, Y7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, Y3, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X3, Y3 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3 ^ Y8, Y2, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ Y8, X2, Y3 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X7, Y7, X6 ^ Y7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y3, X7, X6 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X3, Y3, X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X7, Y7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y3, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X3, Y3 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4, X5 ^Y10, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y8, Y3 ^ X8, X4 ^ Y7, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4, Z0 ^ X4 ^ Y4, X5, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, X5 ^ Y9, X6 ^ Y8, Y5 ^ X9, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X4 ^ Y4, X3, Y3 ^ X9, X5 ^ Y7, Y4 ^ X8, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X8, X3 ^ Y7, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5, X6 ^ Y8, Y5 ^ X9, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3 ^ X8, X5 ^ Y7, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X7, X3 ^ Y7, X5 ^ Y6, Y5 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y5, X6 ^ Y8, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X3, Y3 ^ X8, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y2, Y3 ^ X7, X3 ^ Y6, Y5 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8, Z0 ^ X5 ^ Y5 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3 ^ X7, X5 ^ Y7, X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y2, X3 ^ Y7, Y3 ^ X6, X5 ^ Y6, Z0 ^ X5 ^ Y5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3 ^ X7, X5 ^ Y7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3 ^ Y7, Y3 ^ X6, X5 ^ Y6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y6, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X6, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X3, Y3 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y2, X3 ^ Y6, Y3 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y6, X7 ^ Y8, Y7 ^ X8, X5 ^ Y6 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X6, X7 ^ Y7, Y6 ^ X8, X5 ^ Y6 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, X6 ^ Y7, Y6 ^ X7, X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X3, Y3 ^ X7, X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y2, Y3 ^ X6, X3 ^ Y6, Z0 ^ X5 ^ Y6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y6, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y3 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2, Y3 ^ X6, X3 ^ Y6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X7, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y6, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y3, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, X3, Y3 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3 ^ Y6, Y2, Y3 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X7, Y7 ^ X8, X6 ^ Y6 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6, X7 ^ Y7, X6 ^ Y6 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y3, X6 ^ Y7, X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, X3, Y3 ^ X7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X3, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X7, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y3, X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3, Y3 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X7, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, Y7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, Y3 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3 ^ Y8, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ Y8, Y3 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y7, X6 ^ Y7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X7, X6 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y3, X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y3 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4, X5 ^Y10, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4 ^X10, X5 ^ Y9, Y5 ^ X9, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3 ^ Y8, Y3 ^ X8, X4 ^ Y7, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4, X5, Z0 ^ X4 ^ Y4, Y5 ^X10, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4, Z0 ^ X4 ^ Y4, X5 ^ Y9, X6 ^ Y8, Y5 ^ X9, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Z0 ^ X4 ^ Y4, Y3 ^ X9, X5 ^ Y7, Y4 ^ X8, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X4 ^ Y4, Y3 ^ X8, X3 ^ Y7, Y4 ^ X7, X5 ^ Y6, Y5 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X6 ^ Y9, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X6 ^ Y8, Y5 ^ X9, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X8, X5 ^ Y7, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X7, X3 ^ Y7, X5 ^ Y6, Y5 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y5, X6, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X6 ^ Y8, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3 ^ X8, X6 ^ Y6, Y5 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3 ^ X7, X3 ^ Y6, Y5 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8, Z0 ^ X5 ^ Y5 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3 ^ X7, X5 ^ Y7, X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3 ^ Y7, Y3 ^ X6, X5 ^ Y6, Z0 ^ X5 ^ Y5 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y6 ^ X9, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X6 ^ Y8, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3 ^ X7, X5 ^ Y7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3 ^ Y7, Y3 ^ X6, X5 ^ Y6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y6 ^ X8, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y3 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X3 ^ Y6, Y3 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X7 ^ Y8, Y7 ^ X8, X5 ^ Y6 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X7 ^ Y7, Y6 ^ X8, X5 ^ Y6 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X6 ^ Y7, Y6 ^ X7, X5 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y3 ^ X7, X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y3 ^ X6, X3 ^ Y6, Z0 ^ X5 ^ Y6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X7 ^ Y8, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X7 ^ Y7, Y6 ^ X8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3 ^ X7, X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3 ^ X6, X3 ^ Y6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y6, X7, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y6 ^ X7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, Y3 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3 ^ Y6, Y3 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, X7, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y7 ^ X8, X6 ^ Y6 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X7 ^ Y7, X6 ^ Y6 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y7, X6 ^ Y6 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Y3 ^ X7, Z0 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y3 ^ X6, Y2 ^ X6 ^ Y6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, X7, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y7 ^ X8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X7 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, Y3 ^ X7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3 ^ X6 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X7, Y7, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X7, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, Y2, Y3, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3 ^ Y8 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X2, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ Y8 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X7, Y7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {X0, Y0, X1, Y1, X2, Y2, X3, Y3, X7, Y7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {0, 0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {0, 0, 0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + {0, 0, 0, 0, }, // 0 + {Y4, X4, Y5, X5, }, // 1 + {Y3, X4, Y4, X5, }, // 2 + {Y3, X3, Y4, X4, }, // 3 + {Y2, X3, Y3, X4, }, // 4 + {Y2, X2, Y3, X3, }, // 5 + {Z0^X4^Y4, X4, Y5, X5, }, // 6 + {Z0^Y3^X4, X4, Y4, X5, }, // 7 + {Z0^X3^Y3, X3, Y4, X4, }, // 8 + {Z0^Y2^X3, X3, Y3, X4, }, // 9 + {Z0^X2^Y2, X2, Y3, X3, }, // 10 + {Z1^Y4^X5, Z0^X4^Y5, Y5, X5, }, // 11 + {Z1^Y3^X5, Z0^X4^Y4, Y4, X5, }, // 12 + {Z1^Y3^X4, Z0^X3^Y4, Y4, X4, }, // 13 + {Z1^Y2^X4, Z0^X3^Y3, Y3, X4, }, // 14 + {Z1^Y2^X3, Z0^X2^Y3, Y3, X3, }, // 15 + {Z2^Y4^X6, Z1^X4^Y6, Z0^X5^Y5, X5, }, // 16 + {Z2^Y3^X6, Z1^X4^Y5, Z0^Y4^X5, X5, }, // 17 + {Z2^Y3^X5, Z1^X3^Y5, Z0^X4^Y4, X4, }, // 18 + {Y2^Z2^X5, Z1^X3^Y4, Z0^Y3^X4, X4, }, // 19 + {Y2^Z2^X4, Z1^X2^Y4, Z0^X3^Y3, X3, }, // 20 + {Z3^Y4^X7, Z2^X4^Y7, Z1^Y5^X6, Z0^X5^Y6, }, // 21 + {Y3^Z3^X7, Z2^X4^Y6, Z1^Y4^X6, Z0^X5^Y5, }, // 22 + {Y3^Z3^X6, Z2^X3^Y6, Z1^Y4^X5, Z0^X4^Y5, }, // 23 + {Y2^Z3^X6, Z2^X3^Y5, Z1^Y3^X5, Z0^X4^Y4, }, // 24 + {Y2^Z3^X5, X2^Z2^Y5, Z1^Y3^X4, Z0^X3^Y4, }, // 25 + {Y4^Z4^X8, Z3^X4^Y8, Z2^Y5^X7, Z1^X5^Y7, }, // 26 + {Y3^Z4^X8, Z3^X4^Y7, Z2^Y4^X7, Z1^X5^Y6, }, // 27 + {Y3^Z4^X7, X3^Z3^Y7, Z2^Y4^X6, Z1^X4^Y6, }, // 28 + {Y2^Z4^X7, X3^Z3^Y6, Z2^Y3^X6, Z1^X4^Y5, }, // 29 + {Y2^Z4^X6, X2^Z3^Y6, Z2^Y3^X5, Z1^X3^Y5, }, // 30 + {Y4^Z5^X9, X4^Z4^Y9, Z3^Y5^X8, Z2^X5^Y8, }, // 31 + {Y3^Z5^X9, X4^Z4^Y8, Z3^Y4^X8, Z2^X5^Y7, }, // 32 + {Y3^Z5^X8, X3^Z4^Y8, Z3^Y4^X7, Z2^X4^Y7, }, // 33 + {Y2^Z5^X8, X3^Z4^Y7, Y3^Z3^X7, Z2^X4^Y6, }, // 34 + {Y2^Z5^X7, X2^Z4^Y7, Y3^Z3^X6, Z2^X3^Y6, }, // 35 + {X4^Y4, X4, Y5, X5, }, // 36 + {Y3^X4, X4, Y4, X5, }, // 37 + {X3^Y3, X3, Y4, X4, }, // 38 + {Y2^X3, X3, Y3, X4, }, // 39 + {X2^Y2, X2, Y3, X3, }, // 40 + {Y4^X5, X4^Y5, Y5, X5, }, // 41 + {Y3^X5, X4^Y4, Y4, X5, }, // 42 + {Y3^X4, X3^Y4, Y4, X4, }, // 43 + {Y2^X4, X3^Y3, Y3, X4, }, // 44 + {Y2^X3, X2^Y3, Y3, X3, }, // 45 + {Y4^X6, X4^Y6, X5^Y5, X5, }, // 46 + {Y3^X6, X4^Y5, Y4^X5, X5, }, // 47 + {Y3^X5, X3^Y5, X4^Y4, X4, }, // 48 + {Y2^X5, X3^Y4, Y3^X4, X4, }, // 49 + {Y2^X4, X2^Y4, X3^Y3, X3, }, // 50 + {Y4^X7, X4^Y7, Y5^X6, X5^Y6, }, // 51 + {Y3^X7, X4^Y6, Y4^X6, X5^Y5, }, // 52 + {Y3^X6, X3^Y6, Y4^X5, X4^Y5, }, // 53 + {Y2^X6, X3^Y5, Y3^X5, X4^Y4, }, // 54 + {Y2^X5, X2^Y5, Y3^X4, X3^Y4, }, // 55 + {Y4, X4, Y5^X7, X5^Y7, }, // 56 + {Y3, X4, Y4^X7, X5^Y6, }, // 57 + {Y3, X3, Y4^X6, X4^Y6, }, // 58 + {Y2, X3, Y3^X6, X4^Y5, }, // 59 + {Y2, X2, Y3^X5, X3^Y5, }, // 60 + {Z0^X3^Y3, X4, Y5, X5, }, // 61 + {Z0^X3^Y3, X4, Y4, X5, }, // 62 + {Z0^X3^Y3, X3, Y2, X4, }, // 63 + {Z0^X3^Y3, X2, Y2, X3, }, // 64 + {Z1^X3^Y3, Z0^X4^Y4, Y5, X5, }, // 65 + {Z1^X3^Y3, Z0^X4^Y4, Y4, X5, }, // 66 + {Z1^X3^Y3, Z0^X4^Y4, Y3, X4, }, // 67 + {Z1^X3^Y3, Z0^X4^Y4, Y2, X3, }, // 68 + {Z1^X3^Y3, Z0^X4^Y4, Y2, X2, }, // 69 + {Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, X5, }, // 70 + {Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, X4, }, // 71 + {Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, X3, }, // 72 + {Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, X2, }, // 73 + {X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, }, // 74 + {X3^Y3^Z4, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, }, // 75 + {X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X7, Z0^X5^Y7, }, // 76 + {X3^Y3^Z5, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, }, // 77 + {X3^Y3^Z4, Z3^X4^Y4, Z2^Y5^X8, Z1^X5^Y8, }, // 78 + {X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X8, Z0^X5^Y8, }, // 79 + {Y3, Y4, X4, Y5, }, // 80 + {X2, Y3, X3, Y4, }, // 81 + {Z0^X3^Y3, Y4, X4, Y5, }, // 82 + {Z0^X3^Y3, X2, X3, Y4, }, // 83 + {Z1^X3^Y3, Z0^X4^Y4, Y4, Y5, }, // 84 + {Z1^X3^Y3, Z0^X4^Y4, X2, Y3, }, // 85 + {Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, Y4, }, // 86 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X6, Y2^X5^Y6, }, // 87 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X7, Y2^X5^Y7, }, // 88 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X8, Y2^X5^Y8, }, // 89 + {X3, Y3, X4, Y4, }, // 90 + {Z0^X3^Y3, X3, X4, Y4, }, // 91 + {Z1^X3^Y3, Z0^X4^Y4, X3, Y4, }, // 92 + {Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, Y2, }, // 93 + {Z1^X3^Y3, Z0^X4^Y4, Y2^X5^Y5, X2, }, // 94 + {Z2^X3^Y3, Z1^X4^Y4, Y2^Y5^X6, Z0^X5^Y6, }, // 95 + {Z1^X3^Y3, Z0^X4^Y4, Y2^Y5^X6, X1^X5^Y6, }, // 96 + {Z2^X3^Y3, Z1^X4^Y4, Y2^Y5^X7, Z0^X5^Y7, }, // 97 + {Z1^X3^Y3, Z0^X4^Y4, Y2^Y5^X7, X1^X5^Y7, }, // 98 + {Z2^X3^Y3, Z1^X4^Y4, Y2^Y5^X8, Z0^X5^Y8, }, // 99 + {Z1^X3^Y3, Z0^X4^Y4, Y2^Y5^X8, X1^X5^Y8, }, // 100 + {Z0^X3^Y3, Y2, X3, Y4, }, // 101 + {Z1^X3^Y3, Z0^X4^Y4, X2, Y2, }, // 102 + {Z1^X3^Y3, Z0^X4^Y4, Y2^X5^Y5, Y3, }, // 103 + {Z1^X3^Y3, Z0^X4^Y4, Y0^X5^Y5, Y2, }, // 104 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X6, Z3^X5^Y6, }, // 105 + {Z1^X3^Y3, Z0^X4^Y4, Y0^Y5^X6, X1^X5^Y6, }, // 106 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X7, Z4^X5^Y7, }, // 107 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X7, Z3^X5^Y7, }, // 108 + {Z1^X3^Y3, Z0^X4^Y4, Y0^Y5^X7, X1^X5^Y7, }, // 109 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X8, Z4^X5^Y8, }, // 110 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X8, Z3^X5^Y8, }, // 111 + {Z1^X3^Y3, Z0^X4^Y4, Y0^Y5^X8, X1^X5^Y8, }, // 112 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X6, S0^X5^Y6, }, // 113 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X7, S0^X5^Y7, }, // 114 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X8, S0^X5^Y8, }, // 115 + {Z1^X3^Y3, Z0^X4^Y4, S1^X5^Y5, X2, }, // 116 + {Z2^X3^Y3, Z1^X4^Y4, S1^Y5^X6, Z0^X5^Y6, }, // 117 + {Z1^X3^Y3, Z0^X4^Y4, S1^Y5^X6, S0^X5^Y6, }, // 118 + {Z2^X3^Y3, Z1^X4^Y4, S1^Y5^X7, Z0^X5^Y7, }, // 119 + {Z1^X3^Y3, Z0^X4^Y4, S1^Y5^X7, S0^X5^Y7, }, // 120 + {Z2^X3^Y3, Z1^X4^Y4, S1^Y5^X8, Z0^X5^Y8, }, // 121 + {Z1^X3^Y3, Z0^X4^Y4, S1^Y5^X8, S0^X5^Y8, }, // 122 + {Z1^X3^Y3, Z0^X4^Y4, S2^X5^Y5, Y2, }, // 123 + {Z1^X3^Y3, Z0^X4^Y4, S2^X5^Y5, X2, }, // 124 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X6, S2^X5^Y6, }, // 125 + {Z1^X3^Y3, Z0^X4^Y4, S2^Y5^X6, S1^X5^Y6, }, // 126 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X7, S2^X5^Y7, }, // 127 + {Z1^X3^Y3, Z0^X4^Y4, S2^Y5^X7, S1^X5^Y7, }, // 128 + {Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X8, S2^X5^Y8, }, // 129 + {Z1^X3^Y3, Z0^X4^Y4, S2^Y5^X8, S1^X5^Y8, }, // 130 + {Y2, X3, Z3, Y3, }, // 131 + {Y2, X2, Z3, Y3, }, // 132 + {Y2, X2, Z2, Y3, }, // 133 + {Y1, X2, Z2, Y2, }, // 134 + {Y1, X1, Z2, Y2, }, // 135 + {Y2^X3^Z3, X3, Z3, Y3, }, // 136 + {X2^Y2^Z3, X2, Z3, Y3, }, // 137 + {X2^Y2^Z2, X2, Z2, Y3, }, // 138 + {Y1^X2^Z2, X2, Z2, Y2, }, // 139 + {X1^Y1^Z2, X1, Z2, Y2, }, // 140 + {Y2^X4^Z4, X3^Y3^Z3, Z3, Y3, }, // 141 + {Y2^X3^Z4, X2^Y3^Z3, Z3, Y3, }, // 142 + {Y2^X3^Z3, X2^Z2^Y3, Z2, Y3, }, // 143 + {Y1^X3^Z3, X2^Y2^Z2, Z2, Y2, }, // 144 + {Y1^X2^Z3, X1^Y2^Z2, Z2, Y2, }, // 145 + {Y2^X5^Z5, X3^Y4^Z4, Y3^Z3^X4, Y3, }, // 146 + {Y2^X4^Z5, X2^Y4^Z4, X3^Y3^Z3, Y3, }, // 147 + {Y2^X4^Z4, X2^Z3^Y4, Z2^X3^Y3, Y3, }, // 148 + {Y1^X4^Z4, X2^Y3^Z3, Y2^Z2^X3, Y2, }, // 149 + {Y1^X3^Z4, X1^Y3^Z3, X2^Y2^Z2, Y2, }, // 150 + {Y2^X6^Z6, X3^Y5^Z5, Z3^Y4^X5, Y3^X4^Z4, }, // 151 + {Y2^X5^Z6, X2^Y5^Z5, Z3^X4^Y4, X3^Y3^Z4, }, // 152 + {Y2^X5^Z5, X2^Z4^Y5, Z2^X4^Y4, X3^Y3^Z3, }, // 153 + {Y1^X5^Z5, X2^Y4^Z4, Z2^Y3^X4, Y2^X3^Z3, }, // 154 + {Y1^X4^Z5, X1^Y4^Z4, Z2^X3^Y3, X2^Y2^Z3, }, // 155 + {Y2^X7^Z7, X3^Y6^Z6, Z3^Y5^X6, Y3^X5^Z5, }, // 156 + {Y2^X6^Z7, X2^Y6^Z6, Z3^X5^Y5, Y3^X4^Z5, }, // 157 + {Y2^X6^Z6, X2^Z5^Y6, Z2^X5^Y5, Y3^X4^Z4, }, // 158 + {Y1^X6^Z6, X2^Y5^Z5, Z2^Y4^X5, Y2^X4^Z4, }, // 159 + {Y1^X5^Z6, X1^Y5^Z5, Z2^X4^Y4, Y2^X3^Z4, }, // 160 + {Y2^X8^Z8, X3^Y7^Z7, Z3^Y6^X7, Y3^X6^Z6, }, // 161 + {Y2^X7^Z8, X2^Y7^Z7, Z3^X6^Y6, Y3^X5^Z6, }, // 162 + {Y2^X7^Z7, X2^Z6^Y7, Z2^X6^Y6, Y3^X5^Z5, }, // 163 + {Y1^X7^Z7, X2^Y6^Z6, Z2^Y5^X6, Y2^X5^Z5, }, // 164 + {Y1^X6^Z7, X1^Y6^Z6, Z2^X5^Y5, Y2^X4^Z5, }, // 165 + {Y2^X5, X3^Y4^Z4, Y3^Z3^X4, Y3, }, // 166 + {Y2^X4, X2^Y4^Z4, X3^Y3^Z3, Y3, }, // 167 + {Y2^X4, X2^Z3^Y4, Z2^X3^Y3, Y3, }, // 168 + {Y1^X4, X2^Y3^Z3, Y2^Z2^X3, Y2, }, // 169 + {Y1^X3, X1^Y3^Z3, X2^Y2^Z2, Y2, }, // 170 + {Y2, X3, Z3^Y4^X5, Y3^X4^Z4, }, // 171 + {Y2, X2, Z3^X4^Y4, X3^Y3^Z4, }, // 172 + {Y2, X2, Z2^X4^Y4, X3^Y3^Z3, }, // 173 + {Y1, X2, Z2^Y3^X4, Y2^X3^Z3, }, // 174 + {Y1, X1, Z2^X3^Y3, X2^Y2^Z3, }, // 175 + {Y2, X3, Z3, Y3^X5, }, // 176 + {Y2, X2, Z3, Y3^X4, }, // 177 + {Y2, X2, Z2, Y3^X4, }, // 178 + {Y1, X2, Z2, Y2^X4, }, // 179 + {Y1, X1, Z2, Y2^X3, }, // 180 + {X3^Y3, X3, Z3, Y2, }, // 181 + {X3^Y3, X2, Z3, Y2, }, // 182 + {X3^Y3, X2, Z2, Y2, }, // 183 + {X3^Y3, X2, Z2, Y1, }, // 184 + {X3^Y3, X1, Z2, Y1, }, // 185 + {X3^Y3, X4^Y4, Z3, Y2, }, // 186 + {X3^Y3, X4^Y4, Z2, Y2, }, // 187 + {X3^Y3, X4^Y4, Z2, Y1, }, // 188 + {X3^Y3, X1^X4^Y4, Z2, Y1, }, // 189 + {X3^Y3, X4^Y4, X5^Y5, Z3, }, // 190 + {X3^Y3, X4^Y4, Z3^X5^Y5, Y2, }, // 191 + {X3^Y3, X4^Y4, Z2^X5^Y5, Y2, }, // 192 + {X3^Y3, X4^Y4, Z2^X5^Y5, Y1, }, // 193 + {X3^Y3, X1^X4^Y4, Z2^X5^Y5, Y1, }, // 194 + {X3^Y3, X4^Y4, Y2^Y5^X6, X5^Y6, }, // 195 + {X3^Y3, X4^Y4, Z3^Y5^X6, Y2^X5^Y6, }, // 196 + {X3^Y3, X4^Y4, Z2^Y5^X6, Y2^X5^Y6, }, // 197 + {X3^Y3, X4^Y4, Z2^Y5^X6, Y1^X5^Y6, }, // 198 + {X3^Y3, X1^X4^Y4, Z2^Y5^X6, Y1^X5^Y6, }, // 199 + {X3^Y3, X4^Y4, Y2^Y5^X7, X5^Y7, }, // 200 + {X3^Y3, X4^Y4, Z3^Y5^X7, Y2^X5^Y7, }, // 201 + {X3^Y3, X4^Y4, Z2^Y5^X7, Y2^X5^Y7, }, // 202 + {X3^Y3, X4^Y4, Z2^Y5^X7, Y1^X5^Y7, }, // 203 + {X3^Y3, X1^X4^Y4, Z2^Y5^X7, Y1^X5^Y7, }, // 204 + {X3^Y3, X4^Y4, Y2^Y5^X8, X5^Y8, }, // 205 + {X3^Y3, X4^Y4, Z3^Y5^X8, Y2^X5^Y8, }, // 206 + {X3^Y3, X4^Y4, Z2^Y5^X8, Y2^X5^Y8, }, // 207 + {X3^Y3, X4^Y4, Z2^Y5^X8, Y1^X5^Y8, }, // 208 + {X3^Y3, X1^X4^Y4, Z2^Y5^X8, Y1^X5^Y8, }, // 209 + {Y4^X5, Z0^X4^Y5, Y5, X5, }, // 210 + {Y3^X5, Z0^X4^Y4, Y4, X5, }, // 211 + {Y3^X4, Z0^X3^Y4, Y4, X4, }, // 212 + {Y2^X4, Z0^X3^Y3, Y3, X4, }, // 213 + {Y2^X3, Z0^X2^Y3, Y3, X3, }, // 214 + {Y4^X6, X4^Y6, Z0^X5^Y5, X5, }, // 215 + {Y3^X6, X4^Y5, Z0^Y4^X5, X5, }, // 216 + {Y3^X5, X3^Y5, Z0^X4^Y4, X4, }, // 217 + {Y2^X5, X3^Y4, Z0^Y3^X4, X4, }, // 218 + {Y2^X4, X2^Y4, Z0^X3^Y3, X3, }, // 219 + {Y4^X6, Z1^X4^Y6, Z0^X5^Y5, X5, }, // 220 + {Y3^X6, Z1^X4^Y5, Z0^Y4^X5, X5, }, // 221 + {Y3^X5, Z1^X3^Y5, Z0^X4^Y4, X4, }, // 222 + {Y2^X5, Z1^X3^Y4, Z0^Y3^X4, X4, }, // 223 + {Y2^X4, Z1^X2^Y4, Z0^X3^Y3, X3, }, // 224 + {Y4^X7, X4^Y7, Z1^Y5^X6, Z0^X5^Y6, }, // 225 + {Y3^X7, X4^Y6, Z1^Y4^X6, Z0^X5^Y5, }, // 226 + {Y3^X6, X3^Y6, Z1^Y4^X5, Z0^X4^Y5, }, // 227 + {Y2^X6, X3^Y5, Z1^Y3^X5, Z0^X4^Y4, }, // 228 + {Y2^X5, X2^Y5, Z1^Y3^X4, Z0^X3^Y4, }, // 229 + {Y4^X7, Z2^X4^Y7, Z1^Y5^X6, Z0^X5^Y6, }, // 230 + {Y3^X7, Z2^X4^Y6, Z1^Y4^X6, Z0^X5^Y5, }, // 231 + {Y3^X6, Z2^X3^Y6, Z1^Y4^X5, Z0^X4^Y5, }, // 232 + {Y2^X6, Z2^X3^Y5, Z1^Y3^X5, Z0^X4^Y4, }, // 233 + {Y2^X5, X2^Z2^Y5, Z1^Y3^X4, Z0^X3^Y4, }, // 234 + {Y4^X7, X4^Y7, Z2^Y5^X6, Z1^X5^Y6, }, // 235 + {Y3^X7, X4^Y6, Z2^Y4^X6, Z1^X5^Y5, }, // 236 + {Y3^X6, X3^Y6, Z2^Y4^X5, Z1^X4^Y5, }, // 237 + {Y2^X6, X3^Y5, Z2^Y3^X5, Z1^X4^Y4, }, // 238 + {Y2^X5, X2^Y5, Z2^Y3^X4, Z1^X3^Y4, }, // 239 + {Y4^X7, Z3^X4^Y7, Z2^Y5^X6, Z1^X5^Y6, }, // 240 + {Y3^X7, Z3^X4^Y6, Z2^Y4^X6, Z1^X5^Y5, }, // 241 + {Y3^X6, X3^Z3^Y6, Z2^Y4^X5, Z1^X4^Y5, }, // 242 + {Y2^X6, X3^Z3^Y5, Z2^Y3^X5, Z1^X4^Y4, }, // 243 + {Y2^X5, X2^Z3^Y5, Z2^Y3^X4, Z1^X3^Y4, }, // 244 + {Y4^X7, X4^Y7, Z3^Y5^X6, Z2^X5^Y6, }, // 245 + {Y3^X7, X4^Y6, Z3^Y4^X6, Z2^X5^Y5, }, // 246 + {Y3^X6, X3^Y6, Z3^Y4^X5, Z2^X4^Y5, }, // 247 + {Y2^X6, X3^Y5, Y3^Z3^X5, Z2^X4^Y4, }, // 248 + {Y2^X5, X2^Y5, Y3^Z3^X4, Z2^X3^Y4, }, // 249 + {Y4^X8, X4^Y8, Z2^Y5^X7, Z1^X5^Y7, }, // 250 + {Y3^X8, X4^Y7, Z2^Y4^X7, Z1^X5^Y6, }, // 251 + {Y3^X7, X3^Y7, Z2^Y4^X6, Z1^X4^Y6, }, // 252 + {Y2^X7, X3^Y6, Z2^Y3^X6, Z1^X4^Y5, }, // 253 + {Y2^X6, X2^Y6, Z2^Y3^X5, Z1^X3^Y5, }, // 254 + {Y4^X8, Z3^X4^Y8, Z2^Y5^X7, Z1^X5^Y7, }, // 255 + {Y3^X8, Z3^X4^Y7, Z2^Y4^X7, Z1^X5^Y6, }, // 256 + {Y3^X7, X3^Z3^Y7, Z2^Y4^X6, Z1^X4^Y6, }, // 257 + {Y2^X7, X3^Z3^Y6, Z2^Y3^X6, Z1^X4^Y5, }, // 258 + {Y2^X6, X2^Z3^Y6, Z2^Y3^X5, Z1^X3^Y5, }, // 259 + {Y4^X9, X4^Y9, Z3^Y5^X8, Z2^X5^Y8, }, // 260 + {Y3^X9, X4^Y8, Z3^Y4^X8, Z2^X5^Y7, }, // 261 + {Y3^X8, X3^Y8, Z3^Y4^X7, Z2^X4^Y7, }, // 262 + {Y2^X8, X3^Y7, Y3^Z3^X7, Z2^X4^Y6, }, // 263 + {Y2^X7, X2^Y7, Y3^Z3^X6, Z2^X3^Y6, }, // 264 + {Y4^X9, X4^Z4^Y9, Z3^Y5^X8, Z2^X5^Y8, }, // 265 + {Y3^X9, X4^Z4^Y8, Z3^Y4^X8, Z2^X5^Y7, }, // 266 + {Y3^X8, X3^Z4^Y8, Z3^Y4^X7, Z2^X4^Y7, }, // 267 + {Y2^X8, X3^Z4^Y7, Y3^Z3^X7, Z2^X4^Y6, }, // 268 + {Y2^X7, X2^Z4^Y7, Y3^Z3^X6, Z2^X3^Y6, }, // 269 + {X4, Y4, X5^Y8, Y5^X8, }, // 270 + {Y3, X4, Y4^X8, X5^Y7, }, // 271 + {X3, Y3, X4^Y7, Y4^X7, }, // 272 + {Y2, X3, Y3^X7, X4^Y6, }, // 273 + {X2, Y2, X3^Y6, Y3^X6, }, // 274 + {Z0^X4^Y4, Y4, X5, X6^Y8, }, // 275 + {Z0^X4^Y4, Y3, Y4, X5^Y8, }, // 276 + {Z0^X4^Y4, X3, Y3, X5^Y7, }, // 277 + {Z0^X4^Y4, Y2, X3, Y3^X8, }, // 278 + {Z0^X4^Y4, X2, Y2, X3^Y6, }, // 279 + {Y4^X5^Y5, Z0^X4^Y4, X5, Y5, }, // 280 + {Y4^X5^Y5, Z0^X4^Y4, Y3, X5, }, // 281 + {Y4^X5^Y5, Z0^X4^Y4, X3, Y3, }, // 282 + {Y4^X5^Y5, Z0^X4^Y4, Y2, X3, }, // 283 + {Y4^X5^Y5, Z0^X4^Y4, X2, Y2, }, // 284 + {Y4^X5^Y5, Z0^X4^Y4, X5^Y5, Y5, }, // 285 + {Y4^X5^Y5, Z0^X4^Y4, X5^Y5, Y3, }, // 286 + {Y4^X5^Y5, Z0^X4^Y4, X5^Y5, X3, }, // 287 + {Y4^X5^Y5, Z0^X4^Y4, X5^Y5, Y2, }, // 288 + {Y4^X5^Y5, Z0^X4^Y4, X5^Y5, X2, }, // 289 + {Y4^X6^Y6, Z1^X4^Y4, X5, X6, }, // 290 + {Y4^X6^Y6, Z1^X4^Y4, Y3, X5, }, // 291 + {Y4^X6^Y6, Z1^X4^Y4, X3, Y3, }, // 292 + {Y4^X6^Y6, Z1^X4^Y4, Y2, X3, }, // 293 + {Y4^X6^Y6, Z1^X4^Y4, X2, Y2, }, // 294 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X5, }, // 295 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, Y3, }, // 296 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X3, }, // 297 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, Y2, }, // 298 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X2, }, // 299 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X5^Y6, }, // 300 + {Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, X6, }, // 301 + {Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, Y3, }, // 302 + {Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, X3, }, // 303 + {Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Y2, }, // 304 + {Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, X2, }, // 305 + {Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, X5^Y6, }, // 306 + {Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, }, // 307 + {Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, X5^Y7, }, // 308 + {Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, }, // 309 + {Y4^X9^Y9, Z1^X4^Y4, Z0^Y5^X8, X5^Y8, }, // 310 + {Y4^X9^Y9, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, }, // 311 + {Y3, X4, Y4^X8, Y5^X7, }, // 312 + {X3, Y3, Y4^X7, X4^Y7, }, // 313 + {X2, Y2, Y3^X6, X3^Y6, }, // 314 + {Z0^X4^Y4, X3, Y3, Y4^X8, }, // 315 + {Z0^X4^Y4, X2, Y2, Y3^X7, }, // 316 + {Y4^X5^Y5, Z0^X4^Y4, X2, X3, }, // 317 + {Y4^X9^Y9, Z3^X4^Y4, Z2^Y5^X8, Z1^X5^Y8, }, // 318 + {Z0^X4^Y4, X2, X3, Y3^X8, }, // 319 + {Y4^X6^Y6, Z1^X4^Y4, X2, X3, }, // 320 + {Y4^X6^Y6, Z0^X4^Y4, X2, X3, }, // 321 + {Y4^X7^Y7, Z1^X4^Y4, Y1^Y5^X6, X2, }, // 322 + {Y4^X8^Y8, Z2^X4^Y4, Z1^Y5^X7, Z0^X5^Y7, }, // 323 + {Y4^X9^Y9, Z2^X4^Y4, Z1^Y5^X8, Z0^X5^Y8, }, // 324 + {X3, Y3, Y4^X7, Y1^X4^Y7, }, // 325 + {Y2, X3, Y3^X7, X1^X4^Y6, }, // 326 + {X2, Y2, Y3^X6, Y0^X3^Y6, }, // 327 + {Y0^X4^Y4, Y2, X3, Y3^X8, }, // 328 + {Y4^X5^Y5, Y0^X4^Y4, X2, X3, }, // 329 + {Y4^X5^Y5, Z0^X4^Y4, X2^X5^Y5, Y2, }, // 330 + {Y4^X5^Y5, Z0^X4^Y4, Y1^X5^Y5, X2, }, // 331 + {Y4^X6^Y6, Z0^X4^Y4, X3, Y3, }, // 332 + {Y4^X6^Y6, Y0^X4^Y4, X3, Y3, }, // 333 + {Y4^X6^Y6, Z0^X4^Y4, Y0^X5^Y5, X2, }, // 334 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X2^X5^Y5, }, // 335 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, Y1^X5^Y5, }, // 336 + {Y4^X7^Y7, Z0^X4^Y4, Y1^Y5^X6, X3, }, // 337 + {Y4^X7^Y7, Z0^X4^Y4, Y0^Y5^X6, X3, }, // 338 + {Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, Z2^X5^Y6, }, // 339 + {Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, Y0^X5^Y6, }, // 340 + {Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, Z2^X5^Y7, }, // 341 + {Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, Y0^X5^Y7, }, // 342 + {Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, Z3^X5^Y7, }, // 343 + {Y4^X9^Y9, Z1^X4^Y4, Z0^Y5^X8, Z3^X5^Y8, }, // 344 + {Y4^X9^Y9, Z1^X4^Y4, Z0^Y5^X8, Z2^X5^Y8, }, // 345 + {Y4^X9^Y9, Z1^X4^Y4, Z0^Y5^X8, Z4^X5^Y8, }, // 346 + {X4, Y4, X5^Y10, Y5^X10, }, // 347 + {Y3, X4, Y4^X10, X5^Y9, }, // 348 + {X3, Y3, X4^Y9, Y4^X9, }, // 349 + {Y2, X3, Y3^X9, X4^Y8, }, // 350 + {X2, Y2, X3^Y8, Y3^X8, }, // 351 + {Z0^X4^Y4, Y4, X5, Y5^X10, }, // 352 + {Z0^X4^Y4, Y3, Y4, X5^Y9, }, // 353 + {Z0^X4^Y4, X3, Y3, Y4^X9, }, // 354 + {Z0^X4^Y4, Y2, X3, Y3^X9, }, // 355 + {Z0^X4^Y4, X2, Y2, Y3^X8, }, // 356 + {Y3, X4, Y4^X10, Y5^X9, }, // 357 + {X3, Y3, Y4^X9, X4^Y9, }, // 358 + {X2, Y2, Y3^X8, X3^Y8, }, // 359 + {Z0^X4^Y4, Y3, Y4, Y5^X9, }, // 360 + {Z0^X4^Y4, X2, X3, Y3^X9, }, // 361 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X2^X5^Y6, }, // 362 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, Y1^X5^Y6, }, // 363 + {Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, X2, }, // 364 + {Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, Y1^X5^Y6, }, // 365 + {Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, Y1^X5^Y7, }, // 366 + {Y4^X9^Y9, Z1^X4^Y4, Z0^Y5^X8, Y1^X5^Y8, }, // 367 + {Z0^X4^Y4, X3, Y3, X5^Y8, }, // 368 + {Y4^X6^Y6, Z0^X4^Y4, Y1^X5^Y5, X2, }, // 369 + {Y4^X6^Y6, Z0^X4^Y4, Y1^X5^Y5, X1^X5^Y6, }, // 370 + {Y4^X7^Y7, Z1^X4^Y4, Y1^Y5^X6, X3, }, // 371 + {Y4^X7^Y7, Z1^X4^Y4, Y1^Y5^X6, Z0^X5^Y6, }, // 372 + {Y4^X7^Y7, Z0^X4^Y4, Y1^Y5^X6, X1^X5^Y6, }, // 373 + {Y4^X8^Y8, Z1^X4^Y4, Y1^Y5^X7, Z0^X5^Y7, }, // 374 + {Y4^X8^Y8, Z0^X4^Y4, Y1^Y5^X7, X1^X5^Y7, }, // 375 + {Y4^X9^Y9, Z1^X4^Y4, Y1^Y5^X8, Z0^X5^Y8, }, // 376 + {Y4^X9^Y9, Z0^X4^Y4, Y1^Y5^X8, X1^X5^Y8, }, // 377 + {Z0^X4^Y4, X2, Y2, X3^Y7, }, // 378 + {Y4^X5^Y5, Z0^X4^Y4, Y2^X5^Y5, X2, }, // 379 + {Y4^X5^Y5, Y0^X4^Y4, X1^X5^Y5, X2, }, // 380 + {Y4^X6^Y6, Z0^X4^Y4, Y1^X5^Y5, X3, }, // 381 + {Y4^X6^Y6, Y0^X4^Y4, Y1^X5^Y5, X3, }, // 382 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, Y2^X5^Y6, }, // 383 + {Y4^X6^Y6, Z0^X4^Y4, Y1^X5^Y5, X2^X5^Y6, }, // 384 + {Y4^X6^Y6, Y0^X4^Y4, Y1^X5^Y5, Y2^X5^Y6, }, // 385 + {Y4^X7^Y7, Y0^X4^Y4, Y1^Y5^X6, X3, }, // 386 + {Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, Y2^X5^Y6, }, // 387 + {Y4^X7^Y7, Y0^X4^Y4, Y1^Y5^X6, X1^X5^Y6, }, // 388 + {Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, Y2^X5^Y7, }, // 389 + {Y4^X8^Y8, Y0^X4^Y4, Y1^Y5^X7, X1^X5^Y7, }, // 390 + {Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, X2^X5^Y7, }, // 391 + {Y4^X9^Y9, Z1^X4^Y4, Z0^Y5^X8, X2^X5^Y8, }, // 392 + {Y4^X9^Y9, Y0^X4^Y4, Y1^Y5^X8, X1^X5^Y8, }, // 393 + {Y4^X5^Y5, Z0^X4^Y4, X5^X6^Y6, Y5, }, // 394 + {Y4^X5^Y5, Z0^X4^Y4, X5^X6^Y6, Y3, }, // 395 + {Y4^X5^Y5, Z0^X4^Y4, X5^X6^Y6, X3, }, // 396 + {Y4^X5^Y5, Z0^X4^Y4, X5^X6^Y6, Y2, }, // 397 + {Y4^X5^Y5, Z0^X4^Y4, X5^X6^Y6, X2, }, // 398 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X5^X7^Y7, }, // 399 + {Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, X6, }, // 400 + {Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Y3, }, // 401 + {Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, X3, }, // 402 + {X4, Y4, Y5^X8, X5^Y8, }, // 403 + {Z0^X4^Y4, Y4, X5, Y5^X9, }, // 404 + {Y4^X6^Y6, Z0^X4^Y4, X2, Y2, }, // 405 + {Y4^X7^Y7, Z1^X4^Y4, S1^Y5^X6, X2, }, // 406 + {X4, Y4, Y5^X8, S0^X5^Y8, }, // 407 + {Y3, X4, Y4^X8, S0^X5^Y7, }, // 408 + {X3, Y3, Y4^X7, S0^X4^Y7, }, // 409 + {Y2, X3, Y3^X7, S0^X4^Y6, }, // 410 + {X2, Y2, Y3^X6, S0^X3^Y6, }, // 411 + {S2^X4^Y4, X2, Y2, X3^Y6, }, // 412 + {Y4^X5^Y5, S2^X4^Y4, X2, Y2, }, // 413 + {Y4^X5^Y5, Z0^X4^Y4, X3^X6^Y6, X2, }, // 414 + {Y4^X6^Y6, Z1^X4^Y4, X5, Y6, }, // 415 + {Y4^X6^Y6, Z0^X4^Y4, Y2, X3, }, // 416 + {Y4^X6^Y6, S2^X4^Y4, X2, Y2, }, // 417 + {Y4^X6^Y6, Z0^X4^Y4, S2^X5^Y5, X2, }, // 418 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X3^X7^Y7, }, // 419 + {Y4^X7^Y7, Z0^X4^Y4, S2^Y5^X6, Y2, }, // 420 + {Y4^X7^Y7, Z0^X4^Y4, S2^Y5^X6, X2, }, // 421 + {Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, S2^X5^Y6, }, // 422 + {Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, S2^X5^Y7, }, // 423 + {X4, Y4, Y5^X10, X5^Y10, }, // 424 + {Y4^X5^Y5, Z0^X4^Y4, S0^X6^Y6, X2, }, // 425 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, S0^X7^Y7, }, // 426 + {Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, S0^X5^Y6, }, // 427 + {Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, S0^X5^Y7, }, // 428 + {Y4^X9^Y9, Z1^X4^Y4, Z0^Y5^X8, S0^X5^Y8, }, // 429 + {Y4^X5^Y5, Z0^X4^Y4, S1^X6^Y6, X2, }, // 430 + {Y4^X6^Y6, Z0^X4^Y4, S1^X5^Y5, X2, }, // 431 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, S1^X7^Y7, }, // 432 + {Y4^X6^Y6, Z0^X4^Y4, S1^X5^Y5, S0^X7^Y7, }, // 433 + {Y4^X7^Y7, Z1^X4^Y4, S1^Y5^X6, Y2, }, // 434 + {Y4^X7^Y7, Z0^X4^Y4, S1^Y5^X6, X2, }, // 435 + {Y4^X7^Y7, Z1^X4^Y4, S1^Y5^X6, Z0^X5^Y6, }, // 436 + {Y4^X7^Y7, Z0^X4^Y4, S1^Y5^X6, S0^X5^Y6, }, // 437 + {Y4^X8^Y8, Z1^X4^Y4, S1^Y5^X7, Z0^X5^Y7, }, // 438 + {Y4^X8^Y8, Z0^X4^Y4, S1^Y5^X7, S0^X5^Y7, }, // 439 + {Y4^X9^Y9, Z1^X4^Y4, S1^Y5^X8, Z0^X5^Y8, }, // 440 + {Y4^X9^Y9, Z0^X4^Y4, S1^Y5^X8, S0^X5^Y8, }, // 441 + {Y4^X5^Y5, Z0^X4^Y4, S2^X6^Y6, X3, }, // 442 + {Y4^X5^Y5, Z0^X4^Y4, S2^X6^Y6, Y2, }, // 443 + {Y4^X5^Y5, S2^X4^Y4, S1^X6^Y6, X2, }, // 444 + {Y4^X6^Y6, Z0^X4^Y4, S2^X5^Y5, Y2, }, // 445 + {Y4^X6^Y6, S2^X4^Y4, S1^X5^Y5, X2, }, // 446 + {Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, S2^X7^Y7, }, // 447 + {Y4^X6^Y6, Z0^X4^Y4, S2^X5^Y5, S1^X7^Y7, }, // 448 + {Y4^X6^Y6, S2^X4^Y4, S1^X5^Y5, S0^X7^Y7, }, // 449 + {Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, Y6, }, // 450 + {Y4^X7^Y7, S2^X4^Y4, S1^Y5^X6, X2, }, // 451 + {Y4^X7^Y7, Z0^X4^Y4, S2^Y5^X6, S1^X5^Y6, }, // 452 + {Y4^X7^Y7, S2^X4^Y4, S1^Y5^X6, S0^X5^Y6, }, // 453 + {Y4^X8^Y8, Z0^X4^Y4, S2^Y5^X7, S1^X5^Y7, }, // 454 + {Y4^X8^Y8, S2^X4^Y4, S1^Y5^X7, S0^X5^Y7, }, // 455 + {Y4^X9^Y9, Z1^X4^Y4, Z0^Y5^X8, S2^X5^Y8, }, // 456 + {Y4^X9^Y9, Z0^X4^Y4, S2^Y5^X8, S1^X5^Y8, }, // 457 + {Y4^X9^Y9, S2^X4^Y4, S1^Y5^X8, S0^X5^Y8, }, // 458 + {X4^Y4, Y2, Z3, Y3, }, // 459 + {X4^Y4, Y2, Z2, Y3, }, // 460 + {X4^Y4, Y1, Z2, Y2, }, // 461 + {Y1^X4^Y4, X1, Z2, Y2, }, // 462 + {Y4^X5^Y5, X4^Y4, Y2, Z3, }, // 463 + {Y4^X5^Y5, X4^Y4, Y2, Z2, }, // 464 + {Z3^Y4^X5^Y5, X4^Y4, Y1, Z2, }, // 465 + {Z3^Y4^X5^Y5, Y1^X4^Y4, X1, Z2, }, // 466 + {Y4^X5^Y5, X4^Y4, Z3^X5, Y2, }, // 467 + {Y4^X5^Y5, X4^Y4, Z2^X5, Y2, }, // 468 + {Z3^Y4^X5^Y5, X4^Y4, Z2^X5, Y1, }, // 469 + {Z3^Y4^X5^Y5, Y1^X4^Y4, Z2^X5, X1, }, // 470 + {Y4^X6^Y6, X4^Y4, Y2, Y3, }, // 471 + {Y4^X6^Y6, X4^Y4, Z3, Y3, }, // 472 + {Y4^X6^Y6, X4^Y4, Z2, Y3, }, // 473 + {Z3^Y4^X6^Y6, X4^Y4, Z2, Y2, }, // 474 + {Z3^Y4^X6^Y6, Y1^X4^Y4, Z2, Y2, }, // 475 + {Y4^X6^Y6, X4^Y4, X5^Y5, Y2, }, // 476 + {Y4^X6^Y6, X4^Y4, Y2^X5^Y5, Z3, }, // 477 + {Y4^X6^Y6, X4^Y4, Y2^X5^Y5, Z2, }, // 478 + {Z3^Y4^X6^Y6, X4^Y4, Y1^X5^Y5, Z2, }, // 479 + {Z3^Y4^X6^Y6, Y1^X4^Y4, X1^X5^Y5, Z2, }, // 480 + {Y4^X6^Y6, X4^Y4, X5^Y5, Z3^X6, }, // 481 + {Y4^X6^Y6, X4^Y4, Y2^X5^Y5, Z3^X6, }, // 482 + {Y4^X6^Y6, X4^Y4, Y2^X5^Y5, Z2^X6, }, // 483 + {Z3^Y4^X6^Y6, X4^Y4, Y1^X5^Y5, Z2^X6, }, // 484 + {Z3^Y4^X6^Y6, Y1^X4^Y4, X1^X5^Y5, Z2^X6, }, // 485 + {Y4^X7^Y7, X4^Y4, Y2^Y5^X6, Y3, }, // 486 + {Z3^Y4^X7^Y7, X4^Y4, Y1^Y5^X6, Y2, }, // 487 + {Z3^Y4^X7^Y7, Y1^X4^Y4, X1^Y5^X6, Y2, }, // 488 + {Y4^X7^Y7, X4^Y4, Y2^Y5^X6, X5^Y6, }, // 489 + {Y4^X7^Y7, X4^Y4, Y2^Y5^X6, Z3^X5^Y6, }, // 490 + {Y4^X7^Y7, X4^Y4, Y2^Y5^X6, Z2^X5^Y6, }, // 491 + {Z3^Y4^X7^Y7, X4^Y4, Y1^Y5^X6, Z2^X5^Y6, }, // 492 + {Z3^Y4^X7^Y7, Y1^X4^Y4, X1^Y5^X6, Z2^X5^Y6, }, // 493 + {Y4^X7^Y7, X4^Y4, Y2^Y5^X6, Y3^X5^Y6, }, // 494 + {Z3^Y4^X7^Y7, X4^Y4, Y1^Y5^X6, Y2^X5^Y6, }, // 495 + {Z3^Y4^X7^Y7, Y1^X4^Y4, X1^Y5^X6, Y2^X5^Y6, }, // 496 + {Y4^X8^Y8, X4^Y4, Y2^Y5^X7, X5^Y7, }, // 497 + {Y4^X8^Y8, X4^Y4, Y2^Y5^X7, Z3^X5^Y7, }, // 498 + {Y4^X8^Y8, X4^Y4, Y2^Y5^X7, Z2^X5^Y7, }, // 499 + {Z3^Y4^X8^Y8, X4^Y4, Y1^Y5^X7, Z2^X5^Y7, }, // 500 + {Z3^Y4^X8^Y8, Y1^X4^Y4, X1^Y5^X7, Z2^X5^Y7, }, // 501 + {Y4^X8^Y8, X4^Y4, Y2^Y5^X7, Y3^X5^Y7, }, // 502 + {Z3^Y4^X8^Y8, X4^Y4, Y1^Y5^X7, Y2^X5^Y7, }, // 503 + {Z3^Y4^X8^Y8, Y1^X4^Y4, X1^Y5^X7, Y2^X5^Y7, }, // 504 + {Y4^X9^Y9, X4^Y4, Y2^Y5^X8, X5^Y8, }, // 505 + {Y4^X9^Y9, X4^Y4, Y2^Y5^X8, Z3^X5^Y8, }, // 506 + {Y4^X9^Y9, X4^Y4, Y2^Y5^X8, Z2^X5^Y8, }, // 507 + {Z3^Y4^X9^Y9, X4^Y4, Y1^Y5^X8, Z2^X5^Y8, }, // 508 + {Z3^Y4^X9^Y9, Y1^X4^Y4, X1^Y5^X8, Z2^X5^Y8, }, // 509 }; -const UINT_64 SW_64K_Z_X_2xaa_RBPLUS[][16]= +const UINT_64 GFX10_SW_PATTERN_NIBBLE3[][4] = { - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4 ^X10, Y5 ^ X9, X5 ^ Y9, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y2, Y3 ^ X8, X3 ^ Y8, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4, Y5 ^ X9, X5 ^ Y9, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X4 ^ Y4, X3, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Z0 ^ X4 ^ Y4, X3, Y3, Y4 ^ X9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Z0 ^ X4 ^ Y4, X2, X3, Y3 ^ X9, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X8, Y4 ^ X7, X3 ^ Y7, Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5, Y5 ^ X9, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X2, X3, Y3 ^ X8, X5 ^ Y7, Y5 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X7, X3 ^ Y7, Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3, X5, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X3, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X3, Y3, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X2, X3, Y3 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X2, Y2, Y3 ^ X6, X3 ^ Y7, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y2, X3, Y3 ^ X7, X5 ^ Y7, X2 ^ X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X2, Y2, Y3 ^ X6, X3 ^ Y7, Y1 ^ X5 ^ Y6, Z0 ^ X5 ^ Y5 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, X3, Y3 ^ X7, X5 ^ Y7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2, Y2, Y3 ^ X6, X3 ^ Y7, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y3, X5, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X3, Y3, X5 ^ Y8, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X3, Y3, X5 ^ Y8, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2 ^ X5 ^ Y6, Y2, X3, Y3 ^ X6, X5 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y1 ^ X5 ^ Y6, X2, Y2, Y3 ^ X5, X3 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, X6, Y6 ^ X8, X7 ^ Y7, X5 ^ Y6 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X3, Y3, X6 ^ Y7, Y6 ^ X7, X5 ^ Y6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X3, Y3, Y6 ^ X7, Y2 ^ X6 ^ Y7, X5 ^ Y6 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X2, X3, Y3 ^ X7, Y2 ^ X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X2, X3, Y3 ^ X7, Y2 ^ X6 ^ Y6, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y3, X6, Y6 ^ X8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X3, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X3, Y3, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X2, X3, Y3 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6, X2, X3, Y3 ^ X7, Y2 ^ X6 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y3, X6, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X3, Y3, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X3, Y3, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, X2, X3, Y3 ^ X6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, X2, X3, Y3 ^ X6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y3, X6, X7 ^ Y7, X6 ^ Y6 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X3, Y3, X6 ^ Y7, X6 ^ Y6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X3, Y3, Y2 ^ X6 ^ Y7, X6 ^ Y6 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X3, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, X3, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y3, X6, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X3, Y3, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X3, Y3, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y7 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, Y3, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X3, Y3 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y2 ^ X6 ^ Y8, X3, Y3 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, X3, Y3 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, X3, Y3 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y3, Y7, X6 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X3, Y3, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X3, Y3, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y3, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X3, Y3 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, 0, S0, X0, Y0, X1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4 ^X10, Y5 ^ X9, X5 ^ Y9, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y2, Y3 ^ X8, X3 ^ Y8, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4, Y5 ^ X9, X5 ^ Y9, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Z0 ^ X4 ^ Y4, Y3, Y4 ^ X9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Z0 ^ X4 ^ Y4, X3, Y3 ^ X9, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X8, Y4 ^ X7, X3 ^ Y7, Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5, Y5 ^ X9, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3 ^ X8, X5 ^ Y7, Y5 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X7, X3 ^ Y7, Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X5, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X3, Y3 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y2, Y3 ^ X6, X3 ^ Y7, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3 ^ X7, X5 ^ Y7, X2 ^ X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y2, Y3 ^ X6, X3 ^ Y7, Y1 ^ X5 ^ Y6, Z0 ^ X5 ^ Y5 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3 ^ X7, X5 ^ Y7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2, Y3 ^ X6, X3 ^ Y7, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X5, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y3, X5 ^ Y8, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y3, X5 ^ Y8, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2 ^ X5 ^ Y6, X3, Y3 ^ X6, X5 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y1 ^ X5 ^ Y6, Y2, Y3 ^ X5, X3 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X6, Y6 ^ X8, X7 ^ Y7, X5 ^ Y6 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, X6 ^ Y7, Y6 ^ X7, X5 ^ Y6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, Y6 ^ X7, Y2 ^ X6 ^ Y7, X5 ^ Y6 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, X3, Y3 ^ X7, Y2 ^ X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X3, Y3 ^ X7, Y2 ^ X6 ^ Y6, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6, Y6 ^ X8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y3, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y3 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6, X3, Y3 ^ X7, Y2 ^ X6 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X6, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y3, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y3, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, X3, Y3 ^ X6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, X3, Y3 ^ X6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6, X7 ^ Y7, X6 ^ Y6 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y3, X6 ^ Y7, X6 ^ Y6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y3, Y2 ^ X6 ^ Y7, X6 ^ Y6 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y3, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y3, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y7 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, Y3 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y2 ^ X6 ^ Y8, Y3 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, Y3 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, Y3 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y7, X6 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y3, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y3, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y3 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4, Y4 ^X10, Y5 ^ X9, X5 ^ Y9, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y2, Y3 ^ X8, X3 ^ Y8, Y4 ^ X7, X4 ^ Y7, Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4, Z0 ^ X4 ^ Y4, Y5 ^ X9, X5 ^ Y9, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Z0 ^ X4 ^ Y4, Y4 ^ X9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, X3, Z0 ^ X4 ^ Y4, Y3 ^ X9, Y4 ^ X8, X5 ^ Y7, Y5 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y2, Z0 ^ X4 ^ Y4, Y3 ^ X8, Y4 ^ X7, X3 ^ Y7, Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5 ^ X9, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X8, X5 ^ Y7, Y5 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X7, X3 ^ Y7, Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3 ^ X6, X3 ^ Y7, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3 ^ X7, X5 ^ Y7, X2 ^ X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3 ^ X6, X3 ^ Y7, Y1 ^ X5 ^ Y6, Z0 ^ X5 ^ Y5 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y6 ^ X8, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3 ^ X7, X5 ^ Y7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3 ^ X6, X3 ^ Y7, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X5, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X6 ^ Y8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X5 ^ Y8, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X5 ^ Y8, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2 ^ X5 ^ Y6, Y3 ^ X6, X5 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y1 ^ X5 ^ Y6, Y3 ^ X5, X3 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y6 ^ X8, X7 ^ Y7, X5 ^ Y6 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X6 ^ Y7, Y6 ^ X7, X5 ^ Y6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y6 ^ X7, Y2 ^ X6 ^ Y7, X5 ^ Y6 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Y3 ^ X7, Y2 ^ X6 ^ Y6, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3 ^ X7, Y2 ^ X6 ^ Y6, Y1 ^ X5 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y6 ^ X8, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y7, Y6 ^ X7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6, Y3 ^ X7, Y2 ^ X6 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, Y3 ^ X6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, Y3 ^ X6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X7 ^ Y7, X6 ^ Y6 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y7, X6 ^ Y6 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y7, X6 ^ Y6 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X6, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X7 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y7 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y7, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y2 ^ X6 ^ Y8 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y7, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {0, S0, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {0, 0, S0, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, X0, Y0, X1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + {0, 0, 0, 0, }, // 0 + {Y6, X6, Y7, X7, }, // 1 + {Y5, X6, Y6, X7, }, // 2 + {Y5, X5, Y6, X6, }, // 3 + {Y4, X5, Y5, X6, }, // 4 + {Y4, X4, Y5, X5, }, // 5 + {Z0^X6^Y6, X6, Y7, X7, }, // 6 + {Z0^Y5^X6, X6, Y6, X7, }, // 7 + {Z0^X5^Y5, X5, Y6, X6, }, // 8 + {Z0^Y4^X5, X5, Y5, X6, }, // 9 + {Z0^X4^Y4, X4, Y5, X5, }, // 10 + {Z1^Y6^X7, Z0^X6^Y7, Y7, X7, }, // 11 + {Z1^Y5^X7, Z0^X6^Y6, Y6, X7, }, // 12 + {Z1^Y5^X6, Z0^X5^Y6, Y6, X6, }, // 13 + {Z1^Y4^X6, Z0^X5^Y5, Y5, X6, }, // 14 + {Z1^Y4^X5, Z0^X4^Y5, Y5, X5, }, // 15 + {X6^Y6, X6, Y7, X7, }, // 16 + {Y5^X6, X6, Y6, X7, }, // 17 + {X5^Y5, X5, Y6, X6, }, // 18 + {Y4^X5, X5, Y5, X6, }, // 19 + {X4^Y4, X4, Y5, X5, }, // 20 + {Y6^X7, X6^Y7, Y7, X7, }, // 21 + {Y5^X7, X6^Y6, Y6, X7, }, // 22 + {Y5^X6, X5^Y6, Y6, X6, }, // 23 + {Y4^X6, X5^Y5, Y5, X6, }, // 24 + {Y4^X5, X4^Y5, Y5, X5, }, // 25 + {Y3, X4, Y5, X5, }, // 26 + {Y4, X5, Y6, X6, }, // 27 + {Y2, X4, Y5, X6, }, // 28 + {Y2, X3, Y4, X5, }, // 29 + {Y4, X6, Y6, X7, }, // 30 + {Y3, X4, Y6, X6, }, // 31 + {Y2, X3, Y4, X6, }, // 32 + {Y2, X2, Y3, X4, }, // 33 + {Z0^X6^Y6, X4, Y6, X7, }, // 34 + {Z0^X6^Y6, X3, Y4, X6, }, // 35 + {Z0^X6^Y6, Y2, X3, Y4, }, // 36 + {Y2^X6^Y6, X2, Y3, X4, }, // 37 + {Z1^Y6^X7, Z0^X6^Y7, Y4, X7, }, // 38 + {Z1^Y6^X7, Z0^X6^Y7, Y3, X4, }, // 39 + {Y2^Y6^X7, Z0^X6^Y7, Y3, X4, }, // 40 + {Y2^Y6^X7, X2^X6^Y7, Y3, X4, }, // 41 + {X5, Y6, X6, Y7, }, // 42 + {Y5, X5, Y6, Y2^Y7, }, // 43 + {X4, Y5, X5, Y2^Y6, }, // 44 + {Y4, X4, Y5, Y1^Y6, }, // 45 + {Y3, X4, Y5, Y1^Y6, }, // 46 + {Y4, X5, Y6, Y2^Y7, }, // 47 + {X3, Y4, X5, Y2^Y6, }, // 48 + {Y2, X3, Y4, Y1^Y6, }, // 49 + {Y4, Y6, X6, Y7, }, // 50 + {Y3, X4, Y6, Y2^Y7, }, // 51 + {X2, Y3, X4, Y2^Y6, }, // 52 + {Y1, X3, Y4, X2^Y6, }, // 53 + {Z0^X6^Y6, Y4, X6, Y7, }, // 54 + {Z0^X6^Y6, X3, Y4, Y2^Y7, }, // 55 + {Y2^X6^Y6, Y3, X4, X2^Y7, }, // 56 + {X2^X6^Y6, X3, Y4, Y1^Y7, }, // 57 + {Z0^Y6^X7, Z5^X6^Y7, Y4, Y7, }, // 58 + {Z0^Y6^X7, Z5^X6^Y7, Y3, X4, }, // 59 + {Z0^Y6^X7, Y2^X6^Y7, X3, Y4, }, // 60 + {X2^Y6^X7, Y1^X6^Y7, X3, Y4, }, // 61 + {X5, Y5, X6, Y2^Y6, }, // 62 + {Y5, X5, Y2^Y6, X2^Y7, }, // 63 + {Y4, X5, Y1^Y5, X2^Y6, }, // 64 + {Y4, X4, Y1^Y5, X1^Y6, }, // 65 + {Y5, X5, X2^Y6, Y2^Y7, }, // 66 + {Y4, X5, X2^Y5, Y1^Y6, }, // 67 + {Y4, X4, X1^Y5, Y1^Y6, }, // 68 + {Y3, X4, Y1^Y5, X1^Y6, }, // 69 + {X4, Y5, X6, Y2^Y6, }, // 70 + {Y4, X5, X2^Y6, Y2^Y7, }, // 71 + {X3, Y4, Y1^Y5, X2^Y6, }, // 72 + {Y3, X4, X1^Y6, Y1^Y7, }, // 73 + {X3, Y4, X6, Y2^Y6, }, // 74 + {Y3, X4, Y2^Y6, X2^Y7, }, // 75 + {Y3, X4, Y1^Y6, X2^Y7, }, // 76 + {Z4^X6^Y6, X3, Y4, X6, }, // 77 + {Z4^X6^Y6, X3, Y4, Y2^Y6, }, // 78 + {Y1^X6^Y6, Y3, X4, X2^Y7, }, // 79 + {Z5^Y6^X7, Z4^X6^Y7, Y3, X4, }, // 80 + {Y2^Y6^X7, Z4^X6^Y7, Y3, X4, }, // 81 + {Y1^Y6^X7, X2^X6^Y7, Y3, X4, }, // 82 + {Y5, Y1^Y6, Y2^Y7, X2^Y8, }, // 83 + {X4, Y1^Y5, X1^Y6, Y2^Y7, }, // 84 + {Y4, Y0^Y5, Y1^Y6, X1^Y7, }, // 85 + {Y5, Y1^Y6, X2^Y7, Y2^Y8, }, // 86 + {X4, X1^Y5, Y1^Y6, X2^Y7, }, // 87 + {Y4, Y0^Y5, X1^Y6, Y1^Y7, }, // 88 + {X3, Y0^Y5, X1^Y6, Y1^Y7, }, // 89 + {Y4, Y1^Y6, X2^Y7, Y2^Y8, }, // 90 + {X4, X1^Y6, Y1^Y7, X2^Y8, }, // 91 + {X3, X1^Y6, Y1^Y7, X2^Y8, }, // 92 + {X3, Y4, X2^Y6, Y1^Y7, }, // 93 + {X3, Y1^Y6, X2^Y7, Y2^Y8, }, // 94 + {Z3^X6^Y6, X3, Y4, Y2^Y7, }, // 95 + {Y2^X6^Y6, X3, X2^Y7, Y1^Y8, }, // 96 + {Z3^Y6^X7, Y2^X6^Y7, X3, Y4, }, // 97 + {Y2^Y6^X7, X2^X6^Y7, X3, Y1^Y7, }, // 98 + {Y6, X6, Y7, S0^Y8, }, // 99 + {Y5, X6, Y6, S0^Y7, }, // 100 + {Y5, X5, Y6, S0^Y7, }, // 101 + {Y4, X5, Y5, S0^Y6, }, // 102 + {Y4, X4, Y5, S0^Y6, }, // 103 + {Y3, X4, Y5, S0^Y6, }, // 104 + {Y4, X5, Y6, S0^Y7, }, // 105 + {Y2, X4, Y5, S0^Y6, }, // 106 + {Y2, X3, Y4, S0^Y6, }, // 107 + {Y4, X6, Y6, S0^Y7, }, // 108 + {Y3, X4, Y6, S0^Y7, }, // 109 + {Z0^X6^Y6, X6, Y7, S0^Y8, }, // 110 + {Z0^X6^Y6, X4, Y6, S0^Y7, }, // 111 + {Z0^X6^Y6, X3, Y4, S0^Y7, }, // 112 + {S0^X6^Y6, Y2, X3, Y4, }, // 113 + {Z0^Y6^X7, Z5^X6^Y7, Y7, S0^Y8, }, // 114 + {Z0^Y6^X7, Z5^X6^Y7, Y4, S0^Y7, }, // 115 + {Z0^Y6^X7, S0^X6^Y7, Y3, X4, }, // 116 + {S0^Y6^X7, Y2^X6^Y7, X3, Y4, }, // 117 + {Y6, X6, S0^Y7, S1^Y8, }, // 118 + {Y5, X6, S0^Y6, S1^Y7, }, // 119 + {Y5, X5, S0^Y6, S1^Y7, }, // 120 + {Y4, X5, S0^Y5, S1^Y6, }, // 121 + {Y4, X4, S0^Y5, S1^Y6, }, // 122 + {Y3, X4, S0^Y5, S1^Y6, }, // 123 + {Y4, X5, S0^Y6, S1^Y7, }, // 124 + {X3, Y4, S0^Y5, S1^Y6, }, // 125 + {Y4, X6, S0^Y6, S1^Y7, }, // 126 + {Y3, X4, S0^Y6, S1^Y7, }, // 127 + {Z4^X6^Y6, X6, S0^Y7, S1^Y8, }, // 128 + {Z4^X6^Y6, Y4, S0^Y6, S1^Y7, }, // 129 + {S1^X6^Y6, X3, Y4, S0^Y7, }, // 130 + {Z5^Y6^X7, Z4^X6^Y7, S0^Y7, S1^Y8, }, // 131 + {S1^Y6^X7, Z4^X6^Y7, Y4, S0^Y7, }, // 132 + {S1^Y6^X7, S0^X6^Y7, Y3, X4, }, // 133 + {Y6, S0^Y7, S1^Y8, S2^Y9, }, // 134 + {Y5, S0^Y6, S1^Y7, S2^Y8, }, // 135 + {Y4, S0^Y5, S1^Y6, S2^Y7, }, // 136 + {X3, S0^Y5, S1^Y6, S2^Y7, }, // 137 + {Y4, S0^Y6, S1^Y7, S2^Y8, }, // 138 + {X3, Y4, S0^Y6, S1^Y7, }, // 139 + {Y2, X3, S0^Y6, S1^Y7, }, // 140 + {X2, Y2, X3, S0^Y6, }, // 141 + {Z3^X6^Y6, S0^Y7, S1^Y8, S2^Y9, }, // 142 + {S2^X6^Y6, Y4, S0^Y7, S1^Y8, }, // 143 + {S0^X6^Y6, X2, Y2, X3, }, // 144 + {Z3^Y6^X7, S2^X6^Y7, S0^Y7, S1^Y8, }, // 145 + {S2^Y6^X7, S1^X6^Y7, Y4, S0^Y7, }, // 146 + {S0^Y6^X7, X2^X6^Y7, Y2, X3, }, // 147 + {X4, Z4, Y4, X5, }, // 148 + {X3, Z4, Y4, X4, }, // 149 + {X3, Z3, Y4, X4, }, // 150 + {X3, Z3, Y3, X4, }, // 151 + {X2, Z3, Y3, X3, }, // 152 + {X4^Y4^Z4, Z4, Y4, X5, }, // 153 + {X3^Y4^Z4, Z4, Y4, X4, }, // 154 + {X3^Z3^Y4, Z3, Y4, X4, }, // 155 + {X3^Y3^Z3, Z3, Y3, X4, }, // 156 + {X2^Y3^Z3, Z3, Y3, X3, }, // 157 + {X4^Y5^Z5, Y4^Z4^X5, Y4, X5, }, // 158 + {X3^Y5^Z5, X4^Y4^Z4, Y4, X4, }, // 159 + {X3^Z4^Y5, Z3^X4^Y4, Y4, X4, }, // 160 + {X3^Y4^Z4, Y3^Z3^X4, Y3, X4, }, // 161 + {X2^Y4^Z4, X3^Y3^Z3, Y3, X3, }, // 162 + {X4, Y4^Z4^X5, Y4, X5, }, // 163 + {X3, X4^Y4^Z4, Y4, X4, }, // 164 + {X3, Z3^X4^Y4, Y4, X4, }, // 165 + {X3, Y3^Z3^X4, Y3, X4, }, // 166 + {X2, X3^Y3^Z3, Y3, X3, }, // 167 + {X3, Z3, Y2, X4, }, // 168 + {X2, Z3, Y2, X3, }, // 169 + {X3, Z4, Y4, X5, }, // 170 + {X2, Z4, Y3, X4, }, // 171 + {X2, Z3, Y3, X4, }, // 172 + {Y2, X3, Z4, Y4, }, // 173 + {Z3, Y3, X4, Z4, }, // 174 + {Z3^X6^Y6, Y3, X4, Z4, }, // 175 + {X2^X6^Y6, Z4, Y3, X4, }, // 176 + {X2^X6^Y6, Z3, Y3, X4, }, // 177 + {X2^X6^Y6, Z3, Y2, X3, }, // 178 + {Z3^Y6^X7, Z4^X6^Y7, Y3, X4, }, // 179 + {X2^Y6^X7, Z4^X6^Y7, Y3, X4, }, // 180 + {X2^Y6^X7, Z3^X6^Y7, Y3, X4, }, // 181 + {X2^Y6^X7, Z3^X6^Y7, Y2, X3, }, // 182 + {X6^Y7, Y6^X7, 0, 0, }, // 183 + {Y5^X7, X6^Y6, 0, 0, }, // 184 + {X5^Y6, Y5^X6, 0, 0, }, // 185 + {Y4^X6, X5^Y5, 0, 0, }, // 186 + {X4^Y5, Y4^X5, 0, 0, }, // 187 + {Y5^X9, X7^Y7, Y6^X8, 0, }, // 188 + {Y5^X8, X6^Y7, Y6^X7, 0, }, // 189 + {Y4^X8, X6^Y6, Y5^X7, 0, }, // 190 + {Y4^X7, X5^Y6, Y5^X6, 0, }, // 191 + {Y3^X7, X5^Y5, Y4^X6, 0, }, // 192 + {X6^Y9, Y6^X9, X7^Y8, Y7^X8, }, // 193 + {X6^Y8, Y5^X9, X7^Y7, Y6^X8, }, // 194 + {X5^Y8, Y5^X8, X6^Y7, Y6^X7, }, // 195 + {Y3^X8, X5^Y7, X6^Y6, Y5^X7, }, // 196 + {Y3^X7, X3^Y7, X5^Y6, Y5^X6, }, // 197 + {X6, X7^Y9, Y6^X10, X8^Y8, }, // 198 + {Y5, X6^Y9, Y6^X9, X7^Y8, }, // 199 + {Y3, X6^Y8, Y5^X9, X7^Y7, }, // 200 + {X3, Y3^X9, Y5^X8, X6^Y7, }, // 201 + {Y2, X3^Y7, Y3^X8, X6^Y6, }, // 202 + {Y6^X9, X7^Y8, Y7^X8, Z0^X5^Y5, }, // 203 + {X6^Y8, Y6^X8, X7^Y7, Z0^X5^Y5, }, // 204 + {X5^Y8, X6^Y7, Y6^X7, Z0^X5^Y5, }, // 205 + {Y3^X7, X5^Y7, X6^Y6, Z0^X5^Y5, }, // 206 + {X3^Y7, Y3^X6, X5^Y6, Z0^X5^Y5, }, // 207 + {X6, Y6^X10, X7^Y9, Y7^X9, }, // 208 + {X5, X6^Y9, Y6^X9, X7^Y8, }, // 209 + {Y3, X5^Y9, X6^Y8, Y6^X8, }, // 210 + {X3, Y3^X8, X5^Y8, X6^Y7, }, // 211 + {Y2, X3^Y8, Y3^X7, X5^Y7, }, // 212 + {X6, Y6, X7^Y10, Y7^X10, }, // 213 + {Y3, X6, Y6^X10, X7^Y9, }, // 214 + {X3, Y3, X6^Y9, Y6^X9, }, // 215 + {Y2, X3, Y3^X9, X6^Y8, }, // 216 + {X2, Y2, X3^Y8, Y3^X8, }, // 217 + {Y6, X7^Y9, X8^Y8, Y7^X9, }, // 218 + {X6, Y6^X9, X7^Y8, Y7^X8, }, // 219 + {Y3, X6^Y8, X7^Y7, Y6^X8, }, // 220 + {X3, Y3^X8, X6^Y7, Y6^X7, }, // 221 + {Y2, X3^Y7, Y3^X7, X6^Y6, }, // 222 + {Y3, X6, X7^Y9, Y6^X10, }, // 223 + {X2, Y2, Y3^X8, X3^Y8, }, // 224 + {X6^Y6, Y6, X7, X8^Y10, }, // 225 + {X6^Y6, Y3, Y6, X7^Y10, }, // 226 + {X6^Y6, X3, Y3, X7^Y9, }, // 227 + {X6^Y6, Y2, X3, Y3^X10, }, // 228 + {X6^Y6, X2, Y2, X3^Y8, }, // 229 + {X6, X7, Y7^X10, X8^Y9, }, // 230 + {Y3, X6, X7^Y9, Y7^X9, }, // 231 + {X3, Y3, X6^Y9, X7^Y8, }, // 232 + {Y2, X3, Y3^X8, X6^Y8, }, // 233 + {X2, Y2, X3^Y8, Y3^X7, }, // 234 + {X6^Y6, X6, X7, Y7^X11, }, // 235 + {X6^Y6, Y3, X6, X7^Y10, }, // 236 + {X6^Y6, X3, Y3, X6^Y10, }, // 237 + {Z0^X6^Y6, Y2, X3, Y3^X9, }, // 238 + {Z0^X6^Y6, X2, Y2, X3^Y9, }, // 239 + {X6^Y6, X6^Y8, X7, Y7, }, // 240 + {X6^Y6, X6^Y8, Y3, X7, }, // 241 + {X6^Y6, X6^Y8, X3, Y3, }, // 242 + {Z0^X6^Y6, X6^Y8, Y2, X3, }, // 243 + {Z0^X6^Y6, X6^Y8, X2, Y2, }, // 244 + {Y6^X7, X7, Y7, X8^Y10, }, // 245 + {Y6^X7, Y3, X7, Y7^X10, }, // 246 + {Y6^X7, X3, Y3, X7^Y9, }, // 247 + {Z1^Y6^X7, Y2, X3, Y3^X9, }, // 248 + {Z1^Y6^X7, X2, Y2, X3^Y8, }, // 249 + {Y6^X7, X6^Y7, X7, Y7, }, // 250 + {Y6^X7, X6^Y7, Y3, X7, }, // 251 + {Y6^X7, X6^Y7, X3, Y3, }, // 252 + {Z1^Y6^X7, Z0^X6^Y7, Y2, X3, }, // 253 + {Z1^Y6^X7, Z0^X6^Y7, X2, Y2, }, // 254 + {X5^Y7, X6^Y6, 0, 0, }, // 255 + {Y5^X6, Y2^X5^Y6, 0, 0, }, // 256 + {Y4^X6, X2^X5^Y5, 0, 0, }, // 257 + {Y4^X5, Y1^X4^Y5, 0, 0, }, // 258 + {X5^Y7, Y5^X7, Y2^X6^Y6, 0, }, // 259 + {X5^Y6, Y4^X7, X2^Y5^X6, 0, }, // 260 + {X3^Y6, Y4^X6, Y1^X5^Y5, 0, }, // 261 + {Y5^X9, Y6^X8, X6^Y8, X7^Y7, }, // 262 + {Y5^X8, X5^Y8, Y6^X7, Y2^X6^Y7, }, // 263 + {Y3^X8, X5^Y7, Y5^X7, Y2^X6^Y6, }, // 264 + {Y3^X7, X3^Y7, Y5^X6, Y1^X5^Y6, }, // 265 + {Y3, X5^Y9, X6^Y8, X7^Y7, }, // 266 + {Y2, Y3^X7, X3^Y8, X5^Y7, }, // 267 + {Y6^X8, X6^Y8, X7^Y7, Z0^X5^Y5, }, // 268 + {X5^Y8, Y6^X7, Y2^X6^Y7, Z0^X5^Y5, }, // 269 + {Y3^X7, X5^Y7, X2^X6^Y6, Z0^X5^Y5, }, // 270 + {Y3^X6, X3^Y7, Y1^X5^Y6, Z0^X5^Y5, }, // 271 + {Y3, X5, X6^Y10, Y7^X9, }, // 272 + {X3, Y3, X5^Y10, X6^Y9, }, // 273 + {Y2, X3, Y3^X8, X5^Y9, }, // 274 + {X2, Y2, Y3^X7, X3^Y9, }, // 275 + {Y3, X6^Y8, Y6^X8, Y2^X7^Y7, }, // 276 + {X3, Y3^X8, X6^Y7, X2^Y6^X7, }, // 277 + {Y2, Y3^X7, X3^Y7, Y1^X6^Y6, }, // 278 + {Y3, X6, Y6^X10, Y7^X9, }, // 279 + {X3, Y3, Y6^X9, X6^Y9, }, // 280 + {X2, X3, Y3^X9, X6^Y8, }, // 281 + {X6^Y6, Y2, X3, Y3^X9, }, // 282 + {X6^Y6, X2, Y2, Y3^X8, }, // 283 + {Y3, X6, Y7^X9, X7^Y9, }, // 284 + {X3, Y3, X6^Y9, Y7^X8, }, // 285 + {X2, Y2, Y3^X7, X3^Y8, }, // 286 + {Z0^Y6^X7, Y2, X3, Y3^X9, }, // 287 + {Z0^Y6^X7, X2, Y2, Y3^X8, }, // 288 + {Z0^Y6^X7, Z4^X6^Y7, X2, X3, }, // 289 + {Z0^Y6^X7, Z4^X6^Y7, X2, Y2, }, // 290 + {X5^Y6, Y2^Y5^X6, 0, 0, }, // 291 + {X2^X5^Y6, Y2^Y5^X6, 0, 0, }, // 292 + {X2^X5^Y5, Y1^Y4^X6, 0, 0, }, // 293 + {X1^X4^Y5, Y1^Y4^X5, 0, 0, }, // 294 + {Y4^X8, X2^X6^Y6, Y2^Y5^X7, 0, }, // 295 + {Y4^X7, Y2^Y5^X6, Y1^X5^Y6, 0, }, // 296 + {Y3^X7, X1^X5^Y5, Y1^Y4^X6, 0, }, // 297 + {X5^Y8, X6^Y7, Y5^X8, Y2^Y6^X7, }, // 298 + {X5^Y8, Y5^X8, X2^Y6^X7, Y2^X6^Y7, }, // 299 + {Y3^X8, X5^Y7, X2^Y5^X7, Y1^X6^Y6, }, // 300 + {Y3^X7, X3^Y7, X1^Y5^X6, Y1^X5^Y6, }, // 301 + {Y3, Y5^X9, X6^Y8, Y6^X8, }, // 302 + {Y3, X6^Y8, Y5^X9, X2^X7^Y7, }, // 303 + {X3, Y3^X9, Y5^X8, Y2^Y6^X7, }, // 304 + {Y2, X3^Y7, Y3^X8, X1^X6^Y6, }, // 305 + {X5^Y8, X6^Y7, Y2^Y6^X7, Z0^X5^Y5, }, // 306 + {X5^Y8, X2^X6^Y7, Y2^Y6^X7, Z0^X5^Y5, }, // 307 + {Y3^X8, Y2^Y5^X7, Y1^X6^Y6, Z0^X5^Y5, }, // 308 + {Y3^X7, Y2^X6^Y6, X1^X5^Y7, Y1^X5^Y5, }, // 309 + {Y3, X5^Y9, X6^Y8, X2^Y6^X8, }, // 310 + {X3, Y3^X8, X5^Y8, X2^Y6^X7, }, // 311 + {Y2, Y3^X8, X3^Y7, X1^Y5^X7, }, // 312 + {Y3, X6^Y8, X2^X7^Y7, Y2^Y6^X8, }, // 313 + {X3, Y3^X8, Y2^Y6^X7, Y1^X6^Y7, }, // 314 + {X3, Y3^X8, Y2^Y6^X7, X1^X6^Y7, }, // 315 + {X6^Y6, X3, Y3, Y6^X10, }, // 316 + {X6^Y6, X2, X3, Y3^X10, }, // 317 + {X3, Y3, X6^Y9, X2^X7^Y8, }, // 318 + {X2, X3, Y3^X9, Y2^Y6^X8, }, // 319 + {X2, X3, Y3^X8, Y2^X7^Y7, }, // 320 + {Z3^X6^Y6, Y2, X3, Y3^X9, }, // 321 + {Z3^X6^Y6, X2, Y2, Y3^X9, }, // 322 + {Z3^X6^Y6, X6^Y8, Y2, X3, }, // 323 + {Z3^X6^Y6, X6^Y8, X2, Y2, }, // 324 + {Z4^Y6^X7, X2, X3, Y3^X9, }, // 325 + {Y1^Y6^X7, X2, X3, Y3^X9, }, // 326 + {Z4^Y6^X7, Z3^X6^Y7, Y2, X3, }, // 327 + {Z4^Y6^X7, Z3^X6^Y7, X2, Y2, }, // 328 + {Y1^Y4^X6, X2^X5^Y5, 0, 0, }, // 329 + {Y1^X5^Y7, X2^X6^Y6, Y2^Y5^X7, 0, }, // 330 + {X1^X5^Y6, Y1^Y4^X7, X2^Y5^X6, 0, }, // 331 + {Y5^X8, Y1^X5^Y8, X2^X6^Y7, Y2^Y6^X7, }, // 332 + {Y3^X8, Y1^X5^Y7, X1^Y5^X7, Y2^X6^Y6, }, // 333 + {Y3^X7, Y1^X4^Y7, Y2^X5^Y6, X1^Y5^X6, }, // 334 + {Y3, X5^Y9, X6^Y8, X2^X7^Y7, }, // 335 + {Y3, X5^Y9, Y1^X6^Y8, X2^X7^Y7, }, // 336 + {X3, Y3^X8, X5^Y7, X1^X6^Y6, }, // 337 + {Y2, Y3^X7, X3^Y7, Y0^X5^Y6, }, // 338 + {Y1^X5^Y8, X2^X6^Y7, Y2^Y6^X7, Z0^X5^Y5, }, // 339 + {X1^X5^Y8, Y2^Y6^X7, X2^X6^Y7, Y1^X5^Y5, }, // 340 + {X1^X5^Y8, X2^X6^Y7, Y2^Y6^X7, Y1^X5^Y5, }, // 341 + {Y3, X5^Y9, Y1^X6^Y8, X2^Y6^X8, }, // 342 + {X3, Y3^X9, Y1^X6^Y7, X1^Y5^X8, }, // 343 + {X3, Y3^X8, Y1^X5^Y8, Y2^X6^Y7, }, // 344 + {X3, Y3, X5^Y10, Y1^X6^Y9, }, // 345 + {Y2, X3, Y3^X8, X5^Y8, }, // 346 + {Y3, Y1^X6^Y8, X2^X7^Y7, Y2^Y6^X8, }, // 347 + {Y3, X1^X6^Y8, Y2^Y6^X8, X2^X7^Y7, }, // 348 + {Y3, X1^X6^Y8, X2^X7^Y7, Y2^Y6^X8, }, // 349 + {X3, Y3, Y6^X9, Y1^X6^Y9, }, // 350 + {X2, X3, Y3^X9, Y1^X6^Y8, }, // 351 + {X2^X6^Y6, Y2, X3, Y3^X9, }, // 352 + {Y1^X6^Y6, X2, Y2, Y3^X8, }, // 353 + {X3, Y3, Y1^X6^Y9, X2^X7^Y8, }, // 354 + {X3, Y3, X1^X6^Y9, Y2^Y7^X8, }, // 355 + {X3, Y3, X1^X6^Y9, X2^X7^Y8, }, // 356 + {Z2^X6^Y6, X2, X3, Y3^X10, }, // 357 + {Y0^X6^Y6, X2, X3, Y3^X9, }, // 358 + {Z2^X6^Y6, X6^Y8, Y2, X3, }, // 359 + {Z2^X6^Y6, Y1^X6^Y8, X2, Y2, }, // 360 + {Y6^X7, X3, Y3, Y1^X7^Y9, }, // 361 + {Y1^Y6^X7, X3, Y3, X1^X7^Y9, }, // 362 + {Y0^Y6^X7, X3, Y3, X1^X7^Y9, }, // 363 + {Z3^Y6^X7, Z2^X6^Y7, X2, X3, }, // 364 + {Z2^Y6^X7, Y0^X6^Y7, X2, X3, }, // 365 + {Y5^X9, X6^Y8, Y6^X8, X7^Y7, }, // 366 + {Y4^X8, X5^Y7, Y5^X7, X6^Y6, }, // 367 + {X4^Y7, Y4^X7, X5^Y6, Y5^X6, }, // 368 + {X5^Y7, Y4^X8, X6^Y6, Y5^X7, }, // 369 + {X3^Y7, Y4^X7, X5^Y6, Y5^X6, }, // 370 + {Y5, X6^Y8, X7^Y7, Y6^X8, }, // 371 + {Y3, Y5^X8, X6^Y7, Y6^X7, }, // 372 + {X3, Y3^X8, X6^Y6, Y5^X7, }, // 373 + {Y2, Y3^X7, X3^Y6, Y5^X6, }, // 374 + {X5, X6^Y8, Y6^X8, X7^Y7, }, // 375 + {Y3, X5^Y8, X6^Y7, Y6^X7, }, // 376 + {X3, Y3^X7, X5^Y7, X6^Y6, }, // 377 + {Y2, X3^Y7, Y3^X6, X5^Y6, }, // 378 + {X6, Y6, X7^Y8, Y7^X8, }, // 379 + {Y3, X6, Y6^X8, X7^Y7, }, // 380 + {X3, Y3, X6^Y7, Y6^X7, }, // 381 + {Y2, X3, Y3^X7, X6^Y6, }, // 382 + {X2, Y2, X3^Y6, Y3^X6, }, // 383 + {Y6, X7^Y8, Y7^X8, X5^Y6, }, // 384 + {X6, X7^Y7, Y6^X8, X5^Y6, }, // 385 + {Y3, X6^Y7, Y6^X7, X5^Y6, }, // 386 + {X3, Y3^X7, X6^Y6, Z0^X5^Y6, }, // 387 + {Y2, Y3^X6, X3^Y6, Z0^X5^Y6, }, // 388 + {Y3, X6, X7^Y7, Y6^X8, }, // 389 + {X2, Y2, Y3^X6, X3^Y6, }, // 390 + {X6^Y6, Y6, X7, Y7^X8, }, // 391 + {X6^Y6, Y3, Y6, X7^Y7, }, // 392 + {X6^Y6, X3, Y3, Y6^X7, }, // 393 + {X6^Y6, Y2, X3, Y3^X7, }, // 394 + {X3^Y6, X2, Y2, Y3^X6, }, // 395 + {X6, X7, Y7^X8, X6^Y6, }, // 396 + {Y3, X6, X7^Y7, X6^Y6, }, // 397 + {X3, Y3, X6^Y7, X6^Y6, }, // 398 + {Y2, X3, Y3^X7, Z0^X6^Y6, }, // 399 + {X2, X3, Y3^X6, Y2^X6^Y6, }, // 400 + {X6^Y6, X6, X7, Y7^X8, }, // 401 + {X6^Y6, Y3, X6, X7^Y7, }, // 402 + {X6^Y6, X3, Y3, X6^Y7, }, // 403 + {Z0^X6^Y6, Y2, X3, Y3^X7, }, // 404 + {Y2^X6^Y6, X2, X3, Y3^X6, }, // 405 + {Z0^X6^Y6, X3^Y8, Y2, Y3, }, // 406 + {Y2^X6^Y6, X3^Y8, X2, Y3, }, // 407 + {Y6^X7, X7, Y7, X6^Y7, }, // 408 + {Y6^X7, Y3, X7, X6^Y7, }, // 409 + {Y6^X7, X3, Y3, X6^Y7, }, // 410 + {Y2^Y6^X7, X3, Y3, Z0^X6^Y7, }, // 411 + {Y2^Y6^X7, X3, Y3, X2^X6^Y7, }, // 412 + {Y2^Y6^X7, Z0^X6^Y7, X3, Y3, }, // 413 + {Y2^Y6^X7, X2^X6^Y7, X3, Y3, }, // 414 + {X5^Y9, Y6^X8, X6^Y8, X7^Y7, }, // 415 + {Y4^X8, X5^Y7, Y5^X7, X2^X6^Y6, }, // 416 + {Y4^X7, X4^Y7, Y5^X6, Y1^X5^Y6, }, // 417 + {Y4^X8, X5^Y7, Y5^X7, Y2^X6^Y6, }, // 418 + {Y4^X7, X3^Y7, Y5^X6, Y1^X5^Y6, }, // 419 + {X5, Y6^X8, X6^Y8, X7^Y7, }, // 420 + {Y3, X5^Y8, Y6^X7, Y2^X6^Y7, }, // 421 + {X3, Y3^X7, X5^Y7, Y2^X6^Y6, }, // 422 + {Y2, Y3^X6, X3^Y7, Y1^X5^Y6, }, // 423 + {X3, Y3^X7, X5^Y7, X2^X6^Y6, }, // 424 + {Y3, X5, X6^Y8, X7^Y7, }, // 425 + {X3, Y3, X5^Y8, X6^Y7, }, // 426 + {X3, Y3, X5^Y8, Y2^X6^Y7, }, // 427 + {Y2, X3, Y3^X6, X5^Y6, }, // 428 + {X2, Y2, Y3^X5, X3^Y6, }, // 429 + {X6, Y6^X8, X7^Y7, X5^Y6, }, // 430 + {Y3, Y6^X7, Y2^X6^Y7, X5^Y6, }, // 431 + {X3, Y3^X7, Y2^X6^Y6, Z0^X5^Y6, }, // 432 + {X3, Y3^X7, Y2^X6^Y6, Y1^X5^Y6, }, // 433 + {X3, Y3, Y6^X7, Y2^X6^Y7, }, // 434 + {X2, X3, Y3^X7, Y2^X6^Y6, }, // 435 + {X6^Y6, X3, Y3, Y2^X6^Y7, }, // 436 + {X3, Y3, Y2^X6^Y7, X6^Y6, }, // 437 + {X3, Y3, X2^X6^Y7, Y2^X6^Y6, }, // 438 + {Y2^X6^Y6, X3, Y3, X2^X6^Y7, }, // 439 + {X6^Y6, X6^Y8, Y3, Y7, }, // 440 + {X6^Y6, Y2^X6^Y8, X3, Y3, }, // 441 + {Y2^X6^Y6, X2^X6^Y8, X3, Y3, }, // 442 + {Y6^X7, Y3, Y7, X6^Y7, }, // 443 + {Y6^X7, X3, Y3, Y2^X6^Y7, }, // 444 + {Y6^X7, X6^Y7, Y3, Y7, }, // 445 + {Y6^X7, Y2^X6^Y7, X3, Y3, }, // 446 + {X5^Y8, Y5^X8, X6^Y7, Y2^Y6^X7, }, // 447 + {X5^Y8, Y5^X8, X2^X6^Y7, Y2^Y6^X7, }, // 448 + {Y4^X8, X5^Y7, X2^X6^Y6, Y1^Y5^X7, }, // 449 + {X4^Y7, Y4^X7, X1^X5^Y6, Y1^Y5^X6, }, // 450 + {Y4^X9, X6^Y7, Y5^X8, Y2^Y6^X7, }, // 451 + {X5^Y7, Y4^X8, X2^Y5^X7, Y1^X6^Y6, }, // 452 + {X3^Y7, Y4^X7, X1^Y5^X6, Y1^X5^Y6, }, // 453 + {Y3, X6^Y7, Y5^X8, Y2^Y6^X7, }, // 454 + {Y3, Y5^X8, X2^Y6^X7, Y2^X6^Y7, }, // 455 + {X3, Y3^X8, X2^Y5^X7, Y1^X6^Y6, }, // 456 + {Y2, Y3^X6, X3^Y6, X1^X5^Y5, }, // 457 + {Y3, X5^Y8, X6^Y7, Y2^Y6^X7, }, // 458 + {Y3, X5^Y8, X2^X6^Y7, Y2^Y6^X7, }, // 459 + {X3, Y3^X8, Y2^Y5^X7, Y1^X6^Y6, }, // 460 + {X3, Y3^X7, Y2^X6^Y6, X1^X5^Y7, }, // 461 + {X3, Y3, X6^Y7, Y2^Y6^X7, }, // 462 + {X3, Y3, X2^X6^Y7, Y2^Y6^X7, }, // 463 + {X2, X3, Y3^X7, Y2^Y5^X6, }, // 464 + {X2, X3, Y3^X6, Y2^X5^Y6, }, // 465 + {Y3, X6^Y7, Y2^Y6^X7, X5^Y6, }, // 466 + {Y3, X2^Y6^X7, Y2^X6^Y7, X5^Y6, }, // 467 + {Y3, X2^Y6^X7, Y2^X6^Y7, Z0^X5^Y6, }, // 468 + {Y3, X2^Y6^X7, Y2^X6^Y7, X1^X5^Y6, }, // 469 + {X3, Y3, X2^Y6^X7, Y2^X6^Y7, }, // 470 + {X6^Y6, X3, Y3, Y2^Y6^X7, }, // 471 + {Y2^X6^Y6, X3, Y3, X2^X6^Y6, }, // 472 + {X3, Y3, Y2^Y6^X7, X6^Y6, }, // 473 + {Y2^Y6^X7, X3, Y3, X6^Y7, }, // 474 + {Y2^Y6^X7, X6^Y7, X3, Y3, }, // 475 + {Y4^X8, X1^X5^Y7, Y1^Y5^X7, X2^X6^Y6, }, // 476 + {Y4^X7, Y0^X4^Y7, X1^X5^Y6, Y1^Y5^X6, }, // 477 + {Y4^X8, Y1^X5^Y7, X1^Y5^X7, Y2^X6^Y6, }, // 478 + {Y3^X7, Y0^X4^Y6, X1^Y4^X6, Y1^X5^Y5, }, // 479 + {Y3, X5^Y8, X2^Y6^X7, Y2^X6^Y7, }, // 480 + {Y3, Y1^X5^Y8, X2^X6^Y7, Y2^Y6^X7, }, // 481 + {X3, Y3^X7, Y1^X5^Y6, X1^Y5^X6, }, // 482 + {X3, Y3^X6, Y1^X4^Y6, Y2^X5^Y5, }, // 483 + {Y3, X1^X5^Y8, Y2^Y6^X7, X2^X6^Y7, }, // 484 + {Y3, X1^X5^Y8, X2^X6^Y7, Y2^Y6^X7, }, // 485 + {X3, Y3, Y1^X5^Y7, X2^X6^Y6, }, // 486 + {X3, Y3, X1^X5^Y7, Y2^X6^Y6, }, // 487 + {X3, Y3, X1^X5^Y7, X2^X6^Y6, }, // 488 + {Y3, X2^Y6^X7, Y1^X6^Y7, Y2^X5^Y6, }, // 489 + {X3, Y3, X2^Y6^X7, Y1^X6^Y7, }, // 490 + {X2^X6^Y6, X3, Y3, Y1^X6^Y6, }, // 491 + {X2^X6^Y6, X3, Y3, Y2^X6^Y6, }, // 492 + {X3, Y3, Y1^X6^Y7, X2^X6^Y6, }, // 493 + {Y2^X6^Y6, X3, Y3, Y1^X6^Y7, }, // 494 + {Y2^X6^Y6, Y1^X6^Y8, X3, Y3, }, // 495 + {Y2^Y6^X7, X3, Y3, Y1^X6^Y7, }, // 496 + {X6^X8^Y8, Y6, X7, X8^Y10, }, // 497 + {X6^X8^Y8, Y3, Y6, X7^Y10, }, // 498 + {X6^X8^Y8, X3, Y3, X7^Y9, }, // 499 + {X6^X8^Y8, Y2, X3, Y3^X10, }, // 500 + {X6^X8^Y8, X2, Y2, X3^Y8, }, // 501 + {Z0^X6^Y6, X6, X7, Y7^X11, }, // 502 + {Z0^X6^Y6, Y3, X6, X7^Y10, }, // 503 + {Z0^X6^Y6, X3, Y3, X6^Y10, }, // 504 + {Z0^X6^Y6, X6^X9^Y9, X7, Y7, }, // 505 + {Z0^X6^Y6, X6^X9^Y9, Y3, X7, }, // 506 + {Z0^X6^Y6, X6^X9^Y9, X3, Y3, }, // 507 + {Z0^X6^Y6, X6^X9^Y9, Y2, X3, }, // 508 + {Z0^X6^Y6, X6^X9^Y9, X2, Y2, }, // 509 + {Z1^Y6^X7, X7, Y7, X8^Y10, }, // 510 + {Z1^Y6^X7, Y3, X7, Y7^X10, }, // 511 + {Z1^Y6^X7, X3, Y3, X7^Y9, }, // 512 + {Z1^Y6^X7, Z0^X6^Y7, X7, Y7, }, // 513 + {Z1^Y6^X7, Z0^X6^Y7, Y3, X7, }, // 514 + {Z1^Y6^X7, Z0^X6^Y7, X3, Y3, }, // 515 + {Y6^X7, S0^X6^Y7, 0, 0, }, // 516 + {Y5^X7, S0^X6^Y6, 0, 0, }, // 517 + {Y5^X6, S0^X5^Y6, 0, 0, }, // 518 + {Y4^X6, S0^X5^Y5, 0, 0, }, // 519 + {Y4^X5, S0^X4^Y5, 0, 0, }, // 520 + {X6^Y8, Y6^X8, S0^X7^Y7, 0, }, // 521 + {X6^Y7, Y5^X8, S0^Y6^X7, 0, }, // 522 + {X5^Y7, Y5^X7, S0^X6^Y6, 0, }, // 523 + {X5^Y6, Y4^X7, S0^Y5^X6, 0, }, // 524 + {X3^Y6, Y4^X6, S0^X5^Y5, 0, }, // 525 + {Y6^X9, X6^Y9, Y7^X8, S0^X7^Y8, }, // 526 + {Y5^X9, X6^Y8, Y6^X8, S0^X7^Y7, }, // 527 + {Y5^X8, X5^Y8, Y6^X7, S0^X6^Y7, }, // 528 + {Y3^X8, X5^Y7, Y5^X7, S0^X6^Y6, }, // 529 + {Y3^X7, X3^Y7, Y5^X6, S0^X5^Y6, }, // 530 + {Y5, X6^Y9, X7^Y8, Y6^X9, }, // 531 + {X3, Y3^X9, X6^Y7, Y5^X8, }, // 532 + {Y2, Y3^X8, X3^Y7, Y5^X7, }, // 533 + {Y6^X9, Y7^X8, S0^X7^Y8, Z0^X5^Y5, }, // 534 + {X6^Y8, Y6^X8, S0^X7^Y7, Z0^X5^Y5, }, // 535 + {X5^Y8, Y6^X7, S0^X6^Y7, Z0^X5^Y5, }, // 536 + {Y3^X7, X5^Y7, S0^X6^Y6, Z0^X5^Y5, }, // 537 + {Y3^X6, X3^Y7, S0^X5^Y6, Z0^X5^Y5, }, // 538 + {X6, Y6, Y7^X10, X7^Y10, }, // 539 + {Y6, X7^Y9, Y7^X9, S0^X8^Y8, }, // 540 + {X6, X7^Y8, Y6^X9, S0^Y7^X8, }, // 541 + {Y3, X6^Y8, Y6^X8, S0^X7^Y7, }, // 542 + {X3, Y3^X8, X6^Y7, S0^Y6^X7, }, // 543 + {Y2, Y3^X7, X3^Y7, S0^X6^Y6, }, // 544 + {X6^X8^Y8, Y6, X7, Y7^X11, }, // 545 + {X6^X8^Y8, X3, Y3, Y6^X10, }, // 546 + {X6^X8^Y8, X2, Y2, Y3^X9, }, // 547 + {X6, X7, Y7^X10, Y8^X9, }, // 548 + {Z0^Y6^X7, X7, Y7, X8^Y10, }, // 549 + {Z0^Y6^X7, Y3, X7, X8^Y9, }, // 550 + {Z0^Y6^X7, X3, Y3, X7^Y9, }, // 551 + {Z0^Y6^X7, Z4^X6^Y7, X7, Y7, }, // 552 + {Z0^Y6^X7, Z4^X6^Y7, Y3, X7, }, // 553 + {Z0^Y6^X7, Z4^X6^Y7, X3, Y3, }, // 554 + {Z0^Y6^X7, Z4^X6^Y7, Y2, X3, }, // 555 + {S0^X6^Y7, S1^Y6^X7, 0, 0, }, // 556 + {S0^Y5^X7, S1^X6^Y6, 0, 0, }, // 557 + {S0^X5^Y6, S1^Y5^X6, 0, 0, }, // 558 + {S0^Y4^X6, S1^X5^Y5, 0, 0, }, // 559 + {S0^X4^Y5, S1^Y4^X5, 0, 0, }, // 560 + {Y5^X9, S0^X7^Y7, S1^Y6^X8, 0, }, // 561 + {Y5^X8, S0^X6^Y7, S1^Y6^X7, 0, }, // 562 + {Y4^X8, S0^X6^Y6, S1^Y5^X7, 0, }, // 563 + {Y4^X7, S0^X5^Y6, S1^Y5^X6, 0, }, // 564 + {Y3^X7, S0^X5^Y5, S1^Y4^X6, 0, }, // 565 + {X6^Y9, Y6^X9, S0^X7^Y8, S1^Y7^X8, }, // 566 + {X6^Y8, Y5^X9, S0^X7^Y7, S1^Y6^X8, }, // 567 + {X5^Y8, Y5^X8, S0^X6^Y7, S1^Y6^X7, }, // 568 + {Y3^X8, X5^Y7, S0^X6^Y6, S1^Y5^X7, }, // 569 + {Y3^X7, X3^Y7, S0^X5^Y6, S1^Y5^X6, }, // 570 + {X6, X7^Y9, Y6^X10, S0^X8^Y8, }, // 571 + {Y5, X6^Y9, Y6^X9, S0^X7^Y8, }, // 572 + {Y3, X6^Y8, Y5^X9, S0^X7^Y7, }, // 573 + {X3, Y3^X9, Y5^X8, S0^X6^Y7, }, // 574 + {Y2, X3^Y7, Y3^X8, S0^X6^Y6, }, // 575 + {Y6^X9, S0^X7^Y8, S1^Y7^X8, Z0^X5^Y5, }, // 576 + {X6^Y8, S0^Y6^X8, S1^X7^Y7, Z0^X5^Y5, }, // 577 + {X5^Y8, S0^X6^Y7, S1^Y6^X7, Z0^X5^Y5, }, // 578 + {Y3^X8, S0^X6^Y6, S1^Y5^X7, Z0^X5^Y5, }, // 579 + {Y3^X6, X3^Y7, S0^X5^Y6, S1^X5^Y5, }, // 580 + {X6, Y6^X10, X7^Y9, S0^Y7^X9, }, // 581 + {X5, X6^Y9, Y6^X9, S0^X7^Y8, }, // 582 + {Y3, X5^Y9, X6^Y8, S0^Y6^X8, }, // 583 + {X3, Y3^X8, X5^Y8, S0^X6^Y7, }, // 584 + {Y2, Y3^X8, X3^Y7, S0^X6^Y6, }, // 585 + {Y6, X7^Y9, S0^X8^Y8, S1^Y7^X9, }, // 586 + {X6, Y6^X9, S0^X7^Y8, S1^Y7^X8, }, // 587 + {Y3, X6^Y8, S0^X7^Y7, S1^Y6^X8, }, // 588 + {X3, Y3^X8, S0^X6^Y7, S1^Y6^X7, }, // 589 + {X6, X7, Y7^X10, S0^X8^Y9, }, // 590 + {Y3, X6, X7^Y9, S0^Y7^X9, }, // 591 + {X3, Y3, X6^Y9, S0^X7^Y8, }, // 592 + {Y2, X3, Y3^X9, S0^X7^Y7, }, // 593 + {Z3^X6^Y6, X6, X7, Y7^X11, }, // 594 + {Z3^X6^Y6, Y3, X6, X7^Y10, }, // 595 + {Z3^X6^Y6, X3, Y3, X6^Y10, }, // 596 + {Z3^X6^Y6, X6^X9^Y9, X7, Y7, }, // 597 + {Z3^X6^Y6, X6^X9^Y9, Y3, X7, }, // 598 + {Z3^X6^Y6, X6^X9^Y9, X3, Y3, }, // 599 + {Z3^X6^Y6, X6^X9^Y9, Y2, X3, }, // 600 + {Z3^X6^Y6, X6^X9^Y9, X2, Y2, }, // 601 + {Z4^Y6^X7, X7, Y7, X8^Y10, }, // 602 + {Z4^Y6^X7, Y3, X7, Y7^X10, }, // 603 + {Z4^Y6^X7, X3, Y3, X7^Y9, }, // 604 + {Z4^Y6^X7, Y2, X3, Y3^X9, }, // 605 + {S1^Y6^X7, X2, Y2, Y3^X8, }, // 606 + {Z4^Y6^X7, Z3^X6^Y7, X7, Y7, }, // 607 + {Z4^Y6^X7, Z3^X6^Y7, Y3, X7, }, // 608 + {Z4^Y6^X7, Z3^X6^Y7, X3, Y3, }, // 609 + {S1^Y6^X7, S2^X6^Y7, 0, 0, }, // 610 + {S1^Y5^X7, S2^X6^Y6, 0, 0, }, // 611 + {S1^Y5^X6, S2^X5^Y6, 0, 0, }, // 612 + {S1^Y4^X6, S2^X5^Y5, 0, 0, }, // 613 + {S1^Y4^X5, S2^X4^Y5, 0, 0, }, // 614 + {S0^X6^Y8, S1^Y6^X8, S2^X7^Y7, 0, }, // 615 + {S0^X6^Y7, S1^Y5^X8, S2^Y6^X7, 0, }, // 616 + {S0^X5^Y7, S1^Y5^X7, S2^X6^Y6, 0, }, // 617 + {S0^X5^Y6, S1^Y4^X7, S2^Y5^X6, 0, }, // 618 + {Y6^X9, S0^X6^Y9, S1^Y7^X8, S2^X7^Y8, }, // 619 + {Y5^X9, S0^X6^Y8, S1^Y6^X8, S2^X7^Y7, }, // 620 + {Y5^X8, S0^X5^Y8, S1^Y6^X7, S2^X6^Y7, }, // 621 + {Y3^X8, S0^X5^Y7, S1^Y5^X7, S2^X6^Y6, }, // 622 + {Y3^X6, X3^Y7, S0^X4^Y6, S1^X5^Y5, }, // 623 + {X6, Y6^X10, S0^X7^Y9, S1^Y7^X9, }, // 624 + {Y5, X6^Y9, S0^X7^Y8, S1^Y6^X9, }, // 625 + {Y3, Y5^X9, S0^X6^Y8, S1^Y6^X8, }, // 626 + {X3, Y3^X9, S0^X6^Y7, S1^Y5^X8, }, // 627 + {Y2, Y3^X8, S0^X5^Y7, S1^Y5^X7, }, // 628 + {S0^X6^Y9, S1^Y7^X8, S2^X7^Y8, Z0^X5^Y5, }, // 629 + {S0^X6^Y8, S1^Y6^X8, S2^X7^Y7, Z0^X5^Y5, }, // 630 + {S0^X5^Y8, S1^Y6^X7, S2^X6^Y7, Z0^X5^Y5, }, // 631 + {Y3^X7, S0^X5^Y7, S1^X6^Y6, S2^X5^Y5, }, // 632 + {X5, X6^Y9, S0^Y6^X9, S1^X7^Y8, }, // 633 + {Y3, X5^Y9, S0^X6^Y8, S1^Y6^X8, }, // 634 + {Y2, Y3^X7, X3^Y8, S0^X5^Y7, }, // 635 + {X6, Y6, Y7^X10, S0^X7^Y10, }, // 636 + {Y3, X6, Y6^X10, S0^X7^Y9, }, // 637 + {X3, Y3, Y6^X9, S0^X6^Y9, }, // 638 + {Y2, X3, Y3^X9, S0^X6^Y8, }, // 639 + {X2, Y2, Y3^X8, S0^X5^Y8, }, // 640 + {Y6, S0^X7^Y9, S1^Y7^X9, S2^X8^Y8, }, // 641 + {X6, S0^X7^Y8, S1^Y6^X9, S2^Y7^X8, }, // 642 + {Y3, S0^X6^Y8, S1^Y6^X8, S2^X7^Y7, }, // 643 + {X3^X8^Y8, X2, Y2, Y3^X9, }, // 644 + {X6, Y7, S0^X7^Y10, S1^Y8^X9, }, // 645 + {Y3, X6, S0^X7^Y9, S1^Y7^X9, }, // 646 + {X3, Y3, S0^X6^Y9, S1^Y7^X8, }, // 647 + {Y2, X3, Y3^X8, S0^X6^Y8, }, // 648 + {Z2^X6^Y6, X6, X7, Y7^X11, }, // 649 + {Z2^X6^Y6, Y3, X6, X7^Y10, }, // 650 + {Z2^X6^Y6, X3, Y3, X6^Y10, }, // 651 + {Z2^X6^Y6, Y2, X3, Y3^X10, }, // 652 + {S2^X6^Y6, X2, Y2, Y3^X8, }, // 653 + {Z2^X6^Y6, X6^X9^Y9, X7, Y7, }, // 654 + {Z2^X6^Y6, X6^X9^Y9, Y3, X7, }, // 655 + {Z2^X6^Y6, X6^X9^Y9, X3, Y3, }, // 656 + {Z2^X6^Y6, X6^X9^Y9, Y2, X3, }, // 657 + {Z2^X6^Y6, X3^X9^Y9, X2, Y2, }, // 658 + {Z3^Y6^X7, X7, Y7, S0^X8^Y10, }, // 659 + {Z3^Y6^X7, Y3, X7, S0^X8^Y9, }, // 660 + {Z3^Y6^X7, X3, Y3, S0^X7^Y9, }, // 661 + {S2^Y6^X7, Y2, X3, Y3^X9, }, // 662 + {S2^Y6^X7, X2, Y2, Y3^X8, }, // 663 + {Z3^Y6^X7, Z2^X6^Y7, X7, Y7, }, // 664 + {Z3^Y6^X7, Z2^X6^Y7, Y3, X7, }, // 665 + {Z3^Y6^X7, Z2^X6^Y7, X3, Y3, }, // 666 + {Z3^Y6^X7, Z2^X6^Y7, Y2, X3, }, // 667 + {Z2^Y6^X7, S2^X6^Y7, X2, Y2, }, // 668 + {Y6, X7^Y8, Y7^X8, Z0^X5^Y6, }, // 669 + {X6, X7^Y7, Y6^X8, Z0^X5^Y6, }, // 670 + {Y3, X6^Y7, Y6^X7, Z0^X5^Y6, }, // 671 + {X6^X8^Y8, Y6, X7, Y7^X8, }, // 672 + {X6^X8^Y8, Y3, Y6, X7^Y7, }, // 673 + {X6^X8^Y8, X3, Y3, Y6^X7, }, // 674 + {X6^X8^Y8, Y2, X3, Y3^X7, }, // 675 + {X3^X8^Y8, X2, Y2, Y3^X6, }, // 676 + {X6, X7, Y7^X8, Z0^X6^Y6, }, // 677 + {Y3, X6, X7^Y7, Z0^X6^Y6, }, // 678 + {X3, Y3, X6^Y7, Z0^X6^Y6, }, // 679 + {Z0^X6^Y6, X6, X7, Y7^X8, }, // 680 + {Z0^X6^Y6, Y3, X6, X7^Y7, }, // 681 + {Z0^X6^Y6, X3, Y3, X6^Y7, }, // 682 + {Z0^X6^Y6, X3^X9^Y9, Y2, Y3, }, // 683 + {Y2^X6^Y6, X3^X9^Y9, X2, Y3, }, // 684 + {Z1^Y6^X7, X7, Y7, Z0^X6^Y7, }, // 685 + {Z1^Y6^X7, Y3, X7, Z0^X6^Y7, }, // 686 + {Z1^Y6^X7, X3, Y3, Z0^X6^Y7, }, // 687 + {Y4^X8, X5^Y7, Y5^X7, S0^X6^Y6, }, // 688 + {Y4^X7, X4^Y7, Y5^X6, S0^X5^Y6, }, // 689 + {Y4^X7, X3^Y7, Y5^X6, S0^X5^Y6, }, // 690 + {X6, Y6^X9, Y7^X8, S0^X7^Y8, }, // 691 + {Y5, X6^Y8, Y6^X8, S0^X7^Y7, }, // 692 + {Y3, Y5^X8, Y6^X7, S0^X6^Y7, }, // 693 + {X3, Y3^X8, Y5^X7, S0^X6^Y6, }, // 694 + {Y2, Y3^X6, X3^Y6, X5^Y5, }, // 695 + {X5, X6^Y8, Y6^X8, S0^X7^Y7, }, // 696 + {Y3, X5^Y8, Y6^X7, S0^X6^Y7, }, // 697 + {X3, Y3^X7, X5^Y7, S0^X6^Y6, }, // 698 + {Y2, Y3^X6, X3^Y7, S0^X5^Y6, }, // 699 + {X6, Y6, Y7^X8, S0^X7^Y8, }, // 700 + {Y3, X6, Y6^X8, S0^X7^Y7, }, // 701 + {X3, Y3, Y6^X7, S0^X6^Y7, }, // 702 + {Y2, X3, Y3^X7, S0^X6^Y6, }, // 703 + {Y6, Y7^X8, S0^X7^Y8, Z0^X5^Y6, }, // 704 + {X6, Y6^X8, S0^X7^Y7, Z0^X5^Y6, }, // 705 + {Y3, Y6^X7, S0^X6^Y7, Z0^X5^Y6, }, // 706 + {X3, Y3^X7, S0^X6^Y6, Z0^X5^Y6, }, // 707 + {Y2, Y3^X6, X3^Y6, S0^X5^Y6, }, // 708 + {X6^X8^Y8, Y6, Y7, S0^X7^Y8, }, // 709 + {X6^X8^Y8, Y3, Y6, S0^X7^Y7, }, // 710 + {S0^X8^Y8, X3, Y3, X6^Y6, }, // 711 + {S0^X8^Y8, Y2, X3, Y3^X6, }, // 712 + {X6, Y7, S0^X7^Y8, Z0^X6^Y6, }, // 713 + {Y3, X6, S0^X7^Y7, Z0^X6^Y6, }, // 714 + {X3, Y3, S0^X6^Y7, Z0^X6^Y6, }, // 715 + {Y2, X3, Y3^X6, S0^X6^Y6, }, // 716 + {Z0^X6^Y6, X6, Y7, S0^X7^Y8, }, // 717 + {Z0^X6^Y6, Y3, X6, S0^X7^Y7, }, // 718 + {Z0^X6^Y6, X3, Y3, S0^X6^Y7, }, // 719 + {S0^X6^Y6, Y2, X3, Y3^X6, }, // 720 + {Z0^X6^Y6, X6^X9^Y9, Y7, S0^X7, }, // 721 + {Z0^X6^Y6, X6^X9^Y9, Y3, S0^X7, }, // 722 + {Z0^X6^Y6, S0^X9^Y9, X3, Y3, }, // 723 + {S0^X6^Y6, X3^X9^Y9, Y2, Y3, }, // 724 + {Z0^Y6^X7, Y7, S0^X7, Z4^X6^Y7, }, // 725 + {Z0^Y6^X7, Y3, S0^X7, Z4^X6^Y7, }, // 726 + {Z0^Y6^X7, X3, Y3, S0^X6^Y7, }, // 727 + {S0^Y6^X7, X3, Y3, Y2^X6^Y7, }, // 728 + {Z0^Y6^X7, Z4^X6^Y7, Y7, S0^X7, }, // 729 + {Z0^Y6^X7, Z4^X6^Y7, Y3, S0^X7, }, // 730 + {Z0^Y6^X7, S0^X6^Y7, X3, Y3, }, // 731 + {S0^Y6^X7, Y2^X6^Y7, X3, Y3, }, // 732 + {Y5^X9, X6^Y8, S0^Y6^X8, S1^X7^Y7, }, // 733 + {Y4^X8, X5^Y7, S0^Y5^X7, S1^X6^Y6, }, // 734 + {X4^Y7, Y4^X7, S0^X5^Y6, S1^Y5^X6, }, // 735 + {X5^Y7, Y4^X8, S0^X6^Y6, S1^Y5^X7, }, // 736 + {X3^Y7, Y4^X7, S0^X5^Y6, S1^Y5^X6, }, // 737 + {Y5, X6^Y8, S0^X7^Y7, S1^Y6^X8, }, // 738 + {Y3, Y5^X8, S0^X6^Y7, S1^Y6^X7, }, // 739 + {X3, Y3^X8, S0^X6^Y6, S1^Y5^X7, }, // 740 + {Y2, Y3^X6, X3^Y6, S0^X5^Y5, }, // 741 + {X5, X6^Y8, S0^Y6^X8, S1^X7^Y7, }, // 742 + {Y3, X5^Y8, S0^X6^Y7, S1^Y6^X7, }, // 743 + {X6, Y6, S0^X7^Y8, S1^Y7^X8, }, // 744 + {Y3, X6, S0^Y6^X8, S1^X7^Y7, }, // 745 + {X3, Y3, S0^X6^Y7, S1^Y6^X7, }, // 746 + {Y2, X3, Y3^X7, S0^Y5^X6, }, // 747 + {Y6, S0^X7^Y8, S1^Y7^X8, Z0^X5^Y6, }, // 748 + {X6, S0^X7^Y7, S1^Y6^X8, Z0^X5^Y6, }, // 749 + {Y3, S0^X6^Y7, S1^Y6^X7, Z0^X5^Y6, }, // 750 + {Y3, X6, S0^X7^Y7, S1^Y6^X8, }, // 751 + {X6^X8^Y8, Y6, S0^X7, S1^Y7^X8, }, // 752 + {X6^X8^Y8, Y3, S0^X7, S1^Y6^X8, }, // 753 + {S1^X8^Y8, X3, Y3, S0^X6^Y6, }, // 754 + {X6, S0^X7, S1^Y7^X8, Z3^X6^Y6, }, // 755 + {Y3, S0^X7, S1^Y6^X8, Z3^X6^Y6, }, // 756 + {X3, Y3, S0^X6^Y7, S1^X6^Y6, }, // 757 + {Z3^X6^Y6, X6, S0^X7, S1^Y7^X8, }, // 758 + {Z3^X6^Y6, Y3, S0^X7, S1^Y6^X8, }, // 759 + {S1^X6^Y6, X3, Y3, S0^X6^Y7, }, // 760 + {Z3^X6^Y6, X6^X9^Y9, S0^X7, S1^Y7, }, // 761 + {Z3^X6^Y6, S1^X9^Y9, Y3, S0^X7, }, // 762 + {S1^X6^Y6, S0^X9^Y9, X3, Y3, }, // 763 + {Z4^Y6^X7, S0^X7, S1^Y7, Z3^X6^Y7, }, // 764 + {S1^Y6^X7, Y3, S0^X7, Z3^X6^Y7, }, // 765 + {S1^Y6^X7, X3, Y3, S0^X6^Y7, }, // 766 + {Z4^Y6^X7, Z3^X6^Y7, S0^X7, S1^Y7, }, // 767 + {S1^Y6^X7, Z3^X6^Y7, Y3, S0^X7, }, // 768 + {S1^Y6^X7, S0^X6^Y7, X3, Y3, }, // 769 + {Y4^X8, S0^X5^Y7, S1^Y5^X7, S2^X6^Y6, }, // 770 + {Y4^X7, S0^X4^Y7, S1^Y5^X6, S2^X5^Y6, }, // 771 + {Y3^X7, S0^X4^Y6, S1^Y4^X6, S2^X5^Y5, }, // 772 + {Y6, S0^X6^Y9, S1^Y7^X8, S2^X7^Y8, }, // 773 + {Y5, S0^X6^Y8, S1^Y6^X8, S2^X7^Y7, }, // 774 + {Y3, Y5^X7, S0^X5^Y7, S1^X6^Y6, }, // 775 + {X3, Y3^X7, S0^X5^Y6, S1^Y5^X6, }, // 776 + {Y2, Y3^X5, X3^Y6, S0^X4^Y5, }, // 777 + {X5, S0^X6^Y8, S1^Y6^X8, S2^X7^Y7, }, // 778 + {Y3, S0^X5^Y8, S1^Y6^X7, S2^X6^Y7, }, // 779 + {X3, Y3^X7, S0^X5^Y7, S1^X6^Y6, }, // 780 + {Y6, S0^X6, S1^Y7^X8, S2^X7^Y8, }, // 781 + {Y3, S0^X6, S1^Y6^X8, S2^X7^Y7, }, // 782 + {X3, Y3, S0^X5^Y7, S1^X6^Y6, }, // 783 + {Y2, X3, Y3^X6, S0^X5^Y6, }, // 784 + {S0^X6, S1^Y7^X8, S2^X7^Y8, Z2^X5^Y6, }, // 785 + {S0^X6, S1^Y6^X8, S2^X7^Y7, Z2^X5^Y6, }, // 786 + {Y3, S0^X6^Y7, S1^Y6^X7, S2^X5^Y6, }, // 787 + {X3, Y3^X7, S0^X6^Y6, S1^X5^Y6, }, // 788 + {S2^X8^Y8, Y6, S0^X6, S1^X7^Y7, }, // 789 + {S2^X8^Y8, Y3, S0^X6, S1^Y6^X7, }, // 790 + {S0^X6, S1^Y7, S2^X7^Y8, Z2^X6^Y6, }, // 791 + {Y3, S0^X6, S1^X7^Y7, S2^X6^Y6, }, // 792 + {Z2^X6^Y6, S0^X6, S1^Y7, S2^X7^Y8, }, // 793 + {S2^X6^Y6, Y3, S0^X6, S1^X7^Y7, }, // 794 + {Z2^X6^Y6, S2^X9^Y9, S0^X6, S1^Y7, }, // 795 + {S2^X6^Y6, S1^X9^Y9, Y3, S0^X6, }, // 796 + {Z2^Y6^X7, S0^X7, S1^Y7, S2^X6^Y7, }, // 797 + {S2^Y6^X7, Y3, S0^X7, S1^X6^Y7, }, // 798 + {Z2^Y6^X7, S2^X6^Y7, S0^X7, S1^Y7, }, // 799 + {S2^Y6^X7, S1^X6^Y7, Y3, S0^X7, }, // 800 + {X2, Z4, Y4, X3, }, // 801 + {X2, Z3, Y4, X3, }, // 802 + {Y3, X3, Z4, X5, }, // 803 + {Y3, X2, Z4, X3, }, // 804 + {Y3, X2, Z3, X3, }, // 805 + {Y2, X2, Y3, X3, }, // 806 + {Z3, X3, Z4, X5^Y5, }, // 807 + {X2, Z4, X3, Y2^X5^Y5, }, // 808 + {X2, Z3, X3, Y2^X5^Y5, }, // 809 + {X2, Y3, X3, Y1^X5^Y5, }, // 810 + {X2, Y3, X3, X1^X5^Y5, }, // 811 + {Y3, Z3, X3, Z4, }, // 812 + {Y2, Y3, X3, Z4, }, // 813 + {Z3, X3, Z4, X5^Y6, }, // 814 + {X2, Z4, X3, Z3^X5^Y6, }, // 815 + {X2, Z3, X3, Z2^X5^Y6, }, // 816 + {X2, Y3, X3, Z2^X5^Y6, }, // 817 + {Z3^X7, Y3, X3, Z4, }, // 818 + {Z3^X7, X2, Z4, X3, }, // 819 + {Z2^X7, X2, Z3, X3, }, // 820 + {Z2^X7, X2, Y3, X3, }, // 821 + {Z3, X3, Z4, Y3^X6^Y6, }, // 822 + {X2, Z4, X3, Y3^X6^Y6, }, // 823 + {X2, Z3, X3, Y3^X6^Y6, }, // 824 + {X2, Y3, X3, Y2^X6^Y6, }, // 825 + {Y3^X6^Y6, Z3, X3, Z4, }, // 826 + {Y3^X6^Y6, X2, Z4, X3, }, // 827 + {Y3^X6^Y6, X2, Z3, X3, }, // 828 + {Y2^X6^Y6, X2, Y3, X3, }, // 829 + {Y3^X6^Y6, Z3^X8, X3, Z4, }, // 830 + {X2^X6^Y6, Z3^X8, Z4, X3, }, // 831 + {X2^X6^Y6, Z2^X8, Z3, X3, }, // 832 + {X2^X6^Y6, Z2^X8, Y3, X3, }, // 833 + {Y3^Y6^X7, X3, Z4, Z3^X6^Y7, }, // 834 + {Y3^Y6^X7, Z4, X3, X2^X6^Y7, }, // 835 + {Y3^Y6^X7, Z3, X3, X2^X6^Y7, }, // 836 + {Y2^Y6^X7, Y3, X3, X2^X6^Y7, }, // 837 + {Y3^Y6^X7, Z3^X6^Y7, X3, Z4, }, // 838 + {Y3^Y6^X7, X2^X6^Y7, Z4, X3, }, // 839 + {Y3^Y6^X7, X2^X6^Y7, Z3, X3, }, // 840 + {Y2^Y6^X7, X2^X6^Y7, Y3, X3, }, // 841 }; -const UINT_64 SW_64K_Z_X_4xaa_RBPLUS[][16]= +const UINT_64 GFX10_SW_PATTERN_NIBBLE4[][4] = { - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, X2 ^ X6 ^ Y6, Y1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y2, X3 ^ Y8, Y3 ^ X8, X4 ^ Y7, Y4 ^ X7, X1 ^ X5 ^ Y6, Y1 ^ Y5 ^ X6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Z0 ^ X4 ^ Y4, X3, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Z0 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, Y4 ^ X9, X6 ^ Y7, Y5 ^ X8, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Z0 ^ X4 ^ Y4, X3, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X9, X5 ^ Y7, Y4 ^ X8, X2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X8, X3 ^ Y7, Y4 ^ X7, X1 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, X6 ^ Y7, Y5 ^ X8, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2, X3, Y3 ^ X8, X5 ^ Y7, X2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X2, Y2, Y3 ^ X7, X3 ^ Y7, X1 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X3, Y3, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X3, Y3, X6 ^ Y7, Y5 ^ X8, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X3, Y3, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y2, X3, Y3 ^ X8, X2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X2, Y2, Y3 ^ X6, X3 ^ Y6, X1 ^ X5 ^ Y5 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, X6 ^ Y7, Y2 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X2, X3, Y3 ^ X8, Y2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, X2, X3, Y3 ^ X7, Y2 ^ X6 ^ Y6, X1 ^ X5 ^ Y7, Y1 ^ X5 ^ Y5 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, X5 ^ Y8, X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X2, X3, Y3 ^ X8, Y2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X2, X3, Y3 ^ X7, Y2 ^ X6 ^ Y6, X1 ^ X5 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X3, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X3, Y3, X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X3, Y3, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y1 ^ X5 ^ Y6, X2, X3, Y3 ^ X7, Y2 ^ Y5 ^ X6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X1 ^ X5 ^ Y6, X2, X3, Y3 ^ X6, Y2 ^ X5 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X3, Y3, X6 ^ Y7, Y6 ^ X7, X5 ^ Y6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X3, Y3, X6 ^ Y7, Y2 ^ Y6 ^ X7, X5 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X3, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X5 ^ Y6 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X3, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X3, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X1 ^ X5 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X3, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X3, Y3, X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X3, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X3, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X3, Y3, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X3, Y3, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X3, Y3, X6 ^ Y7, X6 ^ Y6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X3, Y3, Y2 ^ Y6 ^ X7, X6 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X3, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X3, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, X3, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X3, Y3, X6 ^ Y7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X3, Y3, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X3, Y3 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y2 ^ X6 ^ Y8, X3, Y3 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, X3, Y3 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, X3, Y3 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, X3, Y3 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X3, Y3, X6 ^ Y7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X6 ^ Y7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X3, Y3 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X6 ^ Y7, X3, Y3 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, 0, S0, S1, X0, Y0, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, X2 ^ X6 ^ Y6, Y1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y2, X3 ^ Y8, Y3 ^ X8, X4 ^ Y7, Y4 ^ X7, X1 ^ X5 ^ Y6, Y1 ^ Y5 ^ X6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Z0 ^ X4 ^ Y4, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Z0 ^ X4 ^ Y4, Y3, X5 ^ Y8, Y4 ^ X9, X6 ^ Y7, Y5 ^ X8, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Z0 ^ X4 ^ Y4, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, Z0 ^ X4 ^ Y4, X3, Y3 ^ X9, X5 ^ Y7, Y4 ^ X8, X2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X8, X3 ^ Y7, Y4 ^ X7, X1 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5 ^ Y8, X6 ^ Y7, Y5 ^ X8, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5 ^ Y8, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3 ^ X8, X5 ^ Y7, X2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2, Y3 ^ X7, X3 ^ Y7, X1 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3, X6 ^ Y7, Y5 ^ X8, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X3, Y3 ^ X8, X2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, Y2, Y3 ^ X6, X3 ^ Y6, X1 ^ X5 ^ Y5 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5 ^ Y8, X6 ^ Y7, Y2 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3 ^ X8, Y2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, X3, Y3 ^ X7, Y2 ^ X6 ^ Y6, X1 ^ X5 ^ Y7, Y1 ^ X5 ^ Y5 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5 ^ Y8, X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3 ^ X8, Y2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X3, Y3 ^ X7, Y2 ^ X6 ^ Y6, X1 ^ X5 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y3, X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y3, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y1 ^ X5 ^ Y6, X3, Y3 ^ X7, Y2 ^ Y5 ^ X6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X1 ^ X5 ^ Y6, X3, Y3 ^ X6, Y2 ^ X5 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, X6 ^ Y7, Y6 ^ X7, X5 ^ Y6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, X6 ^ Y7, Y2 ^ Y6 ^ X7, X5 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X5 ^ Y6 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X1 ^ X5 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y3, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y3, X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y3, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y3, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y3, X6 ^ Y7, X6 ^ Y6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y3, Y2 ^ Y6 ^ X7, X6 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y3, X6 ^ Y7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y3, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, Y3 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y2 ^ X6 ^ Y8, Y3 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, Y3 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, Y3 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, Y3 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y3, X6 ^ Y7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X6 ^ Y7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y3 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X6 ^ Y7, Y3 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X5 ^ Y7, X2 ^ X6 ^ Y6, Y1 ^ Y5 ^ X7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y2, X3 ^ Y8, Y3 ^ X8, X4 ^ Y7, Y4 ^ X7, X1 ^ X5 ^ Y6, Y1 ^ Y5 ^ X6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Z0 ^ X4 ^ Y4, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Z0 ^ X4 ^ Y4, X5 ^ Y8, Y4 ^ X9, X6 ^ Y7, Y5 ^ X8, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Z0 ^ X4 ^ Y4, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, X3, Z0 ^ X4 ^ Y4, Y3 ^ X9, X5 ^ Y7, Y4 ^ X8, X2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y2, Z0 ^ X4 ^ Y4, Y3 ^ X8, X3 ^ Y7, Y4 ^ X7, X1 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y8, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y8, X6 ^ Y7, Y5 ^ X8, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y8, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X8, X5 ^ Y7, X2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X7, X3 ^ Y7, X1 ^ Y5 ^ X6, Y1 ^ X5 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y5 ^ X8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X6 ^ Y7, Y5 ^ X8, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, Y2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3 ^ X8, X2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, Y2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, Y3 ^ X6, X3 ^ Y6, X1 ^ X5 ^ Y5 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5 ^ Y8, X6 ^ Y7, Y2 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3 ^ X8, Y2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, X3, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y3 ^ X7, Y2 ^ X6 ^ Y6, X1 ^ X5 ^ Y7, Y1 ^ X5 ^ Y5 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y8, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y8, X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3 ^ X8, Y2 ^ Y5 ^ X7, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, X3, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, Y3 ^ X7, Y2 ^ X6 ^ Y6, X1 ^ X5 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y1 ^ X5 ^ Y6, Y3 ^ X7, Y2 ^ Y5 ^ X6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X2, X3, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X1 ^ X5 ^ Y6, Y3 ^ X6, Y2 ^ X5 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X6 ^ Y7, Y6 ^ X7, X5 ^ Y6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X6 ^ Y7, Y2 ^ Y6 ^ X7, X5 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X5 ^ Y6 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, Z0 ^ X5 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X1 ^ X5 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y7, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y6 ^ X7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y7, X6 ^ Y6 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ Y6 ^ X7, X6 ^ Y6 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y2 ^ X6 ^ Y8 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X6 ^ Y7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {S0, S1, X0, Y0, X1, Y1, X2, Y2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {0, S0, S1, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X6 ^ Y7 }, - {0, 0, S0, S1, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, X0, Y0, X1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, X0, Y0, X3, Y3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + {0, 0, 0, 0, }, // 0 + {Y7^X9, 0, 0, 0, }, // 1 + {Y7^X8, 0, 0, 0, }, // 2 + {Y6^X8, 0, 0, 0, }, // 3 + {Y6^X7, 0, 0, 0, }, // 4 + {Y5^X7, 0, 0, 0, }, // 5 + {X8^Y8, 0, 0, 0, }, // 6 + {X7^Y7, 0, 0, 0, }, // 7 + {X6^Y6, 0, 0, 0, }, // 8 + {X8^Y9, Y8^X9, 0, 0, }, // 9 + {Y7^X9, X8^Y8, 0, 0, }, // 10 + {X7^Y8, Y7^X8, 0, 0, }, // 11 + {Y6^X8, X7^Y7, 0, 0, }, // 12 + {X6^Y7, Y6^X7, 0, 0, }, // 13 + {X5^Y6, 0, 0, 0, }, // 14 + {Z0^X5^Y6, 0, 0, 0, }, // 15 + {X8^Y8, Y7^X9, 0, 0, }, // 16 + {X7^Y7, Y6^X8, 0, 0, }, // 17 + {Y7^X11, X9^Y9, Y8^X10, 0, }, // 18 + {Y7^X10, X8^Y9, Y8^X9, 0, }, // 19 + {Y6^X10, X8^Y8, Y7^X9, 0, }, // 20 + {Y6^X9, X7^Y8, Y7^X8, 0, }, // 21 + {Y3^X9, X7^Y7, Y6^X8, 0, }, // 22 + {Y8^X9, X6^Y6, 0, 0, }, // 23 + {X8^Y8, X6^Y6, 0, 0, }, // 24 + {Y7^X8, X6^Y6, 0, 0, }, // 25 + {X7^Y7, Z0^X6^Y6, 0, 0, }, // 26 + {X6^Y7, Z0^X6^Y6, 0, 0, }, // 27 + {X8^Y10, Y8^X10, X9^Y9, 0, }, // 28 + {X7^Y9, Y7^X9, X8^Y8, 0, }, // 29 + {X6^Y9, X7^Y8, Y7^X8, 0, }, // 30 + {Y3^X8, X6^Y8, X7^Y7, 0, }, // 31 + {X8^Y11, Y8^X11, X9^Y10, Y9^X10, }, // 32 + {Y7^X11, X8^Y10, Y8^X10, X9^Y9, }, // 33 + {X7^Y10, Y7^X10, X8^Y9, Y8^X9, }, // 34 + {Y3^X10, X7^Y9, Y7^X9, X8^Y8, }, // 35 + {X3^Y9, Y3^X9, X7^Y8, Y7^X8, }, // 36 + {X9^Y9, Y8^X10, X6^Y7, 0, }, // 37 + {X8^Y9, Y8^X9, X6^Y7, 0, }, // 38 + {X8^Y8, Y7^X9, X6^Y7, 0, }, // 39 + {X7^Y8, Y7^X8, Z0^X6^Y7, 0, }, // 40 + {Y3^X8, X7^Y7, Z0^X6^Y7, 0, }, // 41 + {X8^Y10, Y7^X11, X9^Y9, Y8^X10, }, // 42 + {Y3^X10, X7^Y9, X8^Y8, Y7^X9, }, // 43 + {Y3^X9, X3^Y9, X7^Y8, Y7^X8, }, // 44 + {Y2^X7^Y7, 0, 0, 0, }, // 45 + {X2^Y6^X7, 0, 0, 0, }, // 46 + {Y1^X6^Y6, 0, 0, 0, }, // 47 + {X7^Y9, X8^Y8, 0, 0, }, // 48 + {Y7^X8, Y2^X7^Y8, 0, 0, }, // 49 + {X6^Y8, X2^X7^Y7, 0, 0, }, // 50 + {X5^Y8, Y1^X6^Y7, 0, 0, }, // 51 + {Y6^X8, Y2^X7^Y7, 0, 0, }, // 52 + {Y6^X7, Y1^X6^Y7, 0, 0, }, // 53 + {X7^Y9, X8^Y8, Y7^X9, 0, }, // 54 + {X7^Y9, Y7^X9, Y2^X8^Y8, 0, }, // 55 + {X6^Y9, X7^Y8, X2^Y7^X8, 0, }, // 56 + {X3^Y9, X6^Y8, Y1^X7^Y7, 0, }, // 57 + {Y2^X7^Y8, X6^Y6, 0, 0, }, // 58 + {X2^X7^Y7, Z0^X6^Y6, 0, 0, }, // 59 + {Y1^X6^Y7, Z0^X6^Y6, 0, 0, }, // 60 + {Y3^X8, X6^Y8, Y1^X7^Y7, 0, }, // 61 + {Y7^X11, Y8^X10, X8^Y10, X9^Y9, }, // 62 + {Y7^X10, X7^Y10, Y8^X9, Y2^X8^Y9, }, // 63 + {Y3^X10, X7^Y9, Y7^X9, X2^X8^Y8, }, // 64 + {Y3^X9, X3^Y9, Y7^X8, Y1^X7^Y8, }, // 65 + {Y7^X9, Y2^X8^Y8, X6^Y7, 0, }, // 66 + {X7^Y8, X2^Y7^X8, Z4^X6^Y7, 0, }, // 67 + {X3^Y8, Y1^X7^Y7, Z4^X6^Y7, 0, }, // 68 + {Y3^X10, X7^Y9, Y7^X9, Y2^X8^Y8, }, // 69 + {Y2^Y6^X8, 0, 0, 0, }, // 70 + {Y1^X6^Y7, 0, 0, 0, }, // 71 + {Y1^Y5^X7, 0, 0, 0, }, // 72 + {X7^Y8, Y2^Y7^X8, 0, 0, }, // 73 + {X2^X7^Y8, Y2^Y7^X8, 0, 0, }, // 74 + {X2^X7^Y7, Y1^Y6^X8, 0, 0, }, // 75 + {X1^X6^Y7, Y1^Y6^X7, 0, 0, }, // 76 + {Y6^X9, Y2^Y7^X8, 0, 0, }, // 77 + {X2^Y7^X8, Y2^X7^Y8, 0, 0, }, // 78 + {X2^Y6^X8, Y1^X7^Y7, 0, 0, }, // 79 + {X1^Y6^X7, Y1^X6^Y7, 0, 0, }, // 80 + {Y6^X10, X2^X8^Y8, Y2^Y7^X9, 0, }, // 81 + {Y6^X9, Y2^Y7^X8, Y1^X7^Y8, 0, }, // 82 + {Y3^X9, X1^X7^Y7, Y1^Y6^X8, 0, }, // 83 + {Y2^Y7^X8, X6^Y6, 0, 0, }, // 84 + {Y1^X7^Y7, Z3^X6^Y6, 0, 0, }, // 85 + {X1^X6^Y8, Y1^X6^Y6, 0, 0, }, // 86 + {X7^Y9, X2^Y7^X9, Y2^X8^Y8, 0, }, // 87 + {X6^Y9, X2^Y7^X8, Y1^X7^Y8, 0, }, // 88 + {X3^Y8, X1^Y6^X8, Y1^X7^Y7, 0, }, // 89 + {X7^Y10, Y7^X10, X8^Y9, Y2^Y8^X9, }, // 90 + {X7^Y10, Y7^X10, X2^X8^Y9, Y2^Y8^X9, }, // 91 + {Y3^X10, X7^Y9, X2^X8^Y8, Y1^Y7^X9, }, // 92 + {X3^Y9, Y3^X9, X1^X7^Y8, Y1^Y7^X8, }, // 93 + {X2^X8^Y8, Y2^Y7^X9, X6^Y7, 0, }, // 94 + {Y2^Y7^X8, Y1^X7^Y8, Z3^X6^Y7, 0, }, // 95 + {Y2^Y7^X8, X1^X7^Y8, Z3^X6^Y7, 0, }, // 96 + {X7^Y10, X8^Y9, Y7^X10, Y2^Y8^X9, }, // 97 + {X7^Y10, Y7^X10, X2^Y8^X9, Y2^X8^Y9, }, // 98 + {Y3^X10, X7^Y9, X2^Y7^X9, Y1^X8^Y8, }, // 99 + {Y3^X9, X3^Y9, X1^Y7^X8, Y1^X7^Y8, }, // 100 + {X1^Y5^X6, 0, 0, 0, }, // 101 + {Y2^Y6^X7, 0, 0, 0, }, // 102 + {X1^Y6^X7, 0, 0, 0, }, // 103 + {Y0^X5^Y7, X1^X6^Y6, 0, 0, }, // 104 + {Z1^X5^Y6, 0, 0, 0, }, // 105 + {Y1^X5^Y6, 0, 0, 0, }, // 106 + {X1^Y6^X8, Y2^X7^Y7, 0, 0, }, // 107 + {Y2^X7^Y7, X1^Y6^X8, 0, 0, }, // 108 + {X7^Y9, X2^X8^Y8, Y2^Y7^X9, 0, }, // 109 + {Y1^X7^Y9, X2^X8^Y8, Y2^Y7^X9, 0, }, // 110 + {X6^Y8, X1^X7^Y7, Y1^Y6^X8, 0, }, // 111 + {X3^Y8, Y0^X6^Y7, X1^Y6^X7, 0, }, // 112 + {X2^X7^Y8, Y1^X6^Y6, 0, 0, }, // 113 + {Y2^Y7^X8, Y1^X6^Y6, 0, 0, }, // 114 + {Y1^X7^Y9, X2^Y7^X9, Y2^X8^Y8, 0, }, // 115 + {Y1^X7^Y8, X1^Y6^X9, Y2^Y7^X8, 0, }, // 116 + {Y1^X6^Y9, Y2^X7^Y8, X1^Y7^X8, 0, }, // 117 + {Y7^X10, Y1^X7^Y10, X2^X8^Y9, Y2^Y8^X9, }, // 118 + {Y3^X10, X1^X7^Y9, Y1^Y7^X9, X2^X8^Y8, }, // 119 + {Y3^X8, X3^Y9, Y0^X6^Y8, X1^X7^Y7, }, // 120 + {Y2^Y7^X9, X2^X8^Y8, Z2^X6^Y7, 0, }, // 121 + {X2^X8^Y8, Y2^Y7^X9, Y1^X6^Y7, 0, }, // 122 + {Y3^X10, Y1^X7^Y9, X1^Y7^X9, Y2^X8^Y8, }, // 123 + {Y3^X10, Y1^X7^Y9, Y2^X8^Y8, X1^Y7^X9, }, // 124 + {Y8^X9, Z0^X6^Y6, 0, 0, }, // 125 + {X8^Y8, Z0^X6^Y6, 0, 0, }, // 126 + {Y7^X8, Z0^X6^Y6, 0, 0, }, // 127 + {X9^Y9, Y8^X10, Z0^X6^Y7, 0, }, // 128 + {X8^Y9, Y8^X9, Z0^X6^Y7, 0, }, // 129 + {X8^Y8, Y7^X9, Z0^X6^Y7, 0, }, // 130 + {S0^X8^Y8, 0, 0, 0, }, // 131 + {S0^Y7^X8, 0, 0, 0, }, // 132 + {S0^X7^Y7, 0, 0, 0, }, // 133 + {S0^Y6^X7, 0, 0, 0, }, // 134 + {S0^X6^Y6, 0, 0, 0, }, // 135 + {Y8^X9, S0^X8^Y9, 0, 0, }, // 136 + {Y7^X9, S0^X8^Y8, 0, 0, }, // 137 + {Y7^X8, S0^X7^Y8, 0, 0, }, // 138 + {Y6^X8, S0^X7^Y7, 0, 0, }, // 139 + {Y6^X7, S0^X6^Y7, 0, 0, }, // 140 + {X8^Y10, Y8^X10, S0^X9^Y9, 0, }, // 141 + {X8^Y9, Y7^X10, S0^Y8^X9, 0, }, // 142 + {X7^Y9, Y7^X9, S0^X8^Y8, 0, }, // 143 + {X7^Y8, Y6^X9, S0^Y7^X8, 0, }, // 144 + {X3^Y8, Y6^X8, S0^X7^Y7, 0, }, // 145 + {S0^X8^Y9, Z0^X6^Y6, 0, 0, }, // 146 + {S0^X8^Y8, Z0^X6^Y6, 0, 0, }, // 147 + {S0^X7^Y8, Z0^X6^Y6, 0, 0, }, // 148 + {S0^X7^Y7, Z0^X6^Y6, 0, 0, }, // 149 + {S0^X6^Y7, Z0^X6^Y6, 0, 0, }, // 150 + {Y7^X10, X8^Y9, S0^Y8^X9, 0, }, // 151 + {X6^Y9, X7^Y8, S0^Y7^X8, 0, }, // 152 + {Y3^X8, X6^Y8, S0^X7^Y7, 0, }, // 153 + {Y8^X11, X8^Y11, Y9^X10, S0^X9^Y10, }, // 154 + {Y7^X11, X8^Y10, Y8^X10, S0^X9^Y9, }, // 155 + {Y7^X10, X7^Y10, Y8^X9, S0^X8^Y9, }, // 156 + {Y3^X10, X7^Y9, Y7^X9, S0^X8^Y8, }, // 157 + {Y3^X9, X3^Y9, Y7^X8, S0^X7^Y8, }, // 158 + {Y8^X10, S0^X9^Y9, Z4^X6^Y7, 0, }, // 159 + {Y7^X10, S0^Y8^X9, Z4^X6^Y7, 0, }, // 160 + {Y7^X9, S0^X8^Y8, Z4^X6^Y7, 0, }, // 161 + {X7^Y8, S0^Y7^X8, Z4^X6^Y7, 0, }, // 162 + {X3^Y8, S0^X7^Y7, Z4^X6^Y7, 0, }, // 163 + {S1^Y7^X9, 0, 0, 0, }, // 164 + {S1^Y7^X8, 0, 0, 0, }, // 165 + {S1^Y6^X8, 0, 0, 0, }, // 166 + {S1^Y6^X7, 0, 0, 0, }, // 167 + {S1^Y5^X7, 0, 0, 0, }, // 168 + {S1^X8^Y8, 0, 0, 0, }, // 169 + {S1^X7^Y7, 0, 0, 0, }, // 170 + {S0^X8^Y9, S1^Y8^X9, 0, 0, }, // 171 + {S0^Y7^X9, S1^X8^Y8, 0, 0, }, // 172 + {S0^X7^Y8, S1^Y7^X8, 0, 0, }, // 173 + {S0^Y6^X8, S1^X7^Y7, 0, 0, }, // 174 + {S0^X6^Y7, S1^Y6^X7, 0, 0, }, // 175 + {S0^X8^Y8, S1^Y7^X9, 0, 0, }, // 176 + {S0^X7^Y7, S1^Y6^X8, 0, 0, }, // 177 + {Y7^X11, S0^X9^Y9, S1^Y8^X10, 0, }, // 178 + {Y7^X10, S0^X8^Y9, S1^Y8^X9, 0, }, // 179 + {Y6^X10, S0^X8^Y8, S1^Y7^X9, 0, }, // 180 + {Y6^X9, S0^X7^Y8, S1^Y7^X8, 0, }, // 181 + {Y3^X9, S0^X7^Y7, S1^Y6^X8, 0, }, // 182 + {S1^Y8^X9, Z3^X6^Y6, 0, 0, }, // 183 + {S1^X8^Y8, Z3^X6^Y6, 0, 0, }, // 184 + {S1^Y7^X8, Z3^X6^Y6, 0, 0, }, // 185 + {S1^Y6^X8, Z3^X6^Y6, 0, 0, }, // 186 + {S0^X6^Y7, S1^X6^Y6, 0, 0, }, // 187 + {X8^Y10, S0^Y8^X10, S1^X9^Y9, 0, }, // 188 + {X7^Y9, S0^Y7^X9, S1^X8^Y8, 0, }, // 189 + {X6^Y9, S0^X7^Y8, S1^Y7^X8, 0, }, // 190 + {X3^Y8, S0^X7^Y7, S1^Y6^X8, 0, }, // 191 + {X8^Y11, Y8^X11, S0^X9^Y10, S1^Y9^X10, }, // 192 + {Y7^X11, X8^Y10, S0^Y8^X10, S1^X9^Y9, }, // 193 + {X7^Y10, Y7^X10, S0^X8^Y9, S1^Y8^X9, }, // 194 + {Y3^X10, X7^Y9, S0^Y7^X9, S1^X8^Y8, }, // 195 + {X3^Y9, Y3^X9, S0^X7^Y8, S1^Y7^X8, }, // 196 + {S0^X9^Y9, S1^Y8^X10, Z3^X6^Y7, 0, }, // 197 + {S0^X8^Y9, S1^Y8^X9, Z3^X6^Y7, 0, }, // 198 + {S0^X8^Y8, S1^Y7^X9, Z3^X6^Y7, 0, }, // 199 + {S0^X7^Y8, S1^Y7^X8, Z3^X6^Y7, 0, }, // 200 + {X3^Y8, S0^X7^Y7, Z3^X6^Y7, 0, }, // 201 + {X8^Y10, Y7^X11, S0^X9^Y9, S1^Y8^X10, }, // 202 + {Y3^X10, X7^Y9, S0^X8^Y8, S1^Y7^X9, }, // 203 + {Y3^X9, X3^Y9, S0^X7^Y8, S1^Y7^X8, }, // 204 + {S2^X8^Y8, 0, 0, 0, }, // 205 + {S2^Y7^X8, 0, 0, 0, }, // 206 + {S2^X7^Y7, 0, 0, 0, }, // 207 + {S2^Y6^X7, 0, 0, 0, }, // 208 + {S2^X6^Y6, 0, 0, 0, }, // 209 + {S1^X6^Y6, 0, 0, 0, }, // 210 + {S1^Y8^X9, S2^X8^Y9, 0, 0, }, // 211 + {S1^Y7^X9, S2^X8^Y8, 0, 0, }, // 212 + {S1^Y7^X8, S2^X7^Y8, 0, 0, }, // 213 + {S1^Y6^X8, S2^X7^Y7, 0, 0, }, // 214 + {S1^Y6^X7, S2^X6^Y7, 0, 0, }, // 215 + {Z2^X5^Y6, 0, 0, 0, }, // 216 + {S1^X5^Y6, 0, 0, 0, }, // 217 + {S0^X8^Y10, S1^Y8^X10, S2^X9^Y9, 0, }, // 218 + {S0^X8^Y9, S1^Y7^X10, S2^Y8^X9, 0, }, // 219 + {S0^X7^Y9, S1^Y7^X9, S2^X8^Y8, 0, }, // 220 + {S0^X7^Y8, S1^Y6^X9, S2^Y7^X8, 0, }, // 221 + {S0^X6^Y8, S1^Y6^X8, S2^X7^Y7, 0, }, // 222 + {S2^X8^Y9, Z2^X6^Y6, 0, 0, }, // 223 + {S2^X8^Y8, Z2^X6^Y6, 0, 0, }, // 224 + {S2^X7^Y8, Z2^X6^Y6, 0, 0, }, // 225 + {S1^X7^Y7, S2^X6^Y6, 0, 0, }, // 226 + {S0^Y7^X10, S1^X8^Y9, S2^Y8^X9, 0, }, // 227 + {X3^Y9, S0^X6^Y8, S1^X7^Y7, 0, }, // 228 + {Y8^X11, S0^X8^Y11, S1^Y9^X10, S2^X9^Y10, }, // 229 + {Y7^X11, S0^X8^Y10, S1^Y8^X10, S2^X9^Y9, }, // 230 + {Y7^X10, S0^X7^Y10, S1^Y8^X9, S2^X8^Y9, }, // 231 + {Y3^X10, S0^X7^Y9, S1^Y7^X9, S2^X8^Y8, }, // 232 + {Y3^X9, S0^X6^Y9, S1^Y7^X8, S2^X7^Y8, }, // 233 + {S1^Y8^X10, S2^X9^Y9, Z2^X6^Y7, 0, }, // 234 + {S1^Y7^X10, S2^Y8^X9, Z2^X6^Y7, 0, }, // 235 + {S1^Y7^X9, S2^X8^Y8, Z2^X6^Y7, 0, }, // 236 + {S0^X7^Y8, S1^Y7^X8, Z2^X6^Y7, 0, }, // 237 + {X3^Y8, S0^X7^Y7, S1^X6^Y7, 0, }, // 238 }; -const UINT_64 SW_64K_Z_X_8xaa_RBPLUS[][16]= +const UINT_8 DCC_64K_R_X_PATIDX[] = { - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X1 ^ X5 ^ Y7, Y1 ^ Y5 ^ X7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, Y2, Y3 ^ X8, X3 ^ Y8, Y4 ^ X7, Y0 ^ X4 ^ Y7, X1 ^ X5 ^ Y6, Y1 ^ Y5 ^ X6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Z0 ^ X4 ^ Y4, X3, Y3, Y4 ^ X9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Z0 ^ X4 ^ Y4, X3, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Z0 ^ X4 ^ Y4, X3, Y3, Y4 ^ X9, Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Z0 ^ X4 ^ Y4, X2, X3, Y3 ^ X9, Y4 ^ X8, Y1 ^ X5 ^ Y7, X1 ^ Y5 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, Z0 ^ X4 ^ Y4, X2, Y2, X3 ^ Y7, Y3 ^ X7, Y0 ^ X4 ^ Y6, X1 ^ Y4 ^ X6, Y1 ^ X5 ^ Y5 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3, Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X2, X3, Y3 ^ X8, Y1 ^ X5 ^ Y7, X1 ^ Y5 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X5 ^ Y5, Y0 ^ X4 ^ Y4, X2, X3, Y3 ^ X7, Y1 ^ X4 ^ Y7, Y2 ^ X5 ^ Y6, X1 ^ Y5 ^ X6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X3, Y3, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X3, Y3, X5 ^ Y8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X3, Y3, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2 ^ X5 ^ Y5, X2, X3, Y3 ^ X7, Y1 ^ X5 ^ Y6, X1 ^ Y5 ^ X6 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X5 ^ Y5, Y0 ^ X4 ^ Y4, X1 ^ X5 ^ Y5, X2, X3, Y3 ^ X6, Y1 ^ X4 ^ Y6, Y2 ^ X5 ^ Y5 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X3, Y3, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, X3, Y3, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y1 ^ X5 ^ Y5 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X6 ^ Y6, Y0 ^ X4 ^ Y4, X3, Y3, X1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7, Y1 ^ X5 ^ Y5 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X3, Y3, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X3, Y3, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X6 ^ Y6, Y0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X3, Y3, X1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X3, Y3, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X3, Y3, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2 ^ X5 ^ Y6, X3, Y3, Y1 ^ X5 ^ Y7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X2 ^ X5 ^ Y6, X3, Y3, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X6 ^ Y6, Y0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, Y2 ^ X5 ^ Y6, X3, Y3, X1 ^ X5 ^ Y7, X2 ^ X6 ^ Y6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X3, Y3, Y6 ^ X7, Y2 ^ X6 ^ Y7, X5 ^ Y6 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X3, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X5 ^ Y6 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X3, Y3, X2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7, Y2 ^ X5 ^ Y6 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X3, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X1 ^ X5 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X7 ^ Y7, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X3, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X1 ^ X5 ^ Y6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X3, Y3, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X3, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, X3, Y3, X2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X3, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X7 ^ Y7, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X3, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X3, Y3, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y6 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, X2 ^ X6 ^ Y6, X3, Y3, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X7 ^ Y7, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X2 ^ X6 ^ Y6, X3, Y3, Y2 ^ X6 ^ Y6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X3, Y3, Y2 ^ X6 ^ Y7, X6 ^ Y6 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X3, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X3, Y3, Y1 ^ X6 ^ Y7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, X3, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X8 ^ Y8, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, X3, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X3, Y3, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X2 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3, Y1 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X8 ^ Y8, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3, Y3, X2 ^ X6 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y2 ^ X6 ^ Y8, X3, Y3 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, X3, Y3 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X2 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y1 ^ X6 ^ Y8, X3, Y3 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, X3, Y3 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X8 ^ Y8, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, X3, Y3 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X3, Y3, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, Y1 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X9 ^ Y9, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, Y3, X2 ^ X6 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7, X3, Y3 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, S0, S1, S2, X0, Y0, X1, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {0, 0, 0, 0, S0, S1, S2, X0, Y4 ^ X9 ^ Y9, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3, Y3 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X1 ^ X5 ^ Y7, Y1 ^ Y5 ^ X7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, Y2, Y3 ^ X8, X3 ^ Y8, Y4 ^ X7, Y0 ^ X4 ^ Y7, X1 ^ X5 ^ Y6, Y1 ^ Y5 ^ X6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Z0 ^ X4 ^ Y4, Y3, Y4 ^ X9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Z0 ^ X4 ^ Y4, Y3, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Z0 ^ X4 ^ Y4, Y3, Y4 ^ X9, Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X2, Z0 ^ X4 ^ Y4, X3, Y3 ^ X9, Y4 ^ X8, Y1 ^ X5 ^ Y7, X1 ^ Y5 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, Z0 ^ X4 ^ Y4, Y2, X3 ^ Y7, Y3 ^ X7, Y0 ^ X4 ^ Y6, X1 ^ Y4 ^ X6, Y1 ^ X5 ^ Y5 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, X5 ^ Y8, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3, Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X3, Y3 ^ X8, Y1 ^ X5 ^ Y7, X1 ^ Y5 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, Y4 ^ X5 ^ Y5, Y0 ^ X4 ^ Y4, X3, Y3 ^ X7, Y1 ^ X4 ^ Y7, Y2 ^ X5 ^ Y6, X1 ^ Y5 ^ X6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3, X5 ^ Y8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y3, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X2, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2 ^ X5 ^ Y5, X3, Y3 ^ X7, Y1 ^ X5 ^ Y6, X1 ^ Y5 ^ X6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, Y4 ^ X5 ^ Y5, Y0 ^ X4 ^ Y4, X1 ^ X5 ^ Y5, X3, Y3 ^ X6, Y1 ^ X4 ^ Y6, Y2 ^ X5 ^ Y5 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y3, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y3, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y1 ^ X5 ^ Y5 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y4 ^ X6 ^ Y6, Y0 ^ X4 ^ Y4, Y3, X1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7, Y1 ^ X5 ^ Y5 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y3, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, Y3, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y4 ^ X6 ^ Y6, Y0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, Y3, X1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y3, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y3, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2 ^ X5 ^ Y6, Y3, Y1 ^ X5 ^ Y7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X2 ^ X5 ^ Y6, Y3, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y4 ^ X6 ^ Y6, Y0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, Y2 ^ X5 ^ Y6, Y3, X1 ^ X5 ^ Y7, X2 ^ X6 ^ Y6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, Y6 ^ X7, Y2 ^ X6 ^ Y7, X5 ^ Y6 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X5 ^ Y6 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y3, X2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7, Y2 ^ X5 ^ Y6 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X1 ^ X5 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y4 ^ X7 ^ Y7, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X1 ^ X5 ^ Y6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y3, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Y3, X2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y4 ^ X7 ^ Y7, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y3, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y3, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y6 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, X2 ^ X6 ^ Y6, Y3, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y4 ^ X7 ^ Y7, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X2 ^ X6 ^ Y6, Y3, Y2 ^ X6 ^ Y6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y3, Y2 ^ X6 ^ Y7, X6 ^ Y6 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, Y3, Y1 ^ X6 ^ Y7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y4 ^ X8 ^ Y8, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y3, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y3, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X2 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, Y1 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y4 ^ X8 ^ Y8, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X2 ^ X6 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y2 ^ X6 ^ Y8, Y3 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, Y3 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X2 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y1 ^ X6 ^ Y8, Y3 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, Y3 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y4 ^ X8 ^ Y8, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8, Y3 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y3, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, Y1 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y4 ^ X9 ^ Y9, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X2 ^ X6 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7, Y3 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y4 ^ X9 ^ Y9, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, X4 ^ Y9, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X9, X4 ^ Y9, Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, Y2, X3, Y3 ^ X9, X4 ^ Y8, Y4 ^ X8, X1 ^ X5 ^ Y7, Y1 ^ Y5 ^ X7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, Y2, Y3 ^ X8, X3 ^ Y8, Y4 ^ X7, Y0 ^ X4 ^ Y7, X1 ^ X5 ^ Y6, Y1 ^ Y5 ^ X6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Z0 ^ X4 ^ Y4, Y4 ^ X9, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Z0 ^ X4 ^ Y4, Y4 ^ X9, X5 ^ Y8, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Z0 ^ X4 ^ Y4, Y4 ^ X9, Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X2, X3, Z0 ^ X4 ^ Y4, Y3 ^ X9, Y4 ^ X8, Y1 ^ X5 ^ Y7, X1 ^ Y5 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, Y2, Z0 ^ X4 ^ Y4, X3 ^ Y7, Y3 ^ X7, Y0 ^ X4 ^ Y6, X1 ^ Y4 ^ X6, Y1 ^ X5 ^ Y5 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y8, Y5 ^ X8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y5 ^ X8, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y3 ^ X8, Y1 ^ X5 ^ Y7, X1 ^ Y5 ^ X7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, X3, Y4 ^ X5 ^ Y5, Y0 ^ X4 ^ Y4, Y3 ^ X7, Y1 ^ X4 ^ Y7, Y2 ^ X5 ^ Y6, X1 ^ Y5 ^ X6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X5 ^ Y8, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X2, X3, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y2 ^ X5 ^ Y5, Y3 ^ X7, Y1 ^ X5 ^ Y6, X1 ^ Y5 ^ X6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X2, X3, Y4 ^ X5 ^ Y5, Y0 ^ X4 ^ Y4, X1 ^ X5 ^ Y5, Y3 ^ X6, Y1 ^ X4 ^ Y6, Y2 ^ X5 ^ Y5 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7, Z0 ^ X5 ^ Y5 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7, Z0 ^ X5 ^ Y5 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y3, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y1 ^ X5 ^ Y5 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y3, Y4 ^ X6 ^ Y6, Y0 ^ X4 ^ Y4, X1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7, Y1 ^ X5 ^ Y5 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y3, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y3, Y4 ^ X6 ^ Y6, Y0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X1 ^ X5 ^ Y8, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X2 ^ X6 ^ Y7, Y2 ^ Y6 ^ X7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y2 ^ X5 ^ Y6, Y1 ^ X5 ^ Y7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y3, Y4 ^ X6 ^ Y6, Z0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, X2 ^ X5 ^ Y6, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y3, Y4 ^ X6 ^ Y6, Y0 ^ X4 ^ Y4, Y1 ^ X5 ^ Y5, Y2 ^ X5 ^ Y6, X1 ^ X5 ^ Y7, X2 ^ X6 ^ Y6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y6 ^ X7, Y2 ^ X6 ^ Y7, X5 ^ Y6 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X5 ^ Y6 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7, Y2 ^ X5 ^ Y6 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X1 ^ X5 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y3, Y4 ^ X7 ^ Y7, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7, X1 ^ X5 ^ Y6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, X2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y3, Y4 ^ X7 ^ Y7, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X2 ^ Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y6 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, X2 ^ X6 ^ Y6, Y1 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y3, Y4 ^ X7 ^ Y7, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y3, Y4 ^ X7 ^ Y7, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X6, X1 ^ X5 ^ Y6, X2 ^ X6 ^ Y6, Y2 ^ X6 ^ Y6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y7, X6 ^ Y6 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, Y1 ^ X6 ^ Y7, X2 ^ X6 ^ Y6 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y3, Y4 ^ X8 ^ Y8, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, X2 ^ X6 ^ Y7, Y2 ^ X6 ^ Y6 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X2 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y1 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y3, Y4 ^ X8 ^ Y8, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y2 ^ X6 ^ Y8 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X2 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y1 ^ X6 ^ Y8 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y3, Y4 ^ X8 ^ Y8, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y3, Y4 ^ X8 ^ Y8, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X7, X1 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2 ^ X6 ^ Y8 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y1 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y3, Y4 ^ X9 ^ Y9, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {S0, S1, S2, X0, Y0, X1, Y1, X2, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, Y2 ^ X6 ^ Y7 }, - {0, S0, S1, S2, X0, Y0, X1, Y1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, S0, S1, S2, X0, Y0, X1, X3, Y3, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, Y1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, S0, S1, S2, X0, Y0, X3, Y3, Y4 ^ X9 ^ Y9, Z0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, S0, S1, S2, X0, X3, Y3, Y4 ^ X9 ^ Y9, Y0 ^ X4 ^ Y4, Y1 ^ Y5 ^ X8, X1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + 0, // 1 pipes 1 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 1, // 1 pipes 2 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 2, // 1 pipes 4 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 3, // 1 pipes 8 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 4, // 1 pipes 16 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 5, // 2 pipes 1 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 6, // 2 pipes 2 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 2, // 2 pipes 4 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 3, // 2 pipes 8 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 4, // 2 pipes 16 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 7, // 4+ pipes 1 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 6, // 4+ pipes 2 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 2, // 4+ pipes 4 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 3, // 4+ pipes 8 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 4, // 4+ pipes 16 bpe ua @ SW_64K_R_X 1xaa @ Navi1x + 0, // 1 pipes 1 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 1, // 1 pipes 2 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 2, // 1 pipes 4 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 3, // 1 pipes 8 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 4, // 1 pipes 16 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 8, // 2 pipes 1 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 9, // 2 pipes 2 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 10, // 2 pipes 4 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 11, // 2 pipes 8 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 12, // 2 pipes 16 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 13, // 4 pipes 1 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 14, // 4 pipes 2 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 15, // 4 pipes 4 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 16, // 4 pipes 8 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 17, // 4 pipes 16 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 18, // 8 pipes 1 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 19, // 8 pipes 2 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 20, // 8 pipes 4 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 21, // 8 pipes 8 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 22, // 8 pipes 16 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 23, // 16 pipes 1 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 24, // 16 pipes 2 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 25, // 16 pipes 4 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 26, // 16 pipes 8 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 27, // 16 pipes 16 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 28, // 32 pipes 1 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 29, // 32 pipes 2 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 30, // 32 pipes 4 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 31, // 32 pipes 8 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 32, // 32 pipes 16 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 33, // 64 pipes 1 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 34, // 64 pipes 2 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 35, // 64 pipes 4 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 36, // 64 pipes 8 bpe pa @ SW_64K_R_X 1xaa @ Navi1x + 37, // 64 pipes 16 bpe pa @ SW_64K_R_X 1xaa @ Navi1x }; -const UINT_64 SW_4K_S3_RBPLUS[][12]= +const UINT_8 HTILE_PATIDX[] = { - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 }, + 0, // 1xaa ua @ HTILE_64K @ Navi1x + 0, // 2xaa ua @ HTILE_64K @ Navi1x + 0, // 4xaa ua @ HTILE_64K @ Navi1x + 0, // 8xaa ua @ HTILE_64K @ Navi1x + 0, // 1 pipes 1xaa pa @ HTILE_64K @ Navi1x + 0, // 1 pipes 2xaa pa @ HTILE_64K @ Navi1x + 0, // 1 pipes 4xaa pa @ HTILE_64K @ Navi1x + 0, // 1 pipes 8xaa pa @ HTILE_64K @ Navi1x + 1, // 2 pipes 1xaa pa @ HTILE_64K @ Navi1x + 1, // 2 pipes 2xaa pa @ HTILE_64K @ Navi1x + 1, // 2 pipes 4xaa pa @ HTILE_64K @ Navi1x + 1, // 2 pipes 8xaa pa @ HTILE_64K @ Navi1x + 2, // 4 pipes 1xaa pa @ HTILE_64K @ Navi1x + 2, // 4 pipes 2xaa pa @ HTILE_64K @ Navi1x + 2, // 4 pipes 4xaa pa @ HTILE_64K @ Navi1x + 2, // 4 pipes 8xaa pa @ HTILE_64K @ Navi1x + 3, // 8 pipes 1xaa pa @ HTILE_64K @ Navi1x + 3, // 8 pipes 2xaa pa @ HTILE_64K @ Navi1x + 3, // 8 pipes 4xaa pa @ HTILE_64K @ Navi1x + 3, // 8 pipes 8xaa pa @ HTILE_64K @ Navi1x + 4, // 16 pipes 1xaa pa @ HTILE_64K @ Navi1x + 4, // 16 pipes 2xaa pa @ HTILE_64K @ Navi1x + 4, // 16 pipes 4xaa pa @ HTILE_64K @ Navi1x + 5, // 16 pipes 8xaa pa @ HTILE_64K @ Navi1x + 6, // 32 pipes 1xaa pa @ HTILE_64K @ Navi1x + 6, // 32 pipes 2xaa pa @ HTILE_64K @ Navi1x + 7, // 32 pipes 4xaa pa @ HTILE_64K @ Navi1x + 8, // 32 pipes 8xaa pa @ HTILE_64K @ Navi1x + 9, // 64 pipes 1xaa pa @ HTILE_64K @ Navi1x + 10, // 64 pipes 2xaa pa @ HTILE_64K @ Navi1x + 11, // 64 pipes 4xaa pa @ HTILE_64K @ Navi1x + 12, // 64 pipes 8xaa pa @ HTILE_64K @ Navi1x }; -const UINT_64 SW_4K_S3_X_RBPLUS[][12]= +const UINT_8 CMASK_64K_PATIDX[] = { - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X3 ^ Z3, X3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, X2 ^ Y2 ^ Z3, X2, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, X2 ^ Y2 ^ Z2, X2, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X2 ^ Z2, X2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, X1 ^ Y1 ^ Z2, X1, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X3 ^ Z3, X2 ^ Z2 ^ Y3, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X3 ^ Z3, X2 ^ Y2 ^ Z2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X2 ^ Z3, X1 ^ Y2 ^ Z2, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X4 ^ Z4, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X4 ^ Z4, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X3 ^ Z4, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X3 ^ Z3, X2 ^ Z2 ^ Y3, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X3 ^ Z3, X2 ^ Y2 ^ Z2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X2 ^ Z3, X1 ^ Y2 ^ Z2, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X4 ^ Z4, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X4 ^ Z4, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X3 ^ Z4, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X4 ^ Z4, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X4 ^ Z4, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X3 ^ Z4, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y3 ^ Z3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y3 ^ Z3, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z2 ^ Y3, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y2 ^ Z2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y2 ^ Z2, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X3 ^ Y3, Y3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Y2 ^ Z2 ^ X3, Y2 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, X2 ^ Y2 ^ Z2, Y2 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3 }, + 0, // 1 bpe ua @ CMASK_64K @ Navi1x + 0, // 2 bpe ua @ CMASK_64K @ Navi1x + 0, // 4 bpe ua @ CMASK_64K @ Navi1x + 0, // 8 bpe ua @ CMASK_64K @ Navi1x + 0, // 1 pipes 1 bpe pa @ CMASK_64K @ Navi1x + 0, // 1 pipes 2 bpe pa @ CMASK_64K @ Navi1x + 0, // 1 pipes 4 bpe pa @ CMASK_64K @ Navi1x + 0, // 1 pipes 8 bpe pa @ CMASK_64K @ Navi1x + 1, // 2 pipes 1 bpe pa @ CMASK_64K @ Navi1x + 1, // 2 pipes 2 bpe pa @ CMASK_64K @ Navi1x + 1, // 2 pipes 4 bpe pa @ CMASK_64K @ Navi1x + 1, // 2 pipes 8 bpe pa @ CMASK_64K @ Navi1x + 2, // 4 pipes 1 bpe pa @ CMASK_64K @ Navi1x + 2, // 4 pipes 2 bpe pa @ CMASK_64K @ Navi1x + 2, // 4 pipes 4 bpe pa @ CMASK_64K @ Navi1x + 2, // 4 pipes 8 bpe pa @ CMASK_64K @ Navi1x + 3, // 8 pipes 1 bpe pa @ CMASK_64K @ Navi1x + 3, // 8 pipes 2 bpe pa @ CMASK_64K @ Navi1x + 3, // 8 pipes 4 bpe pa @ CMASK_64K @ Navi1x + 3, // 8 pipes 8 bpe pa @ CMASK_64K @ Navi1x + 4, // 16 pipes 1 bpe pa @ CMASK_64K @ Navi1x + 4, // 16 pipes 2 bpe pa @ CMASK_64K @ Navi1x + 4, // 16 pipes 4 bpe pa @ CMASK_64K @ Navi1x + 4, // 16 pipes 8 bpe pa @ CMASK_64K @ Navi1x + 5, // 32 pipes 1 bpe pa @ CMASK_64K @ Navi1x + 5, // 32 pipes 2 bpe pa @ CMASK_64K @ Navi1x + 5, // 32 pipes 4 bpe pa @ CMASK_64K @ Navi1x + 5, // 32 pipes 8 bpe pa @ CMASK_64K @ Navi1x + 6, // 64 pipes 1 bpe pa @ CMASK_64K @ Navi1x + 6, // 64 pipes 2 bpe pa @ CMASK_64K @ Navi1x + 6, // 64 pipes 4 bpe pa @ CMASK_64K @ Navi1x + 7, // 64 pipes 8 bpe pa @ CMASK_64K @ Navi1x }; -const UINT_64 SW_64K_S3_RBPLUS[][16]= +const UINT_8 DCC_64K_R_X_RBPLUS_PATIDX[] = { - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, + 0, // 1 bpe ua @ SW_64K_R_X 1xaa @ RbPlus + 1, // 2 bpe ua @ SW_64K_R_X 1xaa @ RbPlus + 2, // 4 bpe ua @ SW_64K_R_X 1xaa @ RbPlus + 3, // 8 bpe ua @ SW_64K_R_X 1xaa @ RbPlus + 4, // 16 bpe ua @ SW_64K_R_X 1xaa @ RbPlus + 0, // 1 pipes (1 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 1, // 1 pipes (1 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 2, // 1 pipes (1 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 3, // 1 pipes (1 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 4, // 1 pipes (1 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 38, // 2 pipes (1-2 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 39, // 2 pipes (1-2 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 40, // 2 pipes (1-2 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 41, // 2 pipes (1-2 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 42, // 2 pipes (1-2 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 43, // 4 pipes (1-2 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 44, // 4 pipes (1-2 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 45, // 4 pipes (1-2 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 46, // 4 pipes (1-2 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 47, // 4 pipes (1-2 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 48, // 8 pipes (2 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 49, // 8 pipes (2 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 50, // 8 pipes (2 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 51, // 8 pipes (2 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 52, // 8 pipes (2 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 53, // 4 pipes (4 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 54, // 4 pipes (4 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 55, // 4 pipes (4 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 56, // 4 pipes (4 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 57, // 4 pipes (4 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 58, // 8 pipes (4 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 59, // 8 pipes (4 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 60, // 8 pipes (4 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 61, // 8 pipes (4 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 62, // 8 pipes (4 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 63, // 16 pipes (4 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 64, // 16 pipes (4 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 65, // 16 pipes (4 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 66, // 16 pipes (4 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 67, // 16 pipes (4 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 68, // 8 pipes (8 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 69, // 8 pipes (8 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 70, // 8 pipes (8 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 71, // 8 pipes (8 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 72, // 8 pipes (8 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 73, // 16 pipes (8 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 74, // 16 pipes (8 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 75, // 16 pipes (8 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 76, // 16 pipes (8 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 77, // 16 pipes (8 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 78, // 32 pipes (8 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 79, // 32 pipes (8 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 80, // 32 pipes (8 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 81, // 32 pipes (8 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 82, // 32 pipes (8 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 83, // 16 pipes (16 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 84, // 16 pipes (16 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 85, // 16 pipes (16 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 86, // 16 pipes (16 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 87, // 16 pipes (16 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 88, // 32 pipes (16 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 89, // 32 pipes (16 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 90, // 32 pipes (16 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 91, // 32 pipes (16 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 92, // 32 pipes (16 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 93, // 64 pipes (16 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 94, // 64 pipes (16 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 95, // 64 pipes (16 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 96, // 64 pipes (16 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 97, // 64 pipes (16 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 98, // 32 pipes (32 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 99, // 32 pipes (32 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 100, // 32 pipes (32 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 101, // 32 pipes (32 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 102, // 32 pipes (32 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 103, // 64 pipes (32 PKRs) 1 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 104, // 64 pipes (32 PKRs) 2 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 105, // 64 pipes (32 PKRs) 4 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 106, // 64 pipes (32 PKRs) 8 bpe pa @ SW_64K_R_X 1xaa @ RbPlus + 107, // 64 pipes (32 PKRs) 16 bpe pa @ SW_64K_R_X 1xaa @ RbPlus }; -const UINT_64 SW_64K_S3_X_RBPLUS[][16]= +const UINT_8 HTILE_RBPLUS_PATIDX[] = { - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, X2 ^ Y2 ^ Z2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X2 ^ Z2, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, X1 ^ Y1 ^ Z2, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X3 ^ Z3, X2 ^ Z2 ^ Y3, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X3 ^ Z3, X2 ^ Y2 ^ Z2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X2 ^ Z3, X1 ^ Y2 ^ Z2, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X4 ^ Z4, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X4 ^ Z4, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X3 ^ Z4, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X3 ^ Z3, X2 ^ Z2 ^ Y3, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X3 ^ Z3, X2 ^ Y2 ^ Z2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X2 ^ Z3, X1 ^ Y2 ^ Z2, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X4 ^ Z4, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X4 ^ Z4, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X3 ^ Z4, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X4 ^ Z4, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X4 ^ Z4, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X3 ^ Z4, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X7 ^ Z7, X3 ^ Y6 ^ Z6, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X6 ^ Z7, X2 ^ Y6 ^ Z6, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X6 ^ Z6, X2 ^ Z5 ^ Y6, Z2 ^ X5 ^ Y5, Y3 ^ X4 ^ Z4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X6 ^ Z6, X2 ^ Y5 ^ Z5, Z2 ^ Y4 ^ X5, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X5 ^ Z6, X1 ^ Y5 ^ Z5, Z2 ^ X4 ^ Y4, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X5 ^ Z5, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X5 ^ Z5, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X4 ^ Z5, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X7 ^ Z7, X3 ^ Y6 ^ Z6, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X6 ^ Z7, X2 ^ Y6 ^ Z6, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X6 ^ Z6, X2 ^ Z5 ^ Y6, Z2 ^ X5 ^ Y5, Y3 ^ X4 ^ Z4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X6 ^ Z6, X2 ^ Y5 ^ Z5, Z2 ^ Y4 ^ X5, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X5 ^ Z6, X1 ^ Y5 ^ Z5, Z2 ^ X4 ^ Y4, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X8 ^ Z8, X3 ^ Y7 ^ Z7, Z3 ^ Y6 ^ X7, Y3 ^ X6 ^ Z6, X4 ^ Y5 ^ Z5, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X7 ^ Z8, X2 ^ Y7 ^ Z7, Z3 ^ X6 ^ Y6, Y3 ^ X5 ^ Z6, X3 ^ Y5 ^ Z5, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X7 ^ Z7, X2 ^ Z6 ^ Y7, Z2 ^ X6 ^ Y6, Y3 ^ X5 ^ Z5, X3 ^ Z4 ^ Y5, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X7 ^ Z7, X2 ^ Y6 ^ Z6, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X6 ^ Z7, X1 ^ Y6 ^ Z6, Z2 ^ X5 ^ Y5, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X7 ^ Z7, X3 ^ Y6 ^ Z6, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X6 ^ Z7, X2 ^ Y6 ^ Z6, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X6 ^ Z6, X2 ^ Z5 ^ Y6, Z2 ^ X5 ^ Y5, Y3 ^ X4 ^ Z4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X6 ^ Z6, X2 ^ Y5 ^ Z5, Z2 ^ Y4 ^ X5, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X5 ^ Z6, X1 ^ Y5 ^ Z5, Z2 ^ X4 ^ Y4, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X8 ^ Z8, X3 ^ Y7 ^ Z7, Z3 ^ Y6 ^ X7, Y3 ^ X6 ^ Z6, X4 ^ Y5 ^ Z5, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X7 ^ Z8, X2 ^ Y7 ^ Z7, Z3 ^ X6 ^ Y6, Y3 ^ X5 ^ Z6, X3 ^ Y5 ^ Z5, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X7 ^ Z7, X2 ^ Z6 ^ Y7, Z2 ^ X6 ^ Y6, Y3 ^ X5 ^ Z5, X3 ^ Z4 ^ Y5, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X7 ^ Z7, X2 ^ Y6 ^ Z6, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X6 ^ Z7, X1 ^ Y6 ^ Z6, Z2 ^ X5 ^ Y5, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y3 ^ Z3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y3 ^ Z3, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z2 ^ Y3, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y2 ^ Z2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y2 ^ Z2, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y6 ^ Z6, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y6 ^ Z6, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z5 ^ Y6, Z2 ^ X5 ^ Y5, Y3 ^ X4 ^ Z4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y5 ^ Z5, Z2 ^ Y4 ^ X5, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y5 ^ Z5, Z2 ^ X4 ^ Y4, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z4 ^ Y5, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y4 ^ Z4, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y4 ^ Z4, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y6 ^ Z6, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y6 ^ Z6, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z5 ^ Y6, Z2 ^ X5 ^ Y5, Y3 ^ X4 ^ Z4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y5 ^ Z5, Z2 ^ Y4 ^ X5, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y5 ^ Z5, Z2 ^ X4 ^ Y4, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y7 ^ Z7, Z3 ^ Y6 ^ X7, Y3 ^ X6 ^ Z6, X4 ^ Y5 ^ Z5, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y7 ^ Z7, Z3 ^ X6 ^ Y6, Y3 ^ X5 ^ Z6, X3 ^ Y5 ^ Z5, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z6 ^ Y7, Z2 ^ X6 ^ Y6, Y3 ^ X5 ^ Z5, X3 ^ Z4 ^ Y5, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y6 ^ Z6, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y6 ^ Z6, Z2 ^ X5 ^ Y5, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y6 ^ Z6, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y6 ^ Z6, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z5 ^ Y6, Z2 ^ X5 ^ Y5, Y3 ^ X4 ^ Z4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y5 ^ Z5, Z2 ^ Y4 ^ X5, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y5 ^ Z5, Z2 ^ X4 ^ Y4, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y7 ^ Z7, Z3 ^ Y6 ^ X7, Y3 ^ X6 ^ Z6, X4 ^ Y5 ^ Z5, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y7 ^ Z7, Z3 ^ X6 ^ Y6, Y3 ^ X5 ^ Z6, X3 ^ Y5 ^ Z5, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z6 ^ Y7, Z2 ^ X6 ^ Y6, Y3 ^ X5 ^ Z5, X3 ^ Z4 ^ Y5, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y6 ^ Z6, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y6 ^ Z6, Z2 ^ X5 ^ Y5, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y8 ^ Z8, Z3 ^ Y7 ^ X8, Y3 ^ X7 ^ Z7, X4 ^ Y6 ^ Z6, Z4 ^ Y5 ^ X6, Y4 ^ X5 ^ Z5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y8 ^ Z8, Z3 ^ X7 ^ Y7, Y3 ^ X6 ^ Z7, X3 ^ Y6 ^ Z6, Z4 ^ X5 ^ Y5, X4 ^ Y4 ^ Z5, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z7 ^ Y8, Z2 ^ X7 ^ Y7, Y3 ^ X6 ^ Z6, X3 ^ Z5 ^ Y6, Z3 ^ X5 ^ Y5, X4 ^ Y4 ^ Z4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y7 ^ Z7, Z2 ^ Y6 ^ X7, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y7 ^ Z7, Z2 ^ X6 ^ Y6, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y7 ^ Z7, Z3 ^ Y6 ^ X7, Y3 ^ X6 ^ Z6, X4 ^ Y5 ^ Z5, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y7 ^ Z7, Z3 ^ X6 ^ Y6, Y3 ^ X5 ^ Z6, X3 ^ Y5 ^ Z5, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z6 ^ Y7, Z2 ^ X6 ^ Y6, Y3 ^ X5 ^ Z5, X3 ^ Z4 ^ Y5, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y6 ^ Z6, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y6 ^ Z6, Z2 ^ X5 ^ Y5, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y8 ^ Z8, Z3 ^ Y7 ^ X8, Y3 ^ X7 ^ Z7, X4 ^ Y6 ^ Z6, Z4 ^ Y5 ^ X6, Y4 ^ X5 ^ Z5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y8 ^ Z8, Z3 ^ X7 ^ Y7, Y3 ^ X6 ^ Z7, X3 ^ Y6 ^ Z6, Z4 ^ X5 ^ Y5, X4 ^ Y4 ^ Z5, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z7 ^ Y8, Z2 ^ X7 ^ Y7, Y3 ^ X6 ^ Z6, X3 ^ Z5 ^ Y6, Z3 ^ X5 ^ Y5, X4 ^ Y4 ^ Z4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y7 ^ Z7, Z2 ^ Y6 ^ X7, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y7 ^ Z7, Z2 ^ X6 ^ Y6, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X5 ^ Y5, Y3 ^ X4 ^ Z4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y4 ^ X5, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X4 ^ Y4, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X5 ^ Y5, Y3 ^ X4 ^ Z4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y4 ^ X5, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X4 ^ Y4, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y6 ^ X7, Y3 ^ X6 ^ Z6, X4 ^ Y5 ^ Z5, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X6 ^ Y6, Y3 ^ X5 ^ Z6, X3 ^ Y5 ^ Z5, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X6 ^ Y6, Y3 ^ X5 ^ Z5, X3 ^ Z4 ^ Y5, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X5 ^ Y5, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X5 ^ Y5, Y3 ^ X4 ^ Z4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y4 ^ X5, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X4 ^ Y4, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y6 ^ X7, Y3 ^ X6 ^ Z6, X4 ^ Y5 ^ Z5, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X6 ^ Y6, Y3 ^ X5 ^ Z6, X3 ^ Y5 ^ Z5, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X6 ^ Y6, Y3 ^ X5 ^ Z5, X3 ^ Z4 ^ Y5, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X5 ^ Y5, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y7 ^ X8, Y3 ^ X7 ^ Z7, X4 ^ Y6 ^ Z6, Z4 ^ Y5 ^ X6, Y4 ^ X5 ^ Z5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X7 ^ Y7, Y3 ^ X6 ^ Z7, X3 ^ Y6 ^ Z6, Z4 ^ X5 ^ Y5, X4 ^ Y4 ^ Z5, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X7 ^ Y7, Y3 ^ X6 ^ Z6, X3 ^ Z5 ^ Y6, Z3 ^ X5 ^ Y5, X4 ^ Y4 ^ Z4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y6 ^ X7, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X6 ^ Y6, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y6 ^ X7, Y3 ^ X6 ^ Z6, X4 ^ Y5 ^ Z5, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X6 ^ Y6, Y3 ^ X5 ^ Z6, X3 ^ Y5 ^ Z5, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X6 ^ Y6, Y3 ^ X5 ^ Z5, X3 ^ Z4 ^ Y5, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y5 ^ X6, Y2 ^ X5 ^ Z5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X5 ^ Y5, Y2 ^ X4 ^ Z5, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y7 ^ X8, Y3 ^ X7 ^ Z7, X4 ^ Y6 ^ Z6, Z4 ^ Y5 ^ X6, Y4 ^ X5 ^ Z5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X7 ^ Y7, Y3 ^ X6 ^ Z7, X3 ^ Y6 ^ Z6, Z4 ^ X5 ^ Y5, X4 ^ Y4 ^ Z5, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X7 ^ Y7, Y3 ^ X6 ^ Z6, X3 ^ Z5 ^ Y6, Z3 ^ X5 ^ Y5, X4 ^ Y4 ^ Z4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y6 ^ X7, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X6 ^ Y6, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y8 ^ X9, Y3 ^ X8 ^ Z8, X4 ^ Y7 ^ Z7, Z4 ^ Y6 ^ X7, Y4 ^ X6 ^ Z6, X5 ^ Y5 ^ Z5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X8 ^ Y8, Y3 ^ X7 ^ Z8, X3 ^ Y7 ^ Z7, Z4 ^ X6 ^ Y6, Y4 ^ X5 ^ Z6, X4 ^ Y5 ^ Z5 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X8 ^ Y8, Y3 ^ X7 ^ Z7, X3 ^ Z6 ^ Y7, Z3 ^ X6 ^ Y6, Y4 ^ X5 ^ Z5, X4 ^ Z4 ^ Y5 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y7 ^ X8, Y2 ^ X7 ^ Z7, X3 ^ Y6 ^ Z6, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X7 ^ Y7, Y2 ^ X6 ^ Z7, X2 ^ Y6 ^ Z6, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y7 ^ X8, Y3 ^ X7 ^ Z7, X4 ^ Y6 ^ Z6, Z4 ^ Y5 ^ X6, Y4 ^ X5 ^ Z5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X7 ^ Y7, Y3 ^ X6 ^ Z7, X3 ^ Y6 ^ Z6, Z4 ^ X5 ^ Y5, X4 ^ Y4 ^ Z5, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X7 ^ Y7, Y3 ^ X6 ^ Z6, X3 ^ Z5 ^ Y6, Z3 ^ X5 ^ Y5, X4 ^ Y4 ^ Z4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y6 ^ X7, Y2 ^ X6 ^ Z6, X3 ^ Y5 ^ Z5, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X6 ^ Y6, Y2 ^ X5 ^ Z6, X2 ^ Y5 ^ Z5, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y8 ^ X9, Y3 ^ X8 ^ Z8, X4 ^ Y7 ^ Z7, Z4 ^ Y6 ^ X7, Y4 ^ X6 ^ Z6, X5 ^ Y5 ^ Z5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X8 ^ Y8, Y3 ^ X7 ^ Z8, X3 ^ Y7 ^ Z7, Z4 ^ X6 ^ Y6, Y4 ^ X5 ^ Z6, X4 ^ Y5 ^ Z5 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X8 ^ Y8, Y3 ^ X7 ^ Z7, X3 ^ Z6 ^ Y7, Z3 ^ X6 ^ Y6, Y4 ^ X5 ^ Z5, X4 ^ Z4 ^ Y5 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y7 ^ X8, Y2 ^ X7 ^ Z7, X3 ^ Y6 ^ Z6, Z3 ^ Y5 ^ X6, Y3 ^ X5 ^ Z5, X4 ^ Y4 ^ Z4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X7 ^ Y7, Y2 ^ X6 ^ Z7, X2 ^ Y6 ^ Z6, Z3 ^ X5 ^ Y5, Y3 ^ X4 ^ Z5, X3 ^ Y4 ^ Z4 }, + 0, // 1xaa ua @ HTILE_64K @ RbPlus + 0, // 2xaa ua @ HTILE_64K @ RbPlus + 0, // 4xaa ua @ HTILE_64K @ RbPlus + 0, // 8xaa ua @ HTILE_64K @ RbPlus + 0, // 1 pipes (1-2 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 0, // 1 pipes (1-2 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 0, // 1 pipes (1-2 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 0, // 1 pipes (1-2 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 13, // 2 pipes (1-2 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 13, // 2 pipes (1-2 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 13, // 2 pipes (1-2 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 13, // 2 pipes (1-2 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 14, // 4 pipes (1-2 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 14, // 4 pipes (1-2 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 14, // 4 pipes (1-2 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 14, // 4 pipes (1-2 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 15, // 8 pipes (1-2 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 15, // 8 pipes (1-2 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 15, // 8 pipes (1-2 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 15, // 8 pipes (1-2 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 13, // 2 pipes (4 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 13, // 2 pipes (4 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 13, // 2 pipes (4 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 13, // 2 pipes (4 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 16, // 4 pipes (4 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 16, // 4 pipes (4 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 16, // 4 pipes (4 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 16, // 4 pipes (4 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 17, // 8 pipes (4 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 17, // 8 pipes (4 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 17, // 8 pipes (4 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 17, // 8 pipes (4 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 18, // 16 pipes (4 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 18, // 16 pipes (4 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 18, // 16 pipes (4 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 18, // 16 pipes (4 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 19, // 4 pipes (8 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 19, // 4 pipes (8 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 19, // 4 pipes (8 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 19, // 4 pipes (8 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 20, // 8 pipes (8 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 20, // 8 pipes (8 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 20, // 8 pipes (8 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 20, // 8 pipes (8 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 21, // 16 pipes (8 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 21, // 16 pipes (8 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 21, // 16 pipes (8 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 21, // 16 pipes (8 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 22, // 32 pipes (8 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 22, // 32 pipes (8 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 22, // 32 pipes (8 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 22, // 32 pipes (8 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 23, // 8 pipes (16 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 23, // 8 pipes (16 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 23, // 8 pipes (16 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 23, // 8 pipes (16 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 24, // 16 pipes (16 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 24, // 16 pipes (16 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 24, // 16 pipes (16 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 24, // 16 pipes (16 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 25, // 32 pipes (16 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 25, // 32 pipes (16 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 25, // 32 pipes (16 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 25, // 32 pipes (16 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 26, // 64 pipes (16 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 26, // 64 pipes (16 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 26, // 64 pipes (16 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 26, // 64 pipes (16 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 27, // 16 pipes (32 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 27, // 16 pipes (32 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 27, // 16 pipes (32 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 27, // 16 pipes (32 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 28, // 32 pipes (32 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 28, // 32 pipes (32 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 28, // 32 pipes (32 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 28, // 32 pipes (32 PKRs) 8xaa pa @ HTILE_64K @ RbPlus + 29, // 64 pipes (32 PKRs) 1xaa pa @ HTILE_64K @ RbPlus + 29, // 64 pipes (32 PKRs) 2xaa pa @ HTILE_64K @ RbPlus + 29, // 64 pipes (32 PKRs) 4xaa pa @ HTILE_64K @ RbPlus + 29, // 64 pipes (32 PKRs) 8xaa pa @ HTILE_64K @ RbPlus }; -const UINT_64 SW_64K_S3_T_RBPLUS[][16]= +const UINT_8 CMASK_64K_RBPLUS_PATIDX[] = { - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, X2 ^ Y2 ^ Z2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X2 ^ Z2, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, X1 ^ Y1 ^ Z2, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X3 ^ Z3, X2 ^ Z2 ^ Y3, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X3 ^ Z3, X2 ^ Y2 ^ Z2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X2 ^ Z3, X1 ^ Y2 ^ Z2, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X4, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X4, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X4, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X3, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X4 ^ Z4, X3 ^ Y3 ^ Z3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X3 ^ Z4, X2 ^ Y3 ^ Z3, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X3 ^ Z3, X2 ^ Z2 ^ Y3, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X3 ^ Z3, X2 ^ Y2 ^ Z2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X2 ^ Z3, X1 ^ Y2 ^ Z2, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X4, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X4, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X4, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X3, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2 ^ X5, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2 ^ X4, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2 ^ X4, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1 ^ X4, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1 ^ X3, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 ^ X4, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 ^ X4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 ^ X4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 ^ X3, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 ^ X4, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 ^ X4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 ^ X4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 ^ X3, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 ^ X4, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 ^ X4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 ^ X4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 ^ X3, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y3 ^ Z3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y3 ^ Z3, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z2 ^ Y3, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y2 ^ Z2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y2 ^ Z2, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3 ^ Y4 ^ Z4, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2 ^ Y4 ^ Z4, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2 ^ Z3 ^ Y4, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2 ^ Y3 ^ Z3, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1 ^ Y3 ^ Z3, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 ^ X4, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 ^ X4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 ^ X4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 ^ X3, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 ^ X4, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 ^ X4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 ^ X4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 ^ X3, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 ^ X4, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 ^ X4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 ^ X4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 ^ X3, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4 ^ X5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, X4 ^ Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, X4 ^ Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, X3 ^ Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4 ^ X5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, X4 ^ Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, X4 ^ Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, X3 ^ Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X3 ^ Y3, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Y2 ^ Z2 ^ X3, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, X2 ^ Y2 ^ Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 ^ X4, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 ^ X4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 ^ X4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 ^ X3, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3 ^ Y4 ^ X5, Y3 ^ X4 ^ Z4, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3 ^ X4 ^ Y4, X3 ^ Y3 ^ Z4, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2 ^ X4 ^ Y4, X3 ^ Y3 ^ Z3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2 ^ Y3 ^ X4, Y2 ^ X3 ^ Z3, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2 ^ X3 ^ Y3, X2 ^ Y2 ^ Z3, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 ^ X4, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 ^ X4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 ^ X4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 ^ X3, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X5, X4 ^ Y4 ^ Z4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3 ^ X4, X3 ^ Y4 ^ Z4, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3 ^ X4, X3 ^ Z3 ^ Y4, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2 ^ X4, X3 ^ Y3 ^ Z3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2 ^ X3, X2 ^ Y3 ^ Z3, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4 ^ X5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, X4 ^ Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, X4 ^ Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, X3 ^ Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Y4 ^ Z4 ^ X5, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, X4 ^ Y4 ^ Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3 ^ X4 ^ Y4, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Y3 ^ Z3 ^ X4, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, X3 ^ Y3 ^ Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4 ^ X5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, X4 ^ Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, X4 ^ Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, X3 ^ Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4 ^ X5, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, X4 ^ Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, X4 ^ Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3 ^ X4, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, X3 ^ Y3, X3 }, - {X0, X1, Z0, Y0, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, Z0, Y1, X1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Z0, Y0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, Z0, Y0, X0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, + 0, // 1 bpe ua @ CMASK_64K @ RbPlus + 0, // 2 bpe ua @ CMASK_64K @ RbPlus + 0, // 4 bpe ua @ CMASK_64K @ RbPlus + 0, // 8 bpe ua @ CMASK_64K @ RbPlus + 0, // 1 pipes (1-2 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 0, // 1 pipes (1-2 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 0, // 1 pipes (1-2 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 0, // 1 pipes (1-2 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 8, // 2 pipes (1-2 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 8, // 2 pipes (1-2 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 8, // 2 pipes (1-2 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 8, // 2 pipes (1-2 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 9, // 4 pipes (1-2 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 9, // 4 pipes (1-2 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 9, // 4 pipes (1-2 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 9, // 4 pipes (1-2 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 10, // 8 pipes (1-2 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 10, // 8 pipes (1-2 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 10, // 8 pipes (1-2 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 10, // 8 pipes (1-2 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 8, // 2 pipes (4 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 8, // 2 pipes (4 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 8, // 2 pipes (4 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 8, // 2 pipes (4 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 11, // 4 pipes (4 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 11, // 4 pipes (4 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 11, // 4 pipes (4 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 11, // 4 pipes (4 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 12, // 8 pipes (4 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 12, // 8 pipes (4 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 12, // 8 pipes (4 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 12, // 8 pipes (4 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 13, // 16 pipes (4 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 13, // 16 pipes (4 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 13, // 16 pipes (4 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 13, // 16 pipes (4 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 14, // 4 pipes (8 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 14, // 4 pipes (8 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 14, // 4 pipes (8 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 14, // 4 pipes (8 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 15, // 8 pipes (8 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 15, // 8 pipes (8 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 15, // 8 pipes (8 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 16, // 8 pipes (8 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 15, // 16 pipes (8 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 15, // 16 pipes (8 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 15, // 16 pipes (8 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 17, // 16 pipes (8 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 18, // 32 pipes (8 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 18, // 32 pipes (8 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 18, // 32 pipes (8 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 19, // 32 pipes (8 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 20, // 8 pipes (16 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 20, // 8 pipes (16 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 20, // 8 pipes (16 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 21, // 8 pipes (16 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 22, // 16 pipes (16 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 22, // 16 pipes (16 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 22, // 16 pipes (16 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 23, // 16 pipes (16 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 22, // 32 pipes (16 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 22, // 32 pipes (16 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 22, // 32 pipes (16 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 24, // 32 pipes (16 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 25, // 64 pipes (16 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 25, // 64 pipes (16 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 25, // 64 pipes (16 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 32, // 64 pipes (16 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 27, // 16 pipes (32 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 27, // 16 pipes (32 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 27, // 16 pipes (32 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 28, // 16 pipes (32 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 29, // 32 pipes (32 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 29, // 32 pipes (32 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 29, // 32 pipes (32 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 33, // 32 pipes (32 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus + 29, // 64 pipes (32 PKRs) 1 bpe pa @ CMASK_64K @ RbPlus + 29, // 64 pipes (32 PKRs) 2 bpe pa @ CMASK_64K @ RbPlus + 29, // 64 pipes (32 PKRs) 4 bpe pa @ CMASK_64K @ RbPlus + 34, // 64 pipes (32 PKRs) 8 bpe pa @ CMASK_64K @ RbPlus }; -const UINT_64 SW_64K_D3_X_RBPLUS[][16]= +const UINT_8 CMASK_VAR_RBPLUS_PATIDX[] = { - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X4 ^ Y4, Y2, Z3, Y3, X3, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X4 ^ Y4, Y2, Z3, Y3, X2, Z4, Y4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X4 ^ Y4, Y2, Z2, Y3, X2, Z3, Y4, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X4 ^ Y4, Y1, Z2, Y2, X2, Z3, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y1 ^ X4 ^ Y4, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X5 ^ Y5, X4 ^ Y4, Y2, Z3, Y3, X3, Z4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X5 ^ Y5, X4 ^ Y4, Y2, Z3, Y3, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X5 ^ Y5, X4 ^ Y4, Y2, Z2, Y3, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X5 ^ Y5,X4 ^ Y4, Y1, Z2, Y2, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X5 ^ Y5,Y1 ^ X4 ^ Y4, X1, Z2, Y2, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X5 ^ Y5, X4 ^ Y4, Z3 ^ X5, Y2, Y3, X3, Z4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X5 ^ Y5, X4 ^ Y4, Z3 ^ X5, Y2, Y3, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X5 ^ Y5, X4 ^ Y4, Z2 ^ X5, Y2, Y3, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X5 ^ Y5,X4 ^ Y4, Z2 ^ X5, Y1, Y2, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X5 ^ Y5,Y1 ^ X4 ^ Y4, Z2 ^ X5, X1, Y2, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2, Y3, Z3, X3, Z4, X5 ^ Y5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X6 ^ Y6, X4 ^ Y4, Z3, Y3, X2, Z4, X3, Y2 ^ X5 ^ Y5 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X6 ^ Y6, X4 ^ Y4, Z2, Y3, X2, Z3, X3, Y2 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X6 ^ Y6,X4 ^ Y4, Z2, Y2, X2, Y3, X3, Y1 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X6 ^ Y6,Y1 ^ X4 ^ Y4, Z2, Y2, X2, Y3, X3, X1 ^ X5 ^ Y5 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X6 ^ Y6, X4 ^ Y4, X5 ^ Y5, Y2, Y3, Z3, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2 ^ X5 ^ Y5, Z3, Y3, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2 ^ X5 ^ Y5, Z2, Y3, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X6 ^ Y6,X4 ^ Y4, Y1 ^ X5 ^ Y5, Z2, Y2, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X6 ^ Y6,Y1 ^ X4 ^ Y4, X1 ^ X5 ^ Y5, Z2, Y2, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X6 ^ Y6, X4 ^ Y4, X5 ^ Y5, Z3 ^ X6, Y2, Y3, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2 ^ X5 ^ Y5, Z3 ^ X6, Y3, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2 ^ X5 ^ Y5, Z2 ^ X6, Y3, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X6 ^ Y6,X4 ^ Y4, Y1 ^ X5 ^ Y5, Z2 ^ X6, Y2, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X6 ^ Y6,Y1 ^ X4 ^ Y4, X1 ^ X5 ^ Y5, Z2 ^ X6, Y2, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Y3, Z3, X3, Z4, X5 ^ Y6 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Y3, X2, Z4, X3, Z3 ^ X5 ^ Y6 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Y3, X2, Z3, X3, Z2 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X7 ^ Y7,X4 ^ Y4, Y1 ^ Y5 ^ X6, Y2, X2, Y3, X3, Z2 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X7 ^ Y7,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X6, Y2, X2, Y3, X3, Z2 ^ X5 ^ Y6 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, X5 ^ Y6, Y3, Z3, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, Y3, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, Y3, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X7 ^ Y7,X4 ^ Y4, Y1 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, Y2, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X7 ^ Y7,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, Y2, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, X5 ^ Y6, Z3 ^ X7, Y3, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Y3 ^ X5 ^ Y6, Z3 ^ X7, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Y3 ^ X5 ^ Y6, Z2 ^ X7, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X7 ^ Y7,X4 ^ Y4, Y1 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Z2 ^ X7, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X7 ^ Y7,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Z2 ^ X7, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, X5 ^ Y7, Z3, X3, Z4, Y3 ^ X6 ^ Y6 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, X2, Z4, X3, Y3 ^ X6 ^ Y6 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, X2, Z3, X3, Y3 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X8 ^ Y8,X4 ^ Y4, Y1 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, X2, Y3, X3, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X8 ^ Y8,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, X2, Y3, X3, Y2 ^ X6 ^ Y6 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, X5 ^ Y7, Y3 ^ X6 ^ Y6, Z3, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Y3 ^ X6 ^ Y6, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Y3 ^ X6 ^ Y6, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X8 ^ Y8,X4 ^ Y4, Y1 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X8 ^ Y8,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, X5 ^ Y7, Y3 ^ X6 ^ Y6, Z3 ^ X8, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Y3 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z3 ^ X8, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Y3 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z2 ^ X8, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X8 ^ Y8,X4 ^ Y4, Y1 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z2 ^ X8, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X8 ^ Y8,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z2 ^ X8, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, X5 ^ Y8, Y3 ^ Y6 ^ X7, X3, Z4, Z3 ^ X6 ^ Y7 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Y3 ^ Y6 ^ X7, Z4, X3, X2 ^ X6 ^ Y7 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y3 ^ Y6 ^ X7, Z3, X3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X9 ^ Y9,X4 ^ Y4, Y1 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X9 ^ Y9,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Y3, X3, X2 ^ X6 ^ Y7 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, X5 ^ Y8, Y3 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Y3 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y3 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z3 ^ Y4 ^ X9 ^ Y9,X4 ^ Y4, Y1 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z3 ^ Y4 ^ X9 ^ Y9,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, X4 ^ Y4, Z3, Y3, X3, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, X4 ^ Y4, Z3, Y3, X2, Z4, Y4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, X4 ^ Y4, Z2, Y3, X2, Z3, Y4, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, X4 ^ Y4, Z2, Y2, X2, Z3, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X1, Y1 ^ X4 ^ Y4, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, Y4 ^ X5 ^ Y5, X4 ^ Y4, Z3, Y3, X3, Z4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, Y4 ^ X5 ^ Y5, X4 ^ Y4, Z3, Y3, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, Y4 ^ X5 ^ Y5, X4 ^ Y4, Z2, Y3, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, Z3 ^ Y4 ^ X5 ^ Y5,X4 ^ Y4, Z2, Y2, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X1, Z3 ^ Y4 ^ X5 ^ Y5,Y1 ^ X4 ^ Y4, Z2, Y2, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, Y4 ^ X5 ^ Y5, X4 ^ Y4, Z3 ^ X5, Y3, X3, Z4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, Y4 ^ X5 ^ Y5, X4 ^ Y4, Z3 ^ X5, Y3, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, Y4 ^ X5 ^ Y5, X4 ^ Y4, Z2 ^ X5, Y3, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, Z3 ^ Y4 ^ X5 ^ Y5,X4 ^ Y4, Z2 ^ X5, Y2, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X1, Z3 ^ Y4 ^ X5 ^ Y5,Y1 ^ X4 ^ Y4, Z2 ^ X5, Y2, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y3, Z3, X3, Z4, X5 ^ Y5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z3, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y3, X2, Z4, X3, Y2 ^ X5 ^ Y5 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z2, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y3, X2, Z3, X3, Y2 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z2, Z3 ^ Y4 ^ X6 ^ Y6,X4 ^ Y4, Y2, X2, Y3, X3, Y1 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z2, Z3 ^ Y4 ^ X6 ^ Y6,Y1 ^ X4 ^ Y4, Y2, X2, Y3, X3, X1 ^ X5 ^ Y5 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, Y4 ^ X6 ^ Y6, X4 ^ Y4, X5 ^ Y5, Y3, Z3, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z3, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2 ^ X5 ^ Y5, Y3, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z2, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2 ^ X5 ^ Y5, Y3, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z2, Z3 ^ Y4 ^ X6 ^ Y6,X4 ^ Y4, Y1 ^ X5 ^ Y5, Y2, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z2, Z3 ^ Y4 ^ X6 ^ Y6,Y1 ^ X4 ^ Y4, X1 ^ X5 ^ Y5, Y2, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, Y4 ^ X6 ^ Y6, X4 ^ Y4, X5 ^ Y5, Z3 ^ X6, Y3, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y3, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2 ^ X5 ^ Y5, Z3 ^ X6, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y3, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2 ^ X5 ^ Y5, Z2 ^ X6, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y2, Z3 ^ Y4 ^ X6 ^ Y6,X4 ^ Y4, Y1 ^ X5 ^ Y5, Z2 ^ X6, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y2, Z3 ^ Y4 ^ X6 ^ Y6,Y1 ^ X4 ^ Y4, X1 ^ X5 ^ Y5, Z2 ^ X6, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y3, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Z3, X3, Z4, X5 ^ Y6 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y3, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, X2, Z4, X3, Z3 ^ X5 ^ Y6 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y3, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, X2, Z3, X3, Z2 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y2, Z3 ^ Y4 ^ X7 ^ Y7,X4 ^ Y4, Y1 ^ Y5 ^ X6, X2, Y3, X3, Z2 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y2, Z3 ^ Y4 ^ X7 ^ Y7,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X6, X2, Y3, X3, Z2 ^ X5 ^ Y6 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y3, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, X5 ^ Y6, Z3, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y3, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y3, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y2, Z3 ^ Y4 ^ X7 ^ Y7,X4 ^ Y4, Y1 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y2, Z3 ^ Y4 ^ X7 ^ Y7,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y3, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, X5 ^ Y6, Z3 ^ X7, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X2, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Y3 ^ X5 ^ Y6, Z3 ^ X7, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X2, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Y3 ^ X5 ^ Y6, Z2 ^ X7, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X2, Z3 ^ Y4 ^ X7 ^ Y7,X4 ^ Y4, Y1 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Z2 ^ X7, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X2, Z3 ^ Y4 ^ X7 ^ Y7,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Z2 ^ X7, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Z3, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, X5 ^ Y7, X3, Z4, Y3 ^ X6 ^ Y6 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X2, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Z4, X3, Y3 ^ X6 ^ Y6 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X2, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Z3, X3, Y3 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X2, Z3 ^ Y4 ^ X8 ^ Y8,X4 ^ Y4, Y1 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Y3, X3, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X2, Z3 ^ Y4 ^ X8 ^ Y8,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Y3, X3, Y2 ^ X6 ^ Y6 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Z3, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, X5 ^ Y7, Y3 ^ X6 ^ Y6, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X2, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Y3 ^ X6 ^ Y6, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X2, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Y3 ^ X6 ^ Y6, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X2, Z3 ^ Y4 ^ X8 ^ Y8,X4 ^ Y4, Y1 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X2, Z3 ^ Y4 ^ X8 ^ Y8,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, X5 ^ Y7, Y3 ^ X6 ^ Y6, Z3 ^ X8, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z4, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Y3 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z3 ^ X8, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z3, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Y3 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z2 ^ X8, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y3, Z3 ^ Y4 ^ X8 ^ Y8,X4 ^ Y4, Y1 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z2 ^ X8, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y3, Z3 ^ Y4 ^ X8 ^ Y8,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z2 ^ X8, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, X5 ^ Y8, Y3 ^ Y6 ^ X7, Z4, Z3 ^ X6 ^ Y7 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z4, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Y3 ^ Y6 ^ X7, X3, X2 ^ X6 ^ Y7 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z3, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y3 ^ Y6 ^ X7, X3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y3, Z3 ^ Y4 ^ X9 ^ Y9,X4 ^ Y4, Y1 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y3, Z3 ^ Y4 ^ X9 ^ Y9,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X3, X2 ^ X6 ^ Y7 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, X5 ^ Y8, Y3 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z4, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Y3 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z3, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y3 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y3, Z3 ^ Y4 ^ X9 ^ Y9,X4 ^ Y4, Y1 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y3, Z3 ^ Y4 ^ X9 ^ Y9,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, X3, Z3, Y3, X4, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, X2, Z3, Y3, X3, Z4, Y4, X4 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, X2, Z2, Y3, X3, Z3, Y4, X4 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, X2, Z2, Y2, X3, Z3, Y3, X4 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y1, X1, Z2, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, Z3, X4 ^ Y4, Y3, X3, Z4, Y4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, Z3, X4 ^ Y4, Y3, X2, Z4, Y4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, Z2, X4 ^ Y4, Y3, X2, Z3, Y4, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, Z2, X4 ^ Y4, Y2, X2, Z3, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X1, Z2, Y1 ^ X4 ^ Y4, Y2, X2, Z3, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, Z3, Y4 ^ X5 ^ Y5, X4 ^ Y4, Y3, X3, Z4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, Z3, Y4 ^ X5 ^ Y5, X4 ^ Y4, Y3, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, Z2, Y4 ^ X5 ^ Y5, X4 ^ Y4, Y3, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, Z2, Z3 ^ Y4 ^ X5 ^ Y5,X4 ^ Y4, Y2, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X1, Z2, Z3 ^ Y4 ^ X5 ^ Y5,Y1 ^ X4 ^ Y4, Y2, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, Y3, Y4 ^ X5 ^ Y5, X4 ^ Y4, Z3 ^ X5, X3, Z4, X5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y2, Y3, Y4 ^ X5 ^ Y5, X4 ^ Y4, Z3 ^ X5, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y2, Y3, Y4 ^ X5 ^ Y5, X4 ^ Y4, Z2 ^ X5, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y1, Y2, Z3 ^ Y4 ^ X5 ^ Y5,X4 ^ Y4, Z2 ^ X5, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X1, Y2, Z3 ^ Y4 ^ X5 ^ Y5,Y1 ^ X4 ^ Y4, Z2 ^ X5, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, Y3, Y4 ^ X6 ^ Y6, X4 ^ Y4, Z3, X3, Z4, X5 ^ Y5 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z3, Y3, Y4 ^ X6 ^ Y6, X4 ^ Y4, X2, Z4, X3, Y2 ^ X5 ^ Y5 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z2, Y3, Y4 ^ X6 ^ Y6, X4 ^ Y4, X2, Z3, X3, Y2 ^ X5 ^ Y5 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z2, Y2, Z3 ^ Y4 ^ X6 ^ Y6,X4 ^ Y4, X2, Y3, X3, Y1 ^ X5 ^ Y5 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z2, Y2, Z3 ^ Y4 ^ X6 ^ Y6,Y1 ^ X4 ^ Y4, X2, Y3, X3, X1 ^ X5 ^ Y5 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, Y3, Y4 ^ X6 ^ Y6, X4 ^ Y4, X5 ^ Y5, Z3, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z3, Y3, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2 ^ X5 ^ Y5, X2, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z2, Y3, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2 ^ X5 ^ Y5, X2, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Z2, Y2, Z3 ^ Y4 ^ X6 ^ Y6,X4 ^ Y4, Y1 ^ X5 ^ Y5, X2, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Z2, Y2, Z3 ^ Y4 ^ X6 ^ Y6,Y1 ^ X4 ^ Y4, X1 ^ X5 ^ Y5, X2, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y2, Y3, Y4 ^ X6 ^ Y6, X4 ^ Y4, X5 ^ Y5, Z3 ^ X6, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y3, X2, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2 ^ X5 ^ Y5, Z3 ^ X6, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y3, X2, Y4 ^ X6 ^ Y6, X4 ^ Y4, Y2 ^ X5 ^ Y5, Z2 ^ X6, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y2, X2, Z3 ^ Y4 ^ X6 ^ Y6,X4 ^ Y4, Y1 ^ X5 ^ Y5, Z2 ^ X6, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y2, X2, Z3 ^ Y4 ^ X6 ^ Y6,Y1 ^ X4 ^ Y4, X1 ^ X5 ^ Y5, Z2 ^ X6, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y3, Z3, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, X3, Z4, X5 ^ Y6 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y3, X2, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Z4, X3, Z3 ^ X5 ^ Y6 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y3, X2, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Z3, X3, Z2 ^ X5 ^ Y6 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y2, X2, Z3 ^ Y4 ^ X7 ^ Y7,X4 ^ Y4, Y1 ^ Y5 ^ X6, Y3, X3, Z2 ^ X5 ^ Y6 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y2, X2, Z3 ^ Y4 ^ X7 ^ Y7,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X6, Y3, X3, Z2 ^ X5 ^ Y6 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y3, Z3, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, X5 ^ Y6, X3, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Y3, X2, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Z3 ^ X5 ^ Y6, Z4, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Y3, X2, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, Z3, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y2, X2, Z3 ^ Y4 ^ X7 ^ Y7,X4 ^ Y4, Y1 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, Y3, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y2, X2, Z3 ^ Y4 ^ X7 ^ Y7,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X6, Z2 ^ X5 ^ Y6, Y3, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Y3, X3, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, X5 ^ Y6, Z3 ^ X7, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X2, Z4, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Y3 ^ X5 ^ Y6, Z3 ^ X7, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X2, Z3, Y4 ^ X7 ^ Y7, X4 ^ Y4, Y2 ^ Y5 ^ X6, Y3 ^ X5 ^ Y6, Z2 ^ X7, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X2, Y3, Z3 ^ Y4 ^ X7 ^ Y7,X4 ^ Y4, Y1 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Z2 ^ X7, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X2, Y3, Z3 ^ Y4 ^ X7 ^ Y7,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X6, Y2 ^ X5 ^ Y6, Z2 ^ X7, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Z3, X3, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, X5 ^ Y7, Z4, Y3 ^ X6 ^ Y6 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X2, Z4, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, X3, Y3 ^ X6 ^ Y6 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X2, Z3, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, X3, Y3 ^ X6 ^ Y6 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X2, Y3, Z3 ^ Y4 ^ X8 ^ Y8,X4 ^ Y4, Y1 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, X3, Y2 ^ X6 ^ Y6 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X2, Y3, Z3 ^ Y4 ^ X8 ^ Y8,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, X3, Y2 ^ X6 ^ Y6 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, Z3, X3, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, X5 ^ Y7, Y3 ^ X6 ^ Y6, Z4 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, X2, Z4, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Z3 ^ X5 ^ Y7, Y3 ^ X6 ^ Y6, X3 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, X2, Z3, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Y3 ^ X6 ^ Y6, X3 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, X2, Y3, Z3 ^ Y4 ^ X8 ^ Y8,X4 ^ Y4, Y1 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, X2, Y3, Z3 ^ Y4 ^ X8 ^ Y8,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X7, Z2 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3, Z4, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, X5 ^ Y7, Y3 ^ X6 ^ Y6, Z3 ^ X8 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z4, X3, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Y3 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z3 ^ X8 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z3, X3, Y4 ^ X8 ^ Y8, X4 ^ Y4, Y2 ^ Y5 ^ X7, Y3 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z2 ^ X8 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y3, X3, Z3 ^ Y4 ^ X8 ^ Y8,X4 ^ Y4, Y1 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z2 ^ X8 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y3, X3, Z3 ^ Y4 ^ X8 ^ Y8,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X7, Y2 ^ X5 ^ Y7, X2 ^ X6 ^ Y6, Z2 ^ X8 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3, Z4, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, X5 ^ Y8, Y3 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z4, X3, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Y3 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z3, X3, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y3 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y3, X3, Z3 ^ Y4 ^ X9 ^ Y9,X4 ^ Y4, Y1 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y3, X3, Z3 ^ Y4 ^ X9 ^ Y9,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {X0, X1, Z0, Y0, Y1, Z1, X2, Z2, X3, Z4, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, X5 ^ Y8, Y3 ^ Y6 ^ X7, Z3 ^ X6 ^ Y7 }, - {0, X0, Z0, Y0, X1, Z1, Y1, Z2, Z4, X3, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, Z3 ^ X5 ^ Y8, Y3 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, X0, Y0, X1, Z0, Y1, Z1, Z3, X3, Y4 ^ X9 ^ Y9, X4 ^ Y4, Y2 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y3 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, X0, Y0, Z0, X1, Z1, Y3, X3, Z3 ^ Y4 ^ X9 ^ Y9,X4 ^ Y4, Y1 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, - {0, 0, 0, 0, X0, Z0, Y0, Z1, Y3, X3, Z3 ^ Y4 ^ X9 ^ Y9,Y1 ^ X4 ^ Y4, X1 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + 0, // 1 bpe ua @ CMASK_VAR @ RbPlus + 0, // 2 bpe ua @ CMASK_VAR @ RbPlus + 0, // 4 bpe ua @ CMASK_VAR @ RbPlus + 0, // 8 bpe ua @ CMASK_VAR @ RbPlus + 0, // 1 pipes (1-2 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 0, // 1 pipes (1-2 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 0, // 1 pipes (1-2 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 0, // 1 pipes (1-2 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 8, // 2 pipes (1-2 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 8, // 2 pipes (1-2 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 8, // 2 pipes (1-2 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 8, // 2 pipes (1-2 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 9, // 4 pipes (1-2 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 9, // 4 pipes (1-2 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 9, // 4 pipes (1-2 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 9, // 4 pipes (1-2 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 10, // 8 pipes (1-2 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 10, // 8 pipes (1-2 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 10, // 8 pipes (1-2 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 10, // 8 pipes (1-2 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 8, // 2 pipes (4 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 8, // 2 pipes (4 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 8, // 2 pipes (4 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 8, // 2 pipes (4 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 11, // 4 pipes (4 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 11, // 4 pipes (4 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 11, // 4 pipes (4 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 11, // 4 pipes (4 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 12, // 8 pipes (4 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 12, // 8 pipes (4 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 12, // 8 pipes (4 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 12, // 8 pipes (4 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 13, // 16 pipes (4 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 13, // 16 pipes (4 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 13, // 16 pipes (4 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 13, // 16 pipes (4 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 14, // 4 pipes (8 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 14, // 4 pipes (8 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 14, // 4 pipes (8 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 14, // 4 pipes (8 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 15, // 8 pipes (8 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 15, // 8 pipes (8 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 15, // 8 pipes (8 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 16, // 8 pipes (8 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 15, // 16 pipes (8 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 15, // 16 pipes (8 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 15, // 16 pipes (8 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 17, // 16 pipes (8 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 18, // 32 pipes (8 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 18, // 32 pipes (8 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 18, // 32 pipes (8 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 19, // 32 pipes (8 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 20, // 8 pipes (16 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 20, // 8 pipes (16 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 20, // 8 pipes (16 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 21, // 8 pipes (16 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 22, // 16 pipes (16 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 22, // 16 pipes (16 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 22, // 16 pipes (16 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 23, // 16 pipes (16 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 22, // 32 pipes (16 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 22, // 32 pipes (16 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 22, // 32 pipes (16 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 24, // 32 pipes (16 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 25, // 64 pipes (16 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 25, // 64 pipes (16 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 25, // 64 pipes (16 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 26, // 64 pipes (16 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 27, // 16 pipes (32 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 27, // 16 pipes (32 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 27, // 16 pipes (32 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 28, // 16 pipes (32 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 29, // 32 pipes (32 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 29, // 32 pipes (32 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 29, // 32 pipes (32 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 30, // 32 pipes (32 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus + 29, // 64 pipes (32 PKRs) 1 bpe pa @ CMASK_VAR @ RbPlus + 29, // 64 pipes (32 PKRs) 2 bpe pa @ CMASK_VAR @ RbPlus + 29, // 64 pipes (32 PKRs) 4 bpe pa @ CMASK_VAR @ RbPlus + 31, // 64 pipes (32 PKRs) 8 bpe pa @ CMASK_VAR @ RbPlus }; -// Rb plus meta data swizzle pattern -const UINT_64 HTILE_64K_RBPLUS[][18]= +const UINT_64 DCC_64K_R_X_SW_PATTERN[][17] = { - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Z0 ^ X4 ^ Y4, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Z0 ^ X4 ^ Y4, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Z0 ^ X4 ^ Y4, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Z0 ^ X4 ^ Y4, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Z0 ^ X4 ^ Y4, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Z0 ^ X4 ^ Y4, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Z0 ^ X4 ^ Y4, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Z0 ^ X4 ^ Y4, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X7, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y7, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X9, Y9, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X9, Y9, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X9, Y9, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X9, Y9, X10 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X8, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y4, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y4, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y4, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y8, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X9, Y9, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X9, Y9, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X9, Y9, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X9, Y9, X10 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, Z0 ^ X4 ^ Y4, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, Z0 ^ X4 ^ Y4, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, Z0 ^ X4 ^ Y4, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, Z0 ^ X4 ^ Y4, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, X7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, X7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, X7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, X7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, Z0 ^ X4 ^ Y4, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, Z0 ^ X4 ^ Y4, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, Z0 ^ X4 ^ Y4, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, Z0 ^ X4 ^ Y4, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X8, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y8, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y8, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y8, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y8, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, Y9, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, Y9, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, Y9, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, Y9, X10 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y8, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y4, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y4, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, Y4, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X9, Y9, 0 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y9, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y9, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y9, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y9, X10 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Z0 ^ X4 ^ Y4, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Z0 ^ X4 ^ Y4, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Z0 ^ X4 ^ Y4, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Z0 ^ X4 ^ Y4, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Z0 ^ X4 ^ Y4, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Z0 ^ X4 ^ Y4, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Z0 ^ X4 ^ Y4, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Z0 ^ X4 ^ Y4, Y7, 0, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, 0, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y9, 0 }, - {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y9, 0 }, - {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y9, 0 }, - {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, Y9, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, Y8, 0, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y8, X9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y9, 0 }, - {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y8, X9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y9, 0 }, - {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y8, X9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y9, 0 }, - {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y8, X9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, Y9, 0 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, X10 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X9, 0, 0 }, - {0, 0, 0, X3, Y3, Y4, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y9, 0 }, - {0, 0, 0, X3, Y3, Y4, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y9, 0 }, - {0, 0, 0, X3, Y3, Y4, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y9, 0 }, - {0, 0, 0, X3, Y3, Y4, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, Y9, 0 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X10 }, - {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, X10 }, + {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0, }, //0 + {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0, }, //1 + {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0, }, //2 + {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0, }, //3 + {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, }, //4 + {0, X3^Y3, X4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0, }, //5 + {0, X3^Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0, }, //6 + {0, X3^Y3, X4^Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0, }, //7 + {0, X4, X5, Y5, X6, Y6, X7, Y7, X8, Z0^X3^Y3, Y8, X9, Y9, 0, 0, 0, 0, }, //8 + {0, Y4, X4, X5, Y5, X6, Y6, X7, Y7, Z0^X3^Y3, X8, Y8, X9, 0, 0, 0, 0, }, //9 + {0, X3, Y4, X4, X5, Y5, X6, Y6, X7, Z0^X3^Y3, Y7, X8, Y8, 0, 0, 0, 0, }, //10 + {0, Y2, X3, Y4, X4, X5, Y5, X6, Y6, Z0^X3^Y3, X7, Y7, X8, 0, 0, 0, 0, }, //11 + {0, X2, Y2, X3, Y4, X4, X5, Y5, X6, Z0^X3^Y3, Y6, X7, Y7, 0, 0, 0, 0, }, //12 + {0, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z1^X3^Y3, Z0^X4^Y4, X9, Y9, 0, 0, 0, 0, }, //13 + {0, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z1^X3^Y3, Z0^X4^Y4, Y8, X9, 0, 0, 0, 0, }, //14 + {0, X3, Y4, X5, Y5, X6, Y6, X7, Y7, Z1^X3^Y3, Z0^X4^Y4, X8, Y8, 0, 0, 0, 0, }, //15 + {0, Y2, X3, Y4, X5, Y5, X6, Y6, X7, Z1^X3^Y3, Z0^X4^Y4, Y7, X8, 0, 0, 0, 0, }, //16 + {0, X2, Y2, X3, Y4, X5, Y5, X6, Y6, Z1^X3^Y3, Z0^X4^Y4, X7, Y7, 0, 0, 0, 0, }, //17 + {0, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, Y9, 0, 0, 0, 0, }, //18 + {0, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, X9, 0, 0, 0, 0, }, //19 + {0, X3, Y4, Y5, X6, Y6, X7, Y7, X8, Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, Y8, 0, 0, 0, 0, }, //20 + {0, Y2, X3, Y4, Y5, X6, Y6, X7, Y7, Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, X8, 0, 0, 0, 0, }, //21 + {0, X2, Y2, X3, Y4, Y5, X6, Y6, X7, Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, Y7, 0, 0, 0, 0, }, //22 + {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, 0, 0, 0, 0, }, //23 + {0, Y4, X6, Y6, X7, Y7, X8, Y8, X9, X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, 0, 0, 0, 0, }, //24 + {0, X3, Y4, X6, Y6, X7, Y7, X8, Y8, X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, 0, 0, 0, 0, }, //25 + {0, Y2, X3, Y4, X6, Y6, X7, Y7, X8, X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, 0, 0, 0, 0, }, //26 + {0, X2, Y2, X3, Y4, X6, Y6, X7, Y7, X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, 0, 0, 0, 0, }, //27 + {0, Y6, X7, Y7, X8, Y8, X9, Y9, X10, X3^Y3^Z4, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, 0, 0, 0, }, //28 + {0, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X3^Y3^Z4, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, 0, 0, 0, }, //29 + {0, X3, Y4, Y6, X7, Y7, X8, Y8, X9, X3^Y3^Z4, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, 0, 0, 0, }, //30 + {0, Y2, X3, Y4, Y6, X7, Y7, X8, Y8, X3^Y3^Z4, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, 0, 0, 0, }, //31 + {0, X2, X3, Y4, Y6, X7, Y7, Y2, X8, X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X7, Z0^X5^Y7, Y2^X6^Y6, 0, 0, 0, }, //32 + {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X3^Y3^Z5, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, Z0^X6^Y7, 0, 0, }, //33 + {0, Y4, X7, Y7, X8, Y8, X9, Y9, X10, X3^Y3^Z5, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, Z0^X6^Y7, 0, 0, }, //34 + {0, X3, Y4, X7, Y7, X8, Y8, X9, Y9, X3^Y3^Z5, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, Z0^X6^Y7, 0, 0, }, //35 + {0, X3, Y4, X7, Y7, X8, Y8, Y2, X9, X3^Y3^Z4, Z3^X4^Y4, Z2^Y5^X8, Z1^X5^Y8, Y2^Y6^X7, Z0^X6^Y7, 0, 0, }, //36 + {0, X3, Y4, X7, Y7, X8, Y8, X2, Y2, X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X8, Z0^X5^Y8, Y2^Y6^X7, X2^X6^Y7, 0, 0, }, //37 + {0, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z0^X4^Y4, Y8, X9, Y9, 0, 0, 0, 0, }, //38 + {0, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0^X4^Y4, X8, Y8, X9, 0, 0, 0, 0, }, //39 + {0, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Z0^X4^Y4, Y7, X8, Y8, 0, 0, 0, 0, }, //40 + {0, Y2, X3, Y3, Y4, X5, Y5, X6, Y6, Z0^X4^Y4, X7, Y7, X8, 0, 0, 0, 0, }, //41 + {0, X2, Y2, X3, Y3, Y4, X5, Y5, X6, Z0^X4^Y4, Y6, X7, Y7, 0, 0, 0, 0, }, //42 + {0, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Y4^X5^Y5, Z0^X4^Y4, X9, Y9, 0, 0, 0, 0, }, //43 + {0, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y4^X5^Y5, Z0^X4^Y4, Y8, X9, 0, 0, 0, 0, }, //44 + {0, X3, Y3, X5, Y5, X6, Y6, X7, Y7, Y4^X5^Y5, Z0^X4^Y4, X8, Y8, 0, 0, 0, 0, }, //45 + {0, Y2, X3, Y3, X5, Y5, X6, Y6, X7, Y4^X5^Y5, Z0^X4^Y4, Y7, X8, 0, 0, 0, 0, }, //46 + {0, X2, Y2, X3, Y3, X5, Y5, X6, Y6, Y4^X5^Y5, Z0^X4^Y4, X7, Y7, 0, 0, 0, 0, }, //47 + {0, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4^X5^Y5, Z0^X4^Y4, X5^X6^Y6, Y9, 0, 0, 0, 0, }, //48 + {0, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, Y4^X5^Y5, Z0^X4^Y4, X5^X6^Y6, X9, 0, 0, 0, 0, }, //49 + {0, X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y4^X5^Y5, Z0^X4^Y4, X5^X6^Y6, Y8, 0, 0, 0, 0, }, //50 + {0, Y2, X3, Y3, Y5, X6, Y6, X7, Y7, Y4^X5^Y5, Z0^X4^Y4, X5^X6^Y6, X8, 0, 0, 0, 0, }, //51 + {0, X2, Y2, X3, Y3, Y5, X6, Y6, X7, Y4^X5^Y5, Z0^X4^Y4, X5^X6^Y6, Y7, 0, 0, 0, 0, }, //52 + {0, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y4^X6^Y6, Z1^X4^Y4, X5^Y5, Y9, 0, 0, 0, 0, }, //53 + {0, Y3, X5, X6, Y6, X7, Y7, X8, Y8, Y4^X6^Y6, Z1^X4^Y4, X5^Y5, X9, 0, 0, 0, 0, }, //54 + {0, X3, Y3, X5, X6, Y6, X7, Y7, X8, Y4^X6^Y6, Z1^X4^Y4, X5^Y5, Y8, 0, 0, 0, 0, }, //55 + {0, Y2, X3, Y3, X5, X6, Y6, X7, Y7, Y4^X6^Y6, Z1^X4^Y4, X5^Y5, X8, 0, 0, 0, 0, }, //56 + {0, X2, Y2, X3, Y3, X5, X6, Y6, X7, Y4^X6^Y6, Z1^X4^Y4, X5^Y5, Y7, 0, 0, 0, 0, }, //57 + {0, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, Y9, 0, 0, 0, 0, }, //58 + {0, Y3, X5, X6, Y6, X7, Y7, X8, Y8, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X9, 0, 0, 0, 0, }, //59 + {0, X3, Y3, X5, X6, Y6, X7, Y7, X8, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, Y8, 0, 0, 0, 0, }, //60 + {0, Y2, X3, Y3, X5, X6, Y6, X7, Y7, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X8, 0, 0, 0, 0, }, //61 + {0, X2, Y2, X3, Y3, X5, X6, Y6, X7, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, Y7, 0, 0, 0, 0, }, //62 + {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X5^X7^Y7, 0, 0, 0, 0, }, //63 + {0, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X5^X7^Y7, 0, 0, 0, 0, }, //64 + {0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X5^X7^Y7, 0, 0, 0, 0, }, //65 + {0, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X5^X7^Y7, 0, 0, 0, 0, }, //66 + {0, X2, Y2, X3, Y3, X6, Y6, X7, Y7, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X5^X7^Y7, 0, 0, 0, 0, }, //67 + {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, X5^Y6, 0, 0, 0, 0, }, //68 + {0, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, X5^Y6, 0, 0, 0, 0, }, //69 + {0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, X5^Y6, 0, 0, 0, 0, }, //70 + {0, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, X5^Y6, 0, 0, 0, 0, }, //71 + {0, X2, Y2, X3, Y3, X6, Y6, X7, Y7, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, X5^Y6, 0, 0, 0, 0, }, //72 + {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, 0, 0, 0, 0, }, //73 + {0, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, 0, 0, 0, 0, }, //74 + {0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, 0, 0, 0, 0, }, //75 + {0, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, 0, 0, 0, 0, }, //76 + {0, X2, Y2, X3, Y3, X6, Y6, X7, Y7, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, 0, 0, 0, 0, }, //77 + {0, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, X6^X8^Y8, 0, 0, 0, }, //78 + {0, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, X6^X8^Y8, 0, 0, 0, }, //79 + {0, X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, X6^X8^Y8, 0, 0, 0, }, //80 + {0, Y2, X3, Y3, Y6, X7, Y7, X8, Y8, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, X6^X8^Y8, 0, 0, 0, }, //81 + {0, X2, Y2, Y3, X6, Y6, X7, Y7, X8, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, X3^X8^Y8, 0, 0, 0, }, //82 + {0, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, X6^Y6, 0, 0, 0, }, //83 + {0, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, X6^Y6, 0, 0, 0, }, //84 + {0, X3, Y3, X6, X7, Y7, X8, Y8, X9, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, X6^Y6, 0, 0, 0, }, //85 + {0, Y2, X3, Y3, X6, X7, Y7, X8, Y8, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, X6^Y6, 0, 0, 0, }, //86 + {0, X2, X3, Y3, X6, X7, Y7, Y2, X8, Y4^X8^Y8, Z2^X4^Y4, Z1^Y5^X7, Z0^X5^Y7, X6^Y6, 0, 0, 0, }, //87 + {0, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, 0, 0, 0, }, //88 + {0, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, 0, 0, 0, }, //89 + {0, X3, Y3, X6, X7, Y7, X8, Y8, X9, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, 0, 0, 0, }, //90 + {0, Y2, X3, Y3, X6, X7, Y7, X8, Y8, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, 0, 0, 0, }, //91 + {0, X2, X3, Y3, X6, X7, Y7, Y2, X8, Y4^X8^Y8, Z2^X4^Y4, Z1^Y5^X7, Z0^X5^Y7, Y2^X6^Y6, 0, 0, 0, }, //92 + {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, X6^X9^Y9, 0, 0, }, //93 + {0, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, X6^X9^Y9, 0, 0, }, //94 + {0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, X6^X9^Y9, 0, 0, }, //95 + {0, Y2, Y3, X6, X7, Y7, X8, Y8, X9, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, X3^X9^Y9, 0, 0, }, //96 + {0, X2, Y3, X6, X7, Y7, X8, Y2, Y8, Y4^X8^Y8, Z2^X4^Y4, Z1^Y5^X7, Z0^X5^Y7, Y2^X6^Y6, X3^X9^Y9, 0, 0, }, //97 + {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4^X9^Y9, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, X6^Y7, 0, 0, }, //98 + {0, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X9^Y9, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, X6^Y7, 0, 0, }, //99 + {0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4^X9^Y9, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, X6^Y7, 0, 0, }, //100 + {0, X3, Y3, X7, Y7, X8, Y8, Y2, X9, Y4^X9^Y9, Z3^X4^Y4, Z2^Y5^X8, Z1^X5^Y8, Y2^Y6^X7, X6^Y7, 0, 0, }, //101 + {0, X3, Y3, X7, Y7, X8, Y8, X2, Y2, Y4^X9^Y9, Z2^X4^Y4, Z1^Y5^X8, Z0^X5^Y8, Y2^Y6^X7, X6^Y7, 0, 0, }, //102 + {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4^X9^Y9, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, Z0^X6^Y7, 0, 0, }, //103 + {0, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X9^Y9, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, Z0^X6^Y7, 0, 0, }, //104 + {0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4^X9^Y9, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, Z0^X6^Y7, 0, 0, }, //105 + {0, X3, Y3, X7, Y7, X8, Y8, Y2, X9, Y4^X9^Y9, Z3^X4^Y4, Z2^Y5^X8, Z1^X5^Y8, Y2^Y6^X7, Z0^X6^Y7, 0, 0, }, //106 + {0, X3, Y3, X7, Y7, X8, Y8, X2, Y2, Y4^X9^Y9, Z2^X4^Y4, Z1^Y5^X8, Z0^X5^Y8, Y2^Y6^X7, X2^X6^Y7, 0, 0, }, //107 }; -const UINT_64 CMASK_64K_RBPLUS[][17]= +const UINT_64 HTILE_SW_PATTERN[][18] = { - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X4 ^ Y4, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X4 ^ Y4, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X4 ^ Y4, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X4 ^ Y4, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X4 ^ Y4, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X4 ^ Y4, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X4 ^ Y4, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X4 ^ Y4, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X9, 0, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, 0, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, 0, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, 0, 0 }, - {X3, Y3, X6, X7, Y7, X8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3 ^ Y8, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0, 0, 0 }, - {X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0, 0, 0 }, - {X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0, 0, 0 }, - {X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, 0, 0 }, - {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, 0, 0 }, - {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, 0, 0 }, - {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0 }, - {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0 }, - {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0 }, - {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8, 0 }, - {X3, Y3, X6, X7, Y7, X8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3 ^ Y8, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0, 0 }, - {X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0, 0 }, - {X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0, 0 }, - {X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0 }, - {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0 }, - {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0 }, - {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0 }, - {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, 0 }, - {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, 0 }, - {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X7 ^ Y7, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, X6 ^ Y6, 0 }, - {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X6, X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, X10, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, X10, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, X10, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, X10, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0 }, - {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0 }, - {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0 }, - {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X8 ^ Y8, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, X6 ^ Y8 }, - {X3, Y3, X6, X7, Y7, X8, X9, Y9, X10, Y10, X11, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3 ^ Y8 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, X10, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, X10, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, X10, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X7, X5 ^ Y7, X6 ^ Y6, 0, 0 }, - {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, X10, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0 }, - {X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0 }, - {X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7, 0 }, - {X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X9 ^ Y9, Z1 ^ X4 ^ Y4, Z0 ^ Y5 ^ X8, X5 ^ Y8, Y6 ^ X7, X6 ^ Y7 }, - {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y6 ^ X7, Z0 ^ X6 ^ Y7 }, + {0, 0, 0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0, 0, }, //0 + {0, 0, 0, X3, Y4, X4, X5, Y5, X6, Z0^X3^Y3, Y6, X7, Y7, 0, 0, 0, 0, 0, }, //1 + {0, 0, 0, X3, Y4, X5, Y5, X6, Y6, Z1^X3^Y3, Z0^X4^Y4, X7, Y7, X8, 0, 0, 0, 0, }, //2 + {0, 0, 0, X3, Y4, Y5, X6, Y6, X7, Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, Y7, X8, Y8, 0, 0, 0, }, //3 + {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, X8, Y8, X9, 0, 0, }, //4 + {0, 0, 0, X3, Y4, X6, Y6, X7, Y7, Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X6, X5^Y6, X8, Y8, X9, 0, 0, }, //5 + {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, X3^Y3^Z4, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, Y8, X9, Y9, 0, }, //6 + {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X7, Z0^X5^Y7, X6^Y6, Y8, X9, Y9, 0, }, //7 + {0, 0, 0, X3, Y4, Y6, X7, Y7, X8, Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X7, X5^Y7, X6^Y6, Y8, X9, Y9, 0, }, //8 + {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X3^Y3^Z5, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, Z0^X6^Y7, X9, Y9, X10, }, //9 + {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X3^Y3^Z4, Z3^X4^Y4, Z2^Y5^X8, Z1^X5^Y8, Z0^Y6^X7, X6^Y7, X9, Y9, X10, }, //10 + {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X8, Z0^X5^Y8, Y6^X7, X6^Y7, X9, Y9, X10, }, //11 + {0, 0, 0, X3, Y4, X7, Y7, X8, Y8, Z2^X3^Y3, Z1^X4^Y4, Z0^Y5^X8, X5^Y8, Y6^X7, X6^Y7, X9, Y9, X10, }, //12 + {0, 0, 0, X3, Y3, Y4, X5, Y5, X6, Z0^X4^Y4, Y6, X7, Y7, 0, 0, 0, 0, 0, }, //13 + {0, 0, 0, X3, Y3, X5, Y5, X6, Y6, Y4^X5^Y5, Z0^X4^Y4, X7, Y7, X8, 0, 0, 0, 0, }, //14 + {0, 0, 0, X3, Y3, Y5, X6, Y6, X7, Y4^X5^Y5, Z0^X4^Y4, X5^Y5, Y7, X8, Y8, 0, 0, 0, }, //15 + {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y4^X6^Y6, Z1^X4^Y4, Y7, X8, Y8, X5^Y5, 0, 0, 0, }, //16 + {0, 0, 0, X3, Y3, X5, X6, Y6, X7, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, Y7, X8, Y8, 0, 0, 0, }, //17 + {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X5^Y6, X8, Y8, X9, 0, 0, }, //18 + {0, 0, 0, X3, Y3, Y4, X5, X6, Y6, Z1^X4^Y4, Z0^X5^Y5, X7, Y7, X8, 0, 0, 0, 0, }, //19 + {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, X8, Y8, X9, X5^Y6, 0, 0, }, //20 + {0, 0, 0, X3, Y3, X6, Y6, X7, Y7, Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, X5^Y6, X8, Y8, X9, 0, 0, }, //21 + {0, 0, 0, X3, Y3, Y6, X7, Y7, X8, Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, X5^Y6, X6^Y6, Y8, X9, Y9, 0, }, //22 + {0, 0, 0, X3, Y3, Y4, X6, Y6, X7, Z1^X4^Y4, Z0^Y5^X6, X5^Y6, Y7, X8, Y8, 0, 0, 0, }, //23 + {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, X5^Y7, Y8, X9, Y9, X6^Y6, 0, }, //24 + {0, 0, 0, X3, Y3, X6, X7, Y7, X8, Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, X5^Y7, X6^Y6, Y8, X9, Y9, 0, }, //25 + {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, X5^Y7, X6^Y6, X6^Y8, X9, Y9, X10, }, //26 + {0, 0, 0, X3, Y3, Y4, X6, X7, Y7, Z1^X4^Y4, Z0^Y5^X7, X5^Y7, X6^Y6, X8, Y8, X9, 0, 0, }, //27 + {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, Y4^X9^Y9, Z1^X4^Y4, Z0^Y5^X8, X5^Y8, Y6^X7, X9, Y9, X10, X6^Y7, }, //28 + {0, 0, 0, X3, Y3, X7, Y7, X8, Y8, Y4^X9^Y9, Z1^X4^Y4, Z0^Y5^X8, X5^Y8, Y6^X7, X6^Y7, X9, Y9, X10, }, //29 }; -const UINT_64 DCC_64K_R_X_RBPLUS[][17]= +const UINT_64 CMASK_SW_PATTERN[][17] = { - {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X4 ^ Y4, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X4 ^ Y4, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Z0 ^ X4 ^ Y4, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, Y4, X5, Y5, X6, Y6, Z0 ^ X4 ^ Y4, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, Y4, X5, Y5, X6, Z0 ^ X4 ^ Y4, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X5, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X5, Y5, X6, Y6, X7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X5, Y5, X6, Y6, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X7, Y7, 0, 0, 0, 0 }, - {0, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y9, 0, 0, 0, 0 }, - {0, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X9, 0, 0, 0, 0 }, - {0, X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, Y5, X6, Y6, X7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, Y7, 0, 0, 0, 0 }, - {0, Y4, X5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, Y4, X5, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, Y4, X5, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, Y4, X5, X6, Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X7, Y7, 0, 0, 0, 0 }, - {0, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y9, 0, 0, 0, 0 }, - {0, Y3, X5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X5, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X5, X6, Y6, X7, Y7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X5, X6, Y6, X7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, 0, 0, 0, 0 }, - {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0, 0 }, - {0, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0, 0 }, - {0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X6, Y6, X7, Y7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0, 0 }, - {0, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y9, 0, 0, 0, 0 }, - {0, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X9, 0, 0, 0, 0 }, - {0, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, Y4, X6, Y6, X7, Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, Y4, X6, Y6, X7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, Y7, 0, 0, 0, 0 }, - {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X6, Y6, X7, Y7, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0, 0, 0 }, - {0, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0, 0, 0 }, - {0, X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0, 0, 0 }, - {0, Y2, X3, Y3, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0, 0, 0 }, - {0, X2, Y2, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3 ^ Y6, 0, 0, 0 }, - {0, Y4, X6, X7, Y7, X8, Y8, X9, Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0, 0 }, - {0, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0, 0 }, - {0, X3, Y3, Y4, X6, X7, Y7, X8, Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, Y4, X6, X7, Y7, X8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0, 0 }, - {0, X2, X3, Y3, Y4, X6, X7, Y2, Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, 0, 0, 0, 0 }, - {0, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {0, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {0, X3, Y3, X6, X7, Y7, X8, Y8, X9, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {0, Y2, X3, Y3, X6, X7, Y7, X8, Y8, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {0, X2, X3, Y3, X6, X7, Y7, Y2, X8, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, 0, 0, 0 }, - {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ Y8, 0, 0 }, - {0, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ Y8, 0, 0 }, - {0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ Y8, 0, 0 }, - {0, Y2, Y3, X6, X7, Y7, X8, Y8, X9, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3 ^ Y8, 0, 0 }, - {0, X2, Y3, X6, X7, Y7, X8, Y2, Y8, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ Y8, 0, 0 }, - {0, Y4, X7, Y7, X8, Y8, X9, Y9, X10, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0, 0 }, - {0, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0, 0 }, - {0, X3, Y3, Y4, X7, Y7, X8, Y8, X9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0, 0 }, - {0, X3, Y3, Y4, X7, Y7, X8, Y2, Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0, 0 }, - {0, X3, Y3, Y4, X7, Y7, X8, X2, Y2, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, 0, 0, 0 }, - {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {0, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {0, X3, Y3, X7, Y7, X8, Y8, Y2, X9, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {0, X3, Y3, X7, Y7, X8, Y8, X2, Y2, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, 0, 0 }, - {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X4 ^ Y4, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X4 ^ Y4, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X4 ^ Y4, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Z0 ^ X4 ^ Y4, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, Y4, X5, Y5, X6, Y6, Z0 ^ X4 ^ Y4, X7, Y7, 0, 0, 0, 0 }, - {0, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y9, 0, 0, 0, 0 }, - {0, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X5, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X5, Y5, X6, Y6, X7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, Y7, 0, 0, 0, 0 }, - {0, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0, 0 }, - {0, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0, 0 }, - {0, X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0, 0 }, - {0, Y4, X5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y9, 0, 0, 0, 0 }, - {0, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X9, 0, 0, 0, 0 }, - {0, X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, Y4, X5, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, Y4, X5, X6, Y6, X7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, Y7, 0, 0, 0, 0 }, - {0, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, Y3, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X5, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X5, X6, Y6, X7, Y7, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0 }, - {0, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0 }, - {0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0 }, - {0, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0, 0 }, - {0, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, Y4, X6, Y6, X7, Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0, 0 }, - {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0, 0 }, - {0, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0, 0 }, - {0, X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0, 0 }, - {0, Y2, X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0, 0 }, - {0, X2, Y2, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3 ^ Y6, 0, 0 }, - {0, Y4, X6, X7, Y7, X8, Y8, X9, Y9, X10, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {0, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {0, X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {0, Y2, X3, Y3, Y4, X6, X7, Y7, X8, Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0, 0 }, - {0, X2, X3, Y3, Y4, X6, X7, Y2, Y7, X8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, 0, 0, 0 }, - {0, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {0, Y3, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {0, X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {0, Y2, X3, Y3, X6, X7, Y7, X8, Y8, X9, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {0, X2, X3, Y3, X6, X7, Y7, Y2, X8, Y8, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, 0, 0 }, - {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ Y8, 0 }, - {0, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ Y8, 0 }, - {0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ Y8, 0 }, - {0, Y2, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3 ^ Y8, 0 }, - {0, X2, Y3, X6, X7, Y7, X8, Y2, Y8, X9, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ Y8, 0 }, - {0, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {0, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {0, X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {0, X3, Y3, Y4, X7, Y7, X8, Y2, Y8, X9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0, 0 }, - {0, X3, Y3, Y4, X7, Y7, X8, X2, Y2, Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, 0, 0 }, - {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {0, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {0, X3, Y3, X7, Y7, X8, Y8, Y2, X9, Y9, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {0, X3, Y3, X7, Y7, X8, Y8, X2, Y2, X9, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, 0 }, - {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, 0, 0, 0, 0 }, - {0, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0 }, - {0, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, 0, 0, 0, 0 }, - {0, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Z0 ^ X4 ^ Y4, Y9, 0, 0, 0, 0 }, - {0, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Z0 ^ X4 ^ Y4, X9, 0, 0, 0, 0 }, - {0, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z0 ^ X4 ^ Y4, Y8, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0 ^ X4 ^ Y4, X8, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, Y4, X5, Y5, X6, Y6, X7, Z0 ^ X4 ^ Y4, Y7, 0, 0, 0, 0 }, - {0, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {0, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {0, X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X5, Y5, X6, Y6, X7, Y7, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, 0, 0, 0, 0 }, - {0, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0 }, - {0, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0 }, - {0, X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0 }, - {0, Y2, X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y4 ^ X5 ^ Y5, Z0 ^ X4 ^ Y4, X5 ^ Y5, 0, 0, 0 }, - {0, Y4, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, X9, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Y8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, Y2, X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, Y4, X5, X6, Y6, X7, Y7, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0, 0 }, - {0, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {0, Y3, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {0, X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {0, Y2, X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, X5, X6, Y6, X7, Y7, X8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, 0, 0, 0 }, - {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0 }, - {0, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0 }, - {0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0 }, - {0, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0 }, - {0, X2, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X6 ^ Y6, Z1 ^ X4 ^ Y4, Z0 ^ X5 ^ Y5, X5 ^ Y6, 0, 0 }, - {0, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, Y2, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, X2, Y2, X3, Y3, Y4, X6, Y6, X7, Y7, X8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0, 0 }, - {0, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {0, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {0, X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {0, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {0, X2, Y2, X3, Y3, X6, Y6, X7, Y7, X8, Y8, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, 0, 0 }, - {0, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0 }, - {0, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0 }, - {0, X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0 }, - {0, Y2, X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X6 ^ Y6, 0 }, - {0, X2, Y2, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4 ^ X7 ^ Y7, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X6, Z0 ^ X5 ^ Y6, X3 ^ Y6, 0 }, - {0, Y4, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {0, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, X10, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {0, X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {0, Y2, X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0, 0 }, - {0, X2, X3, Y3, Y4, X6, X7, Y2, Y7, X8, Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, 0, 0 }, - {0, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {0, Y3, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {0, X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {0, Y2, X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, 0 }, - {0, X2, X3, Y3, X6, X7, Y7, Y2, X8, Y8, X9, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, 0 }, - {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y11, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ Y8 }, - {0, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ Y8 }, - {0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X6 ^ Y8 }, - {0, Y2, Y3, X6, X7, Y7, X8, Y8, X9, Y9, X10, Y4 ^ X8 ^ Y8, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X7, Z1 ^ X5 ^ Y7, Z0 ^ X6 ^ Y6, X3 ^ Y8 }, - {0, X2, Y3, X6, X7, Y7, X8, Y2, Y8, X9, Y9, Y4 ^ X8 ^ Y8, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X7, Z0 ^ X5 ^ Y7, Y2 ^ X6 ^ Y6, X3 ^ Y8 }, - {0, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {0, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {0, X3, Y3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {0, X3, Y3, Y4, X7, Y7, X8, Y2, Y8, X9, Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7, 0 }, - {0, X3, Y3, Y4, X7, Y7, X8, X2, Y2, Y8, X9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7, 0 }, - {0, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y11, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, X11, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y10, Y4 ^ X9 ^ Y9, X4 ^ Y4 ^ Z4, Z3 ^ Y5 ^ X8, Z2 ^ X5 ^ Y8, Z1 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, X3, Y3, X7, Y7, X8, Y8, Y2, X9, Y9, X10, Y4 ^ X9 ^ Y9, Z3 ^ X4 ^ Y4, Z2 ^ Y5 ^ X8, Z1 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, Z0 ^ X6 ^ Y7 }, - {0, X3, Y3, X7, Y7, X8, Y8, X2, Y2, X9, Y9, Y4 ^ X9 ^ Y9, Z2 ^ X4 ^ Y4, Z1 ^ Y5 ^ X8, Z0 ^ X5 ^ Y8, Y2 ^ Y6 ^ X7, X2 ^ X6 ^ Y7 }, + {X3, Y3, X4, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Y8, X9, 0, 0, 0, 0, }, //0 + {X3, Y4, X4, X5, Y5, X6, Y6, X7, Y7, Z0^X3^Y3, X8, Y8, X9, 0, 0, 0, 0, }, //1 + {X3, Y4, X5, Y5, X6, Y6, X7, Y7, X8, Z1^X3^Y3, Z0^X4^Y4, Y8, X9, 0, 0, 0, 0, }, //2 + {X3, Y4, Y5, X6, Y6, X7, Y7, X8, Y8, Z2^X3^Y3, Z1^X4^Y4, Z0^X5^Y5, X9, 0, 0, 0, 0, }, //3 + {X3, Y4, X6, Y6, X7, Y7, X8, Y8, X9, X3^Y3^Z3, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, 0, 0, 0, 0, }, //4 + {X3, Y4, Y6, X7, Y7, X8, Y8, X9, Y9, X3^Y3^Z4, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, 0, 0, 0, }, //5 + {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, X3^Y3^Z5, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, Z0^X6^Y7, 0, 0, }, //6 + {X3, Y4, X7, Y7, X8, Y8, X9, Y9, X10, X3^Y3^Z4, Z3^X4^Y4, Z2^Y5^X8, Z1^X5^Y8, Y6^X7, Z0^X6^Y7, 0, 0, }, //7 + {X3, Y3, Y4, X5, Y5, X6, Y6, X7, Y7, Z0^X4^Y4, X8, Y8, X9, 0, 0, 0, 0, }, //8 + {X3, Y3, X5, Y5, X6, Y6, X7, Y7, X8, Y4^X5^Y5, Z0^X4^Y4, Y8, X9, 0, 0, 0, 0, }, //9 + {X3, Y3, Y5, X6, Y6, X7, Y7, X8, Y8, Y4^X5^Y5, Z0^X4^Y4, X5^Y5, X9, 0, 0, 0, 0, }, //10 + {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, Y4^X6^Y6, Z1^X4^Y4, X5^Y5, X9, 0, 0, 0, 0, }, //11 + {X3, Y3, X5, X6, Y6, X7, Y7, X8, Y8, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X9, 0, 0, 0, 0, }, //12 + {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4^X6^Y6, Z1^X4^Y4, Z0^X5^Y5, X5^Y6, 0, 0, 0, 0, }, //13 + {X3, Y3, Y4, X5, X6, Y6, X7, Y7, X8, Z1^X4^Y4, Z0^X5^Y5, Y8, X9, 0, 0, 0, 0, }, //14 + {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, X5^Y6, 0, 0, 0, 0, }, //15 + {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, X5^Y6, 0, 0, 0, 0, }, //16 + {X3, Y3, X6, Y6, X7, Y7, X8, Y8, X9, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, 0, 0, 0, 0, }, //17 + {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, Y4^X7^Y7, Z1^X4^Y4, Z0^Y5^X6, X5^Y6, X6^Y6, 0, 0, 0, }, //18 + {X3, Y3, Y6, X7, Y7, X8, Y8, X9, Y9, Y4^X7^Y7, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, X6^Y6, 0, 0, 0, }, //19 + {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z1^X4^Y4, Z0^Y5^X6, X5^Y6, X9, 0, 0, 0, 0, }, //20 + {X3, Y3, Y4, X6, Y6, X7, Y7, X8, Y8, Z2^X4^Y4, Z1^Y5^X6, Z0^X5^Y6, X9, 0, 0, 0, 0, }, //21 + {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, X5^Y7, X6^Y6, 0, 0, 0, }, //22 + {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, X6^Y6, 0, 0, 0, }, //23 + {X3, Y3, X6, X7, Y7, X8, Y8, X9, Y9, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, 0, 0, 0, }, //24 + {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X8^Y8, Z1^X4^Y4, Z0^Y5^X7, X5^Y7, X6^Y6, X6^Y8, 0, 0, }, //25 + {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, X6^Y8, 0, 0, }, //26 + {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z1^X4^Y4, Z0^Y5^X7, X5^Y7, X6^Y6, 0, 0, 0, 0, }, //27 + {X3, Y3, Y4, X6, X7, Y7, X8, Y8, X9, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, 0, 0, 0, 0, }, //28 + {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X9^Y9, Z1^X4^Y4, Z0^Y5^X8, X5^Y8, Y6^X7, X6^Y7, 0, 0, }, //29 + {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X9^Y9, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, X6^Y7, 0, 0, }, //30 + {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X9^Y9, X4^Y4^Z4, Z3^Y5^X8, Z2^X5^Y8, Z1^Y6^X7, Z0^X6^Y7, 0, 0, }, //31 + {X3, Y3, X6, X7, Y7, X8, X9, Y9, X10, Y4^X8^Y8, Z3^X4^Y4, Z2^Y5^X7, Z1^X5^Y7, Z0^X6^Y6, X3^Y8, 0, 0, }, //32 + {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X9^Y9, Z3^X4^Y4, Z2^Y5^X8, Z1^X5^Y8, Y6^X7, X6^Y7, 0, 0, }, //33 + {X3, Y3, X7, Y7, X8, Y8, X9, Y9, X10, Y4^X9^Y9, Z3^X4^Y4, Z2^Y5^X8, Z1^X5^Y8, Y6^X7, Z0^X6^Y7, 0, 0, }, //34 }; } // V2 diff --git a/src/amd/addrlib/src/gfx10/gfx10addrlib.cpp b/src/amd/addrlib/src/gfx10/gfx10addrlib.cpp index cecd1535568..eea3deefff8 100644 --- a/src/amd/addrlib/src/gfx10/gfx10addrlib.cpp +++ b/src/amd/addrlib/src/gfx10/gfx10addrlib.cpp @@ -33,7 +33,6 @@ #include "gfx10addrlib.h" #include "gfx10_gb_reg.h" -#include "gfx10SwizzlePattern.h" #include "amdgpu_asic_addr.h" @@ -66,63 +65,54 @@ namespace V2 //////////////////////////////////////////////////////////////////////////////////////////////////// const SwizzleModeFlags Gfx10Lib::SwizzleModeTable[ADDR_SW_MAX_TYPE] = -{//Linear 256B 4KB 64KB Var Z Std Disp Rot XOR T RtOpt - {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // ADDR_SW_LINEAR - {0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_256B_S - {0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0}, // ADDR_SW_256B_D - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - {0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_4KB_S - {0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0}, // ADDR_SW_4KB_D - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - {0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_64KB_S - {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0}, // ADDR_SW_64KB_D - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - {0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0}, // ADDR_SW_64KB_S_T - {0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0}, // ADDR_SW_64KB_D_T - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - {0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0}, // ADDR_SW_4KB_S_X - {0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0}, // ADDR_SW_4KB_D_X - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - - {0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0}, // ADDR_SW_64KB_Z_X - {0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0}, // ADDR_SW_64KB_S_X - {0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0}, // ADDR_SW_64KB_D_X - {0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1}, // ADDR_SW_64KB_R_X - - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved - {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // ADDR_SW_LINEAR_GENERAL +{//Linear 256B 4KB 64KB Var Z Std Disp Rot XOR T RtOpt Reserved + {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // ADDR_SW_LINEAR + {0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, // ADDR_SW_256B_S + {0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_256B_D + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, // ADDR_SW_4KB_S + {0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_4KB_D + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0}, // ADDR_SW_64KB_S + {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_64KB_D + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0}, // ADDR_SW_64KB_S_T + {0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0}, // ADDR_SW_64KB_D_T + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0}, // ADDR_SW_4KB_S_X + {0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0}, // ADDR_SW_4KB_D_X + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + + {0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0}, // ADDR_SW_64KB_Z_X + {0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0}, // ADDR_SW_64KB_S_X + {0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0}, // ADDR_SW_64KB_D_X + {0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0}, // ADDR_SW_64KB_R_X + + {0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0}, // ADDR_SW_VAR_Z_X + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0}, // ADDR_SW_VAR_R_X + {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // ADDR_SW_LINEAR_GENERAL }; const Dim3d Gfx10Lib::Block256_3d[] = {{8, 4, 8}, {4, 4, 8}, {4, 4, 4}, {4, 2, 4}, {2, 2, 4}}; -const Dim3d Gfx10Lib::Block64K_3d[] = {{64, 32, 32}, {32 , 32, 32}, {32, 32, 16}, {32, 16, 16}, {16, 16, 16}}; -const Dim3d Gfx10Lib::Block4K_3d[] = {{16, 16, 16}, {8, 16, 16}, {8, 16, 8}, {8, 8, 8}, {4, 8, 8}}; - -const Dim2d Gfx10Lib::Block64K_2d[] = {{256, 256}, {256 , 128}, {128, 128}, {128, 64}, {64, 64}}; -const Dim2d Gfx10Lib::Block4K_2d[] = {{64, 64}, {64, 32}, {32, 32}, {32, 16}, {16, 16}}; - const Dim3d Gfx10Lib::Block64K_Log2_3d[] = {{6, 5, 5}, {5, 5, 5}, {5, 5, 4}, {5, 4, 4}, {4, 4, 4}}; const Dim3d Gfx10Lib::Block4K_Log2_3d[] = {{4, 4, 4}, {3, 4, 4}, {3, 4, 3}, {3, 3, 3}, {2, 3, 3}}; -const Dim2d Gfx10Lib::Block64K_Log2_2d[] = {{8, 8}, {8, 7}, {7, 7}, {7, 6}, {6, 6}}; -const Dim2d Gfx10Lib::Block4K_Log2_2d[] = {{6, 6}, {6, 5}, {5, 5}, {5, 4}, {4, 4}}; - /** ************************************************************************************************************************ * Gfx10Lib::Gfx10Lib @@ -135,7 +125,9 @@ const Dim2d Gfx10Lib::Block4K_Log2_2d[] = {{6, 6}, {6, 5}, {5, 5}, {5, 4}, {4, Gfx10Lib::Gfx10Lib(const Client* pClient) : Lib(pClient), - m_numEquations(0) + m_colorBaseIndex(0), + m_xmaskBaseIndex(0), + m_dccBaseIndex(0) { m_class = AI_ADDRLIB; memset(&m_settings, 0, sizeof(m_settings)); @@ -172,7 +164,8 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlComputeHtileInfo( { ADDR_E_RETURNCODE ret = ADDR_OK; - if ((pIn->swizzleMode != ADDR_SW_64KB_Z_X) || + if (((pIn->swizzleMode != ADDR_SW_64KB_Z_X) && + ((pIn->swizzleMode != ADDR_SW_VAR_Z_X) || (m_blockVarSizeLog2 == 0))) || (pIn->hTileFlags.pipeAligned != TRUE)) { ret = ADDR_INVALIDPARAMS; @@ -182,7 +175,7 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlComputeHtileInfo( Dim3d metaBlk = {0}; const UINT_32 metaBlkSize = GetMetaBlkSize(Gfx10DataDepthStencil, ADDR_RSRC_TEX_2D, - ADDR_SW_64KB_Z_X, + pIn->swizzleMode, 0, 0, TRUE, @@ -281,8 +274,10 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlComputeCmaskInfo( { ADDR_E_RETURNCODE ret = ADDR_OK; - if ((pIn->resourceType != ADDR_RSRC_TEX_2D) || - (pIn->cMaskFlags.pipeAligned != TRUE)) + if ((pIn->resourceType != ADDR_RSRC_TEX_2D) || + (pIn->cMaskFlags.pipeAligned != TRUE) || + ((pIn->swizzleMode != ADDR_SW_64KB_Z_X) && + ((pIn->swizzleMode != ADDR_SW_VAR_Z_X) || (m_blockVarSizeLog2 == 0)))) { ret = ADDR_INVALIDPARAMS; } @@ -291,7 +286,7 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlComputeCmaskInfo( Dim3d metaBlk = {0}; const UINT_32 metaBlkSize = GetMetaBlkSize(Gfx10DataFmask, ADDR_RSRC_TEX_2D, - ADDR_SW_64KB_Z_X, + pIn->swizzleMode, 0, 0, TRUE, @@ -512,7 +507,10 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlComputeCmaskAddrFromCoord( const ADDR2_COMPUTE_CMASK_ADDRFROMCOORD_INPUT* pIn, ///< [in] input structure ADDR2_COMPUTE_CMASK_ADDRFROMCOORD_OUTPUT* pOut) ///< [out] output structure { - ADDR2_COMPUTE_CMASK_INFO_INPUT input = {0}; + // Only support pipe aligned CMask + ADDR_ASSERT(pIn->cMaskFlags.pipeAligned == TRUE); + + ADDR2_COMPUTE_CMASK_INFO_INPUT input = {}; input.size = sizeof(input); input.cMaskFlags = pIn->cMaskFlags; input.colorFlags = pIn->colorFlags; @@ -522,27 +520,23 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlComputeCmaskAddrFromCoord( input.swizzleMode = pIn->swizzleMode; input.resourceType = pIn->resourceType; - ADDR2_COMPUTE_CMASK_INFO_OUTPUT output = {0}; + ADDR2_COMPUTE_CMASK_INFO_OUTPUT output = {}; output.size = sizeof(output); ADDR_E_RETURNCODE returnCode = ComputeCmaskInfo(&input, &output); if (returnCode == ADDR_OK) { - const UINT_32 fmaskBpp = GetFmaskBpp(pIn->numSamples, pIn->numFrags); - const UINT_32 fmaskElemLog2 = Log2(fmaskBpp >> 3); - const UINT_32 numPipeLog2 = m_pipesLog2; - const UINT_32 pipeMask = (1 << numPipeLog2) - 1; - const UINT_32 fmaskBppType = 4; - const UINT_32 numPipeType = 8; - const UINT_32 index = ((m_pipeInterleaveLog2 - 8) * (fmaskBppType * numPipeType)) + - ((numPipeLog2 + 1) * fmaskBppType) + - fmaskElemLog2; - - const UINT_64* pPattern = CMASK_64K[index]; + const UINT_32 fmaskBpp = GetFmaskBpp(pIn->numSamples, pIn->numFrags); + const UINT_32 fmaskElemLog2 = Log2(fmaskBpp >> 3); + const UINT_32 pipeMask = (1 << m_pipesLog2) - 1; + const UINT_32 index = m_xmaskBaseIndex + fmaskElemLog2; + const UINT_8* patIdxTable = (pIn->swizzleMode == ADDR_SW_VAR_Z_X) ? CMASK_VAR_RBPLUS_PATIDX : + (m_settings.supportRbPlus ? CMASK_64K_RBPLUS_PATIDX : CMASK_64K_PATIDX); + const UINT_32 blkSizeLog2 = Log2(output.metaBlkWidth) + Log2(output.metaBlkHeight) - 7; const UINT_32 blkMask = (1 << blkSizeLog2) - 1; - const UINT_32 blkOffset = ComputeOffsetFromSwizzlePattern(pPattern, + const UINT_32 blkOffset = ComputeOffsetFromSwizzlePattern(CMASK_SW_PATTERN[patIdxTable[index]], blkSizeLog2 + 1, // +1 for nibble offset pIn->x, pIn->y, @@ -605,11 +599,12 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlComputeHtileAddrFromCoord( { const UINT_32 numSampleLog2 = Log2(pIn->numSamples); const UINT_32 pipeMask = (1 << m_pipesLog2) - 1; - const UINT_32 index = m_htileBaseIndex + numSampleLog2; - const UINT_64* pPattern = HTILE_64K[index]; + const UINT_32 index = m_xmaskBaseIndex + numSampleLog2; + const UINT_8* patIdxTable = m_settings.supportRbPlus ? HTILE_RBPLUS_PATIDX : HTILE_PATIDX; + const UINT_32 blkSizeLog2 = Log2(output.metaBlkWidth) + Log2(output.metaBlkHeight) - 4; const UINT_32 blkMask = (1 << blkSizeLog2) - 1; - const UINT_32 blkOffset = ComputeOffsetFromSwizzlePattern(pPattern, + const UINT_32 blkOffset = ComputeOffsetFromSwizzlePattern(HTILE_SW_PATTERN[patIdxTable[index]], blkSizeLog2 + 1, // +1 for nibble offset pIn->x, pIn->y, @@ -698,27 +693,53 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlComputeDccAddrFromCoord( if (returnCode == ADDR_OK) { - const UINT_32 elemLog2 = Log2(pIn->bpp >> 3); - const UINT_32 numPipeLog2 = m_pipesLog2; - const UINT_32 pipeMask = (1 << numPipeLog2) - 1; - const UINT_32 alignPipeType = 7; - const UINT_32 unalignPipeType = 3; - const UINT_32 numPipeType = alignPipeType + unalignPipeType; - UINT_32 index = ((m_pipeInterleaveLog2 - 8) * (MaxNumOfBpp * numPipeType)) + elemLog2; + const UINT_32 elemLog2 = Log2(pIn->bpp >> 3); + const UINT_32 numPipeLog2 = m_pipesLog2; + const UINT_32 pipeMask = (1 << numPipeLog2) - 1; + UINT_32 index = m_dccBaseIndex + elemLog2; + const UINT_8* patIdxTable; - if (pIn->dccKeyFlags.pipeAligned) + if (m_settings.supportRbPlus) { - index += (numPipeLog2 + unalignPipeType) * MaxNumOfBpp; + patIdxTable = DCC_64K_R_X_RBPLUS_PATIDX; + + if (pIn->dccKeyFlags.pipeAligned) + { + index += MaxNumOfBpp; + + if (m_numPkrLog2 < 2) + { + index += m_pipesLog2 * MaxNumOfBpp; + } + else + { + // 4 groups for "m_numPkrLog2 < 2" case + index += 4 * MaxNumOfBpp; + + const UINT_32 dccPipePerPkr = 3; + + index += (m_numPkrLog2 - 2) * dccPipePerPkr * MaxNumOfBpp + + (m_pipesLog2 - m_numPkrLog2) * MaxNumOfBpp; + } + } } else { - index += Min(numPipeLog2, 2u) * MaxNumOfBpp; + patIdxTable = DCC_64K_R_X_PATIDX; + + if (pIn->dccKeyFlags.pipeAligned) + { + index += (numPipeLog2 + UnalignedDccType) * MaxNumOfBpp; + } + else + { + index += Min(numPipeLog2, UnalignedDccType - 1) * MaxNumOfBpp; + } } - const UINT_64* pPattern = DCC_64K_R_X[index]; const UINT_32 blkSizeLog2 = Log2(output.metaBlkWidth) + Log2(output.metaBlkHeight) + elemLog2 - 8; const UINT_32 blkMask = (1 << blkSizeLog2) - 1; - const UINT_32 blkOffset = ComputeOffsetFromSwizzlePattern(pPattern, + const UINT_32 blkOffset = ComputeOffsetFromSwizzlePattern(DCC_64K_R_X_SW_PATTERN[patIdxTable[index]], blkSizeLog2 + 1, // +1 for nibble offset pIn->x, pIn->y, @@ -822,6 +843,7 @@ BOOL_32 Gfx10Lib::HwlInitGlobalParams( // Addr::V2::Lib::ComputePipeBankXor()/ComputeSlicePipeBankXor() requires pipe interleave to be exactly 8 bits, and // any larger value requires a post-process (left shift) on the output pipeBankXor bits. + // And more importantly, SW AddrLib doesn't support sw equation/pattern for PI != 256 case. ADDR_ASSERT(m_pipeInterleaveBytes == ADDR_PIPEINTERLEAVE_256B); switch (gbAddrConfig.bits.MAX_COMPRESSED_FRAGS) @@ -848,53 +870,47 @@ BOOL_32 Gfx10Lib::HwlInitGlobalParams( break; } - if (m_settings.supportRbPlus) { - m_numPkrLog2 = gbAddrConfig.bits.NUM_PKRS; - m_numSaLog2 = (m_numPkrLog2 > 0) ? (m_numPkrLog2 - 1) : 0; + // Skip unaligned case + m_xmaskBaseIndex += MaxNumOfAA; - ADDR_ASSERT((m_numPkrLog2 <= m_pipesLog2) && ((m_pipesLog2 - m_numPkrLog2) <= 2)); + m_xmaskBaseIndex += m_pipesLog2 * MaxNumOfAA; + m_colorBaseIndex += m_pipesLog2 * MaxNumOfBpp; - const UINT_32 maxPipeInterleaveType = 3; + if (m_settings.supportRbPlus) + { + m_numPkrLog2 = gbAddrConfig.bits.NUM_PKRS; + m_numSaLog2 = (m_numPkrLog2 > 0) ? (m_numPkrLog2 - 1) : 0; - m_colorBaseIndex = sizeof(SW_64K_R_X_1xaa_RBPLUS) / - sizeof(SW_64K_R_X_1xaa_RBPLUS[0]) / - maxPipeInterleaveType * - (m_pipeInterleaveLog2 - 8); - m_htileBaseIndex = sizeof(HTILE_64K_RBPLUS) / - sizeof(HTILE_64K_RBPLUS[0]) / - maxPipeInterleaveType * - (m_pipeInterleaveLog2 - 8); + ADDR_ASSERT((m_numPkrLog2 <= m_pipesLog2) && ((m_pipesLog2 - m_numPkrLog2) <= 2)); - // Skip unaligned case - m_htileBaseIndex += MaxNumOfAA; + ADDR_C_ASSERT(sizeof(HTILE_RBPLUS_PATIDX) / sizeof(HTILE_RBPLUS_PATIDX[0]) == + sizeof(CMASK_64K_RBPLUS_PATIDX) / sizeof(CMASK_64K_RBPLUS_PATIDX[0])); - if (m_numPkrLog2 < 2) - { - m_colorBaseIndex += m_pipesLog2 * MaxNumOfBpp; - m_htileBaseIndex += m_pipesLog2 * MaxNumOfAA; + if (m_numPkrLog2 >= 2) + { + m_colorBaseIndex += (2 * m_numPkrLog2 - 2) * MaxNumOfBpp; + m_xmaskBaseIndex += (m_numPkrLog2 - 1) * 3 * MaxNumOfAA; + } } else { - m_colorBaseIndex += (2 * m_numPkrLog2 - 2 + m_pipesLog2) * MaxNumOfBpp; + const UINT_32 numPipeType = static_cast<UINT_32>(ADDR_CONFIG_64_PIPE) - + static_cast<UINT_32>(ADDR_CONFIG_1_PIPE) + + 1; - const UINT_32 htilePipePerPkr = 4; + ADDR_C_ASSERT(sizeof(HTILE_PATIDX) / sizeof(HTILE_PATIDX[0]) == (numPipeType + 1) * MaxNumOfAA); - m_htileBaseIndex += (m_numPkrLog2 - 1) * htilePipePerPkr * MaxNumOfAA + - (m_pipesLog2 + 1 - m_numPkrLog2) * MaxNumOfAA; + ADDR_C_ASSERT(sizeof(HTILE_PATIDX) / sizeof(HTILE_PATIDX[0]) == + sizeof(CMASK_64K_PATIDX) / sizeof(CMASK_64K_PATIDX[0])); } } - else - { - const UINT_32 numPipeType = static_cast<UINT_32>(ADDR_CONFIG_64_PIPE) - - static_cast<UINT_32>(ADDR_CONFIG_1_PIPE) + - 1; - - m_colorBaseIndex = (m_pipeInterleaveLog2 - 8) * (MaxNumOfBpp * numPipeType) + - (m_pipesLog2 * MaxNumOfBpp); - m_htileBaseIndex = (m_pipeInterleaveLog2 - 8) * (MaxNumOfAA * (numPipeType + 1)) + - (m_pipesLog2 + 1) * MaxNumOfAA; + if (m_settings.supportRbPlus) + { + // VAR block size = 16K * num_pipes. For 4 pipe configuration, SW_VAR_* mode swizzle patterns are same as the + // corresponding SW_64KB_* mode + m_blockVarSizeLog2 = m_pipesLog2 + 14; } if (valid) @@ -1284,14 +1300,17 @@ UINT_32 Gfx10Lib::GetMetaBlkSize( ************************************************************************************************************************ */ VOID Gfx10Lib::ConvertSwizzlePatternToEquation( - UINT_32 elemLog2, ///< [in] element bytes log2 - AddrResourceType rsrcType, ///< [in] resource type - AddrSwizzleMode swMode, ///< [in] swizzle mode - const UINT_64* pPattern, ///< [in] swizzle pattern - ADDR_EQUATION* pEquation) ///< [out] equation converted from swizzle pattern + UINT_32 elemLog2, ///< [in] element bytes log2 + AddrResourceType rsrcType, ///< [in] resource type + AddrSwizzleMode swMode, ///< [in] swizzle mode + const ADDR_SW_PATINFO* pPatInfo, ///< [in] swizzle pattern infor + ADDR_EQUATION* pEquation) ///< [out] equation converted from swizzle pattern const { - const ADDR_BIT_SETTING* pSwizzle = reinterpret_cast<const ADDR_BIT_SETTING*>(pPattern); + ADDR_BIT_SETTING fullSwizzlePattern[20]; + GetSwizzlePatternFromPatternInfo(pPatInfo, fullSwizzlePattern); + + const ADDR_BIT_SETTING* pSwizzle = fullSwizzlePattern; const UINT_32 blockSizeLog2 = GetBlockSizeLog2(swMode); pEquation->numBits = blockSizeLog2; @@ -1342,10 +1361,13 @@ VOID Gfx10Lib::ConvertSwizzlePatternToEquation( } else if (IsThin(rsrcType, swMode)) { - const UINT_32 blkXLog2 = (blockSizeLog2 == 12) ? Block4K_Log2_2d[elemLog2].w : Block64K_Log2_2d[elemLog2].w; - const UINT_32 blkYLog2 = (blockSizeLog2 == 12) ? Block4K_Log2_2d[elemLog2].h : Block64K_Log2_2d[elemLog2].h; - const UINT_32 blkXMask = (1 << blkXLog2) - 1; - const UINT_32 blkYMask = (1 << blkYLog2) - 1; + Dim3d dim; + ComputeThinBlockDimension(&dim.w, &dim.h, &dim.d, 8u << elemLog2, 0, rsrcType, swMode); + + const UINT_32 blkXLog2 = Log2(dim.w); + const UINT_32 blkYLog2 = Log2(dim.h); + const UINT_32 blkXMask = dim.w - 1; + const UINT_32 blkYMask = dim.h - 1; ADDR_BIT_SETTING swizzle[ADDR_MAX_EQUATION_BIT]; UINT_32 xMask = 0; @@ -1541,7 +1563,7 @@ VOID Gfx10Lib::ConvertSwizzlePatternToEquation( ADDR_ASSERT((xMask == blkXMask) && (yMask == blkYMask)); } - else if (IsEquationCompatibleThick(rsrcType, swMode)) + else { const UINT_32 blkXLog2 = (blockSizeLog2 == 12) ? Block4K_Log2_3d[elemLog2].w : Block64K_Log2_3d[elemLog2].w; const UINT_32 blkYLog2 = (blockSizeLog2 == 12) ? Block4K_Log2_3d[elemLog2].h : Block64K_Log2_3d[elemLog2].h; @@ -1823,27 +1845,40 @@ VOID Gfx10Lib::InitEquationTable() { const AddrResourceType rsrcType = static_cast<AddrResourceType>(rsrcTypeIdx + ADDR_RSRC_TEX_2D); - for (UINT_32 swModeIdx = 0; swModeIdx < MaxSwMode; swModeIdx++) + for (UINT_32 swModeIdx = 0; swModeIdx < MaxSwModeType; swModeIdx++) { const AddrSwizzleMode swMode = static_cast<AddrSwizzleMode>(swModeIdx); for (UINT_32 elemLog2 = 0; elemLog2 < MaxElementBytesLog2; elemLog2++) { - UINT_32 equationIndex = ADDR_INVALID_EQUATION_INDEX; - const UINT_64* pPattern = GetSwizzlePattern(swMode, rsrcType, elemLog2, 1); + UINT_32 equationIndex = ADDR_INVALID_EQUATION_INDEX; + const ADDR_SW_PATINFO* pPatInfo = GetSwizzlePatternInfo(swMode, rsrcType, elemLog2, 1); - if (pPattern != NULL) + if (pPatInfo != NULL) { - ADDR_EQUATION equation = {}; + ADDR_ASSERT(IsValidSwMode(swMode)); + + if (pPatInfo->maxItemCount <= 3) + { + ADDR_EQUATION equation = {}; - ConvertSwizzlePatternToEquation(elemLog2, rsrcType, swMode, pPattern, &equation); + ConvertSwizzlePatternToEquation(elemLog2, rsrcType, swMode, pPatInfo, &equation); - equationIndex = m_numEquations; - ADDR_ASSERT(equationIndex < EquationTableSize); + equationIndex = m_numEquations; + ADDR_ASSERT(equationIndex < EquationTableSize); - m_equationTable[equationIndex] = equation; + m_equationTable[equationIndex] = equation; - m_numEquations++; + m_numEquations++; + } + else + { + // We only see "ill" equation from 64/128 BPE + 3D resource + SW_64KB_D_X under RB+ case + ADDR_ASSERT((elemLog2 == 3) || (elemLog2 == 4)); + ADDR_ASSERT(rsrcTypeIdx == 1); + ADDR_ASSERT(swMode == ADDR_SW_64KB_D_X); + ADDR_ASSERT(m_settings.supportRbPlus == 1); + } } m_equationLookupTable[rsrcTypeIdx][swModeIdx][elemLog2] = equationIndex; @@ -2179,7 +2214,7 @@ BOOL_32 Gfx10Lib::ValidateSwModeParams( { BOOL_32 valid = TRUE; - if (pIn->swizzleMode >= ADDR_SW_MAX_TYPE) + if ((pIn->swizzleMode >= ADDR_SW_MAX_TYPE) || (IsValidSwMode(pIn->swizzleMode) == FALSE)) { ADDR_ASSERT_ALWAYS(); valid = FALSE; @@ -2198,8 +2233,10 @@ BOOL_32 Gfx10Lib::ValidateSwModeParams( const BOOL_32 thin3d = flags.view3dAs2dArray; const BOOL_32 linear = IsLinear(swizzle); const BOOL_32 blk256B = IsBlock256b(swizzle); + const BOOL_32 blkVar = IsBlockVariable(swizzle); const BOOL_32 isNonPrtXor = IsNonPrtXor(swizzle); const BOOL_32 prt = flags.prt; + const BOOL_32 fmask = flags.fmask; // Misc check if ((pIn->numFrags > 1) && @@ -2236,7 +2273,8 @@ BOOL_32 Gfx10Lib::ValidateSwModeParams( else if (tex2d) { if (((swizzleMask & Gfx10Rsrc2dSwModeMask) == 0) || - (prt && ((swizzleMask & Gfx10Rsrc2dPrtSwModeMask) == 0))) + (prt && ((swizzleMask & Gfx10Rsrc2dPrtSwModeMask) == 0)) || + (fmask && ((swizzleMask & Gfx10ZSwModeMask) == 0))) { ADDR_ASSERT_ALWAYS(); valid = FALSE; @@ -2312,6 +2350,14 @@ BOOL_32 Gfx10Lib::ValidateSwModeParams( valid = FALSE; } } + else if (blkVar) + { + if (m_blockVarSizeLog2 == 0) + { + ADDR_ASSERT_ALWAYS(); + valid = FALSE; + } + } return valid; } @@ -2354,13 +2400,89 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlGetPreferredSurfaceSetting( if (pIn->flags.fmask) { - pOut->swizzleMode = ADDR_SW_64KB_Z_X; - pOut->resourceType = ADDR_RSRC_TEX_2D; - pOut->validBlockSet.value = AddrBlockSetMacro64KB; - pOut->canXor = TRUE; - pOut->validSwTypeSet.value = AddrSwSetZ; - pOut->clientPreferredSwSet = pOut->validSwTypeSet; - pOut->validSwModeSet.value = Gfx10ZSwModeMask; + const BOOL_32 forbid64KbBlockType = pIn->forbiddenBlock.macroThin64KB ? TRUE : FALSE; + const BOOL_32 forbidVarBlockType = ((m_blockVarSizeLog2 == 0) || (pIn->forbiddenBlock.var != 0)); + + if (forbid64KbBlockType && forbidVarBlockType) + { + // Invalid combination... + ADDR_ASSERT_ALWAYS(); + returnCode = ADDR_INVALIDPARAMS; + } + else + { + pOut->resourceType = ADDR_RSRC_TEX_2D; + pOut->validBlockSet.value = 0; + pOut->validBlockSet.macroThin64KB = forbid64KbBlockType ? 0 : 1; + pOut->validBlockSet.var = forbidVarBlockType ? 0 : 1; + pOut->validSwModeSet.value = 0; + pOut->validSwModeSet.sw64KB_Z_X = forbid64KbBlockType ? 0 : 1; + pOut->validSwModeSet.swVar_Z_X = forbidVarBlockType ? 0 : 1; + pOut->canXor = TRUE; + pOut->validSwTypeSet.value = AddrSwSetZ; + pOut->clientPreferredSwSet = pOut->validSwTypeSet; + + BOOL_32 use64KbBlockType = (forbid64KbBlockType == FALSE); + + if ((forbid64KbBlockType == FALSE) && (forbidVarBlockType == FALSE)) + { + const UINT_8 maxFmaskSwizzleModeType = 2; + const UINT_32 ratioLow = pIn->flags.minimizeAlign ? 1 : (pIn->flags.opt4space ? 3 : 2); + const UINT_32 ratioHi = pIn->flags.minimizeAlign ? 1 : (pIn->flags.opt4space ? 2 : 1); + const UINT_32 fmaskBpp = GetFmaskBpp(pIn->numSamples, pIn->numFrags); + const UINT_32 numSlices = Max(pIn->numSlices, 1u); + const UINT_32 width = Max(pIn->width, 1u); + const UINT_32 height = Max(pIn->height, 1u); + const UINT_64 sizeAlignInElement = Max(NextPow2(pIn->minSizeAlign) / (fmaskBpp >> 3), 1u); + + AddrSwizzleMode swMode[maxFmaskSwizzleModeType] = {ADDR_SW_64KB_Z_X, ADDR_SW_VAR_Z_X}; + Dim3d blkDim[maxFmaskSwizzleModeType] = {{0}, {0}}; + Dim3d padDim[maxFmaskSwizzleModeType] = {{0}, {0}}; + UINT_64 padSize[maxFmaskSwizzleModeType] = {0}; + + for (UINT_8 i = 0; i < maxFmaskSwizzleModeType; i++) + { + ComputeBlockDimensionForSurf(&blkDim[i].w, + &blkDim[i].h, + &blkDim[i].d, + fmaskBpp, + 1, + pOut->resourceType, + swMode[i]); + + padSize[i] = ComputePadSize(&blkDim[i], width, height, numSlices, &padDim[i]); + padSize[i] = PowTwoAlign(padSize[i], sizeAlignInElement); + } + + if (GetBlockSizeLog2(swMode[1]) >= GetBlockSizeLog2(swMode[0])) + { + if ((padSize[1] * ratioHi) <= (padSize[0] * ratioLow)) + { + use64KbBlockType = FALSE; + } + } + else + { + if ((padSize[1] * ratioLow) < (padSize[0] * ratioHi)) + { + use64KbBlockType = FALSE; + } + } + } + else if (forbidVarBlockType) + { + use64KbBlockType = TRUE; + } + + if (use64KbBlockType) + { + pOut->swizzleMode = ADDR_SW_64KB_Z_X; + } + else + { + pOut->swizzleMode = ADDR_SW_VAR_Z_X; + } + } } else { @@ -2413,10 +2535,22 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlGetPreferredSurfaceSetting( { // Forbid swizzle mode(s) by client setting ADDR2_SWMODE_SET allowedSwModeSet = {}; - allowedSwModeSet.value |= pIn->forbiddenBlock.linear ? 0 : Gfx10LinearSwModeMask; - allowedSwModeSet.value |= pIn->forbiddenBlock.micro ? 0 : Gfx10Blk256BSwModeMask; - allowedSwModeSet.value |= pIn->forbiddenBlock.macro4KB ? 0 : Gfx10Blk4KBSwModeMask; - allowedSwModeSet.value |= pIn->forbiddenBlock.macro64KB ? 0 : Gfx10Blk64KBSwModeMask; + allowedSwModeSet.value |= pIn->forbiddenBlock.linear ? 0 : Gfx10LinearSwModeMask; + allowedSwModeSet.value |= pIn->forbiddenBlock.micro ? 0 : Gfx10Blk256BSwModeMask; + allowedSwModeSet.value |= + pIn->forbiddenBlock.macroThin4KB ? 0 : + ((pOut->resourceType == ADDR_RSRC_TEX_3D) ? 0 : Gfx10Blk4KBSwModeMask); + allowedSwModeSet.value |= + pIn->forbiddenBlock.macroThick4KB ? 0 : + ((pOut->resourceType == ADDR_RSRC_TEX_3D) ? Gfx10Rsrc3dThick4KBSwModeMask : 0); + allowedSwModeSet.value |= + pIn->forbiddenBlock.macroThin64KB ? 0 : + ((pOut->resourceType == ADDR_RSRC_TEX_3D) ? Gfx10Rsrc3dThin64KBSwModeMask : Gfx10Blk64KBSwModeMask); + allowedSwModeSet.value |= + pIn->forbiddenBlock.macroThick64KB ? 0 : + ((pOut->resourceType == ADDR_RSRC_TEX_3D) ? Gfx10Rsrc3dThick64KBSwModeMask : 0); + allowedSwModeSet.value |= + pIn->forbiddenBlock.var ? 0 : (m_blockVarSizeLog2 ? Gfx10BlkVarSwModeMask : 0); if (pIn->preferredSwSet.value != 0) { @@ -2433,17 +2567,22 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlGetPreferredSurfaceSetting( if (pIn->maxAlign > 0) { - if (pIn->maxAlign < GetBlockSize(ADDR_SW_64KB)) + if (pIn->maxAlign < (1u << m_blockVarSizeLog2)) + { + allowedSwModeSet.value &= ~Gfx10BlkVarSwModeMask; + } + + if (pIn->maxAlign < Size64K) { allowedSwModeSet.value &= ~Gfx10Blk64KBSwModeMask; } - if (pIn->maxAlign < GetBlockSize(ADDR_SW_4KB)) + if (pIn->maxAlign < Size4K) { allowedSwModeSet.value &= ~Gfx10Blk4KBSwModeMask; } - if (pIn->maxAlign < GetBlockSize(ADDR_SW_256B)) + if (pIn->maxAlign < Size256) { allowedSwModeSet.value &= ~Gfx10Blk256BSwModeMask; } @@ -2463,11 +2602,6 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlGetPreferredSurfaceSetting( case ADDR_RSRC_TEX_3D: allowedSwModeSet.value &= pIn->flags.prt ? Gfx10Rsrc3dPrtSwModeMask : Gfx10Rsrc3dSwModeMask; - if (m_settings.supportRbPlus) - { - allowedSwModeSet.value &= ~Gfx10DisplaySwModeMask; - } - if (pIn->flags.view3dAs2dArray) { allowedSwModeSet.value &= Gfx10Rsrc3dThinSwModeMask; @@ -2536,7 +2670,7 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlGetPreferredSurfaceSetting( pOut->resourceType = pIn->resourceType; pOut->validSwModeSet = allowedSwModeSet; pOut->canXor = (allowedSwModeSet.value & Gfx10XorSwModeMask) ? TRUE : FALSE; - pOut->validBlockSet = GetAllowedBlockSet(allowedSwModeSet); + pOut->validBlockSet = GetAllowedBlockSet(allowedSwModeSet, pOut->resourceType); pOut->validSwTypeSet = GetAllowedSwSet(allowedSwModeSet); pOut->clientPreferredSwSet = pIn->preferredSwSet; @@ -2546,6 +2680,28 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlGetPreferredSurfaceSetting( pOut->clientPreferredSwSet.value = AddrSwSetAll; } + // Apply optional restrictions + if ((pIn->flags.depth || pIn->flags.stencil) && msaa && m_configFlags.nonPower2MemConfig) + { + if ((allowedSwModeSet.value &= ~Gfx10BlkVarSwModeMask) != 0) + { + // MSAA depth in non power of 2 memory configs would suffer from non-local channel accesses from + // the GL2 in VAR mode, so it should be avoided. + allowedSwModeSet.value &= ~Gfx10BlkVarSwModeMask; + } + else + { + // We should still be able to use VAR for non power of 2 memory configs with MSAA z/stencil. + // But we have to suffer from low performance because there is no other choice... + ADDR_ASSERT_ALWAYS(); + } + } + + if (pIn->flags.needEquation) + { + FilterInvalidEqSwizzleMode(allowedSwModeSet, pIn->resourceType, Log2(bpp >> 3)); + } + if (allowedSwModeSet.value == Gfx10LinearSwModeMask) { pOut->swizzleMode = ADDR_SW_LINEAR; @@ -2555,15 +2711,34 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlGetPreferredSurfaceSetting( // Always ignore linear swizzle mode if there is other choice. allowedSwModeSet.swLinear = 0; - ADDR2_BLOCK_SET allowedBlockSet = GetAllowedBlockSet(allowedSwModeSet); + ADDR2_BLOCK_SET allowedBlockSet = GetAllowedBlockSet(allowedSwModeSet, pOut->resourceType); // Determine block size if there is 2 or more block type candidates if (IsPow2(allowedBlockSet.value) == FALSE) { - const AddrSwizzleMode swMode[AddrBlockMaxTiledType] = {ADDR_SW_256B, ADDR_SW_4KB, ADDR_SW_64KB}; - Dim3d blkDim[AddrBlockMaxTiledType] = {{0}, {0}, {0}}; - Dim3d padDim[AddrBlockMaxTiledType] = {{0}, {0}, {0}}; - UINT_64 padSize[AddrBlockMaxTiledType] = {0}; + AddrSwizzleMode swMode[AddrBlockMaxTiledType] = { ADDR_SW_LINEAR }; + + if (m_blockVarSizeLog2 != 0) + { + swMode[AddrBlockVar] = ADDR_SW_VAR_R_X; + } + + if (pOut->resourceType == ADDR_RSRC_TEX_3D) + { + swMode[AddrBlockThick4KB] = ADDR_SW_4KB_S; + swMode[AddrBlockThin64KB] = ADDR_SW_64KB_R_X; + swMode[AddrBlockThick64KB] = ADDR_SW_64KB_S; + } + else + { + swMode[AddrBlockMicro] = ADDR_SW_256B_S; + swMode[AddrBlockThin4KB] = ADDR_SW_4KB_S; + swMode[AddrBlockThin64KB] = ADDR_SW_64KB_S; + } + + Dim3d blkDim[AddrBlockMaxTiledType] = {{0}, {0}, {0}, {0}, {0}, {0}}; + Dim3d padDim[AddrBlockMaxTiledType] = {{0}, {0}, {0}, {0}, {0}, {0}}; + UINT_64 padSize[AddrBlockMaxTiledType] = {0}; const UINT_32 ratioLow = pIn->flags.minimizeAlign ? 1 : (pIn->flags.opt4space ? 3 : 2); const UINT_32 ratioHi = pIn->flags.minimizeAlign ? 1 : (pIn->flags.opt4space ? 2 : 1); @@ -2584,14 +2759,37 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlGetPreferredSurfaceSetting( swMode[i]); padSize[i] = ComputePadSize(&blkDim[i], width, height, numSlices, &padDim[i]); - padSize[i] = PowTwoAlign(padSize[i], sizeAlignInElement); + padSize[i] = PowTwoAlign(padSize[i] * numFrags, sizeAlignInElement); - if ((minSize == 0) || - ((padSize[i] * ratioHi) <= (minSize * ratioLow))) + if (minSize == 0) { minSize = padSize[i]; minSizeBlk = i; } + else + { + // Due to the fact that VAR block size = 16KB * m_pipes, it is possible that VAR + // block size < 64KB. And ratio[Hi/Low] logic implicitly requires iterating from + // smaller block type to bigger block type. So we have to correct comparing logic + // according to the size of existing "minimun block" and size of coming/comparing + // block. The new logic can also be useful to any future change about AddrBlockType. + if (GetBlockSizeLog2(swMode[i]) >= GetBlockSizeLog2(swMode[minSizeBlk])) + { + if ((padSize[i] * ratioHi) <= (minSize * ratioLow)) + { + minSize = padSize[i]; + minSizeBlk = i; + } + } + else + { + if ((padSize[i] * ratioLow) < (minSize * ratioHi)) + { + minSize = padSize[i]; + minSizeBlk = i; + } + } + } } } @@ -2604,21 +2802,38 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlGetPreferredSurfaceSetting( if (minSizeBlk == AddrBlockMicro) { + ADDR_ASSERT(pOut->resourceType != ADDR_RSRC_TEX_3D); allowedSwModeSet.value &= Gfx10Blk256BSwModeMask; } - else if (minSizeBlk == AddrBlock4KB) + else if (minSizeBlk == AddrBlockThick4KB) + { + ADDR_ASSERT(pOut->resourceType == ADDR_RSRC_TEX_3D); + allowedSwModeSet.value &= Gfx10Rsrc3dThick4KBSwModeMask; + } + else if (minSizeBlk == AddrBlockThin4KB) { + ADDR_ASSERT(pOut->resourceType != ADDR_RSRC_TEX_3D); allowedSwModeSet.value &= Gfx10Blk4KBSwModeMask; } + else if (minSizeBlk == AddrBlockThick64KB) + { + ADDR_ASSERT(pOut->resourceType == ADDR_RSRC_TEX_3D); + allowedSwModeSet.value &= Gfx10Rsrc3dThick64KBSwModeMask; + } + else if (minSizeBlk == AddrBlockThin64KB) + { + allowedSwModeSet.value &= (pOut->resourceType == ADDR_RSRC_TEX_3D) ? + Gfx10Rsrc3dThin64KBSwModeMask : Gfx10Blk64KBSwModeMask; + } else { - ADDR_ASSERT(minSizeBlk == AddrBlock64KB); - allowedSwModeSet.value &= Gfx10Blk64KBSwModeMask; + ADDR_ASSERT(minSizeBlk == AddrBlockVar); + allowedSwModeSet.value &= Gfx10BlkVarSwModeMask; } } // Block type should be determined. - ADDR_ASSERT(IsPow2(GetAllowedBlockSet(allowedSwModeSet).value)); + ADDR_ASSERT(IsPow2(GetAllowedBlockSet(allowedSwModeSet, pOut->resourceType).value)); ADDR2_SWTYPE_SET allowedSwSet = GetAllowedSwSet(allowedSwModeSet); @@ -2659,7 +2874,9 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlGetPreferredSurfaceSetting( } else if (pIn->resourceType == ADDR_RSRC_TEX_3D) { - if (pIn->flags.color && GetAllowedBlockSet(allowedSwModeSet).macro64KB && allowedSwSet.sw_D) + if (pIn->flags.color && + GetAllowedBlockSet(allowedSwModeSet, pOut->resourceType).macroThick64KB && + allowedSwSet.sw_D) { allowedSwModeSet.value &= Gfx10DisplaySwModeMask; } @@ -2702,8 +2919,8 @@ ADDR_E_RETURNCODE Gfx10Lib::HwlGetPreferredSurfaceSetting( // Swizzle type should be determined. ADDR_ASSERT(IsPow2(GetAllowedSwSet(allowedSwModeSet).value)); - // Determine swizzle mode now - always select the "largest" swizzle mode for a given block type + - // swizzle type combination. For example, for AddrBlock64KB + ADDR_SW_S, select SW_64KB_S_X(25) if it's + // Determine swizzle mode now. Always select the "largest" swizzle mode for a given block type + + // swizzle type combination. E.g, for AddrBlockThin64KB + ADDR_SW_S, select SW_64KB_S_X(25) if it's // available, or otherwise select SW_64KB_S_T(17) if it's available, or otherwise select SW_64KB_S(9). pOut->swizzleMode = static_cast<AddrSwizzleMode>(Log2NonPow2(allowedSwModeSet.value)); } @@ -3382,209 +3599,253 @@ UINT_32 Gfx10Lib::ComputeOffsetFromSwizzlePattern( /** ************************************************************************************************************************ -* Gfx10Lib::GetSwizzlePattern +* Gfx10Lib::GetSwizzlePatternInfo * * @brief * Get swizzle pattern * * @return -* Swizzle pattern +* Swizzle pattern information ************************************************************************************************************************ */ -const UINT_64* Gfx10Lib::GetSwizzlePattern( +const ADDR_SW_PATINFO* Gfx10Lib::GetSwizzlePatternInfo( AddrSwizzleMode swizzleMode, ///< Swizzle mode AddrResourceType resourceType, ///< Resource type UINT_32 elemLog2, ///< Element size in bytes log2 UINT_32 numFrag ///< Number of fragment ) const { - const UINT_32 index = IsXor(swizzleMode) ? (m_colorBaseIndex + elemLog2) : elemLog2; - const UINT_64* pSwizzlePattern = NULL; - const UINT_32 swizzleMask = 1 << swizzleMode; + const UINT_32 index = IsXor(swizzleMode) ? (m_colorBaseIndex + elemLog2) : elemLog2; + const ADDR_SW_PATINFO* patInfo = NULL; + const UINT_32 swizzleMask = 1 << swizzleMode; - if (IsLinear(swizzleMode)) - { - pSwizzlePattern = NULL; - } - else if (resourceType == ADDR_RSRC_TEX_3D) + if (IsLinear(swizzleMode) == FALSE) { - ADDR_ASSERT(numFrag == 1); - - if ((swizzleMask & Gfx10Rsrc3dSwModeMask) == 0) - { - pSwizzlePattern = NULL; - } - else if (IsRtOptSwizzle(swizzleMode)) - { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_R_X_1xaa_RBPLUS[index] : SW_64K_R_X_1xaa[index]; - } - else if (IsZOrderSwizzle(swizzleMode)) + if (IsBlockVariable(swizzleMode)) { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_Z_X_1xaa_RBPLUS[index] : SW_64K_Z_X_1xaa[index]; - } - else if (IsDisplaySwizzle(resourceType, swizzleMode)) - { - ADDR_ASSERT(swizzleMode == ADDR_SW_64KB_D_X); - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_D3_X_RBPLUS[index] : SW_64K_D3_X[index]; - } - else - { - ADDR_ASSERT(IsStandardSwizzle(resourceType, swizzleMode)); - - if (IsBlock4kb(swizzleMode)) - { - if (swizzleMode == ADDR_SW_4KB_S) - { - pSwizzlePattern = m_settings.supportRbPlus ? SW_4K_S3_RBPLUS[index] : SW_4K_S3[index]; - } - else - { - ADDR_ASSERT(swizzleMode == ADDR_SW_4KB_S_X); - pSwizzlePattern = m_settings.supportRbPlus ? SW_4K_S3_X_RBPLUS[index] : SW_4K_S3_X[index]; - } - } - else + if (m_blockVarSizeLog2 != 0) { - if (swizzleMode == ADDR_SW_64KB_S) - { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_S3_RBPLUS[index] : SW_64K_S3[index]; - } - else if (swizzleMode == ADDR_SW_64KB_S_X) + ADDR_ASSERT(m_settings.supportRbPlus); + + if (IsRtOptSwizzle(swizzleMode)) { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_S3_X_RBPLUS[index] : SW_64K_S3_X[index]; + if (numFrag == 1) + { + patInfo = SW_VAR_R_X_1xaa_RBPLUS_PATINFO; + } + else if (numFrag == 2) + { + patInfo = SW_VAR_R_X_2xaa_RBPLUS_PATINFO; + } + else if (numFrag == 4) + { + patInfo = SW_VAR_R_X_4xaa_RBPLUS_PATINFO; + } + else + { + ADDR_ASSERT(numFrag == 8); + patInfo = SW_VAR_R_X_8xaa_RBPLUS_PATINFO; + } } - else + else if (IsZOrderSwizzle(swizzleMode)) { - ADDR_ASSERT(swizzleMode == ADDR_SW_64KB_S_T); - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_S3_T_RBPLUS[index] : SW_64K_S3_T[index]; + if (numFrag == 1) + { + patInfo = SW_VAR_Z_X_1xaa_RBPLUS_PATINFO; + } + else if (numFrag == 2) + { + patInfo = SW_VAR_Z_X_2xaa_RBPLUS_PATINFO; + } + else if (numFrag == 4) + { + patInfo = SW_VAR_Z_X_4xaa_RBPLUS_PATINFO; + } + else + { + ADDR_ASSERT(numFrag == 8); + patInfo = SW_VAR_Z_X_8xaa_RBPLUS_PATINFO; + } } } } - - } - else - { - if ((swizzleMask & Gfx10Rsrc2dSwModeMask) == 0) - { - pSwizzlePattern = NULL; - } - else if (IsBlock256b(swizzleMode)) + else if (resourceType == ADDR_RSRC_TEX_3D) { - if (swizzleMode == ADDR_SW_256B_S) - { - pSwizzlePattern = m_settings.supportRbPlus ? SW_256_S_RBPLUS[index] : SW_256_S[index]; - } - else - { - ADDR_ASSERT(swizzleMode == ADDR_SW_256B_D); - pSwizzlePattern = m_settings.supportRbPlus ? SW_256_D_RBPLUS[index] : SW_256_D[index]; - } - } - else if (IsBlock4kb(swizzleMode)) - { - if (IsStandardSwizzle(resourceType, swizzleMode)) + ADDR_ASSERT(numFrag == 1); + + if ((swizzleMask & Gfx10Rsrc3dSwModeMask) != 0) { - if (swizzleMode == ADDR_SW_4KB_S) + if (IsRtOptSwizzle(swizzleMode)) { - pSwizzlePattern = m_settings.supportRbPlus ? SW_4K_S_RBPLUS[index] : SW_4K_S[index]; + patInfo = m_settings.supportRbPlus ? SW_64K_R_X_1xaa_RBPLUS_PATINFO : SW_64K_R_X_1xaa_PATINFO; } - else + else if (IsZOrderSwizzle(swizzleMode)) { - ADDR_ASSERT(swizzleMode == ADDR_SW_4KB_S_X); - pSwizzlePattern = m_settings.supportRbPlus ? SW_4K_S_X_RBPLUS[index] : SW_4K_S_X[index]; + patInfo = m_settings.supportRbPlus ? SW_64K_Z_X_1xaa_RBPLUS_PATINFO : SW_64K_Z_X_1xaa_PATINFO; } - } - else - { - if (swizzleMode == ADDR_SW_4KB_D) + else if (IsDisplaySwizzle(resourceType, swizzleMode)) { - pSwizzlePattern = m_settings.supportRbPlus ? SW_4K_D_RBPLUS[index] : SW_4K_D[index]; + ADDR_ASSERT(swizzleMode == ADDR_SW_64KB_D_X); + patInfo = m_settings.supportRbPlus ? SW_64K_D3_X_RBPLUS_PATINFO : SW_64K_D3_X_PATINFO; } else { - ADDR_ASSERT(swizzleMode == ADDR_SW_4KB_D_X); - pSwizzlePattern = m_settings.supportRbPlus ? SW_4K_D_X_RBPLUS[index] : SW_4K_D_X[index]; + ADDR_ASSERT(IsStandardSwizzle(resourceType, swizzleMode)); + + if (IsBlock4kb(swizzleMode)) + { + if (swizzleMode == ADDR_SW_4KB_S) + { + patInfo = m_settings.supportRbPlus ? SW_4K_S3_RBPLUS_PATINFO : SW_4K_S3_PATINFO; + } + else + { + ADDR_ASSERT(swizzleMode == ADDR_SW_4KB_S_X); + patInfo = m_settings.supportRbPlus ? SW_4K_S3_X_RBPLUS_PATINFO : SW_4K_S3_X_PATINFO; + } + } + else + { + if (swizzleMode == ADDR_SW_64KB_S) + { + patInfo = m_settings.supportRbPlus ? SW_64K_S3_RBPLUS_PATINFO : SW_64K_S3_PATINFO; + } + else if (swizzleMode == ADDR_SW_64KB_S_X) + { + patInfo = m_settings.supportRbPlus ? SW_64K_S3_X_RBPLUS_PATINFO : SW_64K_S3_X_PATINFO; + } + else + { + ADDR_ASSERT(swizzleMode == ADDR_SW_64KB_S_T); + patInfo = m_settings.supportRbPlus ? SW_64K_S3_T_RBPLUS_PATINFO : SW_64K_S3_T_PATINFO; + } + } } } } else { - if (IsRtOptSwizzle(swizzleMode)) - { - if (numFrag == 1) - { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_R_X_1xaa_RBPLUS[index] : SW_64K_R_X_1xaa[index]; - } - else if (numFrag == 2) - { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_R_X_2xaa_RBPLUS[index] : SW_64K_R_X_2xaa[index]; - } - else if (numFrag == 4) - { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_R_X_4xaa_RBPLUS[index] : SW_64K_R_X_4xaa[index]; - } - else - { - ADDR_ASSERT(numFrag == 8); - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_R_X_8xaa_RBPLUS[index] : SW_64K_R_X_8xaa[index]; - } - } - else if (IsZOrderSwizzle(swizzleMode)) + if ((swizzleMask & Gfx10Rsrc2dSwModeMask) != 0) { - if (numFrag == 1) - { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_Z_X_1xaa_RBPLUS[index] : SW_64K_Z_X_1xaa[index]; - } - else if (numFrag == 2) - { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_Z_X_2xaa_RBPLUS[index] : SW_64K_Z_X_2xaa[index]; - } - else if (numFrag == 4) + if (IsBlock256b(swizzleMode)) { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_Z_X_4xaa_RBPLUS[index] : SW_64K_Z_X_4xaa[index]; - } - else - { - ADDR_ASSERT(numFrag == 8); - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_Z_X_8xaa_RBPLUS[index] : SW_64K_Z_X_8xaa[index]; - } - } - else if (IsDisplaySwizzle(resourceType, swizzleMode)) - { - if (swizzleMode == ADDR_SW_64KB_D) - { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_D_RBPLUS[index] : SW_64K_D[index]; - } - else if (swizzleMode == ADDR_SW_64KB_D_X) - { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_D_X_RBPLUS[index] : SW_64K_D_X[index]; - } - else - { - ADDR_ASSERT(swizzleMode == ADDR_SW_64KB_D_T); - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_D_T_RBPLUS[index] : SW_64K_D_T[index]; - } - } - else - { - if (swizzleMode == ADDR_SW_64KB_S) - { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_S_RBPLUS[index] : SW_64K_S[index]; + if (swizzleMode == ADDR_SW_256B_S) + { + patInfo = m_settings.supportRbPlus ? SW_256_S_RBPLUS_PATINFO : SW_256_S_PATINFO; + } + else + { + ADDR_ASSERT(swizzleMode == ADDR_SW_256B_D); + patInfo = m_settings.supportRbPlus ? SW_256_D_RBPLUS_PATINFO : SW_256_D_PATINFO; + } } - else if (swizzleMode == ADDR_SW_64KB_S_X) + else if (IsBlock4kb(swizzleMode)) { - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_S_X_RBPLUS[index] : SW_64K_S_X[index]; + if (IsStandardSwizzle(resourceType, swizzleMode)) + { + if (swizzleMode == ADDR_SW_4KB_S) + { + patInfo = m_settings.supportRbPlus ? SW_4K_S_RBPLUS_PATINFO : SW_4K_S_PATINFO; + } + else + { + ADDR_ASSERT(swizzleMode == ADDR_SW_4KB_S_X); + patInfo = m_settings.supportRbPlus ? SW_4K_S_X_RBPLUS_PATINFO : SW_4K_S_X_PATINFO; + } + } + else + { + if (swizzleMode == ADDR_SW_4KB_D) + { + patInfo = m_settings.supportRbPlus ? SW_4K_D_RBPLUS_PATINFO : SW_4K_D_PATINFO; + } + else + { + ADDR_ASSERT(swizzleMode == ADDR_SW_4KB_D_X); + patInfo = m_settings.supportRbPlus ? SW_4K_D_X_RBPLUS_PATINFO : SW_4K_D_X_PATINFO; + } + } } else { - ADDR_ASSERT(swizzleMode == ADDR_SW_64KB_S_T); - pSwizzlePattern = m_settings.supportRbPlus ? SW_64K_S_T_RBPLUS[index] : SW_64K_S_T[index]; + if (IsRtOptSwizzle(swizzleMode)) + { + if (numFrag == 1) + { + patInfo = m_settings.supportRbPlus ? SW_64K_R_X_1xaa_RBPLUS_PATINFO : SW_64K_R_X_1xaa_PATINFO; + } + else if (numFrag == 2) + { + patInfo = m_settings.supportRbPlus ? SW_64K_R_X_2xaa_RBPLUS_PATINFO : SW_64K_R_X_2xaa_PATINFO; + } + else if (numFrag == 4) + { + patInfo = m_settings.supportRbPlus ? SW_64K_R_X_4xaa_RBPLUS_PATINFO : SW_64K_R_X_4xaa_PATINFO; + } + else + { + ADDR_ASSERT(numFrag == 8); + patInfo = m_settings.supportRbPlus ? SW_64K_R_X_8xaa_RBPLUS_PATINFO : SW_64K_R_X_8xaa_PATINFO; + } + } + else if (IsZOrderSwizzle(swizzleMode)) + { + if (numFrag == 1) + { + patInfo = m_settings.supportRbPlus ? SW_64K_Z_X_1xaa_RBPLUS_PATINFO : SW_64K_Z_X_1xaa_PATINFO; + } + else if (numFrag == 2) + { + patInfo = m_settings.supportRbPlus ? SW_64K_Z_X_2xaa_RBPLUS_PATINFO : SW_64K_Z_X_2xaa_PATINFO; + } + else if (numFrag == 4) + { + patInfo = m_settings.supportRbPlus ? SW_64K_Z_X_4xaa_RBPLUS_PATINFO : SW_64K_Z_X_4xaa_PATINFO; + } + else + { + ADDR_ASSERT(numFrag == 8); + patInfo = m_settings.supportRbPlus ? SW_64K_Z_X_8xaa_RBPLUS_PATINFO : SW_64K_Z_X_8xaa_PATINFO; + } + } + else if (IsDisplaySwizzle(resourceType, swizzleMode)) + { + if (swizzleMode == ADDR_SW_64KB_D) + { + patInfo = m_settings.supportRbPlus ? SW_64K_D_RBPLUS_PATINFO : SW_64K_D_PATINFO; + } + else if (swizzleMode == ADDR_SW_64KB_D_X) + { + patInfo = m_settings.supportRbPlus ? SW_64K_D_X_RBPLUS_PATINFO : SW_64K_D_X_PATINFO; + } + else + { + ADDR_ASSERT(swizzleMode == ADDR_SW_64KB_D_T); + patInfo = m_settings.supportRbPlus ? SW_64K_D_T_RBPLUS_PATINFO : SW_64K_D_T_PATINFO; + } + } + else + { + if (swizzleMode == ADDR_SW_64KB_S) + { + patInfo = m_settings.supportRbPlus ? SW_64K_S_RBPLUS_PATINFO : SW_64K_S_PATINFO; + } + else if (swizzleMode == ADDR_SW_64KB_S_X) + { + patInfo = m_settings.supportRbPlus ? SW_64K_S_X_RBPLUS_PATINFO : SW_64K_S_X_PATINFO; + } + else + { + ADDR_ASSERT(swizzleMode == ADDR_SW_64KB_S_T); + patInfo = m_settings.supportRbPlus ? SW_64K_S_T_RBPLUS_PATINFO : SW_64K_S_T_PATINFO; + } + } } } } } - return pSwizzlePattern; + return (patInfo != NULL) ? &patInfo[index] : NULL; } /** @@ -3699,23 +3960,29 @@ ADDR_E_RETURNCODE Gfx10Lib::ComputeSurfaceAddrFromCoordMacroTiled( if (localIn.numFrags > 1) { - const UINT_64* pPattern = GetSwizzlePattern(pIn->swizzleMode, - pIn->resourceType, - elemLog2, - localIn.numFrags); + const ADDR_SW_PATINFO* pPatInfo = GetSwizzlePatternInfo(pIn->swizzleMode, + pIn->resourceType, + elemLog2, + localIn.numFrags); - if (pPattern != NULL) + if (pPatInfo != NULL) { const UINT_32 pb = localOut.pitch / localOut.blockWidth; const UINT_32 yb = pIn->y / localOut.blockHeight; const UINT_32 xb = pIn->x / localOut.blockWidth; const UINT_64 blkIdx = yb * pb + xb; - const UINT_32 blkOffset = ComputeOffsetFromSwizzlePattern(pPattern, - blkSizeLog2, - pIn->x, - pIn->y, - pIn->slice, - pIn->sample); + + ADDR_BIT_SETTING fullSwizzlePattern[20]; + GetSwizzlePatternFromPatternInfo(pPatInfo, fullSwizzlePattern); + + const UINT_32 blkOffset = + ComputeOffsetFromSwizzlePattern(reinterpret_cast<const UINT_64*>(fullSwizzlePattern), + blkSizeLog2, + pIn->x, + pIn->y, + pIn->slice, + pIn->sample); + pOut->addr = (localOut.sliceSize * pIn->slice) + (blkIdx << blkSizeLog2) + (blkOffset ^ pipeBankXor); @@ -3775,7 +4042,7 @@ ADDR_E_RETURNCODE Gfx10Lib::ComputeSurfaceAddrFromCoordMacroTiled( */ UINT_32 Gfx10Lib::HwlComputeMaxBaseAlignments() const { - return GetBlockSize(ADDR_SW_64KB); + return m_blockVarSizeLog2 ? Max(Size64K, 1u << m_blockVarSizeLog2) : Size64K; } /** @@ -3790,26 +4057,47 @@ UINT_32 Gfx10Lib::HwlComputeMaxBaseAlignments() const */ UINT_32 Gfx10Lib::HwlComputeMaxMetaBaseAlignments() const { - // Max base alignment for Htile - Dim3d metaBlk = {0}; - const UINT_32 metaBlkSize = GetMetaBlkSize(Gfx10DataDepthStencil, - ADDR_RSRC_TEX_2D, - ADDR_SW_64KB_Z_X, - 0, - 0, - TRUE, - &metaBlk); - - const UINT_32 maxBaseAlignHtile = Max(metaBlkSize, 1u << (m_pipesLog2 + 11u)); - - // Max base alignment for Cmask - const UINT_32 maxBaseAlignCmask = GetMetaBlkSize(Gfx10DataFmask, - ADDR_RSRC_TEX_2D, - ADDR_SW_64KB_Z_X, - 0, - 0, - TRUE, - &metaBlk); + Dim3d metaBlk; + + const AddrSwizzleMode ValidSwizzleModeForXmask[] = + { + ADDR_SW_64KB_Z_X, + m_blockVarSizeLog2 ? ADDR_SW_VAR_Z_X : ADDR_SW_64KB_Z_X, + }; + + UINT_32 maxBaseAlignHtile = 0; + UINT_32 maxBaseAlignCmask = 0; + + for (UINT_32 swIdx = 0; swIdx < sizeof(ValidSwizzleModeForXmask) / sizeof(ValidSwizzleModeForXmask[0]); swIdx++) + { + for (UINT_32 bppLog2 = 0; bppLog2 < 3; bppLog2++) + { + for (UINT_32 numFragLog2 = 0; numFragLog2 < 4; numFragLog2++) + { + // Max base alignment for Htile + const UINT_32 metaBlkSizeHtile = GetMetaBlkSize(Gfx10DataDepthStencil, + ADDR_RSRC_TEX_2D, + ValidSwizzleModeForXmask[swIdx], + bppLog2, + numFragLog2, + TRUE, + &metaBlk); + + maxBaseAlignHtile = Max(maxBaseAlignHtile, metaBlkSizeHtile); + } + } + + // Max base alignment for Cmask + const UINT_32 metaBlkSizeCmask = GetMetaBlkSize(Gfx10DataFmask, + ADDR_RSRC_TEX_2D, + ValidSwizzleModeForXmask[swIdx], + 0, + 0, + TRUE, + &metaBlk); + + maxBaseAlignCmask = Max(maxBaseAlignCmask, metaBlkSizeCmask); + } // Max base alignment for 2D Dcc const AddrSwizzleMode ValidSwizzleModeForDcc2D[] = @@ -3817,6 +4105,7 @@ UINT_32 Gfx10Lib::HwlComputeMaxMetaBaseAlignments() const ADDR_SW_64KB_S_X, ADDR_SW_64KB_D_X, ADDR_SW_64KB_R_X, + m_blockVarSizeLog2 ? ADDR_SW_VAR_R_X : ADDR_SW_64KB_R_X, }; UINT_32 maxBaseAlignDcc2D = 0; @@ -3847,6 +4136,7 @@ UINT_32 Gfx10Lib::HwlComputeMaxMetaBaseAlignments() const ADDR_SW_64KB_S_X, ADDR_SW_64KB_D_X, ADDR_SW_64KB_R_X, + m_blockVarSizeLog2 ? ADDR_SW_VAR_R_X : ADDR_SW_64KB_R_X, }; UINT_32 maxBaseAlignDcc3D = 0; diff --git a/src/amd/addrlib/src/gfx10/gfx10addrlib.h b/src/amd/addrlib/src/gfx10/gfx10addrlib.h index 7c800fd893d..c9a24c04ccc 100644 --- a/src/amd/addrlib/src/gfx10/gfx10addrlib.h +++ b/src/amd/addrlib/src/gfx10/gfx10addrlib.h @@ -36,6 +36,7 @@ #include "addrlib2.h" #include "coord.h" +#include "gfx10SwizzlePattern.h" namespace Addr { @@ -93,7 +94,11 @@ const UINT_32 Gfx10Blk64KBSwModeMask = (1u << ADDR_SW_64KB_S) | (1u << ADDR_SW_64KB_D_X) | (1u << ADDR_SW_64KB_R_X); -const UINT_32 Gfx10ZSwModeMask = (1u << ADDR_SW_64KB_Z_X); +const UINT_32 Gfx10BlkVarSwModeMask = (1u << ADDR_SW_VAR_Z_X) | + (1u << ADDR_SW_VAR_R_X); + +const UINT_32 Gfx10ZSwModeMask = (1u << ADDR_SW_64KB_Z_X) | + (1u << ADDR_SW_VAR_Z_X); const UINT_32 Gfx10StandardSwModeMask = (1u << ADDR_SW_256B_S) | (1u << ADDR_SW_4KB_S) | @@ -109,14 +114,16 @@ const UINT_32 Gfx10DisplaySwModeMask = (1u << ADDR_SW_256B_D) | (1u << ADDR_SW_4KB_D_X) | (1u << ADDR_SW_64KB_D_X); -const UINT_32 Gfx10RenderSwModeMask = (1u << ADDR_SW_64KB_R_X); +const UINT_32 Gfx10RenderSwModeMask = (1u << ADDR_SW_64KB_R_X) | + (1u << ADDR_SW_VAR_R_X); const UINT_32 Gfx10XSwModeMask = (1u << ADDR_SW_4KB_S_X) | (1u << ADDR_SW_4KB_D_X) | (1u << ADDR_SW_64KB_Z_X) | (1u << ADDR_SW_64KB_S_X) | (1u << ADDR_SW_64KB_D_X) | - (1u << ADDR_SW_64KB_R_X); + (1u << ADDR_SW_64KB_R_X) | + Gfx10BlkVarSwModeMask; const UINT_32 Gfx10TSwModeMask = (1u << ADDR_SW_64KB_S_T) | (1u << ADDR_SW_64KB_D_T); @@ -131,7 +138,8 @@ const UINT_32 Gfx10Rsrc1dSwModeMask = Gfx10LinearSwModeMask | const UINT_32 Gfx10Rsrc2dSwModeMask = Gfx10LinearSwModeMask | Gfx10Blk256BSwModeMask | Gfx10Blk4KBSwModeMask | - Gfx10Blk64KBSwModeMask; + Gfx10Blk64KBSwModeMask | + Gfx10BlkVarSwModeMask; const UINT_32 Gfx10Rsrc3dSwModeMask = (1u << ADDR_SW_LINEAR) | (1u << ADDR_SW_4KB_S) | @@ -141,14 +149,23 @@ const UINT_32 Gfx10Rsrc3dSwModeMask = (1u << ADDR_SW_LINEAR) | (1u << ADDR_SW_64KB_Z_X) | (1u << ADDR_SW_64KB_S_X) | (1u << ADDR_SW_64KB_D_X) | - (1u << ADDR_SW_64KB_R_X); + (1u << ADDR_SW_64KB_R_X) | + Gfx10BlkVarSwModeMask; const UINT_32 Gfx10Rsrc2dPrtSwModeMask = (Gfx10Blk4KBSwModeMask | Gfx10Blk64KBSwModeMask) & ~Gfx10XSwModeMask; const UINT_32 Gfx10Rsrc3dPrtSwModeMask = Gfx10Rsrc2dPrtSwModeMask & ~Gfx10DisplaySwModeMask; -const UINT_32 Gfx10Rsrc3dThinSwModeMask = (1u << ADDR_SW_64KB_Z_X) | - (1u << ADDR_SW_64KB_R_X); +const UINT_32 Gfx10Rsrc3dThin64KBSwModeMask = (1u << ADDR_SW_64KB_Z_X) | + (1u << ADDR_SW_64KB_R_X); + +const UINT_32 Gfx10Rsrc3dThinSwModeMask = Gfx10Rsrc3dThin64KBSwModeMask | Gfx10BlkVarSwModeMask; + +const UINT_32 Gfx10Rsrc3dThickSwModeMask = Gfx10Rsrc3dSwModeMask & ~(Gfx10Rsrc3dThinSwModeMask | Gfx10LinearSwModeMask); + +const UINT_32 Gfx10Rsrc3dThick4KBSwModeMask = Gfx10Rsrc3dThickSwModeMask & Gfx10Blk4KBSwModeMask; + +const UINT_32 Gfx10Rsrc3dThick64KBSwModeMask = Gfx10Rsrc3dThickSwModeMask & Gfx10Blk64KBSwModeMask; const UINT_32 Gfx10MsaaSwModeMask = Gfx10ZSwModeMask | Gfx10RenderSwModeMask; @@ -290,6 +307,14 @@ protected: const ADDR2_COMPUTE_SURFACE_ADDRFROMCOORD_INPUT* pIn, ADDR2_COMPUTE_SURFACE_ADDRFROMCOORD_OUTPUT* pOut) const; + virtual UINT_32 HwlComputeMaxBaseAlignments() const; + + virtual UINT_32 HwlComputeMaxMetaBaseAlignments() const; + + virtual BOOL_32 HwlInitGlobalParams(const ADDR_CREATE_INPUT* pCreateIn); + + virtual ChipFamily HwlConvertChipFamily(UINT_32 uChipFamily, UINT_32 uChipRevision); + // Initialize equation table VOID InitEquationTable(); @@ -309,6 +334,7 @@ protected: const ADDR2_COMPUTE_SURFACE_ADDRFROMCOORD_INPUT* pIn, ADDR2_COMPUTE_SURFACE_ADDRFROMCOORD_OUTPUT* pOut) const; +private: UINT_32 ComputeOffsetFromSwizzlePattern( const UINT_64* pPattern, UINT_32 numBits, @@ -351,13 +377,6 @@ protected: return compressBlkDim; } - static UINT_32 ShiftCeil( - UINT_32 a, - UINT_32 b) - { - return (a >> b) + (((a & ((1 << b) - 1)) != 0) ? 1 : 0); - } - static void GetMipSize( UINT_32 mip0Width, UINT_32 mip0Height, @@ -376,18 +395,39 @@ protected: } } - const UINT_64* GetSwizzlePattern( + const ADDR_SW_PATINFO* GetSwizzlePatternInfo( AddrSwizzleMode swizzleMode, AddrResourceType resourceType, UINT_32 log2Elem, UINT_32 numFrag) const; + VOID GetSwizzlePatternFromPatternInfo( + const ADDR_SW_PATINFO* pPatInfo, + ADDR_BIT_SETTING (&pSwizzle)[20]) const + { + memcpy(pSwizzle, + GFX10_SW_PATTERN_NIBBLE01[pPatInfo->nibble01Idx], + sizeof(GFX10_SW_PATTERN_NIBBLE01[pPatInfo->nibble01Idx])); + + memcpy(&pSwizzle[8], + GFX10_SW_PATTERN_NIBBLE2[pPatInfo->nibble2Idx], + sizeof(GFX10_SW_PATTERN_NIBBLE2[pPatInfo->nibble2Idx])); + + memcpy(&pSwizzle[12], + GFX10_SW_PATTERN_NIBBLE3[pPatInfo->nibble3Idx], + sizeof(GFX10_SW_PATTERN_NIBBLE3[pPatInfo->nibble3Idx])); + + memcpy(&pSwizzle[16], + GFX10_SW_PATTERN_NIBBLE4[pPatInfo->nibble4Idx], + sizeof(GFX10_SW_PATTERN_NIBBLE4[pPatInfo->nibble4Idx])); + } + VOID ConvertSwizzlePatternToEquation( - UINT_32 elemLog2, - AddrResourceType rsrcType, - AddrSwizzleMode swMode, - const UINT_64* pPattern, - ADDR_EQUATION* pEquation) const; + UINT_32 elemLog2, + AddrResourceType rsrcType, + AddrSwizzleMode swMode, + const ADDR_SW_PATINFO* pPatInfo, + ADDR_EQUATION* pEquation) const; static INT_32 GetMetaElementSizeLog2(Gfx10DataType dataType); @@ -429,14 +469,6 @@ protected: BOOL_32 pipeAlign, Dim3d* pBlock) const; - BOOL_32 IsEquationCompatibleThick( - AddrResourceType resourceType, - AddrSwizzleMode swizzleMode) const - { - return IsThick(resourceType, swizzleMode) && - ((m_settings.supportRbPlus == 0) || (swizzleMode != ADDR_SW_64KB_D_X)); - } - INT_32 GetPipeRotateAmount( AddrResourceType resourceType, AddrSwizzleMode swizzleMode) const; @@ -460,61 +492,29 @@ protected: } - static const Dim3d Block256_3d[MaxNumOfBpp]; - static const Dim3d Block64K_3d[MaxNumOfBpp]; - static const Dim3d Block4K_3d[MaxNumOfBpp]; - static const Dim3d Block64K_Log2_3d[MaxNumOfBpp]; - static const Dim3d Block4K_Log2_3d[MaxNumOfBpp]; - - static const Dim2d Block64K_2d[MaxNumOfBpp]; - static const Dim2d Block4K_2d[MaxNumOfBpp]; - - static const Dim2d Block64K_Log2_2d[MaxNumOfBpp]; - static const Dim2d Block4K_Log2_2d[MaxNumOfBpp]; - - static const SwizzleModeFlags SwizzleModeTable[ADDR_SW_MAX_TYPE]; - - // Max number of swizzle mode supported for equation - static const UINT_32 MaxSwMode = 32; - // Max number of resource type (2D/3D) supported for equation - static const UINT_32 MaxRsrcType = 2; - // Max number of bpp (8bpp/16bpp/32bpp/64bpp/128bpp) - static const UINT_32 MaxElementBytesLog2 = 5; - // Almost all swizzle mode + resource type support equation - static const UINT_32 EquationTableSize = MaxElementBytesLog2 * MaxSwMode * MaxRsrcType; - // Equation table - ADDR_EQUATION m_equationTable[EquationTableSize]; - - // Number of equation entries in the table - UINT_32 m_numEquations; - // Equation lookup table according to bpp and tile index - UINT_32 m_equationLookupTable[MaxRsrcType][MaxSwMode][MaxElementBytesLog2]; - // Number of packers log2 - UINT_32 m_numPkrLog2; - // Number of shader array log2 - UINT_32 m_numSaLog2; - -private: - virtual UINT_32 HwlComputeMaxBaseAlignments() const; - - virtual UINT_32 HwlComputeMaxMetaBaseAlignments() const; - - virtual BOOL_32 HwlInitGlobalParams(const ADDR_CREATE_INPUT* pCreateIn); - - virtual ChipFamily HwlConvertChipFamily(UINT_32 uChipFamily, UINT_32 uChipRevision); - BOOL_32 IsValidDisplaySwizzleMode(const ADDR2_COMPUTE_SURFACE_INFO_INPUT* pIn) const; UINT_32 GetMaxNumMipsInTail(UINT_32 blockSizeLog2, BOOL_32 isThin) const; - static ADDR2_BLOCK_SET GetAllowedBlockSet(ADDR2_SWMODE_SET allowedSwModeSet) + static ADDR2_BLOCK_SET GetAllowedBlockSet(ADDR2_SWMODE_SET allowedSwModeSet, AddrResourceType rsrcType) { ADDR2_BLOCK_SET allowedBlockSet = {}; - allowedBlockSet.micro = (allowedSwModeSet.value & Gfx10Blk256BSwModeMask) ? TRUE : FALSE; - allowedBlockSet.macro4KB = (allowedSwModeSet.value & Gfx10Blk4KBSwModeMask) ? TRUE : FALSE; - allowedBlockSet.macro64KB = (allowedSwModeSet.value & Gfx10Blk64KBSwModeMask) ? TRUE : FALSE; - allowedBlockSet.linear = (allowedSwModeSet.value & Gfx10LinearSwModeMask) ? TRUE : FALSE; + allowedBlockSet.micro = (allowedSwModeSet.value & Gfx10Blk256BSwModeMask) ? TRUE : FALSE; + allowedBlockSet.linear = (allowedSwModeSet.value & Gfx10LinearSwModeMask) ? TRUE : FALSE; + allowedBlockSet.var = (allowedSwModeSet.value & Gfx10BlkVarSwModeMask) ? TRUE : FALSE; + + if (rsrcType == ADDR_RSRC_TEX_3D) + { + allowedBlockSet.macroThick4KB = (allowedSwModeSet.value & Gfx10Rsrc3dThick4KBSwModeMask) ? TRUE : FALSE; + allowedBlockSet.macroThin64KB = (allowedSwModeSet.value & Gfx10Rsrc3dThin64KBSwModeMask) ? TRUE : FALSE; + allowedBlockSet.macroThick64KB = (allowedSwModeSet.value & Gfx10Rsrc3dThick64KBSwModeMask) ? TRUE : FALSE; + } + else + { + allowedBlockSet.macroThin4KB = (allowedSwModeSet.value & Gfx10Blk4KBSwModeMask) ? TRUE : FALSE; + allowedBlockSet.macroThin64KB = (allowedSwModeSet.value & Gfx10Blk64KBSwModeMask) ? TRUE : FALSE; + } return allowedBlockSet; } @@ -554,12 +554,26 @@ private: BOOL_32 ValidateNonSwModeParams(const ADDR2_COMPUTE_SURFACE_INFO_INPUT* pIn) const; BOOL_32 ValidateSwModeParams(const ADDR2_COMPUTE_SURFACE_INFO_INPUT* pIn) const; - static const UINT_32 ColumnBits = 2; - static const UINT_32 BankBits = 4; + static const UINT_32 ColumnBits = 2; + static const UINT_32 BankBits = 4; + static const UINT_32 UnalignedDccType = 3; + + static const Dim3d Block256_3d[MaxNumOfBpp]; + static const Dim3d Block64K_Log2_3d[MaxNumOfBpp]; + static const Dim3d Block4K_Log2_3d[MaxNumOfBpp]; + + static const SwizzleModeFlags SwizzleModeTable[ADDR_SW_MAX_TYPE]; + + // Number of packers log2 + UINT_32 m_numPkrLog2; + // Number of shader array log2 + UINT_32 m_numSaLog2; Gfx10ChipSettings m_settings; - UINT_32 m_colorBaseIndex; - UINT_32 m_htileBaseIndex; + + UINT_32 m_colorBaseIndex; + UINT_32 m_xmaskBaseIndex; + UINT_32 m_dccBaseIndex; }; } // V2 diff --git a/src/amd/addrlib/src/gfx9/gfx9addrlib.cpp b/src/amd/addrlib/src/gfx9/gfx9addrlib.cpp index cb0d3f054d7..8d2b5700c4d 100644 --- a/src/amd/addrlib/src/gfx9/gfx9addrlib.cpp +++ b/src/amd/addrlib/src/gfx9/gfx9addrlib.cpp @@ -69,51 +69,50 @@ namespace V2 //////////////////////////////////////////////////////////////////////////////////////////////////// const SwizzleModeFlags Gfx9Lib::SwizzleModeTable[ADDR_SW_MAX_TYPE] = -{//Linear 256B 4KB 64KB Var Z Std Disp Rot XOR T RtOpt - {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // ADDR_SW_LINEAR - {0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_256B_S - {0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0}, // ADDR_SW_256B_D - {0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0}, // ADDR_SW_256B_R - - {0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0}, // ADDR_SW_4KB_Z - {0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_4KB_S - {0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0}, // ADDR_SW_4KB_D - {0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0}, // ADDR_SW_4KB_R - - {0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0}, // ADDR_SW_64KB_Z - {0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_64KB_S - {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0}, // ADDR_SW_64KB_D - {0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0}, // ADDR_SW_64KB_R - - {0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0}, // ADDR_SW_VAR_Z - {0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_VAR_S - {0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0}, // ADDR_SW_VAR_D - {0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, // ADDR_SW_VAR_R - - {0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0}, // ADDR_SW_64KB_Z_T - {0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0}, // ADDR_SW_64KB_S_T - {0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0}, // ADDR_SW_64KB_D_T - {0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0}, // ADDR_SW_64KB_R_T - - {0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0}, // ADDR_SW_4KB_Z_x - {0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0}, // ADDR_SW_4KB_S_x - {0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0}, // ADDR_SW_4KB_D_x - {0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0}, // ADDR_SW_4KB_R_x - - {0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0}, // ADDR_SW_64KB_Z_X - {0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0}, // ADDR_SW_64KB_S_X - {0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0}, // ADDR_SW_64KB_D_X - {0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0}, // ADDR_SW_64KB_R_X - - {0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0}, // ADDR_SW_VAR_Z_X - {0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0}, // ADDR_SW_VAR_S_X - {0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0}, // ADDR_SW_VAR_D_X - {0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0}, // ADDR_SW_VAR_R_X - {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // ADDR_SW_LINEAR_GENERAL +{//Linear 256B 4KB 64KB Var Z Std Disp Rot XOR T RtOpt Reserved + {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // ADDR_SW_LINEAR + {0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, // ADDR_SW_256B_S + {0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_256B_D + {0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0}, // ADDR_SW_256B_R + + {0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0}, // ADDR_SW_4KB_Z + {0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, // ADDR_SW_4KB_S + {0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_4KB_D + {0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0}, // ADDR_SW_4KB_R + + {0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0}, // ADDR_SW_64KB_Z + {0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0}, // ADDR_SW_64KB_S + {0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0}, // ADDR_SW_64KB_D + {0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0}, // ADDR_SW_64KB_R + + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + + {0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0}, // ADDR_SW_64KB_Z_T + {0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0}, // ADDR_SW_64KB_S_T + {0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0}, // ADDR_SW_64KB_D_T + {0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0}, // ADDR_SW_64KB_R_T + + {0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0}, // ADDR_SW_4KB_Z_x + {0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0}, // ADDR_SW_4KB_S_x + {0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0}, // ADDR_SW_4KB_D_x + {0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0}, // ADDR_SW_4KB_R_x + + {0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0}, // ADDR_SW_64KB_Z_X + {0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0}, // ADDR_SW_64KB_S_X + {0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0}, // ADDR_SW_64KB_D_X + {0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0}, // ADDR_SW_64KB_R_X + + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // Reserved + {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, // ADDR_SW_LINEAR_GENERAL }; -const UINT_32 Gfx9Lib::MipTailOffset256B[] = {2048, 1024, 512, 256, 128, 64, 32, 16, - 8, 6, 5, 4, 3, 2, 1, 0}; +const UINT_32 Gfx9Lib::MipTailOffset256B[] = {2048, 1024, 512, 256, 128, 64, 32, 16, 8, 6, 5, 4, 3, 2, 1, 0}; const Dim3d Gfx9Lib::Block256_3dS[] = {{16, 4, 4}, {8, 4, 4}, {4, 4, 4}, {2, 4, 4}, {1, 4, 4}}; @@ -130,8 +129,7 @@ const Dim3d Gfx9Lib::Block256_3dZ[] = {{8, 4, 8}, {4, 4, 8}, {4, 4, 4}, {4, 2 */ Gfx9Lib::Gfx9Lib(const Client* pClient) : - Lib(pClient), - m_numEquations(0) + Lib(pClient) { m_class = AI_ADDRLIB; memset(&m_settings, 0, sizeof(m_settings)); @@ -281,8 +279,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeCmaskInfo( ADDR2_COMPUTE_CMASK_INFO_OUTPUT* pOut ///< [out] output structure ) const { -// TODO: Clarify with AddrLib team -// ADDR_ASSERT(pIn->resourceType == ADDR_RSRC_TEX_2D); + ADDR_ASSERT(pIn->resourceType == ADDR_RSRC_TEX_2D); UINT_32 numPipeTotal = GetPipeNumForMetaAddressing(pIn->cMaskFlags.pipeAligned, pIn->swizzleMode); @@ -687,7 +684,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeDccInfo( */ UINT_32 Gfx9Lib::HwlComputeMaxBaseAlignments() const { - return ComputeSurfaceBaseAlignTiled(ADDR_SW_64KB); + return Size64K; } /** @@ -722,7 +719,7 @@ UINT_32 Gfx9Lib::HwlComputeMaxMetaBaseAlignments() const if (m_settings.metaBaseAlignFix) { - maxBaseAlignHtile = Max(maxBaseAlignHtile, GetBlockSize(ADDR_SW_64KB)); + maxBaseAlignHtile = Max(maxBaseAlignHtile, Size64K); } if (m_settings.htileAlignFix) @@ -745,7 +742,7 @@ UINT_32 Gfx9Lib::HwlComputeMaxMetaBaseAlignments() const if (m_settings.metaBaseAlignFix) { - maxBaseAlignDccMsaa = Max(maxBaseAlignDccMsaa, GetBlockSize(ADDR_SW_64KB)); + maxBaseAlignDccMsaa = Max(maxBaseAlignDccMsaa, Size64K); } return Max(maxBaseAlignHtile, Max(maxBaseAlignDccMsaa, maxBaseAlignDcc3D)); @@ -1222,11 +1219,6 @@ BOOL_32 Gfx9Lib::HwlInitGlobalParams( break; } - m_blockVarSizeLog2 = pCreateIn->regValue.blockVarSizeLog2; - ADDR_ASSERT((m_blockVarSizeLog2 == 0) || - ((m_blockVarSizeLog2 >= 17u) && (m_blockVarSizeLog2 <= 20u))); - m_blockVarSizeLog2 = Min(Max(17u, m_blockVarSizeLog2), 20u); - if ((m_rbPerSeLog2 == 1) && (((m_pipesLog2 == 1) && ((m_seLog2 == 2) || (m_seLog2 == 3))) || ((m_pipesLog2 == 2) && ((m_seLog2 == 1) || (m_seLog2 == 2))))) @@ -1241,6 +1233,9 @@ BOOL_32 Gfx9Lib::HwlInitGlobalParams( m_settings.htileCacheRbConflict = 1; } } + + // For simplicity we never allow VAR swizzle mode for GFX9, the actural value is 18 on GFX9 + m_blockVarSizeLog2 = 0; } else { @@ -2164,6 +2159,7 @@ BOOL_32 Gfx9Lib::IsEquationSupported( UINT_32 elementBytesLog2) const { BOOL_32 supported = (elementBytesLog2 < MaxElementBytesLog2) && + (IsValidSwMode(swMode) == TRUE) && (IsLinear(swMode) == FALSE) && (((IsTex2d(rsrcType) == TRUE) && ((elementBytesLog2 < 4) || @@ -2197,7 +2193,7 @@ VOID Gfx9Lib::InitEquationTable() AddrResourceType rsrcType = static_cast<AddrResourceType>(rsrcTypeIdx + ADDR_RSRC_TEX_2D); // Loop all possible swizzle mode - for (UINT_32 swModeIdx = 0; swModeIdx < MaxSwMode; swModeIdx++) + for (UINT_32 swModeIdx = 0; swModeIdx < MaxSwModeType; swModeIdx++) { AddrSwizzleMode swMode = static_cast<AddrSwizzleMode>(swModeIdx); @@ -2209,7 +2205,7 @@ VOID Gfx9Lib::InitEquationTable() // Check if the input is supported if (IsEquationSupported(rsrcType, swMode, bppIdx)) { - ADDR_EQUATION equation; + ADDR_EQUATION equation; ADDR_E_RETURNCODE retCode; memset(&equation, 0, sizeof(ADDR_EQUATION)); @@ -2954,14 +2950,10 @@ BOOL_32 Gfx9Lib::IsValidDisplaySwizzleMode( case ADDR_SW_4KB_R: case ADDR_SW_64KB_D: case ADDR_SW_64KB_R: - case ADDR_SW_VAR_D: - case ADDR_SW_VAR_R: case ADDR_SW_4KB_D_X: case ADDR_SW_4KB_R_X: case ADDR_SW_64KB_D_X: case ADDR_SW_64KB_R_X: - case ADDR_SW_VAR_D_X: - case ADDR_SW_VAR_R_X: support = (pIn->bpp <= 64); break; @@ -2975,22 +2967,18 @@ BOOL_32 Gfx9Lib::IsValidDisplaySwizzleMode( { case ADDR_SW_4KB_D: case ADDR_SW_64KB_D: - case ADDR_SW_VAR_D: case ADDR_SW_64KB_D_T: case ADDR_SW_4KB_D_X: case ADDR_SW_64KB_D_X: - case ADDR_SW_VAR_D_X: support = (pIn->bpp == 64); break; case ADDR_SW_LINEAR: case ADDR_SW_4KB_S: case ADDR_SW_64KB_S: - case ADDR_SW_VAR_S: case ADDR_SW_64KB_S_T: case ADDR_SW_4KB_S_X: case ADDR_SW_64KB_S_X: - case ADDR_SW_VAR_S_X: support = (pIn->bpp <= 64); break; @@ -3210,7 +3198,7 @@ BOOL_32 Gfx9Lib::ValidateSwModeParams( { BOOL_32 valid = TRUE; - if (pIn->swizzleMode >= ADDR_SW_MAX_TYPE) + if ((pIn->swizzleMode >= ADDR_SW_MAX_TYPE) || (IsValidSwMode(pIn->swizzleMode) == FALSE)) { ADDR_ASSERT_ALWAYS(); valid = FALSE; @@ -3229,7 +3217,6 @@ BOOL_32 Gfx9Lib::ValidateSwModeParams( const AddrSwizzleMode swizzle = pIn->swizzleMode; const BOOL_32 linear = IsLinear(swizzle); const BOOL_32 blk256B = IsBlock256b(swizzle); - const BOOL_32 blkVar = IsBlockVariable(swizzle); const BOOL_32 isNonPrtXor = IsNonPrtXor(swizzle); const ADDR2_SURFACE_FLAGS flags = pIn->flags; @@ -3337,11 +3324,6 @@ BOOL_32 Gfx9Lib::ValidateSwModeParams( valid = FALSE; } } - else if (blkVar) - { - ADDR_ASSERT_ALWAYS(); - valid = FALSE; - } return valid; } @@ -3444,12 +3426,22 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlGetPreferredSurfaceSetting( if (ValidateNonSwModeParams(&localIn)) { - // Forbid swizzle mode(s) by client setting, for simplicity we never allow VAR swizzle mode for GFX9 + // Forbid swizzle mode(s) by client setting ADDR2_SWMODE_SET allowedSwModeSet = {}; - allowedSwModeSet.value |= pIn->forbiddenBlock.linear ? 0 : Gfx9LinearSwModeMask; - allowedSwModeSet.value |= pIn->forbiddenBlock.micro ? 0 : Gfx9Blk256BSwModeMask; - allowedSwModeSet.value |= pIn->forbiddenBlock.macro4KB ? 0 : Gfx9Blk4KBSwModeMask; - allowedSwModeSet.value |= pIn->forbiddenBlock.macro64KB ? 0 : Gfx9Blk64KBSwModeMask; + allowedSwModeSet.value |= pIn->forbiddenBlock.linear ? 0 : Gfx9LinearSwModeMask; + allowedSwModeSet.value |= pIn->forbiddenBlock.micro ? 0 : Gfx9Blk256BSwModeMask; + allowedSwModeSet.value |= + pIn->forbiddenBlock.macroThin4KB ? 0 : + ((pOut->resourceType == ADDR_RSRC_TEX_3D) ? Gfx9Rsrc3dThin4KBSwModeMask : Gfx9Blk4KBSwModeMask); + allowedSwModeSet.value |= + pIn->forbiddenBlock.macroThick4KB ? 0 : + ((pOut->resourceType == ADDR_RSRC_TEX_3D) ? Gfx9Rsrc3dThick4KBSwModeMask : 0); + allowedSwModeSet.value |= + pIn->forbiddenBlock.macroThin64KB ? 0 : + ((pOut->resourceType == ADDR_RSRC_TEX_3D) ? Gfx9Rsrc3dThin64KBSwModeMask : Gfx9Blk64KBSwModeMask); + allowedSwModeSet.value |= + pIn->forbiddenBlock.macroThick64KB ? 0 : + ((pOut->resourceType == ADDR_RSRC_TEX_3D) ? Gfx9Rsrc3dThick64KBSwModeMask : 0); if (pIn->preferredSwSet.value != 0) { @@ -3466,17 +3458,17 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlGetPreferredSurfaceSetting( if (pIn->maxAlign > 0) { - if (pIn->maxAlign < GetBlockSize(ADDR_SW_64KB)) + if (pIn->maxAlign < Size64K) { allowedSwModeSet.value &= ~Gfx9Blk64KBSwModeMask; } - if (pIn->maxAlign < GetBlockSize(ADDR_SW_4KB)) + if (pIn->maxAlign < Size4K) { allowedSwModeSet.value &= ~Gfx9Blk4KBSwModeMask; } - if (pIn->maxAlign < GetBlockSize(ADDR_SW_256B)) + if (pIn->maxAlign < Size256) { allowedSwModeSet.value &= ~Gfx9Blk256BSwModeMask; } @@ -3583,7 +3575,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlGetPreferredSurfaceSetting( } if ((numFrags > 1) && - (GetBlockSize(ADDR_SW_4KB) < (m_pipeInterleaveBytes * numFrags))) + (Size4K < (m_pipeInterleaveBytes * numFrags))) { // MSAA surface must have blk_bytes/pipe_interleave >= num_samples allowedSwModeSet.value &= Gfx9Blk64KBSwModeMask; @@ -3630,7 +3622,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlGetPreferredSurfaceSetting( pOut->validSwModeSet = allowedSwModeSet; pOut->canXor = (allowedSwModeSet.value & Gfx9XorSwModeMask) ? TRUE : FALSE; - pOut->validBlockSet = GetAllowedBlockSet(allowedSwModeSet); + pOut->validBlockSet = GetAllowedBlockSet(allowedSwModeSet, pOut->resourceType); pOut->validSwTypeSet = GetAllowedSwSet(allowedSwModeSet); pOut->clientPreferredSwSet = pIn->preferredSwSet; @@ -3640,6 +3632,12 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlGetPreferredSurfaceSetting( pOut->clientPreferredSwSet.value = AddrSwSetAll; } + // Apply optional restrictions + if (pIn->flags.needEquation) + { + FilterInvalidEqSwizzleMode(allowedSwModeSet, pIn->resourceType, Log2(bpp >> 3)); + } + if (allowedSwModeSet.value == Gfx9LinearSwModeMask) { pOut->swizzleMode = ADDR_SW_LINEAR; @@ -3649,15 +3647,26 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlGetPreferredSurfaceSetting( // Always ignore linear swizzle mode if there is other choice. allowedSwModeSet.swLinear = 0; - ADDR2_BLOCK_SET allowedBlockSet = GetAllowedBlockSet(allowedSwModeSet); + ADDR2_BLOCK_SET allowedBlockSet = GetAllowedBlockSet(allowedSwModeSet, pOut->resourceType); // Determine block size if there is 2 or more block type candidates if (IsPow2(allowedBlockSet.value) == FALSE) { - const AddrSwizzleMode swMode[AddrBlockMaxTiledType] = {ADDR_SW_256B, ADDR_SW_4KB, ADDR_SW_64KB}; - Dim3d blkDim[AddrBlockMaxTiledType] = {{0}, {0}, {0}}; - Dim3d padDim[AddrBlockMaxTiledType] = {{0}, {0}, {0}}; - UINT_64 padSize[AddrBlockMaxTiledType] = {0}; + AddrSwizzleMode swMode[AddrBlockMaxTiledType] = { ADDR_SW_LINEAR }; + + swMode[AddrBlockMicro] = ADDR_SW_256B_D; + swMode[AddrBlockThin4KB] = ADDR_SW_4KB_D; + swMode[AddrBlockThin64KB] = ADDR_SW_64KB_D; + + if (pOut->resourceType == ADDR_RSRC_TEX_3D) + { + swMode[AddrBlockThick4KB] = ADDR_SW_4KB_S; + swMode[AddrBlockThick64KB] = ADDR_SW_64KB_S; + } + + Dim3d blkDim[AddrBlockMaxTiledType] = {{0}, {0}, {0}, {0}, {0}, {0}}; + Dim3d padDim[AddrBlockMaxTiledType] = {{0}, {0}, {0}, {0}, {0}, {0}}; + UINT_64 padSize[AddrBlockMaxTiledType] = {0}; const UINT_32 ratioLow = pIn->flags.minimizeAlign ? 1 : (pIn->flags.opt4space ? 3 : 2); const UINT_32 ratioHi = pIn->flags.minimizeAlign ? 1 : (pIn->flags.opt4space ? 2 : 1); @@ -3683,7 +3692,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlGetPreferredSurfaceSetting( } padSize[i] = ComputePadSize(&blkDim[i], width, height, numSlices, &padDim[i]); - padSize[i] = PowTwoAlign(padSize[i], sizeAlignInElement); + padSize[i] = PowTwoAlign(padSize[i] * numFrags, sizeAlignInElement); if ((minSize == 0) || ((padSize[i] * ratioHi) <= (minSize * ratioLow))) @@ -3697,28 +3706,41 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlGetPreferredSurfaceSetting( if ((allowedBlockSet.micro == TRUE) && (width <= blkDim[AddrBlockMicro].w) && (height <= blkDim[AddrBlockMicro].h) && - (NextPow2(pIn->minSizeAlign) <= GetBlockSize(ADDR_SW_256B))) + (NextPow2(pIn->minSizeAlign) <= Size256)) { minSizeBlk = AddrBlockMicro; } if (minSizeBlk == AddrBlockMicro) { + ADDR_ASSERT(pOut->resourceType != ADDR_RSRC_TEX_3D); allowedSwModeSet.value &= Gfx9Blk256BSwModeMask; } - else if (minSizeBlk == AddrBlock4KB) + else if (minSizeBlk == AddrBlockThick4KB) { - allowedSwModeSet.value &= Gfx9Blk4KBSwModeMask; + ADDR_ASSERT(pOut->resourceType == ADDR_RSRC_TEX_3D); + allowedSwModeSet.value &= Gfx9Rsrc3dThick4KBSwModeMask; + } + else if (minSizeBlk == AddrBlockThin4KB) + { + allowedSwModeSet.value &= (pOut->resourceType == ADDR_RSRC_TEX_3D) ? + Gfx9Rsrc3dThin4KBSwModeMask : Gfx9Blk4KBSwModeMask; + } + else if (minSizeBlk == AddrBlockThick64KB) + { + ADDR_ASSERT(pOut->resourceType == ADDR_RSRC_TEX_3D); + allowedSwModeSet.value &= Gfx9Rsrc3dThick64KBSwModeMask; } else { - ADDR_ASSERT(minSizeBlk == AddrBlock64KB); - allowedSwModeSet.value &= Gfx9Blk64KBSwModeMask; + ADDR_ASSERT(minSizeBlk == AddrBlockThin64KB); + allowedSwModeSet.value &= (pOut->resourceType == ADDR_RSRC_TEX_3D) ? + Gfx9Rsrc3dThin64KBSwModeMask : Gfx9Blk64KBSwModeMask; } } // Block type should be determined. - ADDR_ASSERT(IsPow2(GetAllowedBlockSet(allowedSwModeSet).value)); + ADDR_ASSERT(IsPow2(GetAllowedBlockSet(allowedSwModeSet, pOut->resourceType).value)); ADDR2_SWTYPE_SET allowedSwSet = GetAllowedSwSet(allowedSwModeSet); @@ -3775,7 +3797,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlGetPreferredSurfaceSetting( { allowedSwModeSet.value &= Gfx9RotateSwModeMask; } - else if (displayRsrc && allowedSwSet.sw_D) + else if (allowedSwSet.sw_D) { allowedSwModeSet.value &= Gfx9DisplaySwModeMask; } @@ -3794,8 +3816,8 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlGetPreferredSurfaceSetting( // Swizzle type should be determined. ADDR_ASSERT(IsPow2(GetAllowedSwSet(allowedSwModeSet).value)); - // Determine swizzle mode now - always select the "largest" swizzle mode for a given block type + - // swizzle type combination. For example, for AddrBlock64KB + ADDR_SW_S, select SW_64KB_S_X(25) if it's + // Determine swizzle mode now. Always select the "largest" swizzle mode for a given block type + swizzle + // type combination. For example, for AddrBlockThin64KB + ADDR_SW_S, select SW_64KB_S_X(25) if it's // available, or otherwise select SW_64KB_S_T(17) if it's available, or otherwise select SW_64KB_S(9). pOut->swizzleMode = static_cast<AddrSwizzleMode>(Log2NonPow2(allowedSwModeSet.value)); } @@ -3848,13 +3870,13 @@ ADDR_E_RETURNCODE Gfx9Lib::ComputeStereoInfo( const UINT_32 numBankBits = GetBankXorBits(blkSizeLog2); const UINT_32 bppLog2 = Log2(pIn->bpp >> 3); const UINT_32 maxYCoordBlock256 = Log2(Block256_2d[bppLog2].h) - 1; - ASSERTED const ADDR_EQUATION *pEqToCheck = &m_equationTable[eqIndex]; + const ADDR_EQUATION *pEqToCheck = &m_equationTable[eqIndex]; ADDR_ASSERT(maxYCoordBlock256 == - GetMaxValidChannelIndex(&pEqToCheck->addr[0], GetBlockSizeLog2(ADDR_SW_256B), 1)); + GetMaxValidChannelIndex(&pEqToCheck->addr[0], Log2Size256, 1)); const UINT_32 maxYCoordInBaseEquation = - (blkSizeLog2 - GetBlockSizeLog2(ADDR_SW_256B)) / 2 + maxYCoordBlock256; + (blkSizeLog2 - Log2Size256) / 2 + maxYCoordBlock256; ADDR_ASSERT(maxYCoordInBaseEquation == GetMaxValidChannelIndex(&pEqToCheck->addr[0], blkSizeLog2, 1)); @@ -4548,7 +4570,7 @@ Dim3d Gfx9Lib::GetMipStartPos( // Report mip in tail if Mip0 is already in mip tail BOOL_32 inMipTail = IsInMipTail(resourceType, swizzleMode, tailMaxDim, width, height, depth); - UINT_32 log2blkSize = GetBlockSizeLog2(swizzleMode); + UINT_32 log2BlkSize = GetBlockSizeLog2(swizzleMode); UINT_32 mipIndexInTail = mipId; if (inMipTail == FALSE) @@ -4598,7 +4620,7 @@ Dim3d Gfx9Lib::GetMipStartPos( if (IsThick(resourceType, swizzleMode)) { - UINT_32 dim = log2blkSize % 3; + UINT_32 dim = log2BlkSize % 3; if (dim == 0) { @@ -4618,7 +4640,7 @@ Dim3d Gfx9Lib::GetMipStartPos( } else { - if (log2blkSize & 1) + if (log2BlkSize & 1) { inTail = (mipWidthInBlk <= 2) && (mipHeightInBlk == 1); } @@ -4648,7 +4670,7 @@ Dim3d Gfx9Lib::GetMipStartPos( if (inMipTail) { - UINT_32 index = mipIndexInTail + MaxMacroBits - log2blkSize; + UINT_32 index = mipIndexInTail + MaxMacroBits - log2BlkSize; ADDR_ASSERT(index < sizeof(MipTailOffset256B) / sizeof(UINT_32)); *pMipTailBytesOffset = MipTailOffset256B[index] << 8; } @@ -4729,7 +4751,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeSurfaceAddrFromCoordTiled( if (IsThin(pIn->resourceType, pIn->swizzleMode)) { UINT_32 blockOffset = 0; - UINT_32 log2blkSize = GetBlockSizeLog2(pIn->swizzleMode); + UINT_32 log2BlkSize = GetBlockSizeLog2(pIn->swizzleMode); if (IsZOrderSwizzle(pIn->swizzleMode)) { @@ -4774,7 +4796,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeSurfaceAddrFromCoordTiled( MortonGen2d((pIn->x / microBlockDim.w), (pIn->y / microBlockDim.h), 12) << 8; // Sample bits start location - UINT_32 sampleStart = log2blkSize - Log2(pIn->numSamples); + UINT_32 sampleStart = log2BlkSize - Log2(pIn->numSamples); // Join sample bits information to the highest Macro block bits if (IsNonPrtXor(pIn->swizzleMode)) { @@ -4787,7 +4809,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeSurfaceAddrFromCoordTiled( // after this op, the blockOffset only contains log2 Macro block size bits blockOffset %= (1 << sampleStart); blockOffset |= (pIn->sample << sampleStart); - ADDR_ASSERT((blockOffset >> log2blkSize) == 0); + ADDR_ASSERT((blockOffset >> log2BlkSize) == 0); } } @@ -4796,7 +4818,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeSurfaceAddrFromCoordTiled( // Mask off bits above Macro block bits to keep page synonyms working for prt if (IsPrt(pIn->swizzleMode)) { - blockOffset &= ((1 << log2blkSize) - 1); + blockOffset &= ((1 << log2BlkSize) - 1); } // Preserve offset inside pipe interleave @@ -4804,13 +4826,13 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeSurfaceAddrFromCoordTiled( blockOffset >>= m_pipeInterleaveLog2; // Pipe/Se xor bits - pipeBits = GetPipeXorBits(log2blkSize); + pipeBits = GetPipeXorBits(log2BlkSize); // Pipe xor pipeXor = FoldXor2d(blockOffset, pipeBits); blockOffset >>= pipeBits; // Bank xor bits - bankBits = GetBankXorBits(log2blkSize); + bankBits = GetBankXorBits(log2BlkSize); // Bank Xor bankXor = FoldXor2d(blockOffset, bankBits); blockOffset >>= bankBits; @@ -4825,7 +4847,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeSurfaceAddrFromCoordTiled( } ADDR_ASSERT((blockOffset | mipTailBytesOffset) == (blockOffset + mipTailBytesOffset)); - ADDR_ASSERT((mipTailBytesOffset == 0u) || (blockOffset < (1u << log2blkSize))); + ADDR_ASSERT((mipTailBytesOffset == 0u) || (blockOffset < (1u << log2BlkSize))); blockOffset |= mipTailBytesOffset; @@ -4840,7 +4862,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeSurfaceAddrFromCoordTiled( returnCode = ApplyCustomerPipeBankXor(pIn->swizzleMode, pIn->pipeBankXor, bankBits, pipeBits, &blockOffset); - blockOffset %= (1 << log2blkSize); + blockOffset %= (1 << log2BlkSize); UINT_32 pitchInMacroBlock = localOut.mipChainPitch / localOut.blockWidth; UINT_32 paddedHeightInMacroBlock = localOut.mipChainHeight / localOut.blockHeight; @@ -4850,11 +4872,11 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeSurfaceAddrFromCoordTiled( ((pIn->y / localOut.blockHeight) + mipStartPos.h) * pitchInMacroBlock + ((pIn->x / localOut.blockWidth) + mipStartPos.w); - pOut->addr = blockOffset | (macroBlockIndex << log2blkSize); + pOut->addr = blockOffset | (macroBlockIndex << log2BlkSize); } else { - UINT_32 log2blkSize = GetBlockSizeLog2(pIn->swizzleMode); + UINT_32 log2BlkSize = GetBlockSizeLog2(pIn->swizzleMode); Dim3d microBlockDim = Block1K_3d[log2ElementBytes]; @@ -4871,7 +4893,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeSurfaceAddrFromCoordTiled( // Mask off bits above Macro block bits to keep page synonyms working for prt if (IsPrt(pIn->swizzleMode)) { - blockOffset &= ((1 << log2blkSize) - 1); + blockOffset &= ((1 << log2BlkSize) - 1); } // Preserve offset inside pipe interleave @@ -4879,13 +4901,13 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeSurfaceAddrFromCoordTiled( blockOffset >>= m_pipeInterleaveLog2; // Pipe/Se xor bits - pipeBits = GetPipeXorBits(log2blkSize); + pipeBits = GetPipeXorBits(log2BlkSize); // Pipe xor pipeXor = FoldXor3d(blockOffset, pipeBits); blockOffset >>= pipeBits; // Bank xor bits - bankBits = GetBankXorBits(log2blkSize); + bankBits = GetBankXorBits(log2BlkSize); // Bank Xor bankXor = FoldXor3d(blockOffset, bankBits); blockOffset >>= bankBits; @@ -4900,13 +4922,13 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeSurfaceAddrFromCoordTiled( } ADDR_ASSERT((blockOffset | mipTailBytesOffset) == (blockOffset + mipTailBytesOffset)); - ADDR_ASSERT((mipTailBytesOffset == 0u) || (blockOffset < (1u << log2blkSize))); + ADDR_ASSERT((mipTailBytesOffset == 0u) || (blockOffset < (1u << log2BlkSize))); blockOffset |= mipTailBytesOffset; returnCode = ApplyCustomerPipeBankXor(pIn->swizzleMode, pIn->pipeBankXor, bankBits, pipeBits, &blockOffset); - blockOffset %= (1 << log2blkSize); + blockOffset %= (1 << log2BlkSize); UINT_32 xb = pIn->x / localOut.blockWidth + mipStartPos.w; UINT_32 yb = pIn->y / localOut.blockHeight + mipStartPos.h; @@ -4917,7 +4939,7 @@ ADDR_E_RETURNCODE Gfx9Lib::HwlComputeSurfaceAddrFromCoordTiled( (localOut.mipChainHeight / localOut.blockHeight) * pitchInBlock; UINT_64 blockIndex = zb * sliceSizeInBlock + yb * pitchInBlock + xb; - pOut->addr = blockOffset | (blockIndex << log2blkSize); + pOut->addr = blockOffset | (blockIndex << log2BlkSize); } } else @@ -4996,5 +5018,59 @@ ADDR_E_RETURNCODE Gfx9Lib::ComputeSurfaceLinearPadding( return returnCode; } +/** +************************************************************************************************************************ +* Gfx9Lib::ComputeThinBlockDimension +* +* @brief +* Internal function to get thin block width/height/depth in element from surface input params. +* +* @return +* N/A +************************************************************************************************************************ +*/ +VOID Gfx9Lib::ComputeThinBlockDimension( + UINT_32* pWidth, + UINT_32* pHeight, + UINT_32* pDepth, + UINT_32 bpp, + UINT_32 numSamples, + AddrResourceType resourceType, + AddrSwizzleMode swizzleMode) const +{ + ADDR_ASSERT(IsThin(resourceType, swizzleMode)); + + const UINT_32 log2BlkSize = GetBlockSizeLog2(swizzleMode); + const UINT_32 eleBytes = bpp >> 3; + const UINT_32 microBlockSizeTableIndex = Log2(eleBytes); + const UINT_32 log2blkSizeIn256B = log2BlkSize - 8; + const UINT_32 widthAmp = log2blkSizeIn256B / 2; + const UINT_32 heightAmp = log2blkSizeIn256B - widthAmp; + + ADDR_ASSERT(microBlockSizeTableIndex < sizeof(Block256_2d) / sizeof(Block256_2d[0])); + + *pWidth = (Block256_2d[microBlockSizeTableIndex].w << widthAmp); + *pHeight = (Block256_2d[microBlockSizeTableIndex].h << heightAmp); + *pDepth = 1; + + if (numSamples > 1) + { + const UINT_32 log2sample = Log2(numSamples); + const UINT_32 q = log2sample >> 1; + const UINT_32 r = log2sample & 1; + + if (log2BlkSize & 1) + { + *pWidth >>= q; + *pHeight >>= (q + r); + } + else + { + *pWidth >>= (q + r); + *pHeight >>= q; + } + } +} + } // V2 } // Addr diff --git a/src/amd/addrlib/src/gfx9/gfx9addrlib.h b/src/amd/addrlib/src/gfx9/gfx9addrlib.h index d94e2c94f07..93e6515b26f 100644 --- a/src/amd/addrlib/src/gfx9/gfx9addrlib.h +++ b/src/amd/addrlib/src/gfx9/gfx9addrlib.h @@ -114,49 +114,32 @@ const UINT_32 Gfx9Blk64KBSwModeMask = (1u << ADDR_SW_64KB_Z) | (1u << ADDR_SW_64KB_D_X) | (1u << ADDR_SW_64KB_R_X); -const UINT_32 Gfx9BlkVarSwModeMask = (1u << ADDR_SW_VAR_Z) | - (1u << ADDR_SW_VAR_S) | - (1u << ADDR_SW_VAR_D) | - (1u << ADDR_SW_VAR_R) | - (1u << ADDR_SW_VAR_Z_X) | - (1u << ADDR_SW_VAR_S_X) | - (1u << ADDR_SW_VAR_D_X) | - (1u << ADDR_SW_VAR_R_X); - const UINT_32 Gfx9ZSwModeMask = (1u << ADDR_SW_4KB_Z) | (1u << ADDR_SW_64KB_Z) | - (1u << ADDR_SW_VAR_Z) | (1u << ADDR_SW_64KB_Z_T) | (1u << ADDR_SW_4KB_Z_X) | - (1u << ADDR_SW_64KB_Z_X) | - (1u << ADDR_SW_VAR_Z_X); + (1u << ADDR_SW_64KB_Z_X); const UINT_32 Gfx9StandardSwModeMask = (1u << ADDR_SW_256B_S) | (1u << ADDR_SW_4KB_S) | (1u << ADDR_SW_64KB_S) | - (1u << ADDR_SW_VAR_S) | (1u << ADDR_SW_64KB_S_T) | (1u << ADDR_SW_4KB_S_X) | - (1u << ADDR_SW_64KB_S_X) | - (1u << ADDR_SW_VAR_S_X); + (1u << ADDR_SW_64KB_S_X); const UINT_32 Gfx9DisplaySwModeMask = (1u << ADDR_SW_256B_D) | (1u << ADDR_SW_4KB_D) | (1u << ADDR_SW_64KB_D) | - (1u << ADDR_SW_VAR_D) | (1u << ADDR_SW_64KB_D_T) | (1u << ADDR_SW_4KB_D_X) | - (1u << ADDR_SW_64KB_D_X) | - (1u << ADDR_SW_VAR_D_X); + (1u << ADDR_SW_64KB_D_X); const UINT_32 Gfx9RotateSwModeMask = (1u << ADDR_SW_256B_R) | (1u << ADDR_SW_4KB_R) | (1u << ADDR_SW_64KB_R) | - (1u << ADDR_SW_VAR_R) | (1u << ADDR_SW_64KB_R_T) | (1u << ADDR_SW_4KB_R_X) | - (1u << ADDR_SW_64KB_R_X) | - (1u << ADDR_SW_VAR_R_X); + (1u << ADDR_SW_64KB_R_X); const UINT_32 Gfx9XSwModeMask = (1u << ADDR_SW_4KB_Z_X) | (1u << ADDR_SW_4KB_S_X) | @@ -165,11 +148,7 @@ const UINT_32 Gfx9XSwModeMask = (1u << ADDR_SW_4KB_Z_X) | (1u << ADDR_SW_64KB_Z_X) | (1u << ADDR_SW_64KB_S_X) | (1u << ADDR_SW_64KB_D_X) | - (1u << ADDR_SW_64KB_R_X) | - (1u << ADDR_SW_VAR_Z_X) | - (1u << ADDR_SW_VAR_S_X) | - (1u << ADDR_SW_VAR_D_X) | - (1u << ADDR_SW_VAR_R_X); + (1u << ADDR_SW_64KB_R_X); const UINT_32 Gfx9TSwModeMask = (1u << ADDR_SW_64KB_Z_T) | (1u << ADDR_SW_64KB_S_T) | @@ -197,6 +176,16 @@ const UINT_32 Gfx9Rsrc3dPrtSwModeMask = Gfx9Rsrc2dPrtSwModeMask & ~Gfx9RotateSwM const UINT_32 Gfx9Rsrc3dThinSwModeMask = Gfx9DisplaySwModeMask & ~Gfx9Blk256BSwModeMask; +const UINT_32 Gfx9Rsrc3dThin4KBSwModeMask = Gfx9Rsrc3dThinSwModeMask & Gfx9Blk4KBSwModeMask; + +const UINT_32 Gfx9Rsrc3dThin64KBSwModeMask = Gfx9Rsrc3dThinSwModeMask & Gfx9Blk64KBSwModeMask; + +const UINT_32 Gfx9Rsrc3dThickSwModeMask = Gfx9Rsrc3dSwModeMask & ~(Gfx9Rsrc3dThinSwModeMask | Gfx9LinearSwModeMask); + +const UINT_32 Gfx9Rsrc3dThick4KBSwModeMask = Gfx9Rsrc3dThickSwModeMask & Gfx9Blk4KBSwModeMask; + +const UINT_32 Gfx9Rsrc3dThick64KBSwModeMask = Gfx9Rsrc3dThickSwModeMask & Gfx9Blk64KBSwModeMask; + const UINT_32 Gfx9MsaaSwModeMask = Gfx9AllSwModeMask & ~Gfx9Blk256BSwModeMask & ~Gfx9LinearSwModeMask; const UINT_32 Dce12NonBpp32SwModeMask = (1u << ADDR_SW_LINEAR) | @@ -204,14 +193,10 @@ const UINT_32 Dce12NonBpp32SwModeMask = (1u << ADDR_SW_LINEAR) | (1u << ADDR_SW_4KB_R) | (1u << ADDR_SW_64KB_D) | (1u << ADDR_SW_64KB_R) | - (1u << ADDR_SW_VAR_D) | - (1u << ADDR_SW_VAR_R) | (1u << ADDR_SW_4KB_D_X) | (1u << ADDR_SW_4KB_R_X) | (1u << ADDR_SW_64KB_D_X) | - (1u << ADDR_SW_64KB_R_X) | - (1u << ADDR_SW_VAR_D_X) | - (1u << ADDR_SW_VAR_R_X); + (1u << ADDR_SW_64KB_R_X); const UINT_32 Dce12Bpp32SwModeMask = (1u << ADDR_SW_256B_D) | (1u << ADDR_SW_256B_R) | @@ -220,19 +205,14 @@ const UINT_32 Dce12Bpp32SwModeMask = (1u << ADDR_SW_256B_D) | const UINT_32 Dcn1NonBpp64SwModeMask = (1u << ADDR_SW_LINEAR) | (1u << ADDR_SW_4KB_S) | (1u << ADDR_SW_64KB_S) | - (1u << ADDR_SW_VAR_S) | (1u << ADDR_SW_64KB_S_T) | (1u << ADDR_SW_4KB_S_X) | - (1u << ADDR_SW_64KB_S_X) | - (1u << ADDR_SW_VAR_S_X); - + (1u << ADDR_SW_64KB_S_X); const UINT_32 Dcn1Bpp64SwModeMask = (1u << ADDR_SW_4KB_D) | (1u << ADDR_SW_64KB_D) | - (1u << ADDR_SW_VAR_D) | (1u << ADDR_SW_64KB_D_T) | (1u << ADDR_SW_4KB_D_X) | (1u << ADDR_SW_64KB_D_X) | - (1u << ADDR_SW_VAR_D_X) | Dcn1NonBpp64SwModeMask; /** @@ -273,9 +253,6 @@ public: return (pMem != NULL) ? new (pMem) Gfx9Lib(pClient) : NULL; } - virtual BOOL_32 IsValidDisplaySwizzleMode( - const ADDR2_COMPUTE_SURFACE_INFO_INPUT* pIn) const; - protected: Gfx9Lib(const Client* pClient); virtual ~Gfx9Lib(); @@ -376,22 +353,6 @@ protected: AddrSwizzleMode swMode, UINT_32 elementBytesLog2) const; - UINT_32 ComputeSurfaceBaseAlignTiled(AddrSwizzleMode swizzleMode) const - { - UINT_32 baseAlign; - - if (IsXor(swizzleMode)) - { - baseAlign = GetBlockSize(swizzleMode); - } - else - { - baseAlign = 256; - } - - return baseAlign; - } - virtual ADDR_E_RETURNCODE HwlComputePipeBankXor( const ADDR2_COMPUTE_PIPEBANKXOR_INPUT* pIn, ADDR2_COMPUTE_PIPEBANKXOR_OUTPUT* pOut) const; @@ -423,6 +384,137 @@ protected: const ADDR2_COMPUTE_SURFACE_ADDRFROMCOORD_INPUT* pIn, ADDR2_COMPUTE_SURFACE_ADDRFROMCOORD_OUTPUT* pOut) const; + virtual UINT_32 HwlComputeMaxBaseAlignments() const; + + virtual UINT_32 HwlComputeMaxMetaBaseAlignments() const; + + virtual BOOL_32 HwlInitGlobalParams(const ADDR_CREATE_INPUT* pCreateIn); + + virtual ChipFamily HwlConvertChipFamily(UINT_32 uChipFamily, UINT_32 uChipRevision); + + virtual VOID ComputeThinBlockDimension( + UINT_32* pWidth, + UINT_32* pHeight, + UINT_32* pDepth, + UINT_32 bpp, + UINT_32 numSamples, + AddrResourceType resourceType, + AddrSwizzleMode swizzleMode) const; + +private: + VOID GetRbEquation(CoordEq* pRbEq, UINT_32 rbPerSeLog2, UINT_32 seLog2) const; + + VOID GetDataEquation(CoordEq* pDataEq, Gfx9DataType dataSurfaceType, + AddrSwizzleMode swizzleMode, AddrResourceType resourceType, + UINT_32 elementBytesLog2, UINT_32 numSamplesLog2) const; + + VOID GetPipeEquation(CoordEq* pPipeEq, CoordEq* pDataEq, + UINT_32 pipeInterleaveLog2, UINT_32 numPipesLog2, + UINT_32 numSamplesLog2, Gfx9DataType dataSurfaceType, + AddrSwizzleMode swizzleMode, AddrResourceType resourceType) const; + + VOID GenMetaEquation(CoordEq* pMetaEq, UINT_32 maxMip, + UINT_32 elementBytesLog2, UINT_32 numSamplesLog2, + ADDR2_META_FLAGS metaFlag, Gfx9DataType dataSurfaceType, + AddrSwizzleMode swizzleMode, AddrResourceType resourceType, + UINT_32 metaBlkWidthLog2, UINT_32 metaBlkHeightLog2, + UINT_32 metaBlkDepthLog2, UINT_32 compBlkWidthLog2, + UINT_32 compBlkHeightLog2, UINT_32 compBlkDepthLog2) const; + + const CoordEq* GetMetaEquation(const MetaEqParams& metaEqParams); + + VOID GetMetaMipInfo(UINT_32 numMipLevels, Dim3d* pMetaBlkDim, + BOOL_32 dataThick, ADDR2_META_MIP_INFO* pInfo, + UINT_32 mip0Width, UINT_32 mip0Height, UINT_32 mip0Depth, + UINT_32* pNumMetaBlkX, UINT_32* pNumMetaBlkY, UINT_32* pNumMetaBlkZ) const; + + BOOL_32 IsValidDisplaySwizzleMode(const ADDR2_COMPUTE_SURFACE_INFO_INPUT* pIn) const; + + ADDR_E_RETURNCODE ComputeSurfaceLinearPadding( + const ADDR2_COMPUTE_SURFACE_INFO_INPUT* pIn, + UINT_32* pMipmap0PaddedWidth, + UINT_32* pSlice0PaddedHeight, + ADDR2_MIP_INFO* pMipInfo = NULL) const; + + static ADDR2_BLOCK_SET GetAllowedBlockSet(ADDR2_SWMODE_SET allowedSwModeSet, AddrResourceType rsrcType) + { + ADDR2_BLOCK_SET allowedBlockSet = {}; + + allowedBlockSet.micro = (allowedSwModeSet.value & Gfx9Blk256BSwModeMask) ? TRUE : FALSE; + allowedBlockSet.linear = (allowedSwModeSet.value & Gfx9LinearSwModeMask) ? TRUE : FALSE; + + if (rsrcType == ADDR_RSRC_TEX_3D) + { + allowedBlockSet.macroThin4KB = (allowedSwModeSet.value & Gfx9Rsrc3dThin4KBSwModeMask) ? TRUE : FALSE; + allowedBlockSet.macroThick4KB = (allowedSwModeSet.value & Gfx9Rsrc3dThick4KBSwModeMask) ? TRUE : FALSE; + allowedBlockSet.macroThin64KB = (allowedSwModeSet.value & Gfx9Rsrc3dThin64KBSwModeMask) ? TRUE : FALSE; + allowedBlockSet.macroThick64KB = (allowedSwModeSet.value & Gfx9Rsrc3dThick64KBSwModeMask) ? TRUE : FALSE; + } + else + { + allowedBlockSet.macroThin4KB = (allowedSwModeSet.value & Gfx9Blk4KBSwModeMask) ? TRUE : FALSE; + allowedBlockSet.macroThin64KB = (allowedSwModeSet.value & Gfx9Blk64KBSwModeMask) ? TRUE : FALSE; + } + + return allowedBlockSet; + } + + static ADDR2_SWTYPE_SET GetAllowedSwSet(ADDR2_SWMODE_SET allowedSwModeSet) + { + ADDR2_SWTYPE_SET allowedSwSet = {}; + + allowedSwSet.sw_Z = (allowedSwModeSet.value & Gfx9ZSwModeMask) ? TRUE : FALSE; + allowedSwSet.sw_S = (allowedSwModeSet.value & Gfx9StandardSwModeMask) ? TRUE : FALSE; + allowedSwSet.sw_D = (allowedSwModeSet.value & Gfx9DisplaySwModeMask) ? TRUE : FALSE; + allowedSwSet.sw_R = (allowedSwModeSet.value & Gfx9RotateSwModeMask) ? TRUE : FALSE; + + return allowedSwSet; + } + + BOOL_32 IsInMipTail( + AddrResourceType resourceType, + AddrSwizzleMode swizzleMode, + Dim3d mipTailDim, + UINT_32 width, + UINT_32 height, + UINT_32 depth) const + { + BOOL_32 inTail = ((width <= mipTailDim.w) && + (height <= mipTailDim.h) && + (IsThin(resourceType, swizzleMode) || (depth <= mipTailDim.d))); + + return inTail; + } + + BOOL_32 ValidateNonSwModeParams(const ADDR2_COMPUTE_SURFACE_INFO_INPUT* pIn) const; + BOOL_32 ValidateSwModeParams(const ADDR2_COMPUTE_SURFACE_INFO_INPUT* pIn) const; + + UINT_32 GetBankXorBits(UINT_32 macroBlockBits) const + { + UINT_32 pipeBits = GetPipeXorBits(macroBlockBits); + + // Bank xor bits + UINT_32 bankBits = Min(macroBlockBits - pipeBits - m_pipeInterleaveLog2, m_banksLog2); + + return bankBits; + } + + UINT_32 ComputeSurfaceBaseAlignTiled(AddrSwizzleMode swizzleMode) const + { + UINT_32 baseAlign; + + if (IsXor(swizzleMode)) + { + baseAlign = GetBlockSize(swizzleMode); + } + else + { + baseAlign = 256; + } + + return baseAlign; + } + // Initialize equation table VOID InitEquationTable(); @@ -522,127 +614,17 @@ protected: return compressBlkDim; } - static const UINT_32 MaxSeLog2 = 3; - static const UINT_32 MaxRbPerSeLog2 = 2; + static const UINT_32 MaxSeLog2 = 3; + static const UINT_32 MaxRbPerSeLog2 = 2; - static const Dim3d Block256_3dS[MaxNumOfBpp]; - static const Dim3d Block256_3dZ[MaxNumOfBpp]; + static const Dim3d Block256_3dS[MaxNumOfBpp]; + static const Dim3d Block256_3dZ[MaxNumOfBpp]; - static const UINT_32 MipTailOffset256B[]; + static const UINT_32 MipTailOffset256B[]; static const SwizzleModeFlags SwizzleModeTable[ADDR_SW_MAX_TYPE]; - // Max number of swizzle mode supported for equation - static const UINT_32 MaxSwMode = 32; - // Max number of resource type (2D/3D) supported for equation - static const UINT_32 MaxRsrcType = 2; - // Max number of bpp (8bpp/16bpp/32bpp/64bpp/128bpp) - static const UINT_32 MaxElementBytesLog2 = 5; - // Almost all swizzle mode + resource type support equation - static const UINT_32 EquationTableSize = MaxElementBytesLog2 * MaxSwMode * MaxRsrcType; - // Equation table - ADDR_EQUATION m_equationTable[EquationTableSize]; - - // Number of equation entries in the table - UINT_32 m_numEquations; - // Equation lookup table according to bpp and tile index - UINT_32 m_equationLookupTable[MaxRsrcType][MaxSwMode][MaxElementBytesLog2]; - - static const UINT_32 MaxCachedMetaEq = 2; - -private: - virtual UINT_32 HwlComputeMaxBaseAlignments() const; - - virtual UINT_32 HwlComputeMaxMetaBaseAlignments() const; - - virtual BOOL_32 HwlInitGlobalParams(const ADDR_CREATE_INPUT* pCreateIn); - - VOID GetRbEquation(CoordEq* pRbEq, UINT_32 rbPerSeLog2, UINT_32 seLog2) const; - - VOID GetDataEquation(CoordEq* pDataEq, Gfx9DataType dataSurfaceType, - AddrSwizzleMode swizzleMode, AddrResourceType resourceType, - UINT_32 elementBytesLog2, UINT_32 numSamplesLog2) const; - - VOID GetPipeEquation(CoordEq* pPipeEq, CoordEq* pDataEq, - UINT_32 pipeInterleaveLog2, UINT_32 numPipesLog2, - UINT_32 numSamplesLog2, Gfx9DataType dataSurfaceType, - AddrSwizzleMode swizzleMode, AddrResourceType resourceType) const; - - VOID GenMetaEquation(CoordEq* pMetaEq, UINT_32 maxMip, - UINT_32 elementBytesLog2, UINT_32 numSamplesLog2, - ADDR2_META_FLAGS metaFlag, Gfx9DataType dataSurfaceType, - AddrSwizzleMode swizzleMode, AddrResourceType resourceType, - UINT_32 metaBlkWidthLog2, UINT_32 metaBlkHeightLog2, - UINT_32 metaBlkDepthLog2, UINT_32 compBlkWidthLog2, - UINT_32 compBlkHeightLog2, UINT_32 compBlkDepthLog2) const; - - const CoordEq* GetMetaEquation(const MetaEqParams& metaEqParams); - - virtual ChipFamily HwlConvertChipFamily(UINT_32 uChipFamily, UINT_32 uChipRevision); - - VOID GetMetaMipInfo(UINT_32 numMipLevels, Dim3d* pMetaBlkDim, - BOOL_32 dataThick, ADDR2_META_MIP_INFO* pInfo, - UINT_32 mip0Width, UINT_32 mip0Height, UINT_32 mip0Depth, - UINT_32* pNumMetaBlkX, UINT_32* pNumMetaBlkY, UINT_32* pNumMetaBlkZ) const; - - ADDR_E_RETURNCODE ComputeSurfaceLinearPadding( - const ADDR2_COMPUTE_SURFACE_INFO_INPUT* pIn, - UINT_32* pMipmap0PaddedWidth, - UINT_32* pSlice0PaddedHeight, - ADDR2_MIP_INFO* pMipInfo = NULL) const; - - static ADDR2_BLOCK_SET GetAllowedBlockSet(ADDR2_SWMODE_SET allowedSwModeSet) - { - ADDR2_BLOCK_SET allowedBlockSet = {}; - - allowedBlockSet.micro = (allowedSwModeSet.value & Gfx9Blk256BSwModeMask) ? TRUE : FALSE; - allowedBlockSet.macro4KB = (allowedSwModeSet.value & Gfx9Blk4KBSwModeMask) ? TRUE : FALSE; - allowedBlockSet.macro64KB = (allowedSwModeSet.value & Gfx9Blk64KBSwModeMask) ? TRUE : FALSE; - allowedBlockSet.var = (allowedSwModeSet.value & Gfx9BlkVarSwModeMask) ? TRUE : FALSE; - allowedBlockSet.linear = (allowedSwModeSet.value & Gfx9LinearSwModeMask) ? TRUE : FALSE; - - return allowedBlockSet; - } - - static ADDR2_SWTYPE_SET GetAllowedSwSet(ADDR2_SWMODE_SET allowedSwModeSet) - { - ADDR2_SWTYPE_SET allowedSwSet = {}; - - allowedSwSet.sw_Z = (allowedSwModeSet.value & Gfx9ZSwModeMask) ? TRUE : FALSE; - allowedSwSet.sw_S = (allowedSwModeSet.value & Gfx9StandardSwModeMask) ? TRUE : FALSE; - allowedSwSet.sw_D = (allowedSwModeSet.value & Gfx9DisplaySwModeMask) ? TRUE : FALSE; - allowedSwSet.sw_R = (allowedSwModeSet.value & Gfx9RotateSwModeMask) ? TRUE : FALSE; - - return allowedSwSet; - } - - BOOL_32 IsInMipTail( - AddrResourceType resourceType, - AddrSwizzleMode swizzleMode, - Dim3d mipTailDim, - UINT_32 width, - UINT_32 height, - UINT_32 depth) const - { - BOOL_32 inTail = ((width <= mipTailDim.w) && - (height <= mipTailDim.h) && - (IsThin(resourceType, swizzleMode) || (depth <= mipTailDim.d))); - - return inTail; - } - - BOOL_32 ValidateNonSwModeParams(const ADDR2_COMPUTE_SURFACE_INFO_INPUT* pIn) const; - BOOL_32 ValidateSwModeParams(const ADDR2_COMPUTE_SURFACE_INFO_INPUT* pIn) const; - - UINT_32 GetBankXorBits(UINT_32 macroBlockBits) const - { - UINT_32 pipeBits = GetPipeXorBits(macroBlockBits); - - // Bank xor bits - UINT_32 bankBits = Min(macroBlockBits - pipeBits - m_pipeInterleaveLog2, m_banksLog2); - - return bankBits; - } + static const UINT_32 MaxCachedMetaEq = 2; Gfx9ChipSettings m_settings; diff --git a/src/amd/addrlib/src/r800/ciaddrlib.h b/src/amd/addrlib/src/r800/ciaddrlib.h index b548254ca82..6461389f42f 100644 --- a/src/amd/addrlib/src/r800/ciaddrlib.h +++ b/src/amd/addrlib/src/r800/ciaddrlib.h @@ -151,7 +151,6 @@ protected: UINT_32 mipLevel, UINT_32 numSamples, ADDR_COMPUTE_SURFACE_INFO_OUTPUT* pOut) const; private: - VOID ReadGbTileMode( UINT_32 regValue, TileConfig* pCfg) const; diff --git a/src/amd/addrlib/src/r800/siaddrlib.h b/src/amd/addrlib/src/r800/siaddrlib.h index 5a4f00a1680..24d49dcced1 100644 --- a/src/amd/addrlib/src/r800/siaddrlib.h +++ b/src/amd/addrlib/src/r800/siaddrlib.h @@ -76,7 +76,6 @@ struct SiChipSettings UINT_32 isSpectre : 1; UINT_32 isSpooky : 1; UINT_32 isKalindi : 1; - // Hawaii is GFXIP 7.2 UINT_32 isHawaii : 1; // VI diff --git a/src/amd/common/ac_surface.c b/src/amd/common/ac_surface.c index 016590fc085..09f2bb75ea0 100644 --- a/src/amd/common/ac_surface.c +++ b/src/amd/common/ac_surface.c @@ -85,7 +85,6 @@ ADDR_HANDLE amdgpu_addr_create(const struct radeon_info *info, if (addrCreateInput.chipFamily >= FAMILY_AI) { addrCreateInput.chipEngine = CIASICIDGFXENGINE_ARCTICISLAND; - regValue.blockVarSizeLog2 = 0; } else { regValue.noOfBanks = amdinfo->mc_arb_ramcfg & 0x3; regValue.noOfRanks = (amdinfo->mc_arb_ramcfg & 0x4) >> 2; @@ -1599,11 +1598,9 @@ static int gfx9_compute_surface(ADDR_HANDLE addrlib, case ADDR_SW_256B_S: case ADDR_SW_4KB_S: case ADDR_SW_64KB_S: - case ADDR_SW_VAR_S: case ADDR_SW_64KB_S_T: case ADDR_SW_4KB_S_X: case ADDR_SW_64KB_S_X: - case ADDR_SW_VAR_S_X: surf->micro_tile_mode = RADEON_MICRO_MODE_THIN; break; @@ -1612,11 +1609,9 @@ static int gfx9_compute_surface(ADDR_HANDLE addrlib, case ADDR_SW_256B_D: case ADDR_SW_4KB_D: case ADDR_SW_64KB_D: - case ADDR_SW_VAR_D: case ADDR_SW_64KB_D_T: case ADDR_SW_4KB_D_X: case ADDR_SW_64KB_D_X: - case ADDR_SW_VAR_D_X: surf->micro_tile_mode = RADEON_MICRO_MODE_DISPLAY; break; @@ -1624,7 +1619,6 @@ static int gfx9_compute_surface(ADDR_HANDLE addrlib, case ADDR_SW_256B_R: case ADDR_SW_4KB_R: case ADDR_SW_64KB_R: - case ADDR_SW_VAR_R: case ADDR_SW_64KB_R_T: case ADDR_SW_4KB_R_X: case ADDR_SW_64KB_R_X: @@ -1641,7 +1635,6 @@ static int gfx9_compute_surface(ADDR_HANDLE addrlib, /* Z = depth. */ case ADDR_SW_4KB_Z: case ADDR_SW_64KB_Z: - case ADDR_SW_VAR_Z: case ADDR_SW_64KB_Z_T: case ADDR_SW_4KB_Z_X: case ADDR_SW_64KB_Z_X: |