Skip to content

Instantly share code, notes, and snippets.

@Rover656
Last active December 8, 2023 18:05
Show Gist options
  • Save Rover656/b9ee785a572367083b6aa2c7be5c0234 to your computer and use it in GitHub Desktop.
Save Rover656/b9ee785a572367083b6aa2c7be5c0234 to your computer and use it in GitHub Desktop.
Transvoxel lookup tables converted to Unity compute shaders.
//================================================================================
//
// The Transvoxel Algorithm look-up tables
// Converted to Unity compute shaders by Reece Mackie (https://www.nerdthings.dev)
// I will be adding the transition cell tables once I start using them in my own project.
//
// Copyright 2009 by Eric Lengyel
//
// The following data originates from Eric Lengyel's Transvoxel Algorithm.
// http://transvoxel.org/
//
// The data in this file may be freely used in implementations of the Transvoxel
// Algorithm. If you do use this data, or any transformation of it, in your own
// projects, commercial or otherwise, please give credit by indicating in your
// source code that the data is part of the author's implementation of the
// Transvoxel Algorithm and that it came from the web address given above.
// (Simply copying and pasting the two lines of the previous paragraph would be
// perfect.) If you distribute a commercial product with source code included,
// then the credit in the source code is required.
//
// If you distribute any kind of product that uses this data, a credit visible to
// the end-user would be appreciated, but it is not required. However, you may
// not claim that the entire implementation of the Transvoxel Algorithm is your
// own if you use the data in this file or any transformation of it.
//
// The format of the data in this file is described in the dissertation "Voxel-
// Based Terrain for Real-Time Virtual Simulations", available at the web page
// given above. References to sections and figures below pertain to that paper.
//
// The contents of this file are protected by copyright and may not be publicly
// reproduced without permission.
//
//================================================================================
static const int regularCellClass[256] = {
0x00, 0x01, 0x01, 0x03, 0x01, 0x03, 0x02, 0x04, 0x01, 0x02, 0x03, 0x04, 0x03, 0x04, 0x04, 0x03,
0x01, 0x03, 0x02, 0x04, 0x02, 0x04, 0x06, 0x0C, 0x02, 0x05, 0x05, 0x0B, 0x05, 0x0A, 0x07, 0x04,
0x01, 0x02, 0x03, 0x04, 0x02, 0x05, 0x05, 0x0A, 0x02, 0x06, 0x04, 0x0C, 0x05, 0x07, 0x0B, 0x04,
0x03, 0x04, 0x04, 0x03, 0x05, 0x0B, 0x07, 0x04, 0x05, 0x07, 0x0A, 0x04, 0x08, 0x0E, 0x0E, 0x03,
0x01, 0x02, 0x02, 0x05, 0x03, 0x04, 0x05, 0x0B, 0x02, 0x06, 0x05, 0x07, 0x04, 0x0C, 0x0A, 0x04,
0x03, 0x04, 0x05, 0x0A, 0x04, 0x03, 0x07, 0x04, 0x05, 0x07, 0x08, 0x0E, 0x0B, 0x04, 0x0E, 0x03,
0x02, 0x06, 0x05, 0x07, 0x05, 0x07, 0x08, 0x0E, 0x06, 0x09, 0x07, 0x0F, 0x07, 0x0F, 0x0E, 0x0D,
0x04, 0x0C, 0x0B, 0x04, 0x0A, 0x04, 0x0E, 0x03, 0x07, 0x0F, 0x0E, 0x0D, 0x0E, 0x0D, 0x02, 0x01,
0x01, 0x02, 0x02, 0x05, 0x02, 0x05, 0x06, 0x07, 0x03, 0x05, 0x04, 0x0A, 0x04, 0x0B, 0x0C, 0x04,
0x02, 0x05, 0x06, 0x07, 0x06, 0x07, 0x09, 0x0F, 0x05, 0x08, 0x07, 0x0E, 0x07, 0x0E, 0x0F, 0x0D,
0x03, 0x05, 0x04, 0x0B, 0x05, 0x08, 0x07, 0x0E, 0x04, 0x07, 0x03, 0x04, 0x0A, 0x0E, 0x04, 0x03,
0x04, 0x0A, 0x0C, 0x04, 0x07, 0x0E, 0x0F, 0x0D, 0x0B, 0x0E, 0x04, 0x03, 0x0E, 0x02, 0x0D, 0x01,
0x03, 0x05, 0x05, 0x08, 0x04, 0x0A, 0x07, 0x0E, 0x04, 0x07, 0x0B, 0x0E, 0x03, 0x04, 0x04, 0x03,
0x04, 0x0B, 0x07, 0x0E, 0x0C, 0x04, 0x0F, 0x0D, 0x0A, 0x0E, 0x0E, 0x02, 0x04, 0x03, 0x0D, 0x01,
0x04, 0x07, 0x0A, 0x0E, 0x0B, 0x0E, 0x0E, 0x02, 0x0C, 0x0F, 0x04, 0x0D, 0x04, 0x0D, 0x03, 0x01,
0x03, 0x04, 0x04, 0x03, 0x04, 0x03, 0x0D, 0x01, 0x04, 0x0D, 0x03, 0x01, 0x03, 0x01, 0x01, 0x00
};
struct RegularCell {
int vCount;
int tCount;
int indices[15];
};
static const RegularCell regularCellData[16] = {
{0, 0, {-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}},
{3, 1, {0, 1, 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1}},
{6, 2, {0, 1, 2, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1}},
{4, 2, {0, 1, 2, 0, 2, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1}},
{5, 3, {0, 1, 4, 1, 3, 4, 1, 2, 3, -1, -1, -1, -1, -1, -1}},
{7, 3, {0, 1, 2, 0, 2, 3, 4, 5, 6, -1, -1, -1, -1, -1, -1}},
{9, 3, {0, 1, 2, 3, 4, 5, 6, 7, 8, -1, -1, -1, -1, -1, -1}},
{8, 4, {0, 1, 4, 1, 3, 4, 1, 2, 3, 5, 6, 7, -1, -1, -1}},
{8, 4, {0, 1, 2, 0, 2, 3, 4, 5, 6, 4, 6, 7, -1, -1, -1}},
{12, 4, {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, -1, -1, -1}},
{6, 4, {0, 4, 5, 0, 1, 4, 1, 3, 4, 1, 2, 3, -1, -1, -1}},
{6, 4, {0, 5, 4, 0, 4, 1, 1, 4, 3, 1, 3, 2, -1, -1, -1}},
{6, 4, {0, 4, 5, 0, 3, 4, 0, 1, 3, 1, 2, 3, -1, -1, -1}},
{6, 4, {0, 1, 2, 0, 2, 3, 0, 3, 4, 0, 4, 5, -1, -1, -1}},
{7, 5, {0, 1, 2, 0, 2, 3, 0, 3, 4, 0, 4, 5, 0, 5, 6}},
{9, 5, {0, 4, 5, 0, 3, 4, 0, 1, 3, 1, 2, 3, 6, 7, 8}}
};
static const uint regularVertexData[256][12] = {
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x3304, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x2315, 0x4113, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x3304, 0x2315, 0x4113, 0, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4223, 0x1326, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x6201, 0x4223, 0x1326, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x2315, 0x4113, 0x5102, 0x4223, 0x1326, 0, 0, 0, 0, 0, 0},
{0x4223, 0x1326, 0x3304, 0x2315, 0x4113, 0, 0, 0, 0, 0, 0, 0},
{0x4113, 0x8337, 0x4223, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x3304, 0x4223, 0x4113, 0x8337, 0, 0, 0, 0, 0, 0},
{0x6201, 0x2315, 0x8337, 0x4223, 0, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x3304, 0x2315, 0x8337, 0x4223, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4113, 0x8337, 0x1326, 0, 0, 0, 0, 0, 0, 0, 0},
{0x4113, 0x8337, 0x1326, 0x3304, 0x6201, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x2315, 0x8337, 0x1326, 0x5102, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x2315, 0x8337, 0x1326, 0, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x1146, 0x2245, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x1146, 0x2245, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x2315, 0x4113, 0x3304, 0x1146, 0x2245, 0, 0, 0, 0, 0, 0},
{0x2315, 0x4113, 0x5102, 0x1146, 0x2245, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4223, 0x1326, 0x3304, 0x1146, 0x2245, 0, 0, 0, 0, 0, 0},
{0x1146, 0x2245, 0x6201, 0x4223, 0x1326, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x1146, 0x2245, 0x6201, 0x2315, 0x4113, 0x5102, 0x4223, 0x1326, 0, 0, 0},
{0x4223, 0x1326, 0x1146, 0x2245, 0x2315, 0x4113, 0, 0, 0, 0, 0, 0},
{0x4223, 0x4113, 0x8337, 0x3304, 0x1146, 0x2245, 0, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x1146, 0x2245, 0x4223, 0x4113, 0x8337, 0, 0, 0, 0, 0},
{0x4223, 0x6201, 0x2315, 0x8337, 0x3304, 0x1146, 0x2245, 0, 0, 0, 0, 0},
{0x4223, 0x8337, 0x2315, 0x2245, 0x1146, 0x5102, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4113, 0x8337, 0x1326, 0x3304, 0x1146, 0x2245, 0, 0, 0, 0, 0},
{0x4113, 0x8337, 0x1326, 0x1146, 0x2245, 0x6201, 0, 0, 0, 0, 0, 0},
{0x6201, 0x2315, 0x8337, 0x1326, 0x5102, 0x3304, 0x1146, 0x2245, 0, 0, 0, 0},
{0x2245, 0x2315, 0x8337, 0x1326, 0x1146, 0, 0, 0, 0, 0, 0, 0},
{0x2315, 0x2245, 0x8157, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x3304, 0x2315, 0x2245, 0x8157, 0, 0, 0, 0, 0, 0},
{0x4113, 0x6201, 0x2245, 0x8157, 0, 0, 0, 0, 0, 0, 0, 0},
{0x2245, 0x8157, 0x4113, 0x5102, 0x3304, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4223, 0x1326, 0x2315, 0x2245, 0x8157, 0, 0, 0, 0, 0, 0},
{0x6201, 0x4223, 0x1326, 0x3304, 0x2315, 0x2245, 0x8157, 0, 0, 0, 0, 0},
{0x6201, 0x2245, 0x8157, 0x4113, 0x5102, 0x4223, 0x1326, 0, 0, 0, 0, 0},
{0x4223, 0x1326, 0x3304, 0x2245, 0x8157, 0x4113, 0, 0, 0, 0, 0, 0},
{0x4223, 0x4113, 0x8337, 0x2315, 0x2245, 0x8157, 0, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x3304, 0x4223, 0x4113, 0x8337, 0x2315, 0x2245, 0x8157, 0, 0, 0},
{0x8337, 0x4223, 0x6201, 0x2245, 0x8157, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x3304, 0x2245, 0x8157, 0x8337, 0x4223, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4113, 0x8337, 0x1326, 0x2315, 0x2245, 0x8157, 0, 0, 0, 0, 0},
{0x4113, 0x8337, 0x1326, 0x3304, 0x6201, 0x2315, 0x2245, 0x8157, 0, 0, 0, 0},
{0x5102, 0x1326, 0x8337, 0x8157, 0x2245, 0x6201, 0, 0, 0, 0, 0, 0},
{0x8157, 0x8337, 0x1326, 0x3304, 0x2245, 0, 0, 0, 0, 0, 0, 0},
{0x2315, 0x3304, 0x1146, 0x8157, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x1146, 0x8157, 0x2315, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x1146, 0x8157, 0x4113, 0x6201, 0, 0, 0, 0, 0, 0, 0},
{0x4113, 0x5102, 0x1146, 0x8157, 0, 0, 0, 0, 0, 0, 0, 0},
{0x2315, 0x3304, 0x1146, 0x8157, 0x5102, 0x4223, 0x1326, 0, 0, 0, 0, 0},
{0x1326, 0x4223, 0x6201, 0x2315, 0x8157, 0x1146, 0, 0, 0, 0, 0, 0},
{0x3304, 0x1146, 0x8157, 0x4113, 0x6201, 0x5102, 0x4223, 0x1326, 0, 0, 0, 0},
{0x1326, 0x1146, 0x8157, 0x4113, 0x4223, 0, 0, 0, 0, 0, 0, 0},
{0x2315, 0x3304, 0x1146, 0x8157, 0x4223, 0x4113, 0x8337, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x1146, 0x8157, 0x2315, 0x4223, 0x4113, 0x8337, 0, 0, 0, 0},
{0x3304, 0x1146, 0x8157, 0x8337, 0x4223, 0x6201, 0, 0, 0, 0, 0, 0},
{0x4223, 0x5102, 0x1146, 0x8157, 0x8337, 0, 0, 0, 0, 0, 0, 0},
{0x2315, 0x3304, 0x1146, 0x8157, 0x5102, 0x4113, 0x8337, 0x1326, 0, 0, 0, 0},
{0x6201, 0x4113, 0x8337, 0x1326, 0x1146, 0x8157, 0x2315, 0, 0, 0, 0, 0},
{0x6201, 0x3304, 0x1146, 0x8157, 0x8337, 0x1326, 0x5102, 0, 0, 0, 0, 0},
{0x1326, 0x1146, 0x8157, 0x8337, 0, 0, 0, 0, 0, 0, 0, 0},
{0x1326, 0x8267, 0x1146, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x3304, 0x1326, 0x8267, 0x1146, 0, 0, 0, 0, 0, 0},
{0x6201, 0x2315, 0x4113, 0x1326, 0x8267, 0x1146, 0, 0, 0, 0, 0, 0},
{0x5102, 0x3304, 0x2315, 0x4113, 0x1326, 0x8267, 0x1146, 0, 0, 0, 0, 0},
{0x5102, 0x4223, 0x8267, 0x1146, 0, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x6201, 0x4223, 0x8267, 0x1146, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4223, 0x8267, 0x1146, 0x6201, 0x2315, 0x4113, 0, 0, 0, 0, 0},
{0x1146, 0x8267, 0x4223, 0x4113, 0x2315, 0x3304, 0, 0, 0, 0, 0, 0},
{0x4113, 0x8337, 0x4223, 0x1326, 0x8267, 0x1146, 0, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x3304, 0x4223, 0x4113, 0x8337, 0x1326, 0x8267, 0x1146, 0, 0, 0},
{0x6201, 0x2315, 0x8337, 0x4223, 0x1326, 0x8267, 0x1146, 0, 0, 0, 0, 0},
{0x5102, 0x3304, 0x2315, 0x8337, 0x4223, 0x1326, 0x8267, 0x1146, 0, 0, 0, 0},
{0x8267, 0x1146, 0x5102, 0x4113, 0x8337, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x4113, 0x8337, 0x8267, 0x1146, 0x3304, 0, 0, 0, 0, 0, 0},
{0x6201, 0x2315, 0x8337, 0x8267, 0x1146, 0x5102, 0, 0, 0, 0, 0, 0},
{0x1146, 0x3304, 0x2315, 0x8337, 0x8267, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x1326, 0x8267, 0x2245, 0, 0, 0, 0, 0, 0, 0, 0},
{0x1326, 0x8267, 0x2245, 0x6201, 0x5102, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x1326, 0x8267, 0x2245, 0x6201, 0x2315, 0x4113, 0, 0, 0, 0, 0},
{0x1326, 0x8267, 0x2245, 0x2315, 0x4113, 0x5102, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4223, 0x8267, 0x2245, 0x3304, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x4223, 0x8267, 0x2245, 0, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4223, 0x8267, 0x2245, 0x3304, 0x6201, 0x2315, 0x4113, 0, 0, 0, 0},
{0x4113, 0x4223, 0x8267, 0x2245, 0x2315, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x1326, 0x8267, 0x2245, 0x4223, 0x4113, 0x8337, 0, 0, 0, 0, 0},
{0x1326, 0x8267, 0x2245, 0x6201, 0x5102, 0x4223, 0x4113, 0x8337, 0, 0, 0, 0},
{0x3304, 0x1326, 0x8267, 0x2245, 0x4223, 0x6201, 0x2315, 0x8337, 0, 0, 0, 0},
{0x5102, 0x1326, 0x8267, 0x2245, 0x2315, 0x8337, 0x4223, 0, 0, 0, 0, 0},
{0x3304, 0x2245, 0x8267, 0x8337, 0x4113, 0x5102, 0, 0, 0, 0, 0, 0},
{0x8337, 0x8267, 0x2245, 0x6201, 0x4113, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x6201, 0x2315, 0x8337, 0x8267, 0x2245, 0x3304, 0, 0, 0, 0, 0},
{0x2315, 0x8337, 0x8267, 0x2245, 0, 0, 0, 0, 0, 0, 0, 0},
{0x2315, 0x2245, 0x8157, 0x1326, 0x8267, 0x1146, 0, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x3304, 0x2315, 0x2245, 0x8157, 0x1326, 0x8267, 0x1146, 0, 0, 0},
{0x6201, 0x2245, 0x8157, 0x4113, 0x1326, 0x8267, 0x1146, 0, 0, 0, 0, 0},
{0x2245, 0x8157, 0x4113, 0x5102, 0x3304, 0x1326, 0x8267, 0x1146, 0, 0, 0, 0},
{0x4223, 0x8267, 0x1146, 0x5102, 0x2315, 0x2245, 0x8157, 0, 0, 0, 0, 0},
{0x3304, 0x6201, 0x4223, 0x8267, 0x1146, 0x2315, 0x2245, 0x8157, 0, 0, 0, 0},
{0x4223, 0x8267, 0x1146, 0x5102, 0x6201, 0x2245, 0x8157, 0x4113, 0, 0, 0, 0},
{0x3304, 0x2245, 0x8157, 0x4113, 0x4223, 0x8267, 0x1146, 0, 0, 0, 0, 0},
{0x4223, 0x4113, 0x8337, 0x2315, 0x2245, 0x8157, 0x1326, 0x8267, 0x1146, 0, 0, 0},
{0x6201, 0x5102, 0x3304, 0x4223, 0x4113, 0x8337, 0x2315, 0x2245, 0x8157, 0x1326, 0x8267, 0x1146},
{0x8337, 0x4223, 0x6201, 0x2245, 0x8157, 0x1326, 0x8267, 0x1146, 0, 0, 0, 0},
{0x4223, 0x5102, 0x3304, 0x2245, 0x8157, 0x8337, 0x1326, 0x8267, 0x1146, 0, 0, 0},
{0x8267, 0x1146, 0x5102, 0x4113, 0x8337, 0x2315, 0x2245, 0x8157, 0, 0, 0, 0},
{0x6201, 0x4113, 0x8337, 0x8267, 0x1146, 0x3304, 0x2315, 0x2245, 0x8157, 0, 0, 0},
{0x8337, 0x8267, 0x1146, 0x5102, 0x6201, 0x2245, 0x8157, 0, 0, 0, 0, 0},
{0x3304, 0x2245, 0x8157, 0x8337, 0x8267, 0x1146, 0, 0, 0, 0, 0, 0},
{0x8157, 0x2315, 0x3304, 0x1326, 0x8267, 0, 0, 0, 0, 0, 0, 0},
{0x8267, 0x8157, 0x2315, 0x6201, 0x5102, 0x1326, 0, 0, 0, 0, 0, 0},
{0x8267, 0x1326, 0x3304, 0x6201, 0x4113, 0x8157, 0, 0, 0, 0, 0, 0},
{0x8267, 0x8157, 0x4113, 0x5102, 0x1326, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4223, 0x8267, 0x8157, 0x2315, 0x3304, 0, 0, 0, 0, 0, 0},
{0x2315, 0x6201, 0x4223, 0x8267, 0x8157, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x5102, 0x4223, 0x8267, 0x8157, 0x4113, 0x6201, 0, 0, 0, 0, 0},
{0x4113, 0x4223, 0x8267, 0x8157, 0, 0, 0, 0, 0, 0, 0, 0},
{0x8157, 0x2315, 0x3304, 0x1326, 0x8267, 0x4223, 0x4113, 0x8337, 0, 0, 0, 0},
{0x8157, 0x2315, 0x6201, 0x5102, 0x1326, 0x8267, 0x4223, 0x4113, 0x8337, 0, 0, 0},
{0x8157, 0x8337, 0x4223, 0x6201, 0x3304, 0x1326, 0x8267, 0, 0, 0, 0, 0},
{0x5102, 0x1326, 0x8267, 0x8157, 0x8337, 0x4223, 0, 0, 0, 0, 0, 0},
{0x8267, 0x8157, 0x2315, 0x3304, 0x5102, 0x4113, 0x8337, 0, 0, 0, 0, 0},
{0x6201, 0x4113, 0x8337, 0x8267, 0x8157, 0x2315, 0, 0, 0, 0, 0, 0},
{0x6201, 0x3304, 0x5102, 0x8337, 0x8267, 0x8157, 0, 0, 0, 0, 0, 0},
{0x8337, 0x8267, 0x8157, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x8337, 0x8157, 0x8267, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x3304, 0x8337, 0x8157, 0x8267, 0, 0, 0, 0, 0, 0},
{0x6201, 0x2315, 0x4113, 0x8337, 0x8157, 0x8267, 0, 0, 0, 0, 0, 0},
{0x5102, 0x3304, 0x2315, 0x4113, 0x8337, 0x8157, 0x8267, 0, 0, 0, 0, 0},
{0x5102, 0x4223, 0x1326, 0x8337, 0x8157, 0x8267, 0, 0, 0, 0, 0, 0},
{0x6201, 0x4223, 0x1326, 0x3304, 0x8337, 0x8157, 0x8267, 0, 0, 0, 0, 0},
{0x6201, 0x2315, 0x4113, 0x5102, 0x4223, 0x1326, 0x8337, 0x8157, 0x8267, 0, 0, 0},
{0x4223, 0x1326, 0x3304, 0x2315, 0x4113, 0x8337, 0x8157, 0x8267, 0, 0, 0, 0},
{0x4113, 0x8157, 0x8267, 0x4223, 0, 0, 0, 0, 0, 0, 0, 0},
{0x4223, 0x4113, 0x8157, 0x8267, 0x6201, 0x5102, 0x3304, 0, 0, 0, 0, 0},
{0x8157, 0x8267, 0x4223, 0x6201, 0x2315, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x2315, 0x8157, 0x8267, 0x4223, 0x5102, 0, 0, 0, 0, 0, 0},
{0x1326, 0x5102, 0x4113, 0x8157, 0x8267, 0, 0, 0, 0, 0, 0, 0},
{0x8157, 0x4113, 0x6201, 0x3304, 0x1326, 0x8267, 0, 0, 0, 0, 0, 0},
{0x1326, 0x5102, 0x6201, 0x2315, 0x8157, 0x8267, 0, 0, 0, 0, 0, 0},
{0x8267, 0x1326, 0x3304, 0x2315, 0x8157, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x1146, 0x2245, 0x8337, 0x8157, 0x8267, 0, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x1146, 0x2245, 0x8337, 0x8157, 0x8267, 0, 0, 0, 0, 0},
{0x6201, 0x2315, 0x4113, 0x3304, 0x1146, 0x2245, 0x8337, 0x8157, 0x8267, 0, 0, 0},
{0x2315, 0x4113, 0x5102, 0x1146, 0x2245, 0x8337, 0x8157, 0x8267, 0, 0, 0, 0},
{0x5102, 0x4223, 0x1326, 0x3304, 0x1146, 0x2245, 0x8337, 0x8157, 0x8267, 0, 0, 0},
{0x1146, 0x2245, 0x6201, 0x4223, 0x1326, 0x8337, 0x8157, 0x8267, 0, 0, 0, 0},
{0x6201, 0x2315, 0x4113, 0x5102, 0x4223, 0x1326, 0x3304, 0x1146, 0x2245, 0x8337, 0x8157, 0x8267},
{0x4113, 0x4223, 0x1326, 0x1146, 0x2245, 0x2315, 0x8337, 0x8157, 0x8267, 0, 0, 0},
{0x4223, 0x4113, 0x8157, 0x8267, 0x3304, 0x1146, 0x2245, 0, 0, 0, 0, 0},
{0x6201, 0x5102, 0x1146, 0x2245, 0x4223, 0x4113, 0x8157, 0x8267, 0, 0, 0, 0},
{0x8157, 0x8267, 0x4223, 0x6201, 0x2315, 0x3304, 0x1146, 0x2245, 0, 0, 0, 0},
{0x2315, 0x8157, 0x8267, 0x4223, 0x5102, 0x1146, 0x2245, 0, 0, 0, 0, 0},
{0x1326, 0x5102, 0x4113, 0x8157, 0x8267, 0x3304, 0x1146, 0x2245, 0, 0, 0, 0},
{0x1326, 0x1146, 0x2245, 0x6201, 0x4113, 0x8157, 0x8267, 0, 0, 0, 0, 0},
{0x5102, 0x6201, 0x2315, 0x8157, 0x8267, 0x1326, 0x3304, 0x1146, 0x2245, 0, 0, 0},
{0x1326, 0x1146, 0x2245, 0x2315, 0x8157, 0x8267, 0, 0, 0, 0, 0, 0},
{0x2315, 0x2245, 0x8267, 0x8337, 0, 0, 0, 0, 0, 0, 0, 0},
{0x2315, 0x2245, 0x8267, 0x8337, 0x6201, 0x5102, 0x3304, 0, 0, 0, 0, 0},
{0x4113, 0x6201, 0x2245, 0x8267, 0x8337, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4113, 0x8337, 0x8267, 0x2245, 0x3304, 0, 0, 0, 0, 0, 0},
{0x2315, 0x2245, 0x8267, 0x8337, 0x5102, 0x4223, 0x1326, 0, 0, 0, 0, 0},
{0x6201, 0x4223, 0x1326, 0x3304, 0x8337, 0x2315, 0x2245, 0x8267, 0, 0, 0, 0},
{0x4113, 0x6201, 0x2245, 0x8267, 0x8337, 0x5102, 0x4223, 0x1326, 0, 0, 0, 0},
{0x4113, 0x4223, 0x1326, 0x3304, 0x2245, 0x8267, 0x8337, 0, 0, 0, 0, 0},
{0x2315, 0x2245, 0x8267, 0x4223, 0x4113, 0, 0, 0, 0, 0, 0, 0},
{0x2315, 0x2245, 0x8267, 0x4223, 0x4113, 0x6201, 0x5102, 0x3304, 0, 0, 0, 0},
{0x6201, 0x2245, 0x8267, 0x4223, 0, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x2245, 0x8267, 0x4223, 0x5102, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4113, 0x2315, 0x2245, 0x8267, 0x1326, 0, 0, 0, 0, 0, 0},
{0x4113, 0x2315, 0x2245, 0x8267, 0x1326, 0x3304, 0x6201, 0, 0, 0, 0, 0},
{0x5102, 0x6201, 0x2245, 0x8267, 0x1326, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x2245, 0x8267, 0x1326, 0, 0, 0, 0, 0, 0, 0, 0},
{0x8267, 0x8337, 0x2315, 0x3304, 0x1146, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x1146, 0x8267, 0x8337, 0x2315, 0x6201, 0, 0, 0, 0, 0, 0},
{0x3304, 0x1146, 0x8267, 0x8337, 0x4113, 0x6201, 0, 0, 0, 0, 0, 0},
{0x8337, 0x4113, 0x5102, 0x1146, 0x8267, 0, 0, 0, 0, 0, 0, 0},
{0x8267, 0x8337, 0x2315, 0x3304, 0x1146, 0x5102, 0x4223, 0x1326, 0, 0, 0, 0},
{0x1146, 0x8267, 0x8337, 0x2315, 0x6201, 0x4223, 0x1326, 0, 0, 0, 0, 0},
{0x8267, 0x8337, 0x4113, 0x6201, 0x3304, 0x1146, 0x5102, 0x4223, 0x1326, 0, 0, 0},
{0x4113, 0x4223, 0x1326, 0x1146, 0x8267, 0x8337, 0, 0, 0, 0, 0, 0},
{0x3304, 0x2315, 0x4113, 0x4223, 0x8267, 0x1146, 0, 0, 0, 0, 0, 0},
{0x2315, 0x6201, 0x5102, 0x1146, 0x8267, 0x4223, 0x4113, 0, 0, 0, 0, 0},
{0x1146, 0x8267, 0x4223, 0x6201, 0x3304, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x1146, 0x8267, 0x4223, 0, 0, 0, 0, 0, 0, 0, 0},
{0x8267, 0x1326, 0x5102, 0x4113, 0x2315, 0x3304, 0x1146, 0, 0, 0, 0, 0},
{0x6201, 0x4113, 0x2315, 0x1326, 0x1146, 0x8267, 0, 0, 0, 0, 0, 0},
{0x6201, 0x3304, 0x1146, 0x8267, 0x1326, 0x5102, 0, 0, 0, 0, 0, 0},
{0x1326, 0x1146, 0x8267, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x1326, 0x8337, 0x8157, 0x1146, 0, 0, 0, 0, 0, 0, 0, 0},
{0x8337, 0x8157, 0x1146, 0x1326, 0x6201, 0x5102, 0x3304, 0, 0, 0, 0, 0},
{0x8337, 0x8157, 0x1146, 0x1326, 0x6201, 0x2315, 0x4113, 0, 0, 0, 0, 0},
{0x4113, 0x5102, 0x3304, 0x2315, 0x1326, 0x8337, 0x8157, 0x1146, 0, 0, 0, 0},
{0x8337, 0x8157, 0x1146, 0x5102, 0x4223, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x4223, 0x8337, 0x8157, 0x1146, 0x3304, 0, 0, 0, 0, 0, 0},
{0x8337, 0x8157, 0x1146, 0x5102, 0x4223, 0x6201, 0x2315, 0x4113, 0, 0, 0, 0},
{0x4223, 0x8337, 0x8157, 0x1146, 0x3304, 0x2315, 0x4113, 0, 0, 0, 0, 0},
{0x4223, 0x4113, 0x8157, 0x1146, 0x1326, 0, 0, 0, 0, 0, 0, 0},
{0x4223, 0x4113, 0x8157, 0x1146, 0x1326, 0x6201, 0x5102, 0x3304, 0, 0, 0, 0},
{0x1146, 0x8157, 0x2315, 0x6201, 0x4223, 0x1326, 0, 0, 0, 0, 0, 0},
{0x4223, 0x5102, 0x3304, 0x2315, 0x8157, 0x1146, 0x1326, 0, 0, 0, 0, 0},
{0x4113, 0x8157, 0x1146, 0x5102, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x4113, 0x8157, 0x1146, 0x3304, 0, 0, 0, 0, 0, 0, 0},
{0x2315, 0x8157, 0x1146, 0x5102, 0x6201, 0, 0, 0, 0, 0, 0, 0},
{0x2315, 0x8157, 0x1146, 0x3304, 0, 0, 0, 0, 0, 0, 0, 0},
{0x2245, 0x3304, 0x1326, 0x8337, 0x8157, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x2245, 0x8157, 0x8337, 0x1326, 0x5102, 0, 0, 0, 0, 0, 0},
{0x2245, 0x3304, 0x1326, 0x8337, 0x8157, 0x6201, 0x2315, 0x4113, 0, 0, 0, 0},
{0x2245, 0x2315, 0x4113, 0x5102, 0x1326, 0x8337, 0x8157, 0, 0, 0, 0, 0},
{0x4223, 0x8337, 0x8157, 0x2245, 0x3304, 0x5102, 0, 0, 0, 0, 0, 0},
{0x8157, 0x2245, 0x6201, 0x4223, 0x8337, 0, 0, 0, 0, 0, 0, 0},
{0x2245, 0x3304, 0x5102, 0x4223, 0x8337, 0x8157, 0x4113, 0x6201, 0x2315, 0, 0, 0},
{0x4223, 0x8337, 0x8157, 0x2245, 0x2315, 0x4113, 0, 0, 0, 0, 0, 0},
{0x4113, 0x8157, 0x2245, 0x3304, 0x1326, 0x4223, 0, 0, 0, 0, 0, 0},
{0x1326, 0x4223, 0x4113, 0x8157, 0x2245, 0x6201, 0x5102, 0, 0, 0, 0, 0},
{0x8157, 0x2245, 0x3304, 0x1326, 0x4223, 0x6201, 0x2315, 0, 0, 0, 0, 0},
{0x5102, 0x1326, 0x4223, 0x2315, 0x8157, 0x2245, 0, 0, 0, 0, 0, 0},
{0x3304, 0x5102, 0x4113, 0x8157, 0x2245, 0, 0, 0, 0, 0, 0, 0},
{0x4113, 0x8157, 0x2245, 0x6201, 0, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x6201, 0x2315, 0x8157, 0x2245, 0x3304, 0, 0, 0, 0, 0, 0},
{0x2315, 0x8157, 0x2245, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x1146, 0x1326, 0x8337, 0x2315, 0x2245, 0, 0, 0, 0, 0, 0, 0},
{0x1146, 0x1326, 0x8337, 0x2315, 0x2245, 0x6201, 0x5102, 0x3304, 0, 0, 0, 0},
{0x6201, 0x2245, 0x1146, 0x1326, 0x8337, 0x4113, 0, 0, 0, 0, 0, 0},
{0x2245, 0x1146, 0x1326, 0x8337, 0x4113, 0x5102, 0x3304, 0, 0, 0, 0, 0},
{0x5102, 0x1146, 0x2245, 0x2315, 0x8337, 0x4223, 0, 0, 0, 0, 0, 0},
{0x1146, 0x3304, 0x6201, 0x4223, 0x8337, 0x2315, 0x2245, 0, 0, 0, 0, 0},
{0x8337, 0x4113, 0x6201, 0x2245, 0x1146, 0x5102, 0x4223, 0, 0, 0, 0, 0},
{0x4223, 0x8337, 0x4113, 0x3304, 0x2245, 0x1146, 0, 0, 0, 0, 0, 0},
{0x4113, 0x2315, 0x2245, 0x1146, 0x1326, 0x4223, 0, 0, 0, 0, 0, 0},
{0x1146, 0x1326, 0x4223, 0x4113, 0x2315, 0x2245, 0x6201, 0x5102, 0x3304, 0, 0, 0},
{0x1326, 0x4223, 0x6201, 0x2245, 0x1146, 0, 0, 0, 0, 0, 0, 0},
{0x4223, 0x5102, 0x3304, 0x2245, 0x1146, 0x1326, 0, 0, 0, 0, 0, 0},
{0x2245, 0x1146, 0x5102, 0x4113, 0x2315, 0, 0, 0, 0, 0, 0, 0},
{0x4113, 0x2315, 0x2245, 0x1146, 0x3304, 0x6201, 0, 0, 0, 0, 0, 0},
{0x6201, 0x2245, 0x1146, 0x5102, 0, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x2245, 0x1146, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x1326, 0x8337, 0x2315, 0, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x1326, 0x8337, 0x2315, 0x6201, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x3304, 0x1326, 0x8337, 0x4113, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x1326, 0x8337, 0x4113, 0, 0, 0, 0, 0, 0, 0, 0},
{0x4223, 0x8337, 0x2315, 0x3304, 0x5102, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x4223, 0x8337, 0x2315, 0, 0, 0, 0, 0, 0, 0, 0},
{0x3304, 0x5102, 0x4223, 0x8337, 0x4113, 0x6201, 0, 0, 0, 0, 0, 0},
{0x4113, 0x4223, 0x8337, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x4113, 0x2315, 0x3304, 0x1326, 0x4223, 0, 0, 0, 0, 0, 0, 0},
{0x1326, 0x4223, 0x4113, 0x2315, 0x6201, 0x5102, 0, 0, 0, 0, 0, 0},
{0x3304, 0x1326, 0x4223, 0x6201, 0, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x1326, 0x4223, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x5102, 0x4113, 0x2315, 0x3304, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x4113, 0x2315, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0x6201, 0x3304, 0x5102, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment